diff options
author | Filippo Cucchetto <filippocucchetto@gmail.com> | 2016-12-16 00:43:14 +0100 |
---|---|---|
committer | Filippo Cucchetto <filippocucchetto@gmail.com> | 2017-01-23 11:19:11 +0000 |
commit | 4b1f8f360946d47fd1f8165f5e194805d3536810 (patch) | |
tree | 192a53b20b938ce08614df25a9f554941e93ae80 /src/plugins/projectexplorer/toolchainoptionspage.cpp | |
parent | 35690ab66e3c79bf2ff69a2b996da0c2584ee13b (diff) |
ProjectExplorer: Added support for registering custom languages
Change-Id: I728a2ed1ef7d9f44d7c2b59d27d6e23444cd3bb5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/toolchainoptionspage.cpp')
-rw-r--r-- | src/plugins/projectexplorer/toolchainoptionspage.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/plugins/projectexplorer/toolchainoptionspage.cpp b/src/plugins/projectexplorer/toolchainoptionspage.cpp index 42065332d2..411c95a802 100644 --- a/src/plugins/projectexplorer/toolchainoptionspage.cpp +++ b/src/plugins/projectexplorer/toolchainoptionspage.cpp @@ -117,8 +117,8 @@ public: auto autoRoot = new StaticTreeItem(ToolChainOptionsPage::tr("Auto-detected")); auto manualRoot = new StaticTreeItem(ToolChainOptionsPage::tr("Manual")); - foreach (const ToolChain::Language l, ToolChain::allLanguages()) { - const QString dn = ToolChain::languageDisplayName(l); + foreach (const Core::Id &l, ToolChainManager::allLanguages()) { + const QString dn = ToolChainManager::displayNameOfLanguageId(l); auto autoNode = new StaticTreeItem(dn); auto manualNode = new StaticTreeItem(dn); @@ -147,19 +147,19 @@ public: m_addButton = new QPushButton(ToolChainOptionsPage::tr("Add"), this); auto addMenu = new QMenu; foreach (ToolChainFactory *factory, m_factories) { - QList<ToolChain::Language> languages = factory->supportedLanguages().toList(); + QList<Core::Id> languages = factory->supportedLanguages().toList(); if (languages.isEmpty()) continue; if (languages.count() == 1) { addMenu->addAction(createAction(factory->displayName(), factory, languages.at(0))); } else { - Utils::sort(languages, [](ToolChain::Language l1, ToolChain::Language l2) { - return ToolChain::languageDisplayName(l1) < ToolChain::languageDisplayName(l2); + Utils::sort(languages, [](const Core::Id &l1, const Core::Id &l2) { + return ToolChainManager::displayNameOfLanguageId(l1) < ToolChainManager::displayNameOfLanguageId(l2); }); auto subMenu = addMenu->addMenu(factory->displayName()); - foreach (ToolChain::Language l, languages) - subMenu->addAction(createAction(ToolChain::languageDisplayName(l), factory, l)); + foreach (const Core::Id &l, languages) + subMenu->addAction(createAction(ToolChainManager::displayNameOfLanguageId(l), factory, l)); } } m_addButton->setMenu(addMenu); @@ -209,7 +209,7 @@ public: void toolChainSelectionChanged(); void updateState(); - void createToolChain(ToolChainFactory *factory, ToolChain::Language l); + void createToolChain(ToolChainFactory *factory, const Core::Id &language); void cloneToolChain(); ToolChainTreeItem *currentTreeItem(); @@ -219,10 +219,10 @@ public: void removeToolChain(ProjectExplorer::ToolChain *); StaticTreeItem *parentForToolChain(ToolChain *tc); - QAction *createAction(const QString &name, ToolChainFactory *factory, ToolChain::Language l) + QAction *createAction(const QString &name, ToolChainFactory *factory, Core::Id language) { auto action = new QAction(name, nullptr); - connect(action, &QAction::triggered, [this, factory, l] { createToolChain(factory, l); }); + connect(action, &QAction::triggered, [this, factory, language] { createToolChain(factory, language); }); return action; } @@ -237,7 +237,7 @@ public: QPushButton *m_cloneButton; QPushButton *m_delButton; - QHash<ToolChain::Language, QPair<StaticTreeItem *, StaticTreeItem *>> m_languageMap; + QHash<Core::Id, QPair<StaticTreeItem *, StaticTreeItem *>> m_languageMap; QList<ToolChainTreeItem *> m_toAddList; QList<ToolChainTreeItem *> m_toRemoveList; @@ -328,7 +328,7 @@ void ToolChainOptionsWidget::apply() Q_ASSERT(m_toRemoveList.isEmpty()); // Update tool chains: - foreach (ToolChain::Language l, m_languageMap.keys()) { + foreach (const Core::Id &l, m_languageMap.keys()) { StaticTreeItem *parent = m_languageMap.value(l).second; foreach (TreeItem *item, parent->children()) { auto tcItem = static_cast<ToolChainTreeItem *>(item); @@ -371,13 +371,13 @@ void ToolChainOptionsWidget::apply() } } -void ToolChainOptionsWidget::createToolChain(ToolChainFactory *factory, ToolChain::Language l) +void ToolChainOptionsWidget::createToolChain(ToolChainFactory *factory, const Core::Id &language) { QTC_ASSERT(factory, return); QTC_ASSERT(factory->canCreate(), return); - QTC_ASSERT(l != ToolChain::Language::None, return); + QTC_ASSERT(language.isValid(), return); - ToolChain *tc = factory->create(l); + ToolChain *tc = factory->create(language); if (!tc) return; |