diff --git a/src/plugins/cxx/cmake/project/cmakeprojectgenerator.cpp b/src/plugins/cxx/cmake/project/cmakeprojectgenerator.cpp index b5e2f9c36..192c4ad6a 100644 --- a/src/plugins/cxx/cmake/project/cmakeprojectgenerator.cpp +++ b/src/plugins/cxx/cmake/project/cmakeprojectgenerator.cpp @@ -601,8 +601,6 @@ void CmakeProjectGenerator::targetInitialized(const QString& workspace) void CmakeProjectGenerator::createTargetsRunConfigure(const QString &workDirectory, config::RunConfigure &runConfigure) { - Q_UNUSED(workDirectory) - if (!runConfigure.targetsRunConfigure.isEmpty()) return; @@ -613,6 +611,8 @@ void CmakeProjectGenerator::createTargetsRunConfigure(const QString &workDirecto TargetRunConfigure targetRunConfigure; targetRunConfigure.targetName = targetName; targetRunConfigure.targetPath = target.output; + auto targetFile = QFileInfo(targetRunConfigure.targetPath); + targetRunConfigure.workDirectory = targetFile.exists() ? targetFile.path() : workDirectory; runConfigure.targetsRunConfigure.push_back(targetRunConfigure); } diff --git a/src/plugins/cxx/cmake/project/properties/runCfgWidget/runconfigpane.cpp b/src/plugins/cxx/cmake/project/properties/runCfgWidget/runconfigpane.cpp index ad5cb24eb..57fb8106b 100644 --- a/src/plugins/cxx/cmake/project/properties/runCfgWidget/runconfigpane.cpp +++ b/src/plugins/cxx/cmake/project/properties/runCfgWidget/runconfigpane.cpp @@ -82,7 +82,6 @@ void RunConfigPane::setupUi() btnBrowser->setIconSize(QSize(24, 24)); btnBrowser->setFixedSize(36, 36); d->workingDirLineEdit = new DLineEdit(mainFrame); - d->workingDirLineEdit->lineEdit()->setReadOnly(true); connect(d->workingDirLineEdit, &DLineEdit::textChanged, [this](){ if (d->targetRunParam) d->targetRunParam->workDirectory = d->workingDirLineEdit->text().trimmed();