diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp index 5fe68c38ab0..92856bee401 100644 --- a/src/plugins/projectexplorer/kitmanager.cpp +++ b/src/plugins/projectexplorer/kitmanager.cpp @@ -359,25 +359,6 @@ void KitManager::deregisterKitAspect(KitAspect *ki) d->removeKitAspect(ki); } -QSet KitManager::supportedPlatforms() -{ - QSet platforms; - foreach (const Kit *k, kits()) - platforms.unite(k->supportedPlatforms()); - return platforms; -} - -QSet KitManager::availableFeatures(Core::Id platformId) -{ - QSet features; - foreach (const Kit *k, kits()) { - if (!k->supportedPlatforms().contains(platformId)) - continue; - features.unite(k->availableFeatures()); - } - return features; -} - QList KitManager::sortKits(const QList &kits) { // This method was added to delay the sorting of kits as long as possible. @@ -449,7 +430,7 @@ static KitList restoreKitsHelper(const FilePath &fileName) return result; } -QList KitManager::kits(const Kit::Predicate &predicate) +const QList KitManager::kits(const Kit::Predicate &predicate) { const QList result = Utils::toRawPointer(d->m_kitList); if (predicate) @@ -658,12 +639,20 @@ void KitAspectWidget::setStyle(QStyle *s) QSet KitFeatureProvider::availableFeatures(Id id) const { - return KitManager::availableFeatures(id); + QSet features; + for (const Kit *k : KitManager::kits()) { + if (k->supportedPlatforms().contains(id)) + features.unite(k->availableFeatures()); + } + return features; } QSet KitFeatureProvider::availablePlatforms() const { - return KitManager::supportedPlatforms(); + QSet platforms; + for (const Kit *k : KitManager::kits()) + platforms.unite(k->supportedPlatforms()); + return platforms; } QString KitFeatureProvider::displayNameForPlatform(Id id) const diff --git a/src/plugins/projectexplorer/kitmanager.h b/src/plugins/projectexplorer/kitmanager.h index b3185446475..060a94d595f 100644 --- a/src/plugins/projectexplorer/kitmanager.h +++ b/src/plugins/projectexplorer/kitmanager.h @@ -167,7 +167,7 @@ public: static KitManager *instance(); ~KitManager() override; - static QList kits(const Kit::Predicate &predicate = Kit::Predicate()); + static const QList kits(const Kit::Predicate &predicate = Kit::Predicate()); static Kit *kit(const Kit::Predicate &predicate); static Kit *kit(Core::Id id); static Kit *defaultKit(); @@ -180,9 +180,6 @@ public: static void deregisterKit(Kit *k); static void setDefaultKit(Kit *k); - static QSet supportedPlatforms(); - static QSet availableFeatures(Core::Id platformId); - static QList sortKits(const QList &kits); // Avoid sorting whenever possible! static void saveKits();