diff options
author | hjk <[email protected]> | 2020-06-12 07:50:52 +0200 |
---|---|---|
committer | hjk <[email protected]> | 2020-06-15 12:13:38 +0000 |
commit | beee392dd85ddb1b10bbd507967157bc6fc7f539 (patch) | |
tree | 2abd6316c2a04af4c67ce8f45400db7ab192b388 /src/plugins | |
parent | fcef4709bb140f1b22b16e8b3bae0bf887f0e315 (diff) |
ProjectExplorer: Consolidate RunConfigurationFactory::ids
It was already only one id string with two names. Since it is not
an id for the factory but the id of the created run configuration,
settle of runConfigurationId() as accessor.
The factory and id fields in RunConfigurationCreationInfo were
redundant. factory always implies (runconfiguration)id (but not
necessarily the other way round, in theory different factories
are possible for the same runconfiguration type for different
devices). So drop the id field here.
In one case now factory pointers instead of ids are compared, but
this is neutral there as this happens in a context of a fixed Target,
device and project are fixed there, so id and factory are equally
unique.
Change-Id: I859aa91486a2dd4abfc7369540a3322d6ec6260d
Reviewed-by: Christian Kandeler <[email protected]>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/android/androidplugin.cpp | 8 | ||||
-rw-r--r-- | src/plugins/baremetal/baremetalplugin.cpp | 3 | ||||
-rw-r--r-- | src/plugins/boot2qt/qdbplugin.cpp | 2 | ||||
-rw-r--r-- | src/plugins/ios/iosplugin.cpp | 6 | ||||
-rw-r--r-- | src/plugins/mesonprojectmanager/mesonprojectplugin.cpp | 2 | ||||
-rw-r--r-- | src/plugins/nim/nimplugin.cpp | 6 | ||||
-rw-r--r-- | src/plugins/projectexplorer/addrunconfigdialog.cpp | 2 | ||||
-rw-r--r-- | src/plugins/projectexplorer/projectexplorer.cpp | 6 | ||||
-rw-r--r-- | src/plugins/projectexplorer/runconfiguration.cpp | 5 | ||||
-rw-r--r-- | src/plugins/projectexplorer/runconfiguration.h | 18 | ||||
-rw-r--r-- | src/plugins/projectexplorer/runsettingspropertiespage.cpp | 4 | ||||
-rw-r--r-- | src/plugins/projectexplorer/target.cpp | 6 | ||||
-rw-r--r-- | src/plugins/python/pythonplugin.cpp | 2 | ||||
-rw-r--r-- | src/plugins/qmlprojectmanager/qmlprojectplugin.cpp | 2 | ||||
-rw-r--r-- | src/plugins/qnx/qnxplugin.cpp | 6 | ||||
-rw-r--r-- | src/plugins/remotelinux/remotelinuxplugin.cpp | 4 | ||||
-rw-r--r-- | src/plugins/winrt/winrtplugin.cpp | 4 |
17 files changed, 42 insertions, 44 deletions
diff --git a/src/plugins/android/androidplugin.cpp b/src/plugins/android/androidplugin.cpp index bbf890dce77..7b5a99f6587 100644 --- a/src/plugins/android/androidplugin.cpp +++ b/src/plugins/android/androidplugin.cpp @@ -120,22 +120,22 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<AndroidRunSupport>(), {NORMAL_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory debugWorkerFactory{ RunWorkerFactory::make<AndroidDebugSupport>(), {DEBUG_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory profilerWorkerFactory{ RunWorkerFactory::make<AndroidQmlToolingSupport>(), {QML_PROFILER_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory qmlPreviewWorkerFactory{ RunWorkerFactory::make<AndroidQmlToolingSupport>(), {QML_PREVIEW_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory qmlPreviewWorkerFactory2{ RunWorkerFactory::make<AndroidQmlPreviewWorker>(), diff --git a/src/plugins/baremetal/baremetalplugin.cpp b/src/plugins/baremetal/baremetalplugin.cpp index a01ae59551d..9f9f09c6b8b 100644 --- a/src/plugins/baremetal/baremetalplugin.cpp +++ b/src/plugins/baremetal/baremetalplugin.cpp @@ -82,7 +82,8 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<BareMetalDebugSupport>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE, ProjectExplorer::Constants::DEBUG_RUN_MODE}, - {runConfigurationFactory.id(), customRunConfigurationFactory.id()} + {runConfigurationFactory.runConfigurationId(), + customRunConfigurationFactory.runConfigurationId()} }; }; diff --git a/src/plugins/boot2qt/qdbplugin.cpp b/src/plugins/boot2qt/qdbplugin.cpp index cf6f67ebbdc..a3cb3a695f3 100644 --- a/src/plugins/boot2qt/qdbplugin.cpp +++ b/src/plugins/boot2qt/qdbplugin.cpp @@ -184,7 +184,7 @@ public: m_makeInstallStepFactory{RemoteLinux::Constants::MakeInstallStepId}; const QList<Core::Id> supportedRunConfigs { - m_runConfigFactory.id(), + m_runConfigFactory.runConfigurationId(), "QmlProjectManager.QmlRunConfiguration" }; diff --git a/src/plugins/ios/iosplugin.cpp b/src/plugins/ios/iosplugin.cpp index a112364735c..5a684f7a823 100644 --- a/src/plugins/ios/iosplugin.cpp +++ b/src/plugins/ios/iosplugin.cpp @@ -85,17 +85,17 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<IosRunSupport>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {runConfigurationFactory.id()} + {runConfigurationFactory.runConfigurationId()} }; RunWorkerFactory debugWorkerFactory{ RunWorkerFactory::make<IosDebugSupport>(), {ProjectExplorer::Constants::DEBUG_RUN_MODE}, - {runConfigurationFactory.id()} + {runConfigurationFactory.runConfigurationId()} }; RunWorkerFactory qmlProfilerWorkerFactory{ RunWorkerFactory::make<IosQmlProfilerSupport>(), {ProjectExplorer::Constants::QML_PROFILER_RUN_MODE}, - {runConfigurationFactory.id()} + {runConfigurationFactory.runConfigurationId()} }; }; diff --git a/src/plugins/mesonprojectmanager/mesonprojectplugin.cpp b/src/plugins/mesonprojectmanager/mesonprojectplugin.cpp index a48e2b6a8ab..04904188312 100644 --- a/src/plugins/mesonprojectmanager/mesonprojectplugin.cpp +++ b/src/plugins/mesonprojectmanager/mesonprojectplugin.cpp @@ -88,7 +88,7 @@ private: RunWorkerFactory m_mesonRunWorkerFactory{RunWorkerFactory::make<ProjectExplorer::SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {m_runConfigurationFactory.id()}}; + {m_runConfigurationFactory.runConfigurationId()}}; void saveAll() { m_toolsSettings.saveMesonTools(MesonTools::tools(), ICore::dialogParent()); diff --git a/src/plugins/nim/nimplugin.cpp b/src/plugins/nim/nimplugin.cpp index 2fe64b1e999..d92ebdff7ab 100644 --- a/src/plugins/nim/nimplugin.cpp +++ b/src/plugins/nim/nimplugin.cpp @@ -78,17 +78,17 @@ public: RunWorkerFactory nimRunWorkerFactory { RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {nimRunConfigFactory.id()} + {nimRunConfigFactory.runConfigurationId()} }; RunWorkerFactory nimbleRunWorkerFactory { RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {nimbleRunConfigFactory.id()} + {nimbleRunConfigFactory.runConfigurationId()} }; RunWorkerFactory nimbleTestWorkerFactory { RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {nimbleTestConfigFactory.id()} + {nimbleTestConfigFactory.runConfigurationId()} }; NimbleBuildStepFactory nimbleBuildStepFactory; NimbleTaskStepFactory nimbleTaskStepFactory; diff --git a/src/plugins/projectexplorer/addrunconfigdialog.cpp b/src/plugins/projectexplorer/addrunconfigdialog.cpp index bc57e1c5448..080d6df538f 100644 --- a/src/plugins/projectexplorer/addrunconfigdialog.cpp +++ b/src/plugins/projectexplorer/addrunconfigdialog.cpp @@ -184,7 +184,7 @@ void AddRunConfigDialog::accept() const TreeItem * const item = model->itemForIndex(proxyModel->mapToSource(selected.first())); QTC_ASSERT(item, return); m_creationInfo = static_cast<const CandidateTreeItem *>(item)->creationInfo(); - QTC_ASSERT(m_creationInfo.id.isValid(), return); + QTC_ASSERT(m_creationInfo.factory, return); QDialog::accept(); } diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index 1ff8f6d230f..e0c9f82b415 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -624,7 +624,7 @@ public: RunWorkerFactory m_customExecutableRunWorkerFactory{ RunWorkerFactory::make<SimpleTargetRunner>(), {Constants::NORMAL_RUN_MODE}, - {m_customExecutableRunConfigFactory.id()} + {m_customExecutableRunConfigFactory.runConfigurationId()} }; ProjectFileWizardExtension m_projectFileWizardExtension; @@ -657,7 +657,9 @@ public: RunWorkerFactory desktopRunWorkerFactory{ RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {qmakeRunConfigFactory.id(), qbsRunConfigFactory.id(), cmakeRunConfigFactory.id()} + {qmakeRunConfigFactory.runConfigurationId(), + qbsRunConfigFactory.runConfigurationId(), + cmakeRunConfigFactory.runConfigurationId()} }; }; diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp index 69f6dc86069..2a1d879646e 100644 --- a/src/plugins/projectexplorer/runconfiguration.cpp +++ b/src/plugins/projectexplorer/runconfiguration.cpp @@ -458,7 +458,6 @@ RunConfigurationFactory::availableCreators(Target *target) const displayName = decoratedTargetName(displayName, target); RunConfigurationCreationInfo rci; rci.factory = this; - rci.id = m_runConfigBaseId; rci.buildKey = ti.buildKey; rci.projectFilePath = ti.projectFilePath; rci.displayName = displayName; @@ -532,7 +531,6 @@ RunConfiguration *RunConfigurationFactory::create(Target *target) const RunConfiguration *RunConfigurationCreationInfo::create(Target *target) const { QTC_ASSERT(factory->canHandle(target), return nullptr); - QTC_ASSERT(id == factory->runConfigurationBaseId(), return nullptr); RunConfiguration *rc = factory->create(target); if (!rc) @@ -550,7 +548,7 @@ RunConfiguration *RunConfigurationFactory::restore(Target *parent, const QVarian for (RunConfigurationFactory *factory : g_runConfigurationFactories) { if (factory->canHandle(parent)) { const Core::Id id = idFromMap(map); - if (id.name().startsWith(factory->m_runConfigBaseId.name())) { + if (id.name().startsWith(factory->m_runConfigurationId.name())) { RunConfiguration *rc = factory->create(parent); if (rc->fromMap(map)) { rc->update(); @@ -601,7 +599,6 @@ FixedRunConfigurationFactory::availableCreators(Target *parent) const : m_fixedBuildTarget; RunConfigurationCreationInfo rci; rci.factory = this; - rci.id = runConfigurationBaseId(); rci.displayName = displayName; return {rci}; } diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h index e896968c106..20fa04b647e 100644 --- a/src/plugins/projectexplorer/runconfiguration.h +++ b/src/plugins/projectexplorer/runconfiguration.h @@ -207,7 +207,6 @@ public: RunConfiguration *create(Target *target) const; const RunConfigurationFactory *factory = nullptr; - Core::Id id; QString buildKey; QString displayName; QString displayNameUniquifier; @@ -228,8 +227,7 @@ public: static RunConfiguration *clone(Target *parent, RunConfiguration *source); static const QList<RunConfigurationCreationInfo> creatorsForTarget(Target *parent); - Core::Id id() const { return m_runConfigBaseId; } - Core::Id runConfigurationBaseId() const { return m_runConfigBaseId; } + Core::Id runConfigurationId() const { return m_runConfigurationId; } static QString decoratedTargetName(const QString &targetName, Target *kit); @@ -239,16 +237,16 @@ protected: using RunConfigurationCreator = std::function<RunConfiguration *(Target *)>; template <class RunConfig> - void registerRunConfiguration(Core::Id runConfigBaseId) + void registerRunConfiguration(Core::Id runConfigurationId) { - m_creator = [runConfigBaseId](Target *t) -> RunConfiguration * { - return new RunConfig(t, runConfigBaseId); + m_creator = [runConfigurationId](Target *t) -> RunConfiguration * { + return new RunConfig(t, runConfigurationId); }; - m_runConfigBaseId = runConfigBaseId; + m_runConfigurationId = runConfigurationId; } - void addSupportedProjectType(Core::Id id); - void addSupportedTargetDeviceType(Core::Id id); + void addSupportedProjectType(Core::Id projectTypeId); + void addSupportedTargetDeviceType(Core::Id deviceTypeId); void setDecorateDisplayNames(bool on); private: @@ -257,7 +255,7 @@ private: friend class RunConfigurationCreationInfo; RunConfigurationCreator m_creator; - Core::Id m_runConfigBaseId; + Core::Id m_runConfigurationId; QList<Core::Id> m_supportedProjectTypes; QList<Core::Id> m_supportedTargetDeviceTypes; bool m_decorateDisplayNames = false; diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.cpp b/src/plugins/projectexplorer/runsettingspropertiespage.cpp index 0c772028936..002652c779d 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/runsettingspropertiespage.cpp @@ -201,11 +201,11 @@ void RunSettingsWidget::showAddRunConfigDialog() if (dlg.exec() != QDialog::Accepted) return; RunConfigurationCreationInfo rci = dlg.creationInfo(); - QTC_ASSERT(rci.id.isValid(), return); + QTC_ASSERT(rci.factory, return); RunConfiguration *newRC = rci.create(m_target); if (!newRC) return; - QTC_CHECK(newRC->id() == rci.id); + QTC_CHECK(newRC->id() == rci.factory->runConfigurationId()); m_target->addRunConfiguration(newRC); m_target->setActiveRunConfiguration(newRC); m_removeRunToolButton->setEnabled(m_target->runConfigurations().size() > 1); diff --git a/src/plugins/projectexplorer/target.cpp b/src/plugins/projectexplorer/target.cpp index e46f259f8a3..c7d07b0238f 100644 --- a/src/plugins/projectexplorer/target.cpp +++ b/src/plugins/projectexplorer/target.cpp @@ -625,7 +625,7 @@ void Target::updateDefaultRunConfigurations() bool present = false; for (const RunConfigurationCreationInfo &item : creators) { QString buildKey = rc->buildKey(); - if (item.id == rc->id() && item.buildKey == buildKey) { + if (item.factory->runConfigurationId() == rc->id() && item.buildKey == buildKey) { existing.append(item); present = true; } @@ -643,7 +643,7 @@ void Target::updateDefaultRunConfigurations() continue; bool exists = false; for (const RunConfigurationCreationInfo &ex : existing) { - if (ex.id == item.id && ex.buildKey == item.buildKey) + if (ex.factory == item.factory && ex.buildKey == item.buildKey) exists = true; } if (exists) @@ -652,7 +652,7 @@ void Target::updateDefaultRunConfigurations() RunConfiguration *rc = item.create(this); if (!rc) continue; - QTC_CHECK(rc->id() == item.id); + QTC_CHECK(rc->id() == item.factory->runConfigurationId()); if (!rc->isConfigured()) newUnconfigured << rc; else diff --git a/src/plugins/python/pythonplugin.cpp b/src/plugins/python/pythonplugin.cpp index cfc195acb27..9c02a7ead2b 100644 --- a/src/plugins/python/pythonplugin.cpp +++ b/src/plugins/python/pythonplugin.cpp @@ -64,7 +64,7 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; }; diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp index b44cbf06707..a9780c06c7d 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp @@ -47,7 +47,7 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; }; diff --git a/src/plugins/qnx/qnxplugin.cpp b/src/plugins/qnx/qnxplugin.cpp index 6b775794ce7..c127fb58a07 100644 --- a/src/plugins/qnx/qnxplugin.cpp +++ b/src/plugins/qnx/qnxplugin.cpp @@ -132,17 +132,17 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<SimpleTargetRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory debugWorkerFactory{ RunWorkerFactory::make<QnxDebugSupport>(), {ProjectExplorer::Constants::DEBUG_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory qmlProfilerWorkerFactory{ RunWorkerFactory::make<QnxQmlProfilerSupport>(), {}, // FIXME: Shouldn't this use the run mode id somehow? - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; }; diff --git a/src/plugins/remotelinux/remotelinuxplugin.cpp b/src/plugins/remotelinux/remotelinuxplugin.cpp index 036750f4660..cc0ebf34065 100644 --- a/src/plugins/remotelinux/remotelinuxplugin.cpp +++ b/src/plugins/remotelinux/remotelinuxplugin.cpp @@ -83,8 +83,8 @@ public: GenericDeployStepFactory<MakeInstallStep> makeInstallStepFactory; const QList<Core::Id> supportedRunConfigs { - runConfigurationFactory.id(), - customRunConfigurationFactory.id(), + runConfigurationFactory.runConfigurationId(), + customRunConfigurationFactory.runConfigurationId(), "QmlProjectManager.QmlRunConfiguration" }; diff --git a/src/plugins/winrt/winrtplugin.cpp b/src/plugins/winrt/winrtplugin.cpp index 314443e134d..2b603bff266 100644 --- a/src/plugins/winrt/winrtplugin.cpp +++ b/src/plugins/winrt/winrtplugin.cpp @@ -62,13 +62,13 @@ public: RunWorkerFactory runWorkerFactory{ RunWorkerFactory::make<WinRtRunner>(), {ProjectExplorer::Constants::NORMAL_RUN_MODE}, - {runConfigFactory.id()} + {runConfigFactory.runConfigurationId()} }; RunWorkerFactory debugWorkerFactory{ RunWorkerFactory::make<WinRtDebugSupport>(), {ProjectExplorer::Constants::DEBUG_RUN_MODE}, - {runConfigFactory.id()}, + {runConfigFactory.runConfigurationId()}, {Internal::Constants::WINRT_DEVICE_TYPE_LOCAL} }; }; |