ProjectExplorer: Added support for registering custom languages

Change-Id: I728a2ed1ef7d9f44d7c2b59d27d6e23444cd3bb5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
Filippo Cucchetto
2016-12-16 00:43:14 +01:00
parent 35690ab66e
commit 4b1f8f3609
63 changed files with 422 additions and 341 deletions

View File

@@ -296,10 +296,10 @@ ToolChainInterfacePtr BaseProjectPartBuilder::selectToolChain(
ToolChainInterfacePtr toolChain = nullptr;
if (languageVersion <= ProjectPart::LatestCVersion)
toolChain = m_project->toolChain(ProjectExplorer::ToolChain::Language::C, m_cFlags);
toolChain = m_project->toolChain(ProjectExplorer::Constants::C_LANGUAGE_ID, m_cFlags);
if (!toolChain) // Use Cxx toolchain for C projects without C compiler in kit and for C++ code
toolChain = m_project->toolChain(ProjectExplorer::ToolChain::Language::Cxx, m_cxxFlags);
toolChain = m_project->toolChain(ProjectExplorer::Constants::CXX_LANGUAGE_ID, m_cxxFlags);
return toolChain;
}

View File

@@ -72,7 +72,7 @@ public:
virtual QString displayName() const = 0;
virtual QString projectFilePath() const = 0;
virtual ToolChainInterfacePtr toolChain(ProjectExplorer::ToolChain::Language language,
virtual ToolChainInterfacePtr toolChain(Core::Id language,
const QStringList &commandLineFlags) const = 0;
};

View File

@@ -119,7 +119,7 @@ public:
return m_project.projectFilePath().toString();
}
ToolChainInterfacePtr toolChain(ProjectExplorer::ToolChain::Language language,
ToolChainInterfacePtr toolChain(Core::Id language,
const QStringList &commandLineFlags) const override
{
using namespace ProjectExplorer;