diff --git a/src/plugins/analyzerbase/analyzerruncontrol.cpp b/src/plugins/analyzerbase/analyzerruncontrol.cpp index e46aac0b617b7acf4c854f5be86a2299c5a62e85..55058f13ebffc9e8b8d19de5bde31924d412ebd2 100644 --- a/src/plugins/analyzerbase/analyzerruncontrol.cpp +++ b/src/plugins/analyzerbase/analyzerruncontrol.cpp @@ -169,6 +169,11 @@ QString AnalyzerRunControl::displayName() const return AnalyzerManager::instance()->currentTool()->displayName(); } +QIcon AnalyzerRunControl::icon() const +{ + return QIcon(QLatin1String(":/images/analyzer_start_small.png")); +} + void AnalyzerRunControl::receiveStandardOutput(const QString &text) { appendMessage(text, ProjectExplorer::StdOutFormat); diff --git a/src/plugins/analyzerbase/analyzerruncontrol.h b/src/plugins/analyzerbase/analyzerruncontrol.h index dbb498025f793917ddede9041fb92b6d441cb59a..03333d06a5827aa87add8145ba79e738b935ed51 100644 --- a/src/plugins/analyzerbase/analyzerruncontrol.h +++ b/src/plugins/analyzerbase/analyzerruncontrol.h @@ -91,6 +91,7 @@ public: StopResult stop(); bool isRunning() const; QString displayName() const; + QIcon icon() const; private slots: void receiveStandardOutput(const QString &); diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp index daed9af1f9db55cec47443a522776ada7fc3c082..2e8f4135f41b94efc98f75921d5220ad4b16a885 100644 --- a/src/plugins/debugger/debuggerrunner.cpp +++ b/src/plugins/debugger/debuggerrunner.cpp @@ -227,6 +227,11 @@ QString DebuggerRunControl::displayName() const return d->m_engine->startParameters().displayName; } +QIcon DebuggerRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_DEBUG_SMALL); +} + void DebuggerRunControl::setCustomEnvironment(Utils::Environment env) { QTC_ASSERT(d->m_engine, return); diff --git a/src/plugins/debugger/debuggerrunner.h b/src/plugins/debugger/debuggerrunner.h index 70991889ff7f32a437811489bc0d7cadee29a84f..fdc5371b7450c1688d2e901217c1c72ee4ef9e18 100644 --- a/src/plugins/debugger/debuggerrunner.h +++ b/src/plugins/debugger/debuggerrunner.h @@ -96,6 +96,7 @@ public: StopResult stop(); // Called from SnapshotWindow. bool isRunning() const; QString displayName() const; + QIcon icon() const; void setCustomEnvironment(Utils::Environment env); void startFailed(); diff --git a/src/plugins/projectexplorer/localapplicationruncontrol.cpp b/src/plugins/projectexplorer/localapplicationruncontrol.cpp index d932a19f7d2778d8f07c1f945b4f86ea7f11a870..e778e3831947756ea8605335cce2ccf834cc229e 100644 --- a/src/plugins/projectexplorer/localapplicationruncontrol.cpp +++ b/src/plugins/projectexplorer/localapplicationruncontrol.cpp @@ -122,6 +122,11 @@ bool LocalApplicationRunControl::isRunning() const return m_applicationLauncher.isRunning(); } +QIcon LocalApplicationRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_RUN_SMALL); +} + void LocalApplicationRunControl::slotAppendMessage(const QString &err, OutputFormat format) { diff --git a/src/plugins/projectexplorer/localapplicationruncontrol.h b/src/plugins/projectexplorer/localapplicationruncontrol.h index 061f4a317bfb342ca6fa2c9161bd81fccc211489..a796fe999cbdf1baf6433d5dae1ee28f41959795 100644 --- a/src/plugins/projectexplorer/localapplicationruncontrol.h +++ b/src/plugins/projectexplorer/localapplicationruncontrol.h @@ -63,6 +63,7 @@ public: virtual void start(); virtual StopResult stop(); virtual bool isRunning() const; + virtual QIcon icon() const; private slots: void processExited(int exitCode); void slotAppendMessage(const QString &err, ProjectExplorer::OutputFormat isError); diff --git a/src/plugins/projectexplorer/outputwindow.cpp b/src/plugins/projectexplorer/outputwindow.cpp index be044ae4f05bda28d5ed7e6b8bcb9b109513e811..4d738e347c496433e0acd433c14467ff2a7e4620 100644 --- a/src/plugins/projectexplorer/outputwindow.cpp +++ b/src/plugins/projectexplorer/outputwindow.cpp @@ -88,11 +88,8 @@ OutputPane::OutputPane() : m_reRunButton(new QToolButton), m_stopButton(new QToolButton) { - m_runIcon.addFile(Constants::ICON_RUN); - m_runIcon.addFile(Constants::ICON_RUN_SMALL); - // Rerun - m_reRunButton->setIcon(m_runIcon); + m_reRunButton->setIcon(QIcon(ProjectExplorer::Constants::ICON_RUN_SMALL)); m_reRunButton->setToolTip(tr("Re-run this run-configuration")); m_reRunButton->setAutoRaise(true); m_reRunButton->setEnabled(false); @@ -396,7 +393,7 @@ void OutputPane::tabChanged(int i) RunControl *rc = m_runControlTabs.at(index).runControl; m_stopAction->setEnabled(rc->isRunning()); m_reRunButton->setEnabled(!rc->isRunning()); - m_reRunButton->setIcon(m_runIcon); + m_reRunButton->setIcon(rc->icon()); } } @@ -406,7 +403,7 @@ void OutputPane::runControlStarted() if (current && current == sender()) { m_reRunButton->setEnabled(false); m_stopAction->setEnabled(true); - m_reRunButton->setIcon(m_runIcon); + m_reRunButton->setIcon(current->icon()); } } @@ -427,7 +424,7 @@ void OutputPane::runControlFinished() if (current && current == sender()) { m_reRunButton->setEnabled(true); m_stopAction->setEnabled(false); - m_reRunButton->setIcon(m_runIcon); + m_reRunButton->setIcon(current->icon()); } // Check for asynchronous close. Close the tab. if (m_runControlTabs.at(senderIndex).asyncClosing) diff --git a/src/plugins/projectexplorer/outputwindow.h b/src/plugins/projectexplorer/outputwindow.h index 76a439d7cfb0a082056e0f7f84011afa7626dc72..8b7216a294ce0b0e13cea50565465d1bc4afc1a9 100644 --- a/src/plugins/projectexplorer/outputwindow.h +++ b/src/plugins/projectexplorer/outputwindow.h @@ -146,7 +146,6 @@ private: QAction *m_stopAction; QToolButton *m_reRunButton; QToolButton *m_stopButton; - QIcon m_runIcon; }; diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h index faf8a95aa98c46da5d13e8a20758cad9864bed0d..50ac67a1548b6af1f3386f60245d67230c5f3b05 100644 --- a/src/plugins/projectexplorer/runconfiguration.h +++ b/src/plugins/projectexplorer/runconfiguration.h @@ -42,6 +42,7 @@ #include <QtCore/QMetaType> #include <QtCore/QWeakPointer> #include <QtGui/QWidget> +#include <QtGui/QIcon> namespace ProjectExplorer { @@ -252,6 +253,10 @@ public: virtual StopResult stop() = 0; virtual bool isRunning() const = 0; virtual QString displayName() const; + /// \returns the icon to be shown in the outputwindow + // TODO the icon differs currently only per "mode" + // so this is more flexibel then it needs to be + virtual QIcon icon() const = 0; bool sameRunConfiguration(const RunControl *other) const; diff --git a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp index 01620f96e066aed11dc023ece4b21ace2403ad4d..edee8661ab3be7cc3708e3762dcacebf36c025e4 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.cpp @@ -113,6 +113,11 @@ bool QmlRunControl::isRunning() const return m_applicationLauncher.isRunning(); } +QIcon QmlRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_RUN_SMALL); +} + void QmlRunControl::slotBringApplicationToForeground(qint64 pid) { bringApplicationToForeground(pid); diff --git a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h index 5def7465962d763e876bbd23423806b7bf00eb70..df44e440339a49ef707574e2c24c8c63ced5d257 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h +++ b/src/plugins/qmlprojectmanager/qmlprojectruncontrol.h @@ -54,6 +54,7 @@ public: virtual void start(); virtual StopResult stop(); virtual bool isRunning() const; + virtual QIcon icon() const; private slots: void processExited(int exitCode); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp index 432f76695c383d7dcdf5bb7d05b85fa688f9c03f..e5ffd635e77685bf21d0fd0bd3d118efc0d884c8 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.cpp @@ -140,6 +140,11 @@ bool MaemoRunControl::isRunning() const return m_running; } +QIcon MaemoRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_RUN_SMALL); +} + void MaemoRunControl::handleError(const QString &errString) { stop(); diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h index 5e92064fa33d213d261994b52639d3df0895a2b5..5b81cb8ba262550d161c57e435ae7613c96e70f2 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemoruncontrol.h @@ -55,6 +55,7 @@ public: virtual void start(); virtual StopResult stop(); virtual bool isRunning() const; + virtual QIcon icon() const; private slots: void startExecution(); diff --git a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp index ac5977d0d4082af68a660ff27e54842900b0a49a..2bdf165c53e09ddec79daa5f8bcb61790c69caa1 100644 --- a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.cpp @@ -47,6 +47,7 @@ #include <coreplugin/icore.h> #include <utils/qtcassert.h> +#include <projectexplorer/projectexplorerconstants.h> #include <symbianutils/symbiandevicemanager.h> @@ -110,6 +111,11 @@ bool CodaRunControl::isRunning() const return m_state >= StateConnecting; } +QIcon CodaRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_DEBUG_SMALL); +} + bool CodaRunControl::setupLauncher() { QTC_ASSERT(!m_codaDevice, return false); diff --git a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h index 72a667062e4d5477a827fc102f90b53c96937890..382b0f9f64b50c82148e38d844f70641600ab513 100644 --- a/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-s60/codaruncontrol.h @@ -63,6 +63,7 @@ public: virtual ~CodaRunControl(); virtual bool isRunning() const; + virtual QIcon icon() const; static QMessageBox *createCodaWaitingMessageBox(QWidget *parent = 0); diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp index 343c23e9dd4d5ea9f9a30cc402341f01ebba2a96..1bbde9567e4715abe0829a4e674ebac2a85f9d3e 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.cpp @@ -40,6 +40,8 @@ #include "qt4projectmanagerconstants.h" #include "qtoutputformatter.h" +#include <projectexplorer/projectexplorerconstants.h> + #include <utils/qtcassert.h> #include <utils/detailswidget.h> @@ -369,6 +371,11 @@ bool S60EmulatorRunControl::isRunning() const return m_applicationLauncher.isRunning(); } +QIcon S60EmulatorRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_RUN_SMALL); +} + void S60EmulatorRunControl::slotError(const QString & err) { appendMessage(err, ErrorMessageFormat); diff --git a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h index 38162aba356511e65af959a8ad9b3ffe017dad74..b7bf4427ea6ae766fe869e7a49696a88f36f8622 100644 --- a/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h +++ b/src/plugins/qt4projectmanager/qt-s60/s60emulatorrunconfiguration.h @@ -146,6 +146,7 @@ public: void start(); virtual StopResult stop(); bool isRunning() const; + QIcon icon() const; private slots: void processExited(int exitCode); diff --git a/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.cpp b/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.cpp index c60478385cdc3b3d81620099a19b6c955854fa68..8985565b8bf3d3c2b8f728b1396a073c58803e80 100644 --- a/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.cpp +++ b/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.cpp @@ -45,6 +45,7 @@ #include <symbianutils/bluetoothlistener_gui.h> #include <symbianutils/launcher.h> #include <symbianutils/symbiandevicemanager.h> +#include <projectexplorer/projectexplorerconstants.h> #include <utils/qtcassert.h> @@ -97,7 +98,11 @@ bool TrkRunControl::isRunning() const return m_launcher && (m_launcher->state() == trk::Launcher::Connecting || m_launcher->state() == trk::Launcher::Connected || m_launcher->state() == trk::Launcher::WaitingForTrk); +} +QIcon TrkRunControl::icon() const +{ + return QIcon(ProjectExplorer::Constants::ICON_DEBUG_SMALL); } bool TrkRunControl::setupLauncher() diff --git a/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.h b/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.h index 8bb4c58d8a8f86993e52428f2c44b75e64b192cd..d1ad5b2032d8f767608c433811f2c333b48554bb 100644 --- a/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.h +++ b/src/plugins/qt4projectmanager/qt-s60/trkruncontrol.h @@ -60,6 +60,7 @@ public: TrkRunControl(ProjectExplorer::RunConfiguration *runConfiguration, const QString &mode); ~TrkRunControl(); virtual bool isRunning() const; + virtual QIcon icon() const; static QMessageBox *createTrkWaitingMessageBox(const QString &port, QWidget *parent = 0);