diff --git a/src/plugins/projectexplorer/makestep.cpp b/src/plugins/projectexplorer/makestep.cpp index 7c7b6457148..1a54b8117ab 100644 --- a/src/plugins/projectexplorer/makestep.cpp +++ b/src/plugins/projectexplorer/makestep.cpp @@ -176,14 +176,17 @@ MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep) : item->setCheckState(m_makeStep->buildsTarget(item->text()) ? Qt::Checked : Qt::Unchecked); } - m_ui->makeLineEdit->setText(m_makeStep->makeCommand()); + m_ui->makeLineEdit->setExpectedKind(Utils::PathChooser::ExistingCommand); + m_ui->makeLineEdit->setBaseDirectory(Utils::PathChooser::homePath()); + m_ui->makeLineEdit->setHistoryCompleter("PE.MakeCommand.History"); + m_ui->makeLineEdit->setPath(m_makeStep->makeCommand()); m_ui->makeArgumentsLineEdit->setText(m_makeStep->userArguments()); updateMakeOverrideLabel(); updateDetails(); connect(m_ui->targetsList, &QListWidget::itemChanged, this, &MakeStepConfigWidget::itemChanged); - connect(m_ui->makeLineEdit, &QLineEdit::textEdited, + connect(m_ui->makeLineEdit, &Utils::PathChooser::rawPathChanged, this, &MakeStepConfigWidget::makeLineEditTextEdited); connect(m_ui->makeArgumentsLineEdit, &QLineEdit::textEdited, this, &MakeStepConfigWidget::makeArgumentsLineEditTextEdited); @@ -266,7 +269,7 @@ void MakeStepConfigWidget::itemChanged(QListWidgetItem *item) void MakeStepConfigWidget::makeLineEditTextEdited() { - m_makeStep->setMakeCommand(m_ui->makeLineEdit->text()); + m_makeStep->setMakeCommand(m_ui->makeLineEdit->rawPath()); updateDetails(); } diff --git a/src/plugins/projectexplorer/makestep.ui b/src/plugins/projectexplorer/makestep.ui index 1f91e0b5ee2..73350447d0f 100644 --- a/src/plugins/projectexplorer/makestep.ui +++ b/src/plugins/projectexplorer/makestep.ui @@ -37,7 +37,7 @@ - + @@ -67,6 +67,18 @@ + + + Utils::PathChooser + QWidget +
utils/pathchooser.h
+ 1 + + editingFinished() + browsingFinished() + +
+