diff --git a/src/plugins/studiowelcome/wizardfactories.cpp b/src/plugins/studiowelcome/wizardfactories.cpp index d9a6d686e75..83a97d455d4 100644 --- a/src/plugins/studiowelcome/wizardfactories.cpp +++ b/src/plugins/studiowelcome/wizardfactories.cpp @@ -30,11 +30,6 @@ #include "wizardfactories.h" #include -namespace { -// TODO: should be extern, check coreplugin/dialogs/newdialogwidget.cpp -const char BLACKLISTED_CATEGORIES_KEY[] = "Core/NewDialog/BlacklistedCategories"; -} - using namespace StudioWelcome; WizardFactories::WizardFactories(QList &factories, QWidget *wizardParent, const Utils::Id &platform) @@ -42,9 +37,6 @@ WizardFactories::WizardFactories(QList &factories, QWidg , m_platform{platform} , m_factories{factories} { - QVariant value = Core::ICore::settings()->value(BLACKLISTED_CATEGORIES_KEY); - m_blacklist = Utils::Id::fromStringList(value.toStringList()); - sortByCategoryAndId(); filter(); m_projectItems = makeProjectItemsGroupedByCategory(); @@ -66,10 +58,10 @@ void WizardFactories::filter() // TODO: perhaps I could use Utils::filtered here. std::copy_if(std::begin(m_factories), std::end(m_factories), std::back_inserter(acceptedFactories), [&](auto *wizard) { - return wizard->isAvailable(m_platform) - && wizard->kind() == Core::IWizardFactory::ProjectWizard - && !m_blacklist.contains(Utils::Id::fromString(wizard->category())); - }); + return wizard->isAvailable(m_platform) + && wizard->kind() == Core::IWizardFactory::ProjectWizard + && wizard->requiredFeatures().contains("QtStudio"); + }); m_factories = acceptedFactories; } diff --git a/src/plugins/studiowelcome/wizardfactories.h b/src/plugins/studiowelcome/wizardfactories.h index c41300ff091..9353ecf59f7 100644 --- a/src/plugins/studiowelcome/wizardfactories.h +++ b/src/plugins/studiowelcome/wizardfactories.h @@ -55,7 +55,6 @@ private: std::map makeProjectItemsGroupedByCategory(); private: - QSet m_blacklist; QWidget *m_wizardParent; Utils::Id m_platform;