From 866e39a0a245cceb79bccd70667e6071e92bfda8 Mon Sep 17 00:00:00 2001
From: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Date: Tue, 22 Mar 2011 12:44:29 +0100
Subject: [PATCH] Target dialog: Set a tooltip containing Qt version info.

Introduce verbose flag and display QtVersion tooltip on
checkbox.

Reviewed-by: dt
---
 src/plugins/qt4projectmanager/qt4target.cpp        |  4 ++++
 src/plugins/qt4projectmanager/qtoptionspage.cpp    |  2 +-
 src/plugins/qt4projectmanager/qtversionmanager.cpp | 14 ++++++++------
 src/plugins/qt4projectmanager/qtversionmanager.h   |  2 +-
 4 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/src/plugins/qt4projectmanager/qt4target.cpp b/src/plugins/qt4projectmanager/qt4target.cpp
index 4019e644b43..855342da07b 100644
--- a/src/plugins/qt4projectmanager/qt4target.cpp
+++ b/src/plugins/qt4projectmanager/qt4target.cpp
@@ -593,6 +593,8 @@ void Qt4DefaultTargetSetupWidget::createImportWidget(const BuildConfigurationInf
     QCheckBox *checkBox = new QCheckBox;
     checkBox->setText(tr("Import build from %1").arg(info.directory));
     checkBox->setChecked(m_importEnabled.at(pos));
+    if (info.version)
+        checkBox->setToolTip(info.version->toHtml(false));
     m_importLayout->addWidget(checkBox, pos, 0, 1, 2);
 
     connect(checkBox, SIGNAL(toggled(bool)),
@@ -611,6 +613,8 @@ void Qt4DefaultTargetSetupWidget::setupWidgets()
         QCheckBox *checkbox = new QCheckBox;
         checkbox->setText(displayNameFrom(info));
         checkbox->setChecked(m_enabled.at(i));
+        if (info.version)
+            checkbox->setToolTip(info.version->toHtml(false));
         m_newBuildsLayout->addWidget(checkbox, i * 2, 0);
 
         Utils::PathChooser *pathChooser = new Utils::PathChooser();
diff --git a/src/plugins/qt4projectmanager/qtoptionspage.cpp b/src/plugins/qt4projectmanager/qtoptionspage.cpp
index 7ad7caa4cef..45d2476b92f 100644
--- a/src/plugins/qt4projectmanager/qtoptionspage.cpp
+++ b/src/plugins/qt4projectmanager/qtoptionspage.cpp
@@ -230,7 +230,7 @@ bool QtOptionsPageWidget::eventFilter(QObject *o, QEvent *e)
     const int index = indexForTreeItem(item);
     if (index == -1)
         return false;
-    const QString tooltip = m_versions.at(index)->toHtml();
+    const QString tooltip = m_versions.at(index)->toHtml(true);
     QToolTip::showText(helpEvent->globalPos(), tooltip, m_ui->qtdirList);
     helpEvent->accept();
     return true;
diff --git a/src/plugins/qt4projectmanager/qtversionmanager.cpp b/src/plugins/qt4projectmanager/qtversionmanager.cpp
index c9f4bd2fabf..b4e74c24895 100644
--- a/src/plugins/qt4projectmanager/qtversionmanager.cpp
+++ b/src/plugins/qt4projectmanager/qtversionmanager.cpp
@@ -698,7 +698,7 @@ QtVersion::~QtVersion()
 {
 }
 
-QString QtVersion::toHtml() const
+QString QtVersion::toHtml(bool verbose) const
 {
     QString rc;
     QTextStream str(&rc);
@@ -729,11 +729,13 @@ QString QtVersion::toHtml() const
         } // default config.
         str << "<tr><td><b>" << QtVersionManager::tr("Version:")
             << "</b></td><td>" << qtVersionString() << "</td></tr>";
-        const QHash<QString,QString> vInfo = versionInfo();
-        if (!vInfo.isEmpty()) {
-            const QHash<QString,QString>::const_iterator vcend = vInfo.constEnd();
-            for (QHash<QString,QString>::const_iterator it = vInfo.constBegin(); it != vcend; ++it)
-                str << "<tr><td><pre>" << it.key() <<  "</pre></td><td>" << it.value() << "</td></tr>";
+        if (verbose) {
+            const QHash<QString,QString> vInfo = versionInfo();
+            if (!vInfo.isEmpty()) {
+                const QHash<QString,QString>::const_iterator vcend = vInfo.constEnd();
+                for (QHash<QString,QString>::const_iterator it = vInfo.constBegin(); it != vcend; ++it)
+                    str << "<tr><td><pre>" << it.key() <<  "</pre></td><td>" << it.value() << "</td></tr>";
+            }
         }
     }
     str << "</table></body></html>";
diff --git a/src/plugins/qt4projectmanager/qtversionmanager.h b/src/plugins/qt4projectmanager/qtversionmanager.h
index 2da91fd346d..b5cb9133602 100644
--- a/src/plugins/qt4projectmanager/qtversionmanager.h
+++ b/src/plugins/qt4projectmanager/qtversionmanager.h
@@ -182,7 +182,7 @@ public:
     Q_DECLARE_FLAGS(QmakeBuildConfigs, QmakeBuildConfig)
 
     QmakeBuildConfigs defaultBuildConfig() const;
-    QString toHtml() const;
+    QString toHtml(bool verbose) const;
 
     bool supportsShadowBuilds() const;
 
-- 
GitLab