aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2018-04-25 10:26:08 +0200
committerhjk <hjk@qt.io>2018-04-25 15:06:11 +0000
commit366be94ad9edf4c7b15edd9e9af981b857631385 (patch)
tree0f77be5679d35eedf54480011a1394b01cf9ea8f
parent4146a9859907c561864bfbd412d8b65ed69216ad (diff)
Pass id to RunConfiguration constructor
It's what the base class requires, and opens the possibility to have several factories creating the same type of run configuration. Also move ios, winrt and android factories closer to their products, it's the predominant pattern nowadays. Change-Id: Iad48152f02a248d22cb18dd435a2fc34d73c7077 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r--src/plugins/baremetal/baremetalcustomrunconfiguration.cpp4
-rw-r--r--src/plugins/baremetal/baremetalcustomrunconfiguration.h3
-rw-r--r--src/plugins/baremetal/baremetalrunconfiguration.cpp4
-rw-r--r--src/plugins/baremetal/baremetalrunconfiguration.h2
-rw-r--r--src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp7
-rw-r--r--src/plugins/cmakeprojectmanager/cmakerunconfiguration.h2
-rw-r--r--src/plugins/ios/ios.pro2
-rw-r--r--src/plugins/ios/ios.qbs2
-rw-r--r--src/plugins/ios/iosconstants.h2
-rw-r--r--src/plugins/ios/iosplugin.cpp1
-rw-r--r--src/plugins/ios/iosrunconfiguration.cpp20
-rw-r--r--src/plugins/ios/iosrunconfiguration.h8
-rw-r--r--src/plugins/ios/iosrunfactories.cpp45
-rw-r--r--src/plugins/ios/iosrunfactories.h40
-rw-r--r--src/plugins/nim/nimconstants.h1
-rw-r--r--src/plugins/nim/project/nimrunconfiguration.cpp6
-rw-r--r--src/plugins/nim/project/nimrunconfiguration.h2
-rw-r--r--src/plugins/projectexplorer/customexecutablerunconfiguration.cpp9
-rw-r--r--src/plugins/projectexplorer/customexecutablerunconfiguration.h1
-rw-r--r--src/plugins/projectexplorer/runconfiguration.h4
-rw-r--r--src/plugins/pythoneditor/pythoneditorplugin.cpp11
-rw-r--r--src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp8
-rw-r--r--src/plugins/qbsprojectmanager/qbsrunconfiguration.h2
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp24
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h8
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp46
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.h40
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidsupport.pro2
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidsupport.qbs2
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidsupportplugin.cpp2
-rw-r--r--src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp7
-rw-r--r--src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h2
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectmanagerconstants.h1
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp7
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h2
-rw-r--r--src/plugins/qnx/qnxrunconfiguration.cpp4
-rw-r--r--src/plugins/qnx/qnxrunconfiguration.h2
-rw-r--r--src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp4
-rw-r--r--src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h3
-rw-r--r--src/plugins/remotelinux/remotelinuxrunconfiguration.cpp5
-rw-r--r--src/plugins/remotelinux/remotelinuxrunconfiguration.h9
-rw-r--r--src/plugins/winrt/winrt.pro2
-rw-r--r--src/plugins/winrt/winrt.qbs2
-rw-r--r--src/plugins/winrt/winrtconstants.h1
-rw-r--r--src/plugins/winrt/winrtplugin.cpp1
-rw-r--r--src/plugins/winrt/winrtrunconfiguration.cpp17
-rw-r--r--src/plugins/winrt/winrtrunconfiguration.h8
-rw-r--r--src/plugins/winrt/winrtrunfactories.cpp48
-rw-r--r--src/plugins/winrt/winrtrunfactories.h42
49 files changed, 124 insertions, 353 deletions
diff --git a/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp b/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
index dcbec0dedd9..0f8aa0dd735 100644
--- a/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
+++ b/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
@@ -71,8 +71,8 @@ private:
BareMetalCustomRunConfiguration * const m_runConfig;
};
-BareMetalCustomRunConfiguration::BareMetalCustomRunConfiguration(Target *parent)
- : BareMetalRunConfiguration(parent)
+BareMetalCustomRunConfiguration::BareMetalCustomRunConfiguration(Target *parent, Core::Id id)
+ : BareMetalRunConfiguration(parent, id)
{
}
diff --git a/src/plugins/baremetal/baremetalcustomrunconfiguration.h b/src/plugins/baremetal/baremetalcustomrunconfiguration.h
index d3e43553ccf..7e5ff8e18ec 100644
--- a/src/plugins/baremetal/baremetalcustomrunconfiguration.h
+++ b/src/plugins/baremetal/baremetalcustomrunconfiguration.h
@@ -33,8 +33,9 @@ namespace Internal {
class BareMetalCustomRunConfiguration : public BareMetalRunConfiguration
{
Q_OBJECT
+
public:
- explicit BareMetalCustomRunConfiguration(ProjectExplorer::Target *parent);
+ BareMetalCustomRunConfiguration(ProjectExplorer::Target *parent, Core::Id id);
bool isConfigured() const override;
ConfigurationState ensureConfigured(QString *errorMessage) override;
diff --git a/src/plugins/baremetal/baremetalrunconfiguration.cpp b/src/plugins/baremetal/baremetalrunconfiguration.cpp
index 10d2d77319f..5a5ff8ab17e 100644
--- a/src/plugins/baremetal/baremetalrunconfiguration.cpp
+++ b/src/plugins/baremetal/baremetalrunconfiguration.cpp
@@ -84,8 +84,8 @@ void BareMetalRunConfigurationWidget::updateTargetInformation()
// BareMetalRunConfiguration
-BareMetalRunConfiguration::BareMetalRunConfiguration(Target *target)
- : RunConfiguration(target, IdPrefix)
+BareMetalRunConfiguration::BareMetalRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
addExtraAspect(new ArgumentsAspect(this, "Qt4ProjectManager.MaemoRunConfiguration.Arguments"));
addExtraAspect(new WorkingDirectoryAspect(this, "BareMetal.RunConfig.WorkingDirectory"));
diff --git a/src/plugins/baremetal/baremetalrunconfiguration.h b/src/plugins/baremetal/baremetalrunconfiguration.h
index d70ba5d7d79..8e47a219d04 100644
--- a/src/plugins/baremetal/baremetalrunconfiguration.h
+++ b/src/plugins/baremetal/baremetalrunconfiguration.h
@@ -37,7 +37,7 @@ class BareMetalRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit BareMetalRunConfiguration(ProjectExplorer::Target *target);
+ BareMetalRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
QWidget *createConfigurationWidget() override;
diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
index ef853691518..b53f7cd07df 100644
--- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
@@ -40,11 +40,10 @@ using namespace ProjectExplorer;
namespace CMakeProjectManager {
namespace Internal {
-const char CMAKE_RC_PREFIX[] = "CMakeProjectManager.CMakeRunConfiguration.";
const char TITLE_KEY[] = "CMakeProjectManager.CMakeRunConfiguation.Title";
-CMakeRunConfiguration::CMakeRunConfiguration(Target *target)
- : RunConfiguration(target, CMAKE_RC_PREFIX)
+CMakeRunConfiguration::CMakeRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
// Workaround for QTCREATORBUG-19354:
auto cmakeRunEnvironmentModifier = [](RunConfiguration *rc, Utils::Environment &env) {
@@ -128,7 +127,7 @@ void CMakeRunConfiguration::updateTargetInformation()
// Factory
CMakeRunConfigurationFactory::CMakeRunConfigurationFactory()
{
- registerRunConfiguration<CMakeRunConfiguration>(CMAKE_RC_PREFIX);
+ registerRunConfiguration<CMakeRunConfiguration>("CMakeProjectManager.CMakeRunConfiguration.");
addSupportedProjectType(CMakeProjectManager::Constants::CMAKEPROJECT_ID);
addSupportedTargetDeviceType(ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE);
}
diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
index 6af5a93a3d0..d6deaf20d7b 100644
--- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
+++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
@@ -35,7 +35,7 @@ class CMakeRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit CMakeRunConfiguration(ProjectExplorer::Target *target);
+ CMakeRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
private:
QVariantMap toMap() const override;
diff --git a/src/plugins/ios/ios.pro b/src/plugins/ios/ios.pro
index f12b7bf39e8..d0706cac29b 100644
--- a/src/plugins/ios/ios.pro
+++ b/src/plugins/ios/ios.pro
@@ -11,7 +11,6 @@ HEADERS += \
iosconstants.h \
iosconfigurations.h \
iosrunconfiguration.h \
- iosrunfactories.h \
iossettingspage.h \
iossettingswidget.h \
iosrunner.h \
@@ -41,7 +40,6 @@ HEADERS += \
SOURCES += \
iosconfigurations.cpp \
iosrunconfiguration.cpp \
- iosrunfactories.cpp \
iossettingspage.cpp \
iossettingswidget.cpp \
iosrunner.cpp \
diff --git a/src/plugins/ios/ios.qbs b/src/plugins/ios/ios.qbs
index 8f3580e69cb..dc9b12318c0 100644
--- a/src/plugins/ios/ios.qbs
+++ b/src/plugins/ios/ios.qbs
@@ -55,8 +55,6 @@ QtcPlugin {
"iosqtversionfactory.h",
"iosrunconfiguration.cpp",
"iosrunconfiguration.h",
- "iosrunfactories.cpp",
- "iosrunfactories.h",
"iosrunner.cpp",
"iosrunner.h",
"iossettingspage.cpp",
diff --git a/src/plugins/ios/iosconstants.h b/src/plugins/ios/iosconstants.h
index 769067a80b3..540896e0e68 100644
--- a/src/plugins/ios/iosconstants.h
+++ b/src/plugins/ios/iosconstants.h
@@ -51,7 +51,5 @@ const quint16 IOS_SIMULATOR_PORT_END = 31000;
const char EXTRA_INFO_KEY[] = "extraInfo";
-const char IOS_RC_ID_PREFIX[] = "Qt4ProjectManager.IosRunConfiguration:";
-
} // namespace Constants;
} // namespace Ios
diff --git a/src/plugins/ios/iosplugin.cpp b/src/plugins/ios/iosplugin.cpp
index 0f96241792a..0cc72a27b59 100644
--- a/src/plugins/ios/iosplugin.cpp
+++ b/src/plugins/ios/iosplugin.cpp
@@ -34,7 +34,6 @@
#include "iosdevicefactory.h"
#include "iosdsymbuildstep.h"
#include "iosqtversionfactory.h"
-#include "iosrunfactories.h"
#include "iosrunner.h"
#include "iossettingspage.h"
#include "iossimulator.h"
diff --git a/src/plugins/ios/iosrunconfiguration.cpp b/src/plugins/ios/iosrunconfiguration.cpp
index 56075fbd953..307026cdc64 100644
--- a/src/plugins/ios/iosrunconfiguration.cpp
+++ b/src/plugins/ios/iosrunconfiguration.cpp
@@ -35,9 +35,12 @@
#include <projectexplorer/buildstep.h>
#include <projectexplorer/buildsteplist.h>
#include <projectexplorer/runconfigurationaspects.h>
+
#include <qmakeprojectmanager/qmakebuildconfiguration.h>
-#include <qmakeprojectmanager/qmakeproject.h>
#include <qmakeprojectmanager/qmakenodes.h>
+#include <qmakeprojectmanager/qmakeproject.h>
+#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
+
#include <qtsupport/qtoutputformatter.h>
#include <qtsupport/qtkitinformation.h>
@@ -93,8 +96,8 @@ private:
QComboBox *m_deviceTypeComboBox;
};
-IosRunConfiguration::IosRunConfiguration(Target *target)
- : RunConfiguration(target, Constants::IOS_RC_ID_PREFIX)
+IosRunConfiguration::IosRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
addExtraAspect(new ArgumentsAspect(this, "Ios.run_arguments"));
setOutputFormatter<QtSupport::QtOutputFormatter>();
@@ -419,5 +422,16 @@ void IosRunConfigurationWidget::updateValues()
m_executableLineEdit->setText(m_runConfiguration->localExecutable().toUserOutput());
}
+
+// IosRunConfigurationFactory
+
+IosRunConfigurationFactory::IosRunConfigurationFactory()
+{
+ registerRunConfiguration<IosRunConfiguration>("Qt4ProjectManager.IosRunConfiguration:");
+ addSupportedTargetDeviceType(Constants::IOS_DEVICE_TYPE);
+ addSupportedTargetDeviceType(Constants::IOS_SIMULATOR_TYPE);
+ addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
+}
+
} // namespace Internal
} // namespace Ios
diff --git a/src/plugins/ios/iosrunconfiguration.h b/src/plugins/ios/iosrunconfiguration.h
index 388c2329fd8..26b867ad474 100644
--- a/src/plugins/ios/iosrunconfiguration.h
+++ b/src/plugins/ios/iosrunconfiguration.h
@@ -44,7 +44,7 @@ class IosRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit IosRunConfiguration(ProjectExplorer::Target *target);
+ IosRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
QWidget *createConfigurationWidget() override;
IosDeployStep *deployStep() const;
@@ -74,5 +74,11 @@ private:
IosDeviceType m_deviceType;
};
+class IosRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
+{
+public:
+ IosRunConfigurationFactory();
+};
+
} // namespace Internal
} // namespace Ios
diff --git a/src/plugins/ios/iosrunfactories.cpp b/src/plugins/ios/iosrunfactories.cpp
deleted file mode 100644
index b2485ab767c..00000000000
--- a/src/plugins/ios/iosrunfactories.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#include "iosrunfactories.h"
-
-#include "iosconstants.h"
-#include "iosrunconfiguration.h"
-
-#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
-
-namespace Ios {
-namespace Internal {
-
-IosRunConfigurationFactory::IosRunConfigurationFactory()
-{
- registerRunConfiguration<IosRunConfiguration>(Constants::IOS_RC_ID_PREFIX);
- addSupportedTargetDeviceType(Constants::IOS_DEVICE_TYPE);
- addSupportedTargetDeviceType(Constants::IOS_SIMULATOR_TYPE);
- addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
-}
-
-} // namespace Internal
-} // namespace Ios
diff --git a/src/plugins/ios/iosrunfactories.h b/src/plugins/ios/iosrunfactories.h
deleted file mode 100644
index 9510e7a9531..00000000000
--- a/src/plugins/ios/iosrunfactories.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#pragma once
-
-#include <projectexplorer/runconfiguration.h>
-
-namespace Ios {
-namespace Internal {
-
-class IosRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
-{
-public:
- IosRunConfigurationFactory();
-};
-
-} // namespace Internal
-} // namespace Ios
diff --git a/src/plugins/nim/nimconstants.h b/src/plugins/nim/nimconstants.h
index c56217b0516..a4ac8527abf 100644
--- a/src/plugins/nim/nimconstants.h
+++ b/src/plugins/nim/nimconstants.h
@@ -40,7 +40,6 @@ const char C_NIMTOOLCHAIN_TYPEID[] = "Nim.NimToolChain";
const char C_NIMTOOLCHAIN_COMPILER_COMMAND_KEY[] = "Nim.NimToolChain.CompilerCommand";
// NimRunConfiguration
-const char C_NIMRUNCONFIGURATION_ID[] = "Nim.NimRunConfiguration";
const QString C_NIMRUNCONFIGURATION_EXECUTABLE_KEY = QStringLiteral("Nim.NimRunConfiguration.Executable");
// NimProject
diff --git a/src/plugins/nim/project/nimrunconfiguration.cpp b/src/plugins/nim/project/nimrunconfiguration.cpp
index e0cf90e4a10..715053392d1 100644
--- a/src/plugins/nim/project/nimrunconfiguration.cpp
+++ b/src/plugins/nim/project/nimrunconfiguration.cpp
@@ -42,8 +42,8 @@ using namespace Utils;
namespace Nim {
-NimRunConfiguration::NimRunConfiguration(Target *target)
- : RunConfiguration(target, Constants::C_NIMRUNCONFIGURATION_ID)
+NimRunConfiguration::NimRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
auto terminalAspect = new TerminalAspect(this, "Nim.NimRunConfiguration.TerminalAspect");
terminalAspect->setRunMode(ApplicationLauncher::Gui);
@@ -100,7 +100,7 @@ void NimRunConfiguration::setActiveBuildConfiguration(NimBuildConfiguration *act
NimRunConfigurationFactory::NimRunConfigurationFactory() : FixedRunConfigurationFactory(QString())
{
- registerRunConfiguration<NimRunConfiguration>(Constants::C_NIMRUNCONFIGURATION_ID);
+ registerRunConfiguration<NimRunConfiguration>("Nim.NimRunConfiguration");
addSupportedProjectType(Constants::C_NIMPROJECT_ID);
}
diff --git a/src/plugins/nim/project/nimrunconfiguration.h b/src/plugins/nim/project/nimrunconfiguration.h
index c678b31b47b..5f481b9b155 100644
--- a/src/plugins/nim/project/nimrunconfiguration.h
+++ b/src/plugins/nim/project/nimrunconfiguration.h
@@ -36,7 +36,7 @@ class NimRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit NimRunConfiguration(ProjectExplorer::Target *target);
+ NimRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
private:
void updateConfiguration();
diff --git a/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp b/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
index 7e584a46f32..655aa7ee30e 100644
--- a/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
+++ b/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
@@ -81,8 +81,8 @@ private:
CustomExecutableConfigurationWidget *m_widget;
};
-CustomExecutableRunConfiguration::CustomExecutableRunConfiguration(Target *target)
- : RunConfiguration(target, CUSTOM_EXECUTABLE_ID)
+CustomExecutableRunConfiguration::CustomExecutableRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
addExtraAspect(new LocalEnvironmentAspect(this, LocalEnvironmentAspect::BaseEnvironmentModifier()));
addExtraAspect(new ArgumentsAspect(this, "ProjectExplorer.CustomExecutableRunConfiguration.Arguments"));
@@ -91,6 +91,11 @@ CustomExecutableRunConfiguration::CustomExecutableRunConfiguration(Target *targe
setDefaultDisplayName(defaultDisplayName());
}
+CustomExecutableRunConfiguration::CustomExecutableRunConfiguration(Target *target)
+ : CustomExecutableRunConfiguration(target, CUSTOM_EXECUTABLE_ID)
+{
+}
+
// Note: Qt4Project deletes all empty customexecrunconfigs for which isConfigured() == false.
CustomExecutableRunConfiguration::~CustomExecutableRunConfiguration()
{
diff --git a/src/plugins/projectexplorer/customexecutablerunconfiguration.h b/src/plugins/projectexplorer/customexecutablerunconfiguration.h
index 22cbdc6e609..4c855090120 100644
--- a/src/plugins/projectexplorer/customexecutablerunconfiguration.h
+++ b/src/plugins/projectexplorer/customexecutablerunconfiguration.h
@@ -43,6 +43,7 @@ class PROJECTEXPLORER_EXPORT CustomExecutableRunConfiguration : public RunConfig
friend class ProjectExplorer::RunConfigurationFactory;
public:
+ explicit CustomExecutableRunConfiguration(Target *target, Core::Id id);
explicit CustomExecutableRunConfiguration(Target *target);
~CustomExecutableRunConfiguration() override;
diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h
index c2131ebd206..0ce3e46bd7d 100644
--- a/src/plugins/projectexplorer/runconfiguration.h
+++ b/src/plugins/projectexplorer/runconfiguration.h
@@ -343,7 +343,9 @@ protected:
template <class RunConfig>
void registerRunConfiguration(Core::Id runConfigBaseId)
{
- m_creator = [](Target *t) -> RunConfiguration * { return new RunConfig(t); };
+ m_creator = [runConfigBaseId](Target *t) -> RunConfiguration * {
+ return new RunConfig(t, runConfigBaseId);
+ };
m_runConfigBaseId = runConfigBaseId;
}
diff --git a/src/plugins/pythoneditor/pythoneditorplugin.cpp b/src/plugins/pythoneditor/pythoneditorplugin.cpp
index c5aa2e1eb88..aabe9e9bc3f 100644
--- a/src/plugins/pythoneditor/pythoneditorplugin.cpp
+++ b/src/plugins/pythoneditor/pythoneditorplugin.cpp
@@ -75,7 +75,6 @@ using namespace Utils;
namespace PythonEditor {
namespace Internal {
-const char PythonRunConfigurationPrefix[] = "PythonEditor.RunConfiguration.";
const char InterpreterKey[] = "PythonEditor.RunConfiguation.Interpreter";
const char MainScriptKey[] = "PythonEditor.RunConfiguation.MainScript";
const char PythonMimeType[] = "text/x-python-project"; // ### FIXME
@@ -235,7 +234,7 @@ class PythonRunConfiguration : public RunConfiguration
Q_PROPERTY(QString arguments READ arguments)
public:
- explicit PythonRunConfiguration(Target *target);
+ PythonRunConfiguration(Target *target, Core::Id id);
QWidget *createConfigurationWidget() override;
QVariantMap toMap() const override;
@@ -250,8 +249,6 @@ public:
void setInterpreter(const QString &interpreter) { m_interpreter = interpreter; }
private:
- friend class ProjectExplorer::RunConfigurationFactory;
-
QString defaultDisplayName() const;
QString m_interpreter;
@@ -260,8 +257,8 @@ private:
////////////////////////////////////////////////////////////////
-PythonRunConfiguration::PythonRunConfiguration(Target *target)
- : RunConfiguration(target, PythonRunConfigurationPrefix)
+PythonRunConfiguration::PythonRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
addExtraAspect(new LocalEnvironmentAspect(this, LocalEnvironmentAspect::BaseEnvironmentModifier()));
addExtraAspect(new ArgumentsAspect(this, "PythonEditor.RunConfiguration.Arguments"));
@@ -351,7 +348,7 @@ class PythonRunConfigurationFactory : public RunConfigurationFactory
public:
PythonRunConfigurationFactory()
{
- registerRunConfiguration<PythonRunConfiguration>(PythonRunConfigurationPrefix);
+ registerRunConfiguration<PythonRunConfiguration>("PythonEditor.RunConfiguration.");
addSupportedProjectType(PythonProjectId);
}
};
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
index b247058a4bd..7e7ff8282e1 100644
--- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
+++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
@@ -45,14 +45,12 @@ using namespace Utils;
namespace QbsProjectManager {
namespace Internal {
-const char QBS_RC_PREFIX[] = "Qbs.RunConfiguration:";
-
// --------------------------------------------------------------------
// QbsRunConfiguration:
// --------------------------------------------------------------------
-QbsRunConfiguration::QbsRunConfiguration(Target *target)
- : RunConfiguration(target, QBS_RC_PREFIX)
+QbsRunConfiguration::QbsRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
auto envAspect = new LocalEnvironmentAspect(this,
[](RunConfiguration *rc, Environment &env) {
@@ -174,7 +172,7 @@ bool QbsRunConfiguration::canRunForNode(const Node *node) const
QbsRunConfigurationFactory::QbsRunConfigurationFactory()
{
- registerRunConfiguration<QbsRunConfiguration>(QBS_RC_PREFIX);
+ registerRunConfiguration<QbsRunConfiguration>("Qbs.RunConfiguration:");
addSupportedProjectType(Constants::PROJECT_ID);
addSupportedTargetDeviceType(ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE);
}
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
index 987ee66aa80..36d3a3a256e 100644
--- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
+++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
@@ -39,7 +39,7 @@ class QbsRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit QbsRunConfiguration(ProjectExplorer::Target *target);
+ QbsRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
void addToBaseEnvironment(Utils::Environment &env) const;
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
index 3ed926659c1..5cf51f34433 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
@@ -25,18 +25,21 @@
#include "qmakeandroidrunconfiguration.h"
+#include <android/androidconstants.h>
+
#include <projectexplorer/kitinformation.h>
#include <projectexplorer/target.h>
+
#include <qtsupport/qtoutputformatter.h>
#include <qtsupport/qtkitinformation.h>
+
#include <qmakeprojectmanager/qmakeproject.h>
+#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
#include <qmakeprojectmanager/qmakenodes.h>
#include <utils/fileutils.h>
#include <utils/qtcassert.h>
-#include <QFileInfo>
-
namespace {
QLatin1String PRO_FILE_KEY("QMakeProjectManager.QmakeAndroidRunConfiguration.ProFile");
}
@@ -47,10 +50,8 @@ using QmakeProjectManager::QmakeProject;
namespace QmakeAndroidSupport {
namespace Internal {
-static const char ANDROID_RC_ID_PREFIX[] = "Qt4ProjectManager.AndroidRunConfiguration:";
-
-QmakeAndroidRunConfiguration::QmakeAndroidRunConfiguration(Target *target)
- : AndroidRunConfiguration(target, ANDROID_RC_ID_PREFIX)
+QmakeAndroidRunConfiguration::QmakeAndroidRunConfiguration(Target *target, Core::Id id)
+ : AndroidRunConfiguration(target, id)
{
connect(target->project(), &Project::parsingFinished, this, [this]() {
updateDisplayName();
@@ -127,5 +128,16 @@ Utils::FileName QmakeAndroidRunConfiguration::proFilePath() const
return Utils::FileName::fromString(buildKey());
}
+
+// QmakeAndroidRunConfigurationFactory
+
+QmakeAndroidRunConfigurationFactory::QmakeAndroidRunConfigurationFactory()
+{
+ registerRunConfiguration<QmakeAndroidRunConfiguration>
+ ("Qt4ProjectManager.AndroidRunConfiguration:");
+ addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
+ addSupportedTargetDeviceType(Android::Constants::ANDROID_DEVICE_TYPE);
+}
+
} // namespace Internal
} // namespace Android
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
index 96f0743cf6c..cffe847bf89 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
@@ -39,7 +39,7 @@ class QmakeAndroidRunConfiguration : public Android::AndroidRunConfiguration
Q_OBJECT
public:
- explicit QmakeAndroidRunConfiguration(ProjectExplorer::Target *target);
+ QmakeAndroidRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
Utils::FileName proFilePath() const;
@@ -52,5 +52,11 @@ private:
QmakeProjectManager::QmakeProject *qmakeProject() const;
};
+class QmakeAndroidRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
+{
+public:
+ QmakeAndroidRunConfigurationFactory();
+};
+
} // namespace Internal
} // namespace QmakeAndroidSupport
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp b/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp
deleted file mode 100644
index 021fdd5168e..00000000000
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 BogDan Vatra <bog_dan_ro@yahoo.com>
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#include "qmakeandroidrunfactories.h"
-#include "qmakeandroidrunconfiguration.h"
-
-#include <android/androidconstants.h>
-
-#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
-
-namespace QmakeAndroidSupport {
-namespace Internal {
-
-const char ANDROID_RC_ID_PREFIX[] = "Qt4ProjectManager.AndroidRunConfiguration:";
-
-QmakeAndroidRunConfigurationFactory::QmakeAndroidRunConfigurationFactory()
-{
- registerRunConfiguration<QmakeAndroidRunConfiguration>(ANDROID_RC_ID_PREFIX);
- addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
- addSupportedTargetDeviceType(Android::Constants::ANDROID_DEVICE_TYPE);
-}
-
-} // namespace Internal
-} // namespace Android
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.h b/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.h
deleted file mode 100644
index d80c2eaa04d..00000000000
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunfactories.h
+++ /dev/null
@@ -1,40 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 BogDan Vatra <bog_dan_ro@yahoo.com>
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#pragma once
-
-#include <projectexplorer/runconfiguration.h>
-
-namespace QmakeAndroidSupport {
-namespace Internal {
-
-class QmakeAndroidRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
-{
-public:
- QmakeAndroidRunConfigurationFactory();
-};
-
-} // namespace Internal
-} // namespace QmakeAndroidSupport
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidsupport.pro b/src/plugins/qmakeandroidsupport/qmakeandroidsupport.pro
index 875375e7d3b..feea75e9a52 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidsupport.pro
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidsupport.pro
@@ -9,7 +9,6 @@ HEADERS += \
createandroidmanifestwizard.h \
qmakeandroidsupport.h \
qmakeandroidrunconfiguration.h \
- qmakeandroidrunfactories.h \
qmakeandroidbuildapkstep.h \
qmakeandroidbuildapkwidget.h \
androidqmakebuildconfigurationfactory.h \
@@ -20,7 +19,6 @@ SOURCES += \
createandroidmanifestwizard.cpp \
qmakeandroidsupport.cpp \
qmakeandroidrunconfiguration.cpp \
- qmakeandroidrunfactories.cpp \
qmakeandroidbuildapkstep.cpp \
qmakeandroidbuildapkwidget.cpp \
androidqmakebuildconfigurationfactory.cpp \
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidsupport.qbs b/src/plugins/qmakeandroidsupport/qmakeandroidsupport.qbs
index a18a23d5a04..457aa436aaf 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidsupport.qbs
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidsupport.qbs
@@ -29,8 +29,6 @@ QtcPlugin {
"androidqmakebuildconfigurationfactory.h",
"qmakeandroidrunconfiguration.cpp",
"qmakeandroidrunconfiguration.h",
- "qmakeandroidrunfactories.cpp",
- "qmakeandroidrunfactories.h",
"qmakeandroidsupport.cpp",
"qmakeandroidsupport.h",
"qmakeandroidsupportplugin.h",
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidsupportplugin.cpp b/src/plugins/qmakeandroidsupport/qmakeandroidsupportplugin.cpp
index dc9bf1c5f04..0daf84b7cc8 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidsupportplugin.cpp
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidsupportplugin.cpp
@@ -27,7 +27,7 @@
#include "androidqmakebuildconfigurationfactory.h"
#include "qmakeandroidbuildapkstep.h"
-#include "qmakeandroidrunfactories.h"
+#include "qmakeandroidrunconfiguration.h"
#include "qmakeandroidsupport.h"
namespace QmakeAndroidSupport {
diff --git a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
index f1765bd2e92..15aab8ee319 100644
--- a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
+++ b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
@@ -55,15 +55,14 @@ using namespace Utils;
namespace QmakeProjectManager {
namespace Internal {
-const char QMAKE_RC_PREFIX[] = "Qt4ProjectManager.Qt4RunConfiguration:";
const char PRO_FILE_KEY[] = "Qt4ProjectManager.Qt4RunConfiguration.ProFile";
//
// DesktopQmakeRunConfiguration
//
-DesktopQmakeRunConfiguration::DesktopQmakeRunConfiguration(Target *target)
- : RunConfiguration(target, QMAKE_RC_PREFIX)
+DesktopQmakeRunConfiguration::DesktopQmakeRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
auto envAspect = new LocalEnvironmentAspect(this, [](RunConfiguration *rc, Environment &env) {
static_cast<DesktopQmakeRunConfiguration *>(rc)->addToBaseEnvironment(env);
@@ -172,7 +171,7 @@ QString DesktopQmakeRunConfiguration::defaultDisplayName()
DesktopQmakeRunConfigurationFactory::DesktopQmakeRunConfigurationFactory()
{
- registerRunConfiguration<DesktopQmakeRunConfiguration>(QMAKE_RC_PREFIX);
+ registerRunConfiguration<DesktopQmakeRunConfiguration>("Qt4ProjectManager.Qt4RunConfiguration:");
addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
addSupportedTargetDeviceType(ProjectExplorer::Constants::DESKTOP_DEVICE_TYPE);
}
diff --git a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
index 16d9baba7ba..685cda64567 100644
--- a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
+++ b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
@@ -38,7 +38,7 @@ class DesktopQmakeRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit DesktopQmakeRunConfiguration(ProjectExplorer::Target *target);
+ DesktopQmakeRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
QVariantMap toMap() const override;
diff --git a/src/plugins/qmlprojectmanager/qmlprojectmanagerconstants.h b/src/plugins/qmlprojectmanager/qmlprojectmanagerconstants.h
index 16de8e180f8..cddac079dc8 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectmanagerconstants.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectmanagerconstants.h
@@ -31,7 +31,6 @@ namespace QmlProjectManager {
namespace Constants {
const char QML_PROJECT_ID[] = "QmlProjectManager.QmlProject";
-const char QML_SCENE_RC_ID[] = "QmlProjectManager.QmlRunConfiguration.QmlScene";
const char QML_VIEWER_ARGUMENTS_KEY[] = "QmlProjectManager.QmlRunConfiguration.QDeclarativeViewerArguments";
const char QML_VIEWER_TARGET_DISPLAY_NAME[] = "QML Viewer";
const char QML_MAINSCRIPT_KEY[] = "QmlProjectManager.QmlRunConfiguration.MainScript";
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
index eca95f9140c..4f6336b90c3 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
@@ -52,8 +52,8 @@ namespace QmlProjectManager {
const char M_CURRENT_FILE[] = "CurrentFile";
-QmlProjectRunConfiguration::QmlProjectRunConfiguration(Target *target)
- : RunConfiguration(target, Constants::QML_SCENE_RC_ID)
+QmlProjectRunConfiguration::QmlProjectRunConfiguration(Target *target, Id id)
+ : RunConfiguration(target, id)
{
addExtraAspect(new QmlProjectEnvironmentAspect(this));
setOutputFormatter<QtSupport::QtOutputFormatter>();
@@ -296,7 +296,8 @@ namespace Internal {
QmlProjectRunConfigurationFactory::QmlProjectRunConfigurationFactory()
: FixedRunConfigurationFactory(QmlProjectRunConfiguration::tr("QML Scene"), false)
{
- registerRunConfiguration<QmlProjectRunConfiguration>(Constants::QML_SCENE_RC_ID);
+ registerRunConfiguration<QmlProjectRunConfiguration>
+ ("QmlProjectManager.QmlRunConfiguration.QmlScene");
addSupportedProjectType(QmlProjectManager::Constants::QML_PROJECT_ID);
}
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
index 791c6ce61c6..5c6d1dca479 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
@@ -43,7 +43,7 @@ class QMLPROJECTMANAGER_EXPORT QmlProjectRunConfiguration : public ProjectExplor
friend class QmlProject; // to call updateEnabled()
public:
- explicit QmlProjectRunConfiguration(ProjectExplorer::Target *target);
+ QmlProjectRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
ProjectExplorer::Runnable runnable() const override;
diff --git a/src/plugins/qnx/qnxrunconfiguration.cpp b/src/plugins/qnx/qnxrunconfiguration.cpp
index ea30169285e..9d8254778bd 100644
--- a/src/plugins/qnx/qnxrunconfiguration.cpp
+++ b/src/plugins/qnx/qnxrunconfiguration.cpp
@@ -35,8 +35,8 @@ using namespace RemoteLinux;
namespace Qnx {
namespace Internal {
-QnxRunConfiguration::QnxRunConfiguration(Target *target)
- : RemoteLinuxRunConfiguration(target, Constants::QNX_QNX_RUNCONFIGURATION_PREFIX)
+QnxRunConfiguration::QnxRunConfiguration(Target *target, Core::Id id)
+ : RemoteLinuxRunConfiguration(target, id)
{
auto libAspect = new QtLibPathAspect(this);
libAspect->setSettingsKey("Qt4ProjectManager.QnxRunConfiguration.QtLibPath");
diff --git a/src/plugins/qnx/qnxrunconfiguration.h b/src/plugins/qnx/qnxrunconfiguration.h
index d014621363b..25849014a06 100644
--- a/src/plugins/qnx/qnxrunconfiguration.h
+++ b/src/plugins/qnx/qnxrunconfiguration.h
@@ -44,7 +44,7 @@ class QnxRunConfiguration : public RemoteLinux::RemoteLinuxRunConfiguration
Q_OBJECT
public:
- explicit QnxRunConfiguration(ProjectExplorer::Target *target);
+ QnxRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
private:
ProjectExplorer::Runnable runnable() const override;
diff --git a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
index e542c6c8d25..482cd95ec07 100644
--- a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
+++ b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
@@ -40,8 +40,8 @@ using namespace Utils;
namespace RemoteLinux {
namespace Internal {
-RemoteLinuxCustomRunConfiguration::RemoteLinuxCustomRunConfiguration(Target *target)
- : RunConfiguration(target, runConfigId())
+RemoteLinuxCustomRunConfiguration::RemoteLinuxCustomRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
auto exeAspect = new ExecutableAspect(this);
exeAspect->setSettingsKey("RemoteLinux.CustomRunConfig.RemoteExecutable");
diff --git a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
index 37902a03f26..1c45b5fb3d4 100644
--- a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
+++ b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
@@ -33,8 +33,9 @@ namespace Internal {
class RemoteLinuxCustomRunConfiguration : public ProjectExplorer::RunConfiguration
{
Q_OBJECT
+
public:
- explicit RemoteLinuxCustomRunConfiguration(ProjectExplorer::Target *target);
+ RemoteLinuxCustomRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
bool isConfigured() const override;
ConfigurationState ensureConfigured(QString *errorMessage) override;
diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
index ed2c4f11990..3273092a9ad 100644
--- a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
+++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
@@ -43,11 +43,6 @@ using namespace Utils;
namespace RemoteLinux {
-RemoteLinuxRunConfiguration::RemoteLinuxRunConfiguration(Target *target)
- : RemoteLinuxRunConfiguration(target, IdPrefix)
-{
-}
-
RemoteLinuxRunConfiguration::RemoteLinuxRunConfiguration(Target *target, Core::Id id)
: RunConfiguration(target, id)
{
diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.h b/src/plugins/remotelinux/remotelinuxrunconfiguration.h
index 889a5ba7529..c3d263dcb71 100644
--- a/src/plugins/remotelinux/remotelinuxrunconfiguration.h
+++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.h
@@ -36,17 +36,12 @@ class REMOTELINUX_EXPORT RemoteLinuxRunConfiguration : public ProjectExplorer::R
Q_OBJECT
public:
- explicit RemoteLinuxRunConfiguration(ProjectExplorer::Target *target);
-
- static const char *IdPrefix;
-
-protected:
- // FIXME: Used by QNX, remove.
RemoteLinuxRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
+ static const char *IdPrefix;
+private:
void doAdditionalSetup(const ProjectExplorer::RunConfigurationCreationInfo &) override;
-private:
QString defaultDisplayName() const;
void updateTargetInformation();
};
diff --git a/src/plugins/winrt/winrt.pro b/src/plugins/winrt/winrt.pro
index 11f533f62a2..48a7bf69f52 100644
--- a/src/plugins/winrt/winrt.pro
+++ b/src/plugins/winrt/winrt.pro
@@ -14,7 +14,6 @@ HEADERS += \
winrtqtversionfactory.h \
winrtrunconfiguration.h \
winrtruncontrol.h \
- winrtrunfactories.h \
winrtrunnerhelper.h
SOURCES += \
@@ -30,7 +29,6 @@ SOURCES += \
winrtqtversionfactory.cpp \
winrtrunconfiguration.cpp \
winrtruncontrol.cpp \
- winrtrunfactories.cpp \
winrtrunnerhelper.cpp
DEFINES += WINRT_LIBRARY
diff --git a/src/plugins/winrt/winrt.qbs b/src/plugins/winrt/winrt.qbs
index fa78af5c808..2c072e4b5f0 100644
--- a/src/plugins/winrt/winrt.qbs
+++ b/src/plugins/winrt/winrt.qbs
@@ -38,8 +38,6 @@ QtcPlugin {
"winrtrunconfiguration.h",
"winrtruncontrol.cpp",
"winrtruncontrol.h",
- "winrtrunfactories.cpp",
- "winrtrunfactories.h",
"winrtrunnerhelper.cpp",
"winrtrunnerhelper.h"
]
diff --git a/src/plugins/winrt/winrtconstants.h b/src/plugins/winrt/winrtconstants.h
index c36dc8d70db..d185a0df26a 100644
--- a/src/plugins/winrt/winrtconstants.h
+++ b/src/plugins/winrt/winrtconstants.h
@@ -39,7 +39,6 @@ const char WINRT_WINPHONEQT[] = "WinRt.QtVersion.WindowsPhone";
const char WINRT_QTMAP_SUBKEYNAME[] = "WinRt";
const char WINRT_QTMAP_OSFLAVOR[] = "OsFlavor";
const char WINRT_MANIFEST_EDITOR_ID[] = "WinRTManifestEditorID";
-const char WINRT_RC_PREFIX[] = "WinRt.WinRtRunConfiguration:";
} // Constants
} // Internal
diff --git a/src/plugins/winrt/winrtplugin.cpp b/src/plugins/winrt/winrtplugin.cpp
index 22db9beed97..aafed07e301 100644
--- a/src/plugins/winrt/winrtplugin.cpp
+++ b/src/plugins/winrt/winrtplugin.cpp
@@ -25,7 +25,6 @@
#include "winrtplugin.h"
#include "winrtconstants.h"
-#include "winrtrunfactories.h"
#include "winrtdevice.h"
#include "winrtdevicefactory.h"
#include "winrtdeployconfiguration.h"
diff --git a/src/plugins/winrt/winrtrunconfiguration.cpp b/src/plugins/winrt/winrtrunconfiguration.cpp
index bfb7e2fe675..72777f10239 100644
--- a/src/plugins/winrt/winrtrunconfiguration.cpp
+++ b/src/plugins/winrt/winrtrunconfiguration.cpp
@@ -36,6 +36,7 @@
#include <utils/detailswidget.h>
#include <qmakeprojectmanager/qmakeproject.h>
+#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
#include <QFormLayout>
@@ -57,8 +58,8 @@ public:
};
-WinRtRunConfiguration::WinRtRunConfiguration(Target *target)
- : RunConfiguration(target, Constants::WINRT_RC_PREFIX)
+WinRtRunConfiguration::WinRtRunConfiguration(Target *target, Core::Id id)
+ : RunConfiguration(target, id)
{
setDisplayName(tr("Run App Package"));
addExtraAspect(new ArgumentsAspect(this, "WinRtRunConfigurationArgumentsId"));
@@ -135,6 +136,18 @@ QString WinRtRunConfiguration::executable() const
return executable;
}
+
+// WinRtRunConfigurationFactory
+
+WinRtRunConfigurationFactory::WinRtRunConfigurationFactory()
+{
+ registerRunConfiguration<WinRtRunConfiguration>("WinRt.WinRtRunConfiguration:");
+ addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_LOCAL);
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_PHONE);
+ addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_EMULATOR);
+}
+
} // namespace Internal
} // namespace WinRt
diff --git a/src/plugins/winrt/winrtrunconfiguration.h b/src/plugins/winrt/winrtrunconfiguration.h
index e79a3d71fa4..ef28b949cb3 100644
--- a/src/plugins/winrt/winrtrunconfiguration.h
+++ b/src/plugins/winrt/winrtrunconfiguration.h
@@ -35,7 +35,7 @@ class WinRtRunConfiguration : public ProjectExplorer::RunConfiguration
Q_OBJECT
public:
- explicit WinRtRunConfiguration(ProjectExplorer::Target *target);
+ WinRtRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
QWidget *createConfigurationWidget() override;
@@ -49,5 +49,11 @@ private:
QString executable() const;
};
+class WinRtRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
+{
+public:
+ WinRtRunConfigurationFactory();
+};
+
} // namespace Internal
} // namespace WinRt
diff --git a/src/plugins/winrt/winrtrunfactories.cpp b/src/plugins/winrt/winrtrunfactories.cpp
deleted file mode 100644
index 8f1aabcae29..00000000000
--- a/src/plugins/winrt/winrtrunfactories.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#include "winrtrunfactories.h"
-#include "winrtrunconfiguration.h"
-#include "winrtruncontrol.h"
-#include "winrtconstants.h"
-
-#include <qmakeprojectmanager/qmakeprojectmanagerconstants.h>
-
-using namespace ProjectExplorer;
-
-namespace WinRt {
-namespace Internal {
-
-WinRtRunConfigurationFactory::WinRtRunConfigurationFactory()
-{
- registerRunConfiguration<WinRtRunConfiguration>(Constants::WINRT_RC_PREFIX);
- addSupportedProjectType(QmakeProjectManager::Constants::QMAKEPROJECT_ID);
- addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_LOCAL);
- addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_PHONE);
- addSupportedTargetDeviceType(Constants::WINRT_DEVICE_TYPE_EMULATOR);
-}
-
-} // namespace Internal
-} // namespace WinRt
diff --git a/src/plugins/winrt/winrtrunfactories.h b/src/plugins/winrt/winrtrunfactories.h
deleted file mode 100644
index 47829bc04b8..00000000000
--- a/src/plugins/winrt/winrtrunfactories.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 The Qt Company Ltd.
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#pragma once
-
-#include <projectexplorer/runconfiguration.h>
-#include <projectexplorer/devicesupport/idevicefactory.h>
-#include <projectexplorer/deployconfiguration.h>
-
-namespace WinRt {
-namespace Internal {
-
-class WinRtRunConfigurationFactory : public ProjectExplorer::RunConfigurationFactory
-{
-public:
- WinRtRunConfigurationFactory();
-};
-
-} // namespace Internal
-} // namespace WinRt