QbsProjectManager: Fix updating of run environment

When the build environment was changed, the run environment widget would
not update.

Change-Id: I8a318d86b5ac56ca9233cf4c694ca3c9f88870ed
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
Christian Kandeler
2017-02-28 11:31:09 +01:00
parent 1b30990f24
commit dacf13948e

View File

@@ -112,9 +112,14 @@ QbsRunConfiguration::QbsRunConfiguration(Target *parent, Core::Id id) :
m_uniqueProductName(uniqueProductNameFromId(id)),
m_currentBuildStepList(0)
{
addExtraAspect(new LocalEnvironmentAspect(this, [](RunConfiguration *rc, Environment &env) {
auto * const envAspect = new LocalEnvironmentAspect(this,
[](RunConfiguration *rc, Environment &env) {
static_cast<QbsRunConfiguration *>(rc)->addToBaseEnvironment(env);
}));
}
);
addExtraAspect(envAspect);
connect(static_cast<QbsProject *>(parent->project()), &QbsProject::parsingFinished, this,
[envAspect]() { envAspect->buildEnvironmentHasChanged(); });
addExtraAspect(new ArgumentsAspect(this, QStringLiteral("Qbs.RunConfiguration.CommandLineArguments")));
addExtraAspect(new WorkingDirectoryAspect(this, QStringLiteral("Qbs.RunConfiguration.WorkingDirectory")));