summaryrefslogtreecommitdiff
path: root/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2018-03-01 09:26:46 +0100
committerhjk <hjk@qt.io>2018-04-06 06:27:52 +0000
commitc69e4598ede68b1a698ec494331eaa083727c711 (patch)
treee7b72a4f856bc325e8139e2cbdf2c15a23973cf3 /src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
parent27c51ed4c8cacb566bec04ce60b101913940d2e8 (diff)
downloadqt-creator-c69e4598ede68b1a698ec494331eaa083727c711.tar.gz
ProjectExplorer: Streamline *EnvironmentAspect interface
Register code/name combinations together. Also make the otherwise implicitly preferred first entry explicit in the API. Change-Id: I80f68b01d53e2672480365d4efcb9d790b8363fd Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp')
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp57
1 files changed, 21 insertions, 36 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
index a4721ada4e..89cf5b6039 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
@@ -27,46 +27,25 @@
#include "qmlproject.h"
+#include <projectexplorer/kit.h>
#include <projectexplorer/kitinformation.h>
#include <projectexplorer/target.h>
-#include <projectexplorer/kit.h>
-#include <utils/qtcassert.h>
-
-namespace QmlProjectManager {
-// --------------------------------------------------------------------
-// QmlProjectEnvironmentAspect:
-// --------------------------------------------------------------------
+using namespace ProjectExplorer;
+using namespace Utils;
-QList<int> QmlProjectEnvironmentAspect::possibleBaseEnvironments() const
-{
- QList<int> ret;
- if (ProjectExplorer::DeviceTypeKitInformation::deviceTypeId(runConfiguration()->target()->kit())
- == ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE) {
- ret << SystemEnvironmentBase;
- }
- ret << CleanEnvironmentBase;
- return ret;
-}
+namespace QmlProjectManager {
-QString QmlProjectEnvironmentAspect::baseEnvironmentDisplayName(int base) const
-{
- switch (base) {
- case SystemEnvironmentBase:
- return tr("System Environment");
- case CleanEnvironmentBase:
- return tr("Clean Environment");
- default:
- QTC_CHECK(false);
- return QString();
- }
-}
+enum BaseEnvironmentBase {
+ SystemEnvironmentBase = 0,
+ CleanEnvironmentBase
+};
-Utils::Environment QmlProjectEnvironmentAspect::baseEnvironment() const
+Environment QmlProjectEnvironmentAspect::baseEnvironment() const
{
- Utils::Environment env = baseEnvironmentBase() == SystemEnvironmentBase
- ? Utils::Environment::systemEnvironment()
- : Utils::Environment();
+ Environment env = baseEnvironmentBase() == SystemEnvironmentBase
+ ? Environment::systemEnvironment()
+ : Environment();
if (QmlProject *project = qobject_cast<QmlProject *>(runConfiguration()->target()->project()))
env.modify(project->environment());
@@ -74,8 +53,14 @@ Utils::Environment QmlProjectEnvironmentAspect::baseEnvironment() const
return env;
}
-QmlProjectEnvironmentAspect::QmlProjectEnvironmentAspect(ProjectExplorer::RunConfiguration *rc) :
- ProjectExplorer::EnvironmentAspect(rc)
-{ }
+QmlProjectEnvironmentAspect::QmlProjectEnvironmentAspect(RunConfiguration *rc)
+ : EnvironmentAspect(rc)
+{
+ if (DeviceTypeKitInformation::deviceTypeId(runConfiguration()->target()->kit())
+ == Constants::DESKTOP_DEVICE_TYPE)
+ addPreferredBaseEnvironment(SystemEnvironmentBase, tr("System Environment"));
+
+ addSupportedBaseEnvironment(CleanEnvironmentBase, tr("Clean Environment"));
+}
} // namespace QmlProjectManager