From a3593b03ee3c6ba7ea2727fe18988f388151dd7a Mon Sep 17 00:00:00 2001 From: Tobias Hunger <tobias.hunger@nokia.com> Date: Thu, 31 Mar 2011 16:55:20 +0200 Subject: [PATCH] Qt: Mark invalid Qt versions in the options page --- src/plugins/qt4projectmanager/qtoptionspage.cpp | 14 +++++++++++++- src/plugins/qt4projectmanager/qtoptionspage.h | 3 +++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/plugins/qt4projectmanager/qtoptionspage.cpp b/src/plugins/qt4projectmanager/qtoptionspage.cpp index 026f2947638..1a5532b5c2e 100644 --- a/src/plugins/qt4projectmanager/qtoptionspage.cpp +++ b/src/plugins/qt4projectmanager/qtoptionspage.cpp @@ -134,6 +134,7 @@ QtOptionsPageWidget::QtOptionsPageWidget(QWidget *parent, QList<QtVersion *> ver , m_ui(new Internal::Ui::QtVersionManager()) , m_versionUi(new Internal::Ui::QtVersionInfo()) , m_debuggingHelperUi(new Internal::Ui::DebuggingHelper()) + , m_invalidVersionIcon(":/projectexplorer/images/compile_error.png") { // Initialize m_versions foreach(QtVersion *version, versions) @@ -141,6 +142,7 @@ QtOptionsPageWidget::QtOptionsPageWidget(QWidget *parent, QList<QtVersion *> ver QWidget *versionInfoWidget = new QWidget(); m_versionUi->setupUi(versionInfoWidget); + m_versionUi->qmakePath->setExpectedKind(Utils::PathChooser::ExistingCommand); m_versionUi->qmakePath->setPromptDialogTitle(tr("Select qmake Executable")); m_versionUi->s60SDKPath->setExpectedKind(Utils::PathChooser::ExistingDirectory); @@ -554,7 +556,6 @@ void QtOptionsPageWidget::updateDebuggingHelperUi() m_debuggingHelperUi->qmlDebuggingLibBuildButton->setEnabled(canBuildQmlDebuggingLib && !isBuildingQmlDebuggingLib); - QString qmlObserverStatusText; Qt::TextInteractionFlags qmlObserverStatusTextFlags = Qt::NoTextInteraction; if (hasQmlObserver) { @@ -591,6 +592,17 @@ void QtOptionsPageWidget::updateDebuggingHelperUi() void QtOptionsPageWidget::updateState() { + for (int i = 0; i < m_versions.count(); ++i) { + QTreeWidgetItem *item = treeItemForIndex(i); + if (!m_versions.at(i)->isValid()) { + if (item) + item->setIcon(0, m_invalidVersionIcon); + } else { + if (item) + item->setIcon(0, m_validVersionIcon); + } + } + const QtVersion *version = currentVersion(); const bool enabled = version != 0; const bool isAutodetected = enabled && version->isAutodetected(); diff --git a/src/plugins/qt4projectmanager/qtoptionspage.h b/src/plugins/qt4projectmanager/qtoptionspage.h index db40b9f212f..40ca1a83861 100644 --- a/src/plugins/qt4projectmanager/qtoptionspage.h +++ b/src/plugins/qt4projectmanager/qtoptionspage.h @@ -30,6 +30,7 @@ ** Nokia at qt-info@nokia.com. ** **************************************************************************/ + #ifndef QTOPTIONSPAGE_H #define QTOPTIONSPAGE_H @@ -86,6 +87,8 @@ private: Internal::Ui::DebuggingHelper *m_debuggingHelperUi; QList<QtVersion *> m_versions; int m_defaultVersion; + QIcon m_invalidVersionIcon; + QIcon m_validVersionIcon; private slots: void versionChanged(QTreeWidgetItem *item, QTreeWidgetItem *old); -- GitLab