diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index b01024c55ed..1c73409d918 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -42,9 +42,12 @@ #include #include #include -#include -#include + #include +#include +#include + +#include /*! \class ProjectExplorer::Project @@ -98,6 +101,8 @@ public: KitMatcher m_requiredKitMatcher; KitMatcher m_preferredKitMatcher; + + Utils::MacroExpander m_macroExpander; }; ProjectPrivate::ProjectPrivate() : @@ -109,7 +114,11 @@ ProjectPrivate::~ProjectPrivate() { delete m_accessor; } Project::Project() : d(new ProjectPrivate) -{ } +{ + d->m_macroExpander.setDisplayName(tr("Project")); + d->m_macroExpander.registerVariable("Project:Name", tr("Project Name"), + [this] { return displayName(); }); +} Project::~Project() { @@ -516,6 +525,11 @@ void Project::setup(QList infoList) } } +Utils::MacroExpander *Project::macroExpander() const +{ + return &d->m_macroExpander; +} + ProjectImporter *Project::createProjectImporter() const { return 0; diff --git a/src/plugins/projectexplorer/project.h b/src/plugins/projectexplorer/project.h index b4a917fd4ab..76a2b8432b8 100644 --- a/src/plugins/projectexplorer/project.h +++ b/src/plugins/projectexplorer/project.h @@ -45,6 +45,8 @@ class IDocument; class Context; } +namespace Utils { class MacroExpander; } + namespace ProjectExplorer { class BuildInfo; @@ -141,6 +143,7 @@ public: virtual bool needsSpecialDeployment() const; void setup(QList infoList); + Utils::MacroExpander *macroExpander() const; signals: void displayNameChanged();