diff options
author | Tobias Hunger <tobias.hunger@digia.com> | 2013-01-22 12:47:07 +0100 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@digia.com> | 2013-01-22 16:02:31 +0100 |
commit | f2122583da0e8f32c6ed77cd56b69d66559fe5f7 (patch) | |
tree | db285ad76fa7929ebb083eca83cfc77cf207c81d /src/plugins/projectexplorer/kitinformation.cpp | |
parent | 4d775ac56ac554b85c133d9eff5751d006c6171b (diff) | |
download | qt-creator-f2122583da0e8f32c6ed77cd56b69d66559fe5f7.tar.gz |
Kits: Reduce magic while improving setup
Task-number: QTCREATORBUG-8576
Task-number: QTCREATORBUG-8081
Change-Id: I9a6675a8ae97517f78bca026c4aa0edca82d606d
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/projectexplorer/kitinformation.cpp')
-rw-r--r-- | src/plugins/projectexplorer/kitinformation.cpp | 33 |
1 files changed, 19 insertions, 14 deletions
diff --git a/src/plugins/projectexplorer/kitinformation.cpp b/src/plugins/projectexplorer/kitinformation.cpp index 81c068c43f..77e96b3a86 100644 --- a/src/plugins/projectexplorer/kitinformation.cpp +++ b/src/plugins/projectexplorer/kitinformation.cpp @@ -181,6 +181,23 @@ void ToolChainKitInformation::fix(Kit *k) setToolChain(k, 0); // make sure to clear out no longer known tool chains } +void ToolChainKitInformation::setup(Kit *k) +{ + const QString id = k->value(Core::Id(TOOLCHAIN_INFORMATION)).toString(); + if (id.isEmpty()) + return; + + ToolChain *tc = ToolChainManager::instance()->findToolChain(id); + if (tc) + return; + + // ID is not found: Might be an ABI string... + foreach (ToolChain *current, ToolChainManager::instance()->toolChains()) { + if (current->targetAbi().toString() == id) + return setToolChain(k, current); + } +} + KitConfigWidget *ToolChainKitInformation::createConfigWidget(Kit *k) const { return new Internal::ToolChainInformationConfigWidget(k); @@ -209,20 +226,8 @@ ToolChain *ToolChainKitInformation::toolChain(const Kit *k) { if (!k) return 0; - const QString id = k->value(Core::Id(TOOLCHAIN_INFORMATION)).toString(); - if (id.isEmpty()) - return 0; - - ToolChain *tc = ToolChainManager::instance()->findToolChain(id); - if (tc) - return tc; - - // ID is not found: Might be an ABI string... - foreach (ToolChain *current, ToolChainManager::instance()->toolChains()) { - if (current->targetAbi().toString() == id) - return current; - } - return 0; + return ToolChainManager::instance() + ->findToolChain(k->value(Core::Id(TOOLCHAIN_INFORMATION)).toString()); } void ToolChainKitInformation::setToolChain(Kit *k, ToolChain *tc) |