forked from qt-creator/qt-creator
ProjectExplorer: More Store/Key in KitAspect
Change-Id: I6b6e497fac7a3d0f041af727601428bb5c3c441d Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
@@ -378,14 +378,13 @@ static QMap<Id, QByteArray> defaultToolChainIds()
|
|||||||
return toolChains;
|
return toolChains;
|
||||||
}
|
}
|
||||||
|
|
||||||
static QVariant defaultToolChainValue()
|
static Store defaultToolChainValue()
|
||||||
{
|
{
|
||||||
const QMap<Id, QByteArray> toolChains = defaultToolChainIds();
|
const QMap<Id, QByteArray> toolChains = defaultToolChainIds();
|
||||||
QVariantMap result;
|
Store result;
|
||||||
auto end = toolChains.end();
|
auto end = toolChains.end();
|
||||||
for (auto it = toolChains.begin(); it != end; ++it) {
|
for (auto it = toolChains.begin(); it != end; ++it)
|
||||||
result.insert(it.key().toString(), it.value());
|
result.insert(it.key().toKey(), it.value());
|
||||||
}
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -502,13 +501,13 @@ void ToolChainKitAspectFactory::setup(Kit *k)
|
|||||||
QTC_ASSERT(ToolChainManager::isLoaded(), return);
|
QTC_ASSERT(ToolChainManager::isLoaded(), return);
|
||||||
QTC_ASSERT(k, return);
|
QTC_ASSERT(k, return);
|
||||||
|
|
||||||
QVariantMap value = k->value(id()).toMap();
|
Store value = storeFromVariant(k->value(id()));
|
||||||
bool lockToolchains = k->isSdkProvided() && !value.isEmpty();
|
bool lockToolchains = k->isSdkProvided() && !value.isEmpty();
|
||||||
if (value.empty())
|
if (value.empty())
|
||||||
value = defaultToolChainValue().toMap();
|
value = defaultToolChainValue();
|
||||||
|
|
||||||
for (auto i = value.constBegin(); i != value.constEnd(); ++i) {
|
for (auto i = value.constBegin(); i != value.constEnd(); ++i) {
|
||||||
Id l = findLanguage(i.key());
|
Id l = findLanguage(stringFromKey(i.key()));
|
||||||
|
|
||||||
if (!l.isValid()) {
|
if (!l.isValid()) {
|
||||||
lockToolchains = false;
|
lockToolchains = false;
|
||||||
@@ -622,8 +621,8 @@ QByteArray ToolChainKitAspect::toolChainId(const Kit *k, Id language)
|
|||||||
QTC_ASSERT(ToolChainManager::isLoaded(), return nullptr);
|
QTC_ASSERT(ToolChainManager::isLoaded(), return nullptr);
|
||||||
if (!k)
|
if (!k)
|
||||||
return {};
|
return {};
|
||||||
QVariantMap value = k->value(ToolChainKitAspect::id()).toMap();
|
Store value = storeFromVariant(k->value(ToolChainKitAspect::id()));
|
||||||
return value.value(language.toString(), QByteArray()).toByteArray();
|
return value.value(language.toKey(), QByteArray()).toByteArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
ToolChain *ToolChainKitAspect::toolChain(const Kit *k, Id language)
|
ToolChain *ToolChainKitAspect::toolChain(const Kit *k, Id language)
|
||||||
@@ -646,10 +645,10 @@ QList<ToolChain *> ToolChainKitAspect::toolChains(const Kit *k)
|
|||||||
{
|
{
|
||||||
QTC_ASSERT(k, return {});
|
QTC_ASSERT(k, return {});
|
||||||
|
|
||||||
const QVariantMap value = k->value(ToolChainKitAspect::id()).toMap();
|
const Store value = storeFromVariant(k->value(ToolChainKitAspect::id()));
|
||||||
const QList<ToolChain *> tcList
|
const QList<ToolChain *> tcList
|
||||||
= transform<QList>(ToolChainManager::allLanguages(), [&value](Id l) {
|
= transform<QList>(ToolChainManager::allLanguages(), [&value](Id l) {
|
||||||
return ToolChainManager::findToolChain(value.value(l.toString()).toByteArray());
|
return ToolChainManager::findToolChain(value.value(l.toKey()).toByteArray());
|
||||||
});
|
});
|
||||||
return filtered(tcList, [](ToolChain *tc) { return tc; });
|
return filtered(tcList, [](ToolChain *tc) { return tc; });
|
||||||
}
|
}
|
||||||
@@ -658,10 +657,10 @@ void ToolChainKitAspect::setToolChain(Kit *k, ToolChain *tc)
|
|||||||
{
|
{
|
||||||
QTC_ASSERT(tc, return);
|
QTC_ASSERT(tc, return);
|
||||||
QTC_ASSERT(k, return);
|
QTC_ASSERT(k, return);
|
||||||
QVariantMap result = k->value(ToolChainKitAspect::id()).toMap();
|
Store result = storeFromVariant(k->value(ToolChainKitAspect::id()));
|
||||||
result.insert(tc->language().toString(), tc->id());
|
result.insert(tc->language().toKey(), tc->id());
|
||||||
|
|
||||||
k->setValue(id(), result);
|
k->setValue(id(), variantFromStore(result));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -682,8 +681,8 @@ void ToolChainKitAspect::setAllToolChainsToMatch(Kit *k, ToolChain *tc)
|
|||||||
const Toolchains allTcList = ToolChainManager::toolchains();
|
const Toolchains allTcList = ToolChainManager::toolchains();
|
||||||
QTC_ASSERT(allTcList.contains(tc), return);
|
QTC_ASSERT(allTcList.contains(tc), return);
|
||||||
|
|
||||||
QVariantMap result = k->value(ToolChainKitAspect::id()).toMap();
|
Store result = storeFromVariant(k->value(ToolChainKitAspect::id()));
|
||||||
result.insert(tc->language().toString(), tc->id());
|
result.insert(tc->language().toKey(), tc->id());
|
||||||
|
|
||||||
for (const Id l : ToolChainManager::allLanguages()) {
|
for (const Id l : ToolChainManager::allLanguages()) {
|
||||||
if (l == tc->language())
|
if (l == tc->language())
|
||||||
@@ -703,14 +702,14 @@ void ToolChainKitAspect::setAllToolChainsToMatch(Kit *k, ToolChain *tc)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (bestMatch)
|
if (bestMatch)
|
||||||
result.insert(l.toString(), bestMatch->id());
|
result.insert(l.toKey(), bestMatch->id());
|
||||||
else if (match)
|
else if (match)
|
||||||
result.insert(l.toString(), match->id());
|
result.insert(l.toKey(), match->id());
|
||||||
else
|
else
|
||||||
result.insert(l.toString(), QByteArray());
|
result.insert(l.toKey(), QByteArray());
|
||||||
}
|
}
|
||||||
|
|
||||||
k->setValue(id(), result);
|
k->setValue(id(), variantFromStore(result));
|
||||||
}
|
}
|
||||||
|
|
||||||
void ToolChainKitAspect::clearToolChain(Kit *k, Id language)
|
void ToolChainKitAspect::clearToolChain(Kit *k, Id language)
|
||||||
@@ -718,9 +717,9 @@ void ToolChainKitAspect::clearToolChain(Kit *k, Id language)
|
|||||||
QTC_ASSERT(language.isValid(), return);
|
QTC_ASSERT(language.isValid(), return);
|
||||||
QTC_ASSERT(k, return);
|
QTC_ASSERT(k, return);
|
||||||
|
|
||||||
QVariantMap result = k->value(ToolChainKitAspect::id()).toMap();
|
Store result = storeFromVariant(k->value(ToolChainKitAspect::id()));
|
||||||
result.insert(language.toString(), QByteArray());
|
result.insert(language.toKey(), QByteArray());
|
||||||
k->setValue(id(), result);
|
k->setValue(id(), variantFromStore(result));
|
||||||
}
|
}
|
||||||
|
|
||||||
Abi ToolChainKitAspect::targetAbi(const Kit *k)
|
Abi ToolChainKitAspect::targetAbi(const Kit *k)
|
||||||
|
|||||||
Reference in New Issue
Block a user