diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp index b51748f33fa..c86c696eaeb 100644 --- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp +++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp @@ -324,6 +324,13 @@ bool CMakeRunConfiguration::isEnabled() const return m_enabled; } +QString CMakeRunConfiguration::disabledReason() const +{ + if (!m_enabled) + return tr("The executable is not built by the current buildconfiguration"); + return QString(); +} + // Configuration widget CMakeRunConfigurationWidget::CMakeRunConfigurationWidget(CMakeRunConfiguration *cmakeRunConfiguration, QWidget *parent) : QWidget(parent), m_ignoreChange(false), m_cmakeRunConfiguration(cmakeRunConfiguration) diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h index 7e4413d069f..3fd6c6008df 100644 --- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h +++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h @@ -91,6 +91,7 @@ public: void setEnabled(bool b); bool isEnabled() const; + QString disabledReason() const; signals: void baseEnvironmentChanged(); diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp index 6e56f6ac02d..c4f1f2cd7e9 100644 --- a/src/plugins/projectexplorer/runconfiguration.cpp +++ b/src/plugins/projectexplorer/runconfiguration.cpp @@ -206,6 +206,11 @@ bool RunConfiguration::isEnabled() const return true; } +QString RunConfiguration::disabledReason() const +{ + return QString(); +} + /*! \fn virtual QWidget *ProjectExplorer::RunConfiguration::createConfigurationWidget() diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h index 94095fa6051..862edd28218 100644 --- a/src/plugins/projectexplorer/runconfiguration.h +++ b/src/plugins/projectexplorer/runconfiguration.h @@ -60,6 +60,7 @@ public: virtual ~RunConfiguration(); virtual bool isEnabled() const; + virtual QString disabledReason() const; virtual QWidget *createConfigurationWidget() = 0; Target *target() const; diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp index 07d6ac1f073..b3481695481 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp @@ -91,6 +91,13 @@ bool QmlProjectRunConfiguration::isEnabled() const return m_isEnabled; } +QString QmlProjectRunConfiguration::disabledReason() const +{ + if (!m_isEnabled) + return tr("No qmlviewer or qmlobserver found."); + return QString(); +} + void QmlProjectRunConfiguration::ctor() { // reset default settings in constructor diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h index 247692b6bcf..63c3087c9bc 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h @@ -98,6 +98,7 @@ public: // RunConfiguration bool isEnabled() const; + QString disabledReason() const; virtual QWidget *createConfigurationWidget(); Utils::OutputFormatter *createOutputFormatter() const; QVariantMap toMap() const; diff --git a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp index 80174fa2791..7659d889517 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp @@ -143,6 +143,13 @@ bool Qt4RunConfiguration::isEnabled() const return m_parseSuccess; } +QString Qt4RunConfiguration::disabledReason() const +{ + if (!m_parseSuccess) + return tr("The .pro file could not be parsed"); + return QString(); +} + void Qt4RunConfiguration::handleParseState(bool success) { bool enabled = isEnabled(); diff --git a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.h b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.h index 645c287ddf8..5548d99980b 100644 --- a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.h @@ -83,6 +83,7 @@ public: Qt4DesktopTarget *qt4Target() const; virtual bool isEnabled() const; + virtual QString disabledReason() const; virtual QWidget *createConfigurationWidget(); virtual QString executable() const; diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp index 39ce10b1b10..6617fc7fb85 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.cpp @@ -161,6 +161,13 @@ bool S60DeviceRunConfiguration::isEnabled() const return m_validParse; } +QString S60DeviceRunConfiguration::disabledReason() const +{ + if (!m_validParse) + return tr("The .pro file could not be parsed"); + return QString(); +} + QWidget *S60DeviceRunConfiguration::createConfigurationWidget() { return new S60DeviceRunConfigurationWidget(this); diff --git a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h index 28131ddec19..60376571712 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60devicerunconfiguration.h @@ -68,6 +68,7 @@ public: SymbianQtVersion *qtVersion() const; bool isEnabled() const; + QString disabledReason() const; QWidget *createConfigurationWidget(); Utils::OutputFormatter *createOutputFormatter() const; diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp index ebe575706e9..11c38db1e95 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp @@ -145,6 +145,13 @@ bool S60EmulatorRunConfiguration::isEnabled() const return m_validParse; } +QString S60EmulatorRunConfiguration::disabledReason() const +{ + if (!m_validParse) + return tr("The .pro file could not be parsed"); + return QString(); +} + QWidget *S60EmulatorRunConfiguration::createConfigurationWidget() { return new S60EmulatorRunConfigurationWidget(this); diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h index e9d285cabd5..6cb24997f22 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h @@ -69,6 +69,7 @@ public: Qt4SymbianTarget *qt4Target() const; bool isEnabled() const; + QString disabledReason() const; QWidget *createConfigurationWidget(); Utils::OutputFormatter *createOutputFormatter() const; diff --git a/src/plugins/remotelinux/maemorunconfiguration.cpp b/src/plugins/remotelinux/maemorunconfiguration.cpp index 23699041cbe..4a432df2ee9 100644 --- a/src/plugins/remotelinux/maemorunconfiguration.cpp +++ b/src/plugins/remotelinux/maemorunconfiguration.cpp @@ -134,6 +134,13 @@ bool MaemoRunConfiguration::isEnabled() const return m_validParse; } +QString MaemoRunConfiguration::disabledReason() const +{ + if (!m_validParse) + return tr("The .pro file could not be parsed"); + return QString(); +} + QWidget *MaemoRunConfiguration::createConfigurationWidget() { return new MaemoRunConfigurationWidget(this); diff --git a/src/plugins/remotelinux/maemorunconfiguration.h b/src/plugins/remotelinux/maemorunconfiguration.h index 064555a3ec5..19af6153689 100644 --- a/src/plugins/remotelinux/maemorunconfiguration.h +++ b/src/plugins/remotelinux/maemorunconfiguration.h @@ -81,6 +81,7 @@ public: virtual ~MaemoRunConfiguration(); bool isEnabled() const; + QString disabledReason() const; QWidget *createConfigurationWidget(); Utils::OutputFormatter *createOutputFormatter() const; Qt4ProjectManager::Qt4BaseTarget *qt4Target() const;