diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp index 12d293cdf65..25c56725ba8 100644 --- a/src/plugins/projectexplorer/buildconfiguration.cpp +++ b/src/plugins/projectexplorer/buildconfiguration.cpp @@ -306,6 +306,21 @@ QString BuildConfiguration::disabledReason() const return QString(); } +QString BuildConfiguration::buildTypeName(BuildConfiguration::BuildType type) +{ + switch (type) { + case ProjectExplorer::BuildConfiguration::Debug: + return QLatin1String("debug"); + case ProjectExplorer::BuildConfiguration::Profile: + return QLatin1String("profile"); + case ProjectExplorer::BuildConfiguration::Release: + return QLatin1String("release"); + case ProjectExplorer::BuildConfiguration::Unknown: // fallthrough + default: + return QLatin1String("unknown"); + } +} + /// // IBuildConfigurationFactory /// diff --git a/src/plugins/projectexplorer/buildconfiguration.h b/src/plugins/projectexplorer/buildconfiguration.h index 1dae36db758..81d2f05a7b6 100644 --- a/src/plugins/projectexplorer/buildconfiguration.h +++ b/src/plugins/projectexplorer/buildconfiguration.h @@ -91,6 +91,8 @@ public: }; virtual BuildType buildType() const = 0; + static QString buildTypeName(BuildType type); + signals: void environmentChanged(); void buildDirectoryChanged(); diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index d64479adf02..285c1b18c30 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -1371,16 +1371,10 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er expander->registerVariable(Constants::VAR_CURRENTBUILD_TYPE, tr("The currently active build configuration's type."), [&]() -> QString { - if (BuildConfiguration *bc = activeBuildConfiguration()) { - BuildConfiguration::BuildType type = bc->buildType(); - if (type == BuildConfiguration::Debug) - return QLatin1String("debug"); - if (type == BuildConfiguration::Release) - return QLatin1String("release"); - if (type == BuildConfiguration::Profile) - return QLatin1String("profile"); - } - return tr("unknown"); + BuildConfiguration *bc = activeBuildConfiguration(); + const BuildConfiguration::BuildType type + = bc ? bc->buildType() : BuildConfiguration::Unknown; + return BuildConfiguration::buildTypeName(type); });