aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2018-02-22 08:36:45 +0100
committerhjk <hjk@qt.io>2018-02-23 07:08:55 +0000
commit39b66f2cb8b6ed674567ee349780b9e173fa7b9f (patch)
treeebe5a9ce18dc080a561fd75e971a81a3ea471eef
parent092d5068bd586370862a1eb454830fd68f238ea6 (diff)
Introduce and use IRunConfiguration::addSupportedTargetDeviceType
In line with addSupportedProjectType, saves a few cycles due to the non-use of the temporary list, and in theory more flexible than the existing set...(QList<Id>) as it potentially allows dependent plugin to declare support for already existing configurations instead of re-implementing their own. Change-Id: I2b83e90de49daa9bfce6f780c5f51c2e971eb7d1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r--src/plugins/baremetal/baremetalrunconfigurationfactory.cpp4
-rw-r--r--src/plugins/ios/iosrunfactories.cpp3
-rw-r--r--src/plugins/projectexplorer/runconfiguration.cpp5
-rw-r--r--src/plugins/projectexplorer/runconfiguration.h1
-rw-r--r--src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp2
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp2
-rw-r--r--src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp2
-rw-r--r--src/plugins/qnx/qnxrunconfigurationfactory.cpp2
-rw-r--r--src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp4
-rw-r--r--src/plugins/winrt/winrtrunfactories.cpp6
10 files changed, 19 insertions, 12 deletions
diff --git a/src/plugins/baremetal/baremetalrunconfigurationfactory.cpp b/src/plugins/baremetal/baremetalrunconfigurationfactory.cpp
index 37e0dd3702..729ee5aeb6 100644
--- a/src/plugins/baremetal/baremetalrunconfigurationfactory.cpp
+++ b/src/plugins/baremetal/baremetalrunconfigurationfactory.cpp
@@ -45,7 +45,7 @@ BareMetalRunConfigurationFactory::BareMetalRunConfigurationFactory(QObject *pare
{
setObjectName("BareMetalRunConfigurationFactory");
registerRunConfiguration<BareMetalRunConfiguration>(BareMetalRunConfiguration::IdPrefix);
- setSupportedTargetDeviceTypes({BareMetal::Constants::BareMetalOsType});
+ addSupportedTargetDeviceType(BareMetal::Constants::BareMetalOsType);
}
QList<RunConfigurationCreationInfo> BareMetalRunConfigurationFactory::availableCreators(Target *parent) const
@@ -64,7 +64,7 @@ BareMetalCustomRunConfigurationFactory::BareMetalCustomRunConfigurationFactory(Q
{
setObjectName("BareMetalCustomRunConfigurationFactory");
registerRunConfiguration<BareMetalCustomRunConfiguration>("BareMetal.CustomRunConfig");
- setSupportedTargetDeviceTypes({BareMetal::Constants::BareMetalOsType});
+ addSupportedTargetDeviceType(BareMetal::Constants::BareMetalOsType);
}
} // namespace Internal
diff --git a/src/plugins/ios/iosrunfactories.cpp b/src/plugins/ios/iosrunfactories.cpp
index b2f7a8d706..9a310d8b4d 100644
--- a/src/plugins/ios/iosrunfactories.cpp
+++ b/src/plugins/ios/iosrunfactories.cpp
@@ -47,7 +47,8 @@ IosRunConfigurationFactory::IosRunConfigurationFactory(QObject *parent)
{
setObjectName("IosRunConfigurationFactory");
registerRunConfiguration<IosRunConfiguration>(Constants::IOS_RC_ID_PREFIX);
- setSupportedTargetDeviceTypes({Constants::IOS_DEVICE_TYPE, Constants::IOS_SIMULATOR_TYPE});
+ addSupportedTargetDeviceType(Constants::IOS_DEVICE_TYPE);
+ addSupportedTargetDeviceType(Constants::IOS_SIMULATOR_TYPE);
addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
}
diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp
index 1902043c6f..39bd694656 100644
--- a/src/plugins/projectexplorer/runconfiguration.cpp
+++ b/src/plugins/projectexplorer/runconfiguration.cpp
@@ -488,6 +488,11 @@ void IRunConfigurationFactory::setSupportedTargetDeviceTypes(const QList<Core::I
m_supportedTargetDeviceTypes = ids;
}
+void IRunConfigurationFactory::addSupportedTargetDeviceType(Core::Id id)
+{
+ m_supportedTargetDeviceTypes.append(id);
+}
+
void IRunConfigurationFactory::addSupportedProjectType(Core::Id id)
{
m_supportedProjectTypes.append(id);
diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h
index 64855b2648..27bf547035 100644
--- a/src/plugins/projectexplorer/runconfiguration.h
+++ b/src/plugins/projectexplorer/runconfiguration.h
@@ -340,6 +340,7 @@ protected:
void addSupportedProjectType(Core::Id id);
void setSupportedTargetDeviceTypes(const QList<Core::Id> &ids);
+ void addSupportedTargetDeviceType(Core::Id id);
void setDisplayNamePattern(const QString &pattern);
RunConfigurationCreationInfo convert(const BuildTargetInfo &ti) const;
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
index b609f5c519..8978e2e0b6 100644
--- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
+++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
@@ -374,7 +374,7 @@ QbsRunConfigurationFactory::QbsRunConfigurationFactory(QObject *parent) :
setObjectName("QbsRunConfigurationFactory");
registerRunConfiguration<QbsRunConfiguration>(QBS_RC_PREFIX);
addSupportedProjectType(Constants::PROJECT_ID);
- setSupportedTargetDeviceTypes({ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE});
+ addSupportedTargetDeviceType(ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE);
}
bool QbsRunConfigurationFactory::canCreateHelper(Target *parent, const QString &buildTarget) const
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp b/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp
index 61d0d4abc8..e76a9fed8c 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp
@@ -53,7 +53,7 @@ QmakeAndroidRunConfigurationFactory::QmakeAndroidRunConfigurationFactory(QObject
{
registerRunConfiguration<QmakeAndroidRunConfiguration>(ANDROID_RC_ID_PREFIX);
addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
- setSupportedTargetDeviceTypes({Android::Constants::ANDROID_DEVICE_TYPE});
+ addSupportedTargetDeviceType(Android::Constants::ANDROID_DEVICE_TYPE);
}
QList<RunConfigurationCreationInfo> QmakeAndroidRunConfigurationFactory::availableCreators(Target *parent) const
diff --git a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
index 0fc0873785..2c0bacfe72 100644
--- a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
+++ b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
@@ -434,7 +434,7 @@ DesktopQmakeRunConfigurationFactory::DesktopQmakeRunConfigurationFactory(QObject
setObjectName("DesktopQmakeRunConfigurationFactory");
registerRunConfiguration<DesktopQmakeRunConfiguration>(QMAKE_RC_PREFIX);
addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
- setSupportedTargetDeviceTypes({ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE});
+ addSupportedTargetDeviceType(ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE);
}
bool DesktopQmakeRunConfigurationFactory::canCreateHelper(Target *parent, const QString &buildTarget) const
diff --git a/src/plugins/qnx/qnxrunconfigurationfactory.cpp b/src/plugins/qnx/qnxrunconfigurationfactory.cpp
index 8a74b8b0c6..3b4f7ff57a 100644
--- a/src/plugins/qnx/qnxrunconfigurationfactory.cpp
+++ b/src/plugins/qnx/qnxrunconfigurationfactory.cpp
@@ -36,7 +36,7 @@ QnxRunConfigurationFactory::QnxRunConfigurationFactory(QObject *parent) :
ProjectExplorer::IRunConfigurationFactory(parent)
{
registerRunConfiguration<QnxRunConfiguration>(Constants::QNX_QNX_RUNCONFIGURATION_PREFIX);
- setSupportedTargetDeviceTypes({Constants::QNX_QNX_OS_TYPE});
+ addSupportedTargetDeviceType(Constants::QNX_QNX_OS_TYPE);
}
} // namespace Internal
diff --git a/src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp b/src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp
index 42fb81b146..293cb6b015 100644
--- a/src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp
+++ b/src/plugins/remotelinux/remotelinuxrunconfigurationfactory.cpp
@@ -41,7 +41,7 @@ RemoteLinuxRunConfigurationFactory::RemoteLinuxRunConfigurationFactory(QObject *
{
setObjectName("RemoteLinuxRunConfigurationFactory");
registerRunConfiguration<RemoteLinuxRunConfiguration>(RemoteLinuxRunConfiguration::IdPrefix);
- setSupportedTargetDeviceTypes({RemoteLinux::Constants::GenericLinuxOsType});
+ addSupportedTargetDeviceType(RemoteLinux::Constants::GenericLinuxOsType);
}
// RemoteLinuxCustomRunConfigurationFactory
@@ -53,7 +53,7 @@ RemoteLinuxCustomRunConfigurationFactory::RemoteLinuxCustomRunConfigurationFacto
setObjectName("RemoteLinuxCustomRunConfiguration");
registerRunConfiguration<RemoteLinuxCustomRunConfiguration>
(RemoteLinuxCustomRunConfiguration::runConfigId());
- setSupportedTargetDeviceTypes({RemoteLinux::Constants::GenericLinuxOsType});
+ addSupportedTargetDeviceType(RemoteLinux::Constants::GenericLinuxOsType);
}
} // namespace Internal
diff --git a/src/plugins/winrt/winrtrunfactories.cpp b/src/plugins/winrt/winrtrunfactories.cpp
index 465de83012..441a32b954 100644
--- a/src/plugins/winrt/winrtrunfactories.cpp
+++ b/src/plugins/winrt/winrtrunfactories.cpp
@@ -45,9 +45,9 @@ WinRtRunConfigurationFactory::WinRtRunConfigurationFactory()
{
registerRunConfiguration<WinRtRunConfiguration>(Constants::WINRT_RC_PREFIX);
addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
- setSupportedTargetDeviceTypes({Constants::WINRT_DEVICE_TYPE_LOCAL,
- Constants::WINRT_DEVICE_TYPE_PHONE,
- Constants::WINRT_DEVICE_TYPE_EMULATOR});
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_LOCAL);
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_PHONE);
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_EMULATOR);
}
QList<RunConfigurationCreationInfo> WinRtRunConfigurationFactory::availableCreators(Target *parent) const