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:
Tobias Hunger
2017-01-11 14:43:48 +01:00
parent dd438a3445
commit 6553c3c99e
17 changed files with 75 additions and 92 deletions

View File

@@ -487,15 +487,9 @@ void ExamplesListModel::updateExamples()
void ExamplesListModel::updateQtVersions()
{
QList<BaseQtVersion*> versions = QtVersionManager::validVersions();
QMutableListIterator<BaseQtVersion*> iter(versions);
while (iter.hasNext()) {
BaseQtVersion *version = iter.next();
if (!version->hasExamples()
&& !version->hasDemos())
iter.remove();
}
QList<BaseQtVersion*> versions = QtVersionManager::validVersions([](const BaseQtVersion *v) {
return v->hasExamples() || v->hasDemos();
});
// prioritize default qt version
ProjectExplorer::Kit *defaultKit = ProjectExplorer::KitManager::defaultKit();