forked from qt-creator/qt-creator
Qbs: Properly initialize "Run in Terminal" based on qbs properties
"Run in Terminal" is checked/unchecked according to the consoleApplication property found in qbs. Rename the forceGuiMode method to better describe what it is used for. Change-Id: I485058c85563cf4d3ced0d1a5f8cb1bf89791750 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -141,6 +141,9 @@ void QbsRunConfiguration::ctor()
|
|||||||
connect(target(), SIGNAL(activeDeployConfigurationChanged(ProjectExplorer::DeployConfiguration*)),
|
connect(target(), SIGNAL(activeDeployConfigurationChanged(ProjectExplorer::DeployConfiguration*)),
|
||||||
this, SLOT(installStepChanged()));
|
this, SLOT(installStepChanged()));
|
||||||
installStepChanged();
|
installStepChanged();
|
||||||
|
|
||||||
|
if (isConsoleApplication())
|
||||||
|
m_runMode = Console;
|
||||||
}
|
}
|
||||||
|
|
||||||
QWidget *QbsRunConfiguration::createConfigurationWidget()
|
QWidget *QbsRunConfiguration::createConfigurationWidget()
|
||||||
@@ -206,13 +209,10 @@ QString QbsRunConfiguration::executable() const
|
|||||||
|
|
||||||
ProjectExplorer::LocalApplicationRunConfiguration::RunMode QbsRunConfiguration::runMode() const
|
ProjectExplorer::LocalApplicationRunConfiguration::RunMode QbsRunConfiguration::runMode() const
|
||||||
{
|
{
|
||||||
if (forcedGuiMode())
|
|
||||||
return LocalApplicationRunConfiguration::Gui;
|
|
||||||
|
|
||||||
return m_runMode;
|
return m_runMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool QbsRunConfiguration::forcedGuiMode() const
|
bool QbsRunConfiguration::isConsoleApplication() const
|
||||||
{
|
{
|
||||||
QbsProject *pro = static_cast<QbsProject *>(target()->project());
|
QbsProject *pro = static_cast<QbsProject *>(target()->project());
|
||||||
const qbs::ProductData product = findProduct(pro->qbsProjectData(), m_qbsProduct);
|
const qbs::ProductData product = findProduct(pro->qbsProjectData(), m_qbsProduct);
|
||||||
@@ -388,8 +388,6 @@ QbsRunConfigurationWidget::QbsRunConfigurationWidget(QbsRunConfiguration *rc, QW
|
|||||||
|
|
||||||
QHBoxLayout *innerBox = new QHBoxLayout();
|
QHBoxLayout *innerBox = new QHBoxLayout();
|
||||||
m_useTerminalCheck = new QCheckBox(tr("Run in terminal"), this);
|
m_useTerminalCheck = new QCheckBox(tr("Run in terminal"), this);
|
||||||
m_useTerminalCheck->setChecked(m_rc->runMode() == ProjectExplorer::LocalApplicationRunConfiguration::Console);
|
|
||||||
m_useTerminalCheck->setVisible(!m_rc->forcedGuiMode());
|
|
||||||
innerBox->addWidget(m_useTerminalCheck);
|
innerBox->addWidget(m_useTerminalCheck);
|
||||||
|
|
||||||
innerBox->addStretch();
|
innerBox->addStretch();
|
||||||
@@ -436,6 +434,8 @@ void QbsRunConfigurationWidget::runConfigurationEnabledChange()
|
|||||||
m_disabledIcon->setVisible(!enabled);
|
m_disabledIcon->setVisible(!enabled);
|
||||||
m_disabledReason->setVisible(!enabled);
|
m_disabledReason->setVisible(!enabled);
|
||||||
m_disabledReason->setText(m_rc->disabledReason());
|
m_disabledReason->setText(m_rc->disabledReason());
|
||||||
|
|
||||||
|
m_useTerminalCheck->setChecked(m_rc->runMode() == ProjectExplorer::LocalApplicationRunConfiguration::Console);
|
||||||
targetInformationHasChanged();
|
targetInformationHasChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -495,10 +495,8 @@ void QbsRunConfigurationWidget::commandLineArgumentsChanged(const QString &args)
|
|||||||
|
|
||||||
void QbsRunConfigurationWidget::runModeChanged(ProjectExplorer::LocalApplicationRunConfiguration::RunMode runMode)
|
void QbsRunConfigurationWidget::runModeChanged(ProjectExplorer::LocalApplicationRunConfiguration::RunMode runMode)
|
||||||
{
|
{
|
||||||
if (!m_ignoreChange) {
|
if (!m_ignoreChange)
|
||||||
m_useTerminalCheck->setVisible(!m_rc->forcedGuiMode());
|
|
||||||
m_useTerminalCheck->setChecked(runMode == ProjectExplorer::LocalApplicationRunConfiguration::Console);
|
m_useTerminalCheck->setChecked(runMode == ProjectExplorer::LocalApplicationRunConfiguration::Console);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// --------------------------------------------------------------------
|
// --------------------------------------------------------------------
|
||||||
|
|||||||
@@ -78,7 +78,6 @@ public:
|
|||||||
|
|
||||||
QString executable() const;
|
QString executable() const;
|
||||||
RunMode runMode() const;
|
RunMode runMode() const;
|
||||||
bool forcedGuiMode() const;
|
|
||||||
QString workingDirectory() const;
|
QString workingDirectory() const;
|
||||||
QString commandLineArguments() const;
|
QString commandLineArguments() const;
|
||||||
|
|
||||||
@@ -91,6 +90,7 @@ public:
|
|||||||
void addToBaseEnvironment(Utils::Environment &env) const;
|
void addToBaseEnvironment(Utils::Environment &env) const;
|
||||||
|
|
||||||
QString qbsProduct() const;
|
QString qbsProduct() const;
|
||||||
|
bool isConsoleApplication() const;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void commandLineArgumentsChanged(const QString&);
|
void commandLineArgumentsChanged(const QString&);
|
||||||
|
|||||||
Reference in New Issue
Block a user