Qbs: Add variable chooser to install path chooser

+ fix display of install root with variables in equivalent command line.

Change-Id: I9f8ab6dba80afddd0ee5116947c11752ded8129f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Orgad Shaneh
2018-10-25 11:31:41 +03:00
committed by Orgad Shaneh
parent d05fe2fe15
commit 4162543cf2
2 changed files with 5 additions and 4 deletions

View File

@@ -262,9 +262,9 @@ bool QbsBuildStep::hasCustomInstallRoot() const
return m_qbsConfiguration.contains(Constants::QBS_INSTALL_ROOT_KEY); return m_qbsConfiguration.contains(Constants::QBS_INSTALL_ROOT_KEY);
} }
Utils::FileName QbsBuildStep::installRoot() const Utils::FileName QbsBuildStep::installRoot(VariableHandling variableHandling) const
{ {
Utils::FileName root = Utils::FileName::fromString(m_qbsConfiguration Utils::FileName root = Utils::FileName::fromString(qbsConfiguration(variableHandling)
.value(Constants::QBS_INSTALL_ROOT_KEY).toString()); .value(Constants::QBS_INSTALL_ROOT_KEY).toString());
if (root.isNull()) { if (root.isNull()) {
const QbsBuildConfiguration * const bc const QbsBuildConfiguration * const bc
@@ -559,6 +559,7 @@ QbsBuildStepConfigWidget::QbsBuildStepConfigWidget(QbsBuildStep *step) :
auto chooser = new Core::VariableChooser(this); auto chooser = new Core::VariableChooser(this);
chooser->addSupportedWidget(m_ui->propertyEdit); chooser->addSupportedWidget(m_ui->propertyEdit);
chooser->addSupportedWidget(m_ui->installDirChooser->lineEdit());
m_ui->propertyEdit->setValidationFunction([this](Utils::FancyLineEdit *edit, m_ui->propertyEdit->setValidationFunction([this](Utils::FancyLineEdit *edit,
QString *errorMessage) { QString *errorMessage) {
return validateProperties(edit, errorMessage); return validateProperties(edit, errorMessage);
@@ -617,7 +618,7 @@ void QbsBuildStepConfigWidget::updateState()
m_ui->forceProbesCheckBox->setChecked(m_step->forceProbes()); m_ui->forceProbesCheckBox->setChecked(m_step->forceProbes());
updatePropertyEdit(m_step->qbsConfiguration(QbsBuildStep::PreserveVariables)); updatePropertyEdit(m_step->qbsConfiguration(QbsBuildStep::PreserveVariables));
m_ui->qmlDebuggingLibraryCheckBox->setChecked(m_step->isQmlDebuggingEnabled()); m_ui->qmlDebuggingLibraryCheckBox->setChecked(m_step->isQmlDebuggingEnabled());
m_ui->installDirChooser->setFileName(m_step->installRoot()); m_ui->installDirChooser->setFileName(m_step->installRoot(QbsBuildStep::PreserveVariables));
m_ui->defaultInstallDirCheckBox->setChecked(!m_step->hasCustomInstallRoot()); m_ui->defaultInstallDirCheckBox->setChecked(!m_step->hasCustomInstallRoot());
} }

View File

@@ -75,7 +75,7 @@ public:
bool install() const; bool install() const;
bool cleanInstallRoot() const; bool cleanInstallRoot() const;
bool hasCustomInstallRoot() const; bool hasCustomInstallRoot() const;
Utils::FileName installRoot() const; Utils::FileName installRoot(VariableHandling variableHandling = ExpandVariables) const;
int maxJobs() const; int maxJobs() const;
QString buildVariant() const; QString buildVariant() const;