From 3d308d7195e04101604337656dac69d094b8900d Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 6 Oct 2020 16:02:24 +0200 Subject: [PATCH] ProjectExplorer: Simplify BuildStepWidget updating Change-Id: I189ca0aa3b88227feae881df026f8578079e1c55 Reviewed-by: Christian Kandeler --- .../projectexplorer/buildstepspage.cpp | 37 ++++--------------- src/plugins/projectexplorer/buildstepspage.h | 2 - 2 files changed, 7 insertions(+), 32 deletions(-) diff --git a/src/plugins/projectexplorer/buildstepspage.cpp b/src/plugins/projectexplorer/buildstepspage.cpp index 25685ea9933..cc642d0d934 100644 --- a/src/plugins/projectexplorer/buildstepspage.cpp +++ b/src/plugins/projectexplorer/buildstepspage.cpp @@ -224,32 +224,6 @@ BuildStepListWidget::~BuildStepListWidget() m_buildStepsData.clear(); } -void BuildStepListWidget::updateSummary() -{ - auto step = qobject_cast(sender()); - if (step) { - foreach (const BuildStepsWidgetData *s, m_buildStepsData) { - if (s->step == step) { - s->detailsWidget->setSummaryText(step->summaryText()); - break; - } - } - } -} - -void BuildStepListWidget::updateEnabledState() -{ - auto step = qobject_cast(sender()); - if (step) { - foreach (const BuildStepsWidgetData *s, m_buildStepsData) { - if (s->step == step) { - s->toolWidget->setBuildStepEnabled(step->enabled()); - break; - } - } - } -} - void BuildStepListWidget::updateAddBuildStepMenu() { QMenu *menu = m_addButton->menu(); @@ -285,11 +259,14 @@ void BuildStepListWidget::addBuildStep(int pos) m_vbox->insertWidget(pos, s->detailsWidget); - connect(s->step, &BuildStep::updateSummary, - this, &BuildStepListWidget::updateSummary); + connect(s->step, &BuildStep::updateSummary, this, [s] { + s->detailsWidget->setSummaryText(s->step->summaryText()); + }); + + connect(s->step, &BuildStep::enabledChanged, this, [s] { + s->toolWidget->setBuildStepEnabled(s->step->enabled()); + }); - connect(s->step, &BuildStep::enabledChanged, - this, &BuildStepListWidget::updateEnabledState); // Expand new build steps by default const bool expand = newStep->hasUserExpansionState() diff --git a/src/plugins/projectexplorer/buildstepspage.h b/src/plugins/projectexplorer/buildstepspage.h index 0f8ee879ec0..f23a0d2bdde 100644 --- a/src/plugins/projectexplorer/buildstepspage.h +++ b/src/plugins/projectexplorer/buildstepspage.h @@ -98,8 +98,6 @@ public: private: void updateAddBuildStepMenu(); void addBuildStep(int pos); - void updateSummary(); - void updateEnabledState(); void stepMoved(int from, int to); void removeBuildStep(int pos);