forked from qt-creator/qt-creator
Centralize retrieving the "parent" build configuration
If a step is part of a build configuration, that is used, but many steps can be used as part of a deploy configuration. In that case the active build configuration of the step's target must be used, and that logic was duplicated many times. Instead, let BuildStep::buildConfiguration take care of that logic. For steps that are not offered for deploy configurations there is no semantic difference, and for the others this removes code duplication. Change-Id: I02f3bb50226590092cedcec02fce6fde9c7c6e63 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
@@ -149,8 +149,6 @@ bool QbsBuildStep::init(QList<const BuildStep *> &earlierSteps)
|
||||
return false;
|
||||
|
||||
QbsBuildConfiguration *bc = static_cast<QbsBuildConfiguration *>(buildConfiguration());
|
||||
if (!bc)
|
||||
bc = static_cast<QbsBuildConfiguration *>(target()->activeBuildConfiguration());
|
||||
|
||||
if (!bc)
|
||||
return false;
|
||||
@@ -549,7 +547,7 @@ QbsBuildStepConfigWidget::QbsBuildStepConfigWidget(QbsBuildStep *step) :
|
||||
this, &QbsBuildStepConfigWidget::updateState);
|
||||
step->target()->subscribeSignal(&ProjectExplorer::BuildConfiguration::buildDirectoryChanged,
|
||||
this, [this]() {
|
||||
if (m_step->target()->activeBuildConfiguration() == sender())
|
||||
if (m_step->buildConfiguration() == sender())
|
||||
updateState();
|
||||
});
|
||||
|
||||
|
||||
@@ -70,8 +70,6 @@ bool QbsCleanStep::init(QList<const BuildStep *> &earlierSteps)
|
||||
return false;
|
||||
|
||||
QbsBuildConfiguration *bc = static_cast<QbsBuildConfiguration *>(buildConfiguration());
|
||||
if (!bc)
|
||||
bc = static_cast<QbsBuildConfiguration *>(target()->activeBuildConfiguration());
|
||||
|
||||
if (!bc)
|
||||
return false;
|
||||
|
||||
@@ -146,8 +146,7 @@ bool QbsInstallStep::keepGoing() const
|
||||
|
||||
const QbsBuildConfiguration *QbsInstallStep::buildConfig() const
|
||||
{
|
||||
return static_cast<QbsBuildConfiguration *>(
|
||||
deployConfiguration()->target()->activeBuildConfiguration());
|
||||
return static_cast<QbsBuildConfiguration *>(buildConfiguration());
|
||||
}
|
||||
|
||||
bool QbsInstallStep::fromMap(const QVariantMap &map)
|
||||
|
||||
Reference in New Issue
Block a user