forked from qt-creator/qt-creator
BaseQtVersion: Allow for a predicate when retrieving Qt versions
Make methods used to retrieve Qt versions from the Qt versions manager take a predicate to select the interesting version. Change-Id: I9218c57bae6d5033d49d618dfc0da41fe578444d Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -1269,7 +1269,7 @@ void AndroidConfigurations::updateAutomaticKitList()
|
||||
|
||||
QHash<Abi, QList<const QtSupport::BaseQtVersion *> > qtVersionsForArch;
|
||||
const QList<QtSupport::BaseQtVersion *> qtVersions
|
||||
= Utils::filtered(QtSupport::QtVersionManager::unsortedVersions(), [](const QtSupport::BaseQtVersion *v) {
|
||||
= QtSupport::QtVersionManager::unsortedVersions([](const QtSupport::BaseQtVersion *v) {
|
||||
return v->type() == Constants::ANDROIDQT;
|
||||
});
|
||||
for (const QtSupport::BaseQtVersion *qtVersion : qtVersions) {
|
||||
|
||||
@@ -74,15 +74,9 @@ bool AndroidPotentialKit::isEnabled() const
|
||||
}
|
||||
}
|
||||
|
||||
bool found = false;
|
||||
foreach (QtSupport::BaseQtVersion *version, QtSupport::QtVersionManager::validVersions()) {
|
||||
if (version->type() == QLatin1String(Constants::ANDROIDQT)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return found;
|
||||
return QtSupport::QtVersionManager::version([](const QtSupport::BaseQtVersion *v) {
|
||||
return v->isValid() && v->type() == QString::fromLatin1(Constants::ANDROIDQT);
|
||||
});
|
||||
}
|
||||
|
||||
AndroidPotentialKitWidget::AndroidPotentialKitWidget(QWidget *parent)
|
||||
|
||||
@@ -336,12 +336,13 @@ void AndroidSettingsWidget::check(AndroidSettingsWidget::Mode mode)
|
||||
toolchainsForAbi.insert(ati.abi);
|
||||
}
|
||||
|
||||
const QList<QtSupport::BaseQtVersion *> androidQts
|
||||
= QtSupport::QtVersionManager::unsortedVersions([](const QtSupport::BaseQtVersion *v) {
|
||||
return v->type() == QLatin1String(Constants::ANDROIDQT) && !v->qtAbis().isEmpty();
|
||||
});
|
||||
QSet<ProjectExplorer::Abi> qtVersionsForAbi;
|
||||
foreach (QtSupport::BaseQtVersion *qtVersion, QtSupport::QtVersionManager::unsortedVersions()) {
|
||||
if (qtVersion->type() != QLatin1String(Constants::ANDROIDQT) || qtVersion->qtAbis().isEmpty())
|
||||
continue;
|
||||
foreach (QtSupport::BaseQtVersion *qtVersion, androidQts)
|
||||
qtVersionsForAbi.insert(qtVersion->qtAbis().first());
|
||||
}
|
||||
|
||||
QSet<ProjectExplorer::Abi> missingQtArchs = toolchainsForAbi.subtract(qtVersionsForAbi);
|
||||
if (missingQtArchs.isEmpty()) {
|
||||
|
||||
Reference in New Issue
Block a user