diff --git a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp index ca69d1f4c06..8231315aa7a 100644 --- a/src/plugins/qbsprojectmanager/qbsbuildstep.cpp +++ b/src/plugins/qbsprojectmanager/qbsbuildstep.cpp @@ -87,6 +87,8 @@ private: void changeForceProbes(bool forceProbes); void applyCachedProperties(); + QbsBuildStep *qbsStep() const; + // QML debugging: void linkQmlDebuggingLibraryChecked(bool checked); @@ -114,7 +116,6 @@ private: }; QList m_propertyCache; - QbsBuildStep *m_step; QString m_summary; bool m_ignoreChange; }; @@ -535,20 +536,19 @@ QbsProject *QbsBuildStep::qbsProject() const QbsBuildStepConfigWidget::QbsBuildStepConfigWidget(QbsBuildStep *step) : BuildStepConfigWidget(step), - m_step(step), m_ignoreChange(false) { - connect(m_step, &ProjectExplorer::ProjectConfiguration::displayNameChanged, + connect(step, &ProjectExplorer::ProjectConfiguration::displayNameChanged, this, &QbsBuildStepConfigWidget::updateState); - connect(m_step, &QbsBuildStep::qbsConfigurationChanged, + connect(step, &QbsBuildStep::qbsConfigurationChanged, this, &QbsBuildStepConfigWidget::updateState); - connect(m_step, &QbsBuildStep::qbsBuildOptionsChanged, + connect(step, &QbsBuildStep::qbsBuildOptionsChanged, this, &QbsBuildStepConfigWidget::updateState); connect(&QbsProjectManagerSettings::instance(), &QbsProjectManagerSettings::settingsBaseChanged, this, &QbsBuildStepConfigWidget::updateState); step->target()->subscribeSignal(&ProjectExplorer::BuildConfiguration::buildDirectoryChanged, this, [this]() { - if (m_step->buildConfiguration() == sender()) + if (this->step()->buildConfiguration() == sender()) updateState(); }); @@ -604,37 +604,37 @@ QString QbsBuildStepConfigWidget::summaryText() const QString QbsBuildStepConfigWidget::displayName() const { - return m_step->displayName(); + return step()->displayName(); } void QbsBuildStepConfigWidget::updateState() { if (!m_ignoreChange) { - m_ui->keepGoingCheckBox->setChecked(m_step->keepGoing()); - m_ui->jobSpinBox->setValue(m_step->maxJobs()); - m_ui->showCommandLinesCheckBox->setChecked(m_step->showCommandLines()); - m_ui->installCheckBox->setChecked(m_step->install()); - m_ui->cleanInstallRootCheckBox->setChecked(m_step->cleanInstallRoot()); - m_ui->forceProbesCheckBox->setChecked(m_step->forceProbes()); - updatePropertyEdit(m_step->qbsConfiguration(QbsBuildStep::PreserveVariables)); - m_ui->qmlDebuggingLibraryCheckBox->setChecked(m_step->isQmlDebuggingEnabled()); - m_ui->installDirChooser->setFileName(m_step->installRoot()); - m_ui->defaultInstallDirCheckBox->setChecked(!m_step->hasCustomInstallRoot()); + m_ui->keepGoingCheckBox->setChecked(qbsStep()->keepGoing()); + m_ui->jobSpinBox->setValue(qbsStep()->maxJobs()); + m_ui->showCommandLinesCheckBox->setChecked(qbsStep()->showCommandLines()); + m_ui->installCheckBox->setChecked(qbsStep()->install()); + m_ui->cleanInstallRootCheckBox->setChecked(qbsStep()->cleanInstallRoot()); + m_ui->forceProbesCheckBox->setChecked(qbsStep()->forceProbes()); + updatePropertyEdit(qbsStep()->qbsConfiguration(QbsBuildStep::PreserveVariables)); + m_ui->qmlDebuggingLibraryCheckBox->setChecked(qbsStep()->isQmlDebuggingEnabled()); + m_ui->installDirChooser->setFileName(qbsStep()->installRoot()); + m_ui->defaultInstallDirCheckBox->setChecked(!qbsStep()->hasCustomInstallRoot()); } updateQmlDebuggingOption(); - const QString buildVariant = m_step->buildVariant(); + const QString buildVariant = qbsStep()->buildVariant(); const int idx = (buildVariant == Constants::QBS_VARIANT_DEBUG) ? 0 : 1; m_ui->buildVariantComboBox->setCurrentIndex(idx); - QString command = static_cast(m_step->buildConfiguration()) - ->equivalentCommandLine(m_step); + QString command = static_cast(step()->buildConfiguration()) + ->equivalentCommandLine(qbsStep()); for (int i = 0; i < m_propertyCache.count(); ++i) { command += ' ' + m_propertyCache.at(i).name + ':' + m_propertyCache.at(i).effectiveValue; } - if (m_step->isQmlDebuggingEnabled()) + if (qbsStep()->isQmlDebuggingEnabled()) command.append(' ').append(Constants::QBS_CONFIG_QUICK_DEBUG_KEY).append(":true"); m_ui->commandLineTextEdit->setPlainText(command); @@ -648,11 +648,11 @@ void QbsBuildStepConfigWidget::updateState() void QbsBuildStepConfigWidget::updateQmlDebuggingOption() { QString warningText; - bool supported = QtSupport::BaseQtVersion::isQmlDebuggingSupported(m_step->target()->kit(), + bool supported = QtSupport::BaseQtVersion::isQmlDebuggingSupported(step()->target()->kit(), &warningText); m_ui->qmlDebuggingLibraryCheckBox->setEnabled(supported); - if (supported && m_step->isQmlDebuggingEnabled()) + if (supported && qbsStep()->isQmlDebuggingEnabled()) warningText = tr("Might make your application vulnerable. Only use in a safe environment."); m_ui->qmlDebuggingWarningText->setText(warningText); @@ -687,80 +687,80 @@ void QbsBuildStepConfigWidget::changeBuildVariant(int idx) else variant = Constants::QBS_VARIANT_DEBUG; m_ignoreChange = true; - m_step->setBuildVariant(variant); + qbsStep()->setBuildVariant(variant); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeShowCommandLines(bool show) { m_ignoreChange = true; - m_step->setShowCommandLines(show); + qbsStep()->setShowCommandLines(show); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeKeepGoing(bool kg) { m_ignoreChange = true; - m_step->setKeepGoing(kg); + qbsStep()->setKeepGoing(kg); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeJobCount(int count) { m_ignoreChange = true; - m_step->setMaxJobs(count); + qbsStep()->setMaxJobs(count); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeInstall(bool install) { m_ignoreChange = true; - m_step->setInstall(install); + qbsStep()->setInstall(install); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeCleanInstallRoot(bool clean) { m_ignoreChange = true; - m_step->setCleanInstallRoot(clean); + qbsStep()->setCleanInstallRoot(clean); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeUseDefaultInstallDir(bool useDefault) { m_ignoreChange = true; - QVariantMap config = m_step->qbsConfiguration(QbsBuildStep::PreserveVariables); + QVariantMap config = qbsStep()->qbsConfiguration(QbsBuildStep::PreserveVariables); m_ui->installDirChooser->setEnabled(!useDefault); if (useDefault) config.remove(Constants::QBS_INSTALL_ROOT_KEY); else config.insert(Constants::QBS_INSTALL_ROOT_KEY, m_ui->installDirChooser->rawPath()); - m_step->setQbsConfiguration(config); + qbsStep()->setQbsConfiguration(config); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeInstallDir(const QString &dir) { - if (!m_step->hasCustomInstallRoot()) + if (!qbsStep()->hasCustomInstallRoot()) return; m_ignoreChange = true; - QVariantMap config = m_step->qbsConfiguration(QbsBuildStep::PreserveVariables); + QVariantMap config = qbsStep()->qbsConfiguration(QbsBuildStep::PreserveVariables); config.insert(Constants::QBS_INSTALL_ROOT_KEY, dir); - m_step->setQbsConfiguration(config); + qbsStep()->setQbsConfiguration(config); m_ignoreChange = false; } void QbsBuildStepConfigWidget::changeForceProbes(bool forceProbes) { m_ignoreChange = true; - m_step->setForceProbes(forceProbes); + qbsStep()->setForceProbes(forceProbes); m_ignoreChange = false; } void QbsBuildStepConfigWidget::applyCachedProperties() { QVariantMap data; - const QVariantMap tmp = m_step->qbsConfiguration(QbsBuildStep::PreserveVariables); + const QVariantMap tmp = qbsStep()->qbsConfiguration(QbsBuildStep::PreserveVariables); // Insert values set up with special UIs: data.insert(Constants::QBS_CONFIG_PROFILE_KEY, @@ -782,14 +782,19 @@ void QbsBuildStepConfigWidget::applyCachedProperties() } m_ignoreChange = true; - m_step->setQbsConfiguration(data); + qbsStep()->setQbsConfiguration(data); m_ignoreChange = false; } +QbsBuildStep *QbsBuildStepConfigWidget::qbsStep() const +{ + return static_cast(step()); +} + void QbsBuildStepConfigWidget::linkQmlDebuggingLibraryChecked(bool checked) { m_ignoreChange = true; - m_step->setQmlDebuggingEnabled(checked); + qbsStep()->setQmlDebuggingEnabled(checked); m_ignoreChange = false; }