diff --git a/src/plugins/coreplugin/vcsmanager.cpp b/src/plugins/coreplugin/vcsmanager.cpp index 264d0410abf..b516e05dcf4 100644 --- a/src/plugins/coreplugin/vcsmanager.cpp +++ b/src/plugins/coreplugin/vcsmanager.cpp @@ -223,6 +223,18 @@ void VcsManager::extensionsInitialized() } } +QList VcsManager::versionControls() +{ + return ExtensionSystem::PluginManager::getObjects(); +} + +IVersionControl *VcsManager::versionControl(Id id) +{ + return Utils::findOrDefault(versionControls(), [id](const Core::IVersionControl *vc) { + return vc->id() == id; + }); +} + void VcsManager::resetVersionControlForDirectory(const QString &inputDirectory) { if (inputDirectory.isEmpty()) diff --git a/src/plugins/coreplugin/vcsmanager.h b/src/plugins/coreplugin/vcsmanager.h index b19cc1d608f..77b1fa9e6f2 100644 --- a/src/plugins/coreplugin/vcsmanager.h +++ b/src/plugins/coreplugin/vcsmanager.h @@ -32,6 +32,7 @@ #define VCSMANAGER_H #include "core_global.h" +#include "id.h" #include #include @@ -63,6 +64,9 @@ public: static void extensionsInitialized(); + static QList versionControls(); + static IVersionControl *versionControl(Id id); + static void resetVersionControlForDirectory(const QString &inputDirectory); static IVersionControl *findVersionControlForDirectory(const QString &directory, QString *topLevelDirectory = 0); diff --git a/src/plugins/projectexplorer/projectwizardpage.cpp b/src/plugins/projectexplorer/projectwizardpage.cpp index 1cfae0f32b8..9c662af5903 100644 --- a/src/plugins/projectexplorer/projectwizardpage.cpp +++ b/src/plugins/projectexplorer/projectwizardpage.cpp @@ -38,7 +38,6 @@ #include #include #include -#include #include #include #include @@ -433,7 +432,7 @@ void ProjectWizardPage::initializeVersionControls() } } else { // Create - foreach (IVersionControl *vc, ExtensionSystem::PluginManager::getObjects()) { + foreach (IVersionControl *vc, VcsManager::versionControls()) { if (vc->supportsOperation(IVersionControl::CreateRepositoryOperation)) { versionControlChoices.append(vc->displayName()); m_activeVersionControls.append(vc);