forked from qt-creator/qt-creator
ProjectExplorer: Use QList instead of QSet for language ids
There's no point in keeping ~2 items in a set and convert that to a list every now and then. Change-Id: I214b1049fb458e3d159478c47f55b97aacaac75a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -221,7 +221,7 @@ public:
|
|||||||
layout->setContentsMargins(0, 0, 0, 0);
|
layout->setContentsMargins(0, 0, 0, 0);
|
||||||
layout->setColumnStretch(1, 2);
|
layout->setColumnStretch(1, 2);
|
||||||
|
|
||||||
QList<Utils::Id> languageList = Utils::toList(ToolChainManager::allLanguages());
|
QList<Utils::Id> languageList = ToolChainManager::allLanguages();
|
||||||
Utils::sort(languageList, [](Utils::Id l1, Utils::Id l2) {
|
Utils::sort(languageList, [](Utils::Id l1, Utils::Id l2) {
|
||||||
return ToolChainManager::displayNameOfLanguageId(l1)
|
return ToolChainManager::displayNameOfLanguageId(l1)
|
||||||
< ToolChainManager::displayNameOfLanguageId(l2);
|
< ToolChainManager::displayNameOfLanguageId(l2);
|
||||||
|
@@ -514,7 +514,7 @@ ToolChain *ToolChainFactory::createToolChain(Utils::Id toolChainType)
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
QSet<Utils::Id> ToolChainFactory::supportedLanguages() const
|
QList<Utils::Id> ToolChainFactory::supportedLanguages() const
|
||||||
{
|
{
|
||||||
return m_supportsAllLanguages ? ToolChainManager::allLanguages() : m_supportedLanguages;
|
return m_supportsAllLanguages ? ToolChainManager::allLanguages() : m_supportedLanguages;
|
||||||
}
|
}
|
||||||
@@ -529,7 +529,7 @@ void ToolChainFactory::setSupportedToolChainType(const Utils::Id &supportedToolC
|
|||||||
m_supportedToolChainType = supportedToolChain;
|
m_supportedToolChainType = supportedToolChain;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ToolChainFactory::setSupportedLanguages(const QSet<Utils::Id> &supportedLanguages)
|
void ToolChainFactory::setSupportedLanguages(const QList<Utils::Id> &supportedLanguages)
|
||||||
{
|
{
|
||||||
m_supportedLanguages = supportedLanguages;
|
m_supportedLanguages = supportedLanguages;
|
||||||
}
|
}
|
||||||
|
@@ -39,7 +39,6 @@
|
|||||||
#include <utils/id.h>
|
#include <utils/id.h>
|
||||||
|
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QSet>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <QVariantMap>
|
#include <QVariantMap>
|
||||||
|
|
||||||
@@ -221,14 +220,14 @@ public:
|
|||||||
|
|
||||||
static ToolChain *createToolChain(Utils::Id toolChainType);
|
static ToolChain *createToolChain(Utils::Id toolChainType);
|
||||||
|
|
||||||
QSet<Utils::Id> supportedLanguages() const;
|
QList<Utils::Id> supportedLanguages() const;
|
||||||
|
|
||||||
void setUserCreatable(bool userCreatable);
|
void setUserCreatable(bool userCreatable);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void setDisplayName(const QString &name) { m_displayName = name; }
|
void setDisplayName(const QString &name) { m_displayName = name; }
|
||||||
void setSupportedToolChainType(const Utils::Id &supportedToolChainType);
|
void setSupportedToolChainType(const Utils::Id &supportedToolChainType);
|
||||||
void setSupportedLanguages(const QSet<Utils::Id> &supportedLanguages);
|
void setSupportedLanguages(const QList<Utils::Id> &supportedLanguages);
|
||||||
void setSupportsAllLanguages(bool supportsAllLanguages);
|
void setSupportsAllLanguages(bool supportsAllLanguages);
|
||||||
void setToolchainConstructor(const std::function<ToolChain *()> &constructor);
|
void setToolchainConstructor(const std::function<ToolChain *()> &constructor);
|
||||||
|
|
||||||
@@ -248,7 +247,7 @@ protected:
|
|||||||
private:
|
private:
|
||||||
QString m_displayName;
|
QString m_displayName;
|
||||||
Utils::Id m_supportedToolChainType;
|
Utils::Id m_supportedToolChainType;
|
||||||
QSet<Utils::Id> m_supportedLanguages;
|
QList<Utils::Id> m_supportedLanguages;
|
||||||
bool m_supportsAllLanguages = false;
|
bool m_supportsAllLanguages = false;
|
||||||
bool m_userCreatable = false;
|
bool m_userCreatable = false;
|
||||||
std::function<ToolChain *()> m_toolchainConstructor;
|
std::function<ToolChain *()> m_toolchainConstructor;
|
||||||
|
@@ -227,9 +227,9 @@ void ToolChainManager::deregisterToolChain(ToolChain *tc)
|
|||||||
delete tc;
|
delete tc;
|
||||||
}
|
}
|
||||||
|
|
||||||
QSet<Utils::Id> ToolChainManager::allLanguages()
|
QList<Id> ToolChainManager::allLanguages()
|
||||||
{
|
{
|
||||||
return Utils::transform<QSet>(d->m_languages, &LanguageDisplayPair::id);
|
return Utils::transform<QList>(d->m_languages, &LanguageDisplayPair::id);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ToolChainManager::registerLanguage(const Utils::Id &language, const QString &displayName)
|
bool ToolChainManager::registerLanguage(const Utils::Id &language, const QString &displayName)
|
||||||
|
@@ -71,7 +71,7 @@ public:
|
|||||||
static bool registerToolChain(ToolChain *tc);
|
static bool registerToolChain(ToolChain *tc);
|
||||||
static void deregisterToolChain(ToolChain *tc);
|
static void deregisterToolChain(ToolChain *tc);
|
||||||
|
|
||||||
static QSet<Utils::Id> allLanguages();
|
static QList<Utils::Id> allLanguages();
|
||||||
static bool registerLanguage(const Utils::Id &language, const QString &displayName);
|
static bool registerLanguage(const Utils::Id &language, const QString &displayName);
|
||||||
static QString displayNameOfLanguageId(const Utils::Id &id);
|
static QString displayNameOfLanguageId(const Utils::Id &id);
|
||||||
static bool isLanguageSupported(const Utils::Id &id);
|
static bool isLanguageSupported(const Utils::Id &id);
|
||||||
|
@@ -191,7 +191,7 @@ public:
|
|||||||
m_addButton = new QPushButton(ToolChainOptionsPage::tr("Add"), this);
|
m_addButton = new QPushButton(ToolChainOptionsPage::tr("Add"), this);
|
||||||
auto addMenu = new QMenu;
|
auto addMenu = new QMenu;
|
||||||
foreach (ToolChainFactory *factory, m_factories) {
|
foreach (ToolChainFactory *factory, m_factories) {
|
||||||
QList<Utils::Id> languages = Utils::toList(factory->supportedLanguages());
|
QList<Utils::Id> languages = factory->supportedLanguages();
|
||||||
if (languages.isEmpty())
|
if (languages.isEmpty())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user