forked from qt-creator/qt-creator
CMake: Show executable in Run Configuration
Task-number: QTCREATORBUG-18173 Change-Id: If512991873121151e18b56781729f6b841796549 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -37,6 +37,7 @@
|
|||||||
#include <projectexplorer/target.h>
|
#include <projectexplorer/target.h>
|
||||||
|
|
||||||
#include <utils/detailswidget.h>
|
#include <utils/detailswidget.h>
|
||||||
|
#include <utils/fancylineedit.h>
|
||||||
#include <utils/pathchooser.h>
|
#include <utils/pathchooser.h>
|
||||||
#include <utils/qtcassert.h>
|
#include <utils/qtcassert.h>
|
||||||
#include <utils/qtcprocess.h>
|
#include <utils/qtcprocess.h>
|
||||||
@@ -177,6 +178,14 @@ QString CMakeRunConfiguration::disabledReason() const
|
|||||||
return QString();
|
return QString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void updateExecutable(CMakeRunConfiguration *rc, Utils::FancyLineEdit *fle)
|
||||||
|
{
|
||||||
|
const Runnable runnable = rc->runnable();
|
||||||
|
fle->setText(runnable.is<StandardRunnable>()
|
||||||
|
? Utils::FileName::fromString(runnable.as<StandardRunnable>().executable).toUserOutput()
|
||||||
|
: QString());
|
||||||
|
}
|
||||||
|
|
||||||
// Configuration widget
|
// Configuration widget
|
||||||
CMakeRunConfigurationWidget::CMakeRunConfigurationWidget(CMakeRunConfiguration *cmakeRunConfiguration, QWidget *parent)
|
CMakeRunConfigurationWidget::CMakeRunConfigurationWidget(CMakeRunConfiguration *cmakeRunConfiguration, QWidget *parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
@@ -185,6 +194,16 @@ CMakeRunConfigurationWidget::CMakeRunConfigurationWidget(CMakeRunConfiguration *
|
|||||||
fl->setMargin(0);
|
fl->setMargin(0);
|
||||||
fl->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow);
|
fl->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow);
|
||||||
|
|
||||||
|
auto executableLabel = new QLabel(tr("Executable:"));
|
||||||
|
auto executable = new Utils::FancyLineEdit;
|
||||||
|
executable->setReadOnly(true);
|
||||||
|
executable->setPlaceholderText(tr("<unknown>"));
|
||||||
|
connect(cmakeRunConfiguration, &CMakeRunConfiguration::enabledChanged,
|
||||||
|
this, std::bind(updateExecutable, cmakeRunConfiguration, executable));
|
||||||
|
updateExecutable(cmakeRunConfiguration, executable);
|
||||||
|
|
||||||
|
fl->addRow(executableLabel, executable);
|
||||||
|
|
||||||
cmakeRunConfiguration->extraAspect<ArgumentsAspect>()->addToMainConfigurationWidget(this, fl);
|
cmakeRunConfiguration->extraAspect<ArgumentsAspect>()->addToMainConfigurationWidget(this, fl);
|
||||||
cmakeRunConfiguration->extraAspect<WorkingDirectoryAspect>()->addToMainConfigurationWidget(this, fl);
|
cmakeRunConfiguration->extraAspect<WorkingDirectoryAspect>()->addToMainConfigurationWidget(this, fl);
|
||||||
cmakeRunConfiguration->extraAspect<TerminalAspect>()->addToMainConfigurationWidget(this, fl);
|
cmakeRunConfiguration->extraAspect<TerminalAspect>()->addToMainConfigurationWidget(this, fl);
|
||||||
|
Reference in New Issue
Block a user