summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-10-10 14:15:57 +0200
committerhjk <hjk121@nokiamail.com>2014-10-10 16:23:04 +0200
commitc61804679fdb537739b3af43cc093015f303cccf (patch)
treecdf5bfeb7f94732477aacbe6ff7dc666331415f5 /src
parent46c4ab7bf9b43e5088feab54039d5de9b7165c6a (diff)
downloadqt-creator-c61804679fdb537739b3af43cc093015f303cccf.tar.gz
QtSupport: Use the new MacroExpander base
Change-Id: I8a3f3d461179ab1abf1704166ad3861645d49f99 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/qtsupport/baseqtversion.cpp6
-rw-r--r--src/plugins/qtsupport/qtkitinformation.cpp68
-rw-r--r--src/plugins/qtsupport/qtkitinformation.h2
3 files changed, 28 insertions, 48 deletions
diff --git a/src/plugins/qtsupport/baseqtversion.cpp b/src/plugins/qtsupport/baseqtversion.cpp
index fb591e0db6..6254dcab0a 100644
--- a/src/plugins/qtsupport/baseqtversion.cpp
+++ b/src/plugins/qtsupport/baseqtversion.cpp
@@ -895,7 +895,11 @@ void BaseQtVersion::parseMkSpec(ProFileEvaluator *evaluator) const
AbstractMacroExpander *BaseQtVersion::createMacroExpander() const
{
- return QtKitInformation::createMacroExpander(this);
+ return new MacroExpander([this](const QString &name, QString *ret) -> bool {
+ if (name == QLatin1String("Qt:name"))
+ return false;
+ return QtKitInformation::resolveQtMacro(this, name, ret);
+ });
}
FileName BaseQtVersion::mkspec() const
diff --git a/src/plugins/qtsupport/qtkitinformation.cpp b/src/plugins/qtsupport/qtkitinformation.cpp
index d3be8db1e9..0c5a2d1daa 100644
--- a/src/plugins/qtsupport/qtkitinformation.cpp
+++ b/src/plugins/qtsupport/qtkitinformation.cpp
@@ -40,50 +40,11 @@
#include <utils/qtcassert.h>
using namespace ProjectExplorer;
+using namespace Utils;
namespace QtSupport {
-
namespace Internal {
-static bool resolveQtMacro(const BaseQtVersion *version, const QString &name, QString *ret)
-{
- const QString noInfo = QCoreApplication::translate("QtSupport::QtKitInformation", "none");
-
- if (name == QLatin1String("Qt:version")) {
- *ret = version ? version->qtVersionString() : noInfo;
- return true;
- } else if (name == QLatin1String("Qt:name")) {
- *ret = version ? version->displayName() : noInfo;
- return true;
- } else if (name == QLatin1String("Qt:type")) {
- *ret = version ? version->type() : noInfo;
- return true;
- } else if (name == QLatin1String("Qt:mkspec")) {
- *ret = version ? version->mkspec().toUserOutput() : noInfo;
- return true;
- }
- return false;
-}
-
-class QtVersionMacroExpander : public Utils::AbstractMacroExpander
-{
-public:
- QtVersionMacroExpander(const BaseQtVersion *v) :
- qtVersion(v)
- { }
-
- bool resolveMacro(const QString &name, QString *ret)
- {
- if (name == QLatin1String("Qt:name"))
- return false;
- return resolveQtMacro(qtVersion, name, ret);
- }
-
-private:
- const BaseQtVersion *qtVersion;
-};
-
-
class QtKitInformationMacroExpander : public ProjectExplorer::KitInformationMacroExpander
{
public:
@@ -93,7 +54,7 @@ public:
bool resolveMacro(const QString &name, QString *ret)
{
- return resolveQtMacro(QtKitInformation::qtVersion(kit()), name, ret);
+ return QtKitInformation::resolveQtMacro(QtKitInformation::qtVersion(kit()), name, ret);
}
};
@@ -109,6 +70,26 @@ QtKitInformation::QtKitInformation()
this, SLOT(kitsWereLoaded()));
}
+bool QtKitInformation::resolveQtMacro(const BaseQtVersion *version, const QString &name, QString *ret)
+{
+ const QString noInfo = QCoreApplication::translate("QtSupport::QtKitInformation", "none");
+
+ if (name == QLatin1String("Qt:version")) {
+ *ret = version ? version->qtVersionString() : noInfo;
+ return true;
+ } else if (name == QLatin1String("Qt:name")) {
+ *ret = version ? version->displayName() : noInfo;
+ return true;
+ } else if (name == QLatin1String("Qt:type")) {
+ *ret = version ? version->type() : noInfo;
+ return true;
+ } else if (name == QLatin1String("Qt:mkspec")) {
+ *ret = version ? version->mkspec().toUserOutput() : noInfo;
+ return true;
+ }
+ return false;
+}
+
QVariant QtKitInformation::defaultValue(ProjectExplorer::Kit *k) const
{
Q_UNUSED(k);
@@ -190,11 +171,6 @@ Utils::AbstractMacroExpander *QtKitInformation::createMacroExpander(const Projec
return new Internal::QtKitInformationMacroExpander(k);
}
-Utils::AbstractMacroExpander *QtKitInformation::createMacroExpander(const BaseQtVersion *v)
-{
- return new Internal::QtVersionMacroExpander(v);
-}
-
Core::Id QtKitInformation::id()
{
return "QtSupport.QtInformation";
diff --git a/src/plugins/qtsupport/qtkitinformation.h b/src/plugins/qtsupport/qtkitinformation.h
index c1e6e4136e..c17bc4811e 100644
--- a/src/plugins/qtsupport/qtkitinformation.h
+++ b/src/plugins/qtsupport/qtkitinformation.h
@@ -62,7 +62,7 @@ public:
Utils::AbstractMacroExpander *createMacroExpander(const ProjectExplorer::Kit *k) const;
- static Utils::AbstractMacroExpander *createMacroExpander(const BaseQtVersion *v);
+ static bool resolveQtMacro(const BaseQtVersion *version, const QString &name, QString *ret);
static Core::Id id();
static int qtVersionId(const ProjectExplorer::Kit *k);