summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/buildconfiguration.cpp
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-11-05 15:45:56 +0100
committerhjk <hjk121@nokiamail.com>2014-11-05 17:44:39 +0100
commitb94a6a05376eb1c645f2493a28f4a9a71c551de1 (patch)
tree0104ca00309e7b0537a4006e5f3c40ed35851bc3 /src/plugins/projectexplorer/buildconfiguration.cpp
parentd8edeb1e38705617e28b8436f54d4d6979e92062 (diff)
downloadqt-creator-b94a6a05376eb1c645f2493a28f4a9a71c551de1.tar.gz
Set up hierarchy of ProjectConfiguration macro expanders.
BuildConfiguration asks Target, Deploy and Run ask either activeBuild, or Target. Change-Id: I3845cfbd16de7b85268d83b5324865ff24482152 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Diffstat (limited to 'src/plugins/projectexplorer/buildconfiguration.cpp')
-rw-r--r--src/plugins/projectexplorer/buildconfiguration.cpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp
index b157ba3d93..d4a90fb079 100644
--- a/src/plugins/projectexplorer/buildconfiguration.cpp
+++ b/src/plugins/projectexplorer/buildconfiguration.cpp
@@ -76,7 +76,7 @@ BuildConfiguration::BuildConfiguration(Target *target, Core::Id id) :
this, SLOT(handleKitUpdate()));
connect(this, SIGNAL(environmentChanged()), this, SLOT(emitBuildDirectoryChanged()));
- macroExpander()->registerSubProvider([target] { return target->macroExpander(); });
+ ctor();
}
BuildConfiguration::BuildConfiguration(Target *target, BuildConfiguration *source) :
@@ -95,7 +95,22 @@ BuildConfiguration::BuildConfiguration(Target *target, BuildConfiguration *sourc
connect(target, SIGNAL(kitChanged()),
this, SLOT(handleKitUpdate()));
- macroExpander()->registerSubProvider([target] { return target->macroExpander(); });
+ ctor();
+}
+
+void BuildConfiguration::ctor()
+{
+ Utils::MacroExpander *expander = macroExpander();
+ expander->setDisplayName(tr("Build Settings"));
+ expander->setAccumulating(true);
+ expander->registerSubProvider([this] { return target()->macroExpander(); });
+
+ expander->registerVariable("buildDir", tr("Build directory"),
+ [this] { return buildDirectory().toUserOutput(); });
+
+ expander->registerVariable(Constants::VAR_CURRENTBUILD_NAME,
+ QCoreApplication::translate("ProjectExplorer", "Name of current build"),
+ [this] { return displayName(); }, false);
}
BuildConfiguration::~BuildConfiguration()