From 51be3be2eadb3a8001c192a40f6076ea233117f3 Mon Sep 17 00:00:00 2001 From: Artem Sokolovskii Date: Tue, 3 May 2022 16:48:36 +0200 Subject: [PATCH] ProjectExplorer: Remove foreach / Q_FOREACH usage part 2 Task-number: QTCREATORBUG-27464 Change-Id: Ibfacf5a3b9789a3cf0ea229d1b0d22639101bf9a Reviewed-by: Eike Ziller Reviewed-by: Reviewed-by: Qt CI Bot --- src/plugins/projectexplorer/kit.cpp | 15 ++++--- src/plugins/projectexplorer/kitchooser.cpp | 4 +- .../projectexplorer/kitinformation.cpp | 44 ++++++++++++------- src/plugins/projectexplorer/kitmanager.cpp | 3 +- .../kitmanagerconfigwidget.cpp | 6 +-- src/plugins/projectexplorer/kitmodel.cpp | 8 ++-- .../miniprojecttargetselector.cpp | 29 +++++++----- src/plugins/projectexplorer/msvctoolchain.cpp | 16 ++++--- .../projectexplorer/projectexplorer.cpp | 11 ++--- .../projectexplorer/projectimporter.cpp | 18 ++++---- src/plugins/projectexplorer/projectnodes.cpp | 5 ++- .../projectexplorer/projecttreewidget.cpp | 2 +- src/plugins/projectexplorer/projectwindow.cpp | 3 +- .../projectexplorer/projectwizardpage.cpp | 14 +++--- .../runsettingspropertiespage.cpp | 6 ++- src/plugins/projectexplorer/session.cpp | 30 ++++++++----- 16 files changed, 129 insertions(+), 85 deletions(-) diff --git a/src/plugins/projectexplorer/kit.cpp b/src/plugins/projectexplorer/kit.cpp index 114e6e25512..70aba302b2d 100644 --- a/src/plugins/projectexplorer/kit.cpp +++ b/src/plugins/projectexplorer/kit.cpp @@ -189,12 +189,12 @@ Kit::Kit(const QVariantMap &data) : for (QVariantMap::ConstIterator it = extra.constBegin(); it != cend; ++it) d->m_data.insert(Id::fromString(it.key()), it.value()); - QStringList mutableInfoList = data.value(QLatin1String(MUTABLE_INFO_KEY)).toStringList(); - foreach (const QString &mutableInfo, mutableInfoList) + const QStringList mutableInfoList = data.value(QLatin1String(MUTABLE_INFO_KEY)).toStringList(); + for (const QString &mutableInfo : mutableInfoList) d->m_mutable.insert(Id::fromString(mutableInfo)); - QStringList stickyInfoList = data.value(QLatin1String(STICKY_INFO_KEY)).toStringList(); - foreach (const QString &stickyInfo, stickyInfoList) + const QStringList stickyInfoList = data.value(QLatin1String(STICKY_INFO_KEY)).toStringList(); + for (const QString &stickyInfo : stickyInfoList) d->m_sticky.insert(Id::fromString(stickyInfo)); } @@ -337,7 +337,8 @@ QString Kit::fileSystemFriendlyName() const QString name = customFileSystemFriendlyName(); if (name.isEmpty()) name = FileUtils::qmakeFriendlyName(displayName()); - foreach (Kit *i, KitManager::kits()) { + const QList kits = KitManager::kits(); + for (Kit *i : kits) { if (i == this) continue; if (name == FileUtils::qmakeFriendlyName(i->displayName())) { @@ -536,12 +537,12 @@ QVariantMap Kit::toMap() const data.insert(DEVICE_TYPE_FOR_ICON_KEY, d->m_deviceTypeForIcon.toSetting()); QStringList mutableInfo; - foreach (Id id, d->m_mutable) + for (const Id id : qAsConst(d->m_mutable)) mutableInfo << id.toString(); data.insert(QLatin1String(MUTABLE_INFO_KEY), mutableInfo); QStringList stickyInfo; - foreach (Id id, d->m_sticky) + for (const Id id : qAsConst(d->m_sticky)) stickyInfo << id.toString(); data.insert(QLatin1String(STICKY_INFO_KEY), stickyInfo); diff --git a/src/plugins/projectexplorer/kitchooser.cpp b/src/plugins/projectexplorer/kitchooser.cpp index 8b6b6ecb053..531e904b7f0 100644 --- a/src/plugins/projectexplorer/kitchooser.cpp +++ b/src/plugins/projectexplorer/kitchooser.cpp @@ -127,8 +127,8 @@ void KitChooser::populate() m_hasStartupKit = true; } } - - foreach (Kit *kit, KitManager::sortKits(KitManager::kits())) { + const QList kits = KitManager::sortKits(KitManager::kits()); + for (Kit *kit : kits) { if (m_kitPredicate(kit)) { m_chooser->addItem(kitText(kit), kit->id().toSetting()); const int pos = m_chooser->count() - 1; diff --git a/src/plugins/projectexplorer/kitinformation.cpp b/src/plugins/projectexplorer/kitinformation.cpp index acf153ddfaa..3daf7aaef70 100644 --- a/src/plugins/projectexplorer/kitinformation.cpp +++ b/src/plugins/projectexplorer/kitinformation.cpp @@ -269,7 +269,8 @@ private: void refresh() override { m_ignoreChanges = true; - foreach (Utils::Id l, m_languageComboboxMap.keys()) { + const QList keys = m_languageComboboxMap.keys(); + for (const Utils::Id l : keys) { const Toolchains ltcList = ToolChainManager::toolchains(Utils::equal(&ToolChain::language, l)); @@ -277,7 +278,7 @@ private: cb->clear(); cb->addItem(tr(""), QByteArray()); - foreach (ToolChain *tc, ltcList) + for (ToolChain *tc : ltcList) cb->addItem(tc->displayName(), tc->id()); cb->setEnabled(cb->count() > 1 && !m_isReadOnly); @@ -290,7 +291,8 @@ private: void makeReadOnly() override { m_isReadOnly = true; - foreach (Utils::Id l, m_languageComboboxMap.keys()) { + const QList keys = m_languageComboboxMap.keys(); + for (const Utils::Id l : keys) { m_languageComboboxMap.value(l)->setEnabled(false); } } @@ -347,7 +349,8 @@ static QMap defaultToolChainIds() QMap toolChains; const Abi abi = Abi::hostAbi(); const Toolchains tcList = ToolChainManager::toolchains(Utils::equal(&ToolChain::targetAbi, abi)); - foreach (Utils::Id l, ToolChainManager::allLanguages()) { + const QList languages = ToolChainManager::allLanguages(); + for (Utils::Id l : languages) { ToolChain *tc = Utils::findOrDefault(tcList, Utils::equal(&ToolChain::language, l)); toolChains.insert(l, tc ? tc->id() : QByteArray()); } @@ -374,7 +377,7 @@ Tasks ToolChainKitAspect::validate(const Kit *k) const result << BuildSystemTask(Task::Warning, ToolChainKitAspect::msgNoToolChainInTarget()); } else { QSet targetAbis; - foreach (ToolChain *tc, tcList) { + for (const ToolChain *tc : tcList) { targetAbis.insert(tc->targetAbi()); result << tc->validateKit(k); } @@ -454,7 +457,8 @@ void ToolChainKitAspect::upgrade(Kit *k) void ToolChainKitAspect::fix(Kit *k) { QTC_ASSERT(ToolChainManager::isLoaded(), return); - foreach (const Utils::Id& l, ToolChainManager::allLanguages()) { + const QList languages = ToolChainManager::allLanguages(); + for (const Utils::Id l : languages) { const QByteArray tcId = toolChainId(k, l); if (!tcId.isEmpty() && !ToolChainManager::findToolChain(tcId)) { qWarning("Tool chain set up in kit \"%s\" for \"%s\" not found.", @@ -701,11 +705,11 @@ void ToolChainKitAspect::clearToolChain(Kit *k, Id language) Abi ToolChainKitAspect::targetAbi(const Kit *k) { - QList tcList = toolChains(k); + const QList tcList = toolChains(k); // Find the best possible ABI for all the tool chains... Abi cxxAbi; QHash abiCount; - foreach (ToolChain *tc, tcList) { + for (ToolChain *tc : tcList) { Abi ta = tc->targetAbi(); if (tc->language() == Id(Constants::CXX_LANGUAGE_ID)) cxxAbi = tc->targetAbi(); @@ -739,7 +743,8 @@ QString ToolChainKitAspect::msgNoToolChainInTarget() void ToolChainKitAspect::kitsWereLoaded() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) fix(k); connect(ToolChainManager::instance(), &ToolChainManager::toolChainRemoved, @@ -759,7 +764,8 @@ void ToolChainKitAspect::toolChainUpdated(ToolChain *tc) void ToolChainKitAspect::toolChainRemoved(ToolChain *tc) { Q_UNUSED(tc) - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) fix(k); } @@ -1107,7 +1113,8 @@ void DeviceKitAspect::setDeviceId(Kit *k, Utils::Id id) void DeviceKitAspect::kitsWereLoaded() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) fix(k); DeviceManager *dm = DeviceManager::instance(); @@ -1124,7 +1131,8 @@ void DeviceKitAspect::kitsWereLoaded() void DeviceKitAspect::deviceUpdated(Utils::Id id) { - foreach (Kit *k, KitManager::kits()) { + const QList kits = KitManager::kits(); + for (Kit *k : kits) { if (deviceId(k) == id) notifyAboutUpdate(k); } @@ -1137,7 +1145,8 @@ void DeviceKitAspect::kitUpdated(Kit *k) void DeviceKitAspect::devicesChanged() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) setup(k); // Set default device if necessary } @@ -1346,7 +1355,8 @@ void BuildDeviceKitAspect::setDeviceId(Kit *k, Utils::Id id) void BuildDeviceKitAspect::kitsWereLoaded() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) fix(k); DeviceManager *dm = DeviceManager::instance(); @@ -1363,7 +1373,8 @@ void BuildDeviceKitAspect::kitsWereLoaded() void BuildDeviceKitAspect::deviceUpdated(Utils::Id id) { - foreach (Kit *k, KitManager::kits()) { + const QList kits = KitManager::kits(); + for (Kit *k : kits) { if (deviceId(k) == id) notifyAboutUpdate(k); } @@ -1376,7 +1387,8 @@ void BuildDeviceKitAspect::kitUpdated(Kit *k) void BuildDeviceKitAspect::devicesChanged() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) setup(k); // Set default device if necessary } diff --git a/src/plugins/projectexplorer/kitmanager.cpp b/src/plugins/projectexplorer/kitmanager.cpp index e67bbe71d25..05a362bd3f7 100644 --- a/src/plugins/projectexplorer/kitmanager.cpp +++ b/src/plugins/projectexplorer/kitmanager.cpp @@ -438,7 +438,8 @@ void KitManager::saveKits() data.insert(QLatin1String(KIT_FILE_VERSION_KEY), 1); int count = 0; - foreach (Kit *k, kits()) { + const QList kits = KitManager::kits(); + for (Kit *k : kits) { QVariantMap tmp = k->toMap(); if (tmp.isEmpty()) continue; diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp index 778beb52c8c..f20d0c69db2 100644 --- a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp +++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp @@ -243,7 +243,7 @@ void KitManagerConfigWidget::setHasUniqueName(bool unique) void KitManagerConfigWidget::makeStickySubWidgetsReadOnly() { - foreach (KitAspectWidget *w, m_widgets) { + for (KitAspectWidget *w : qAsConst(m_widgets)) { if (w->kit()->isSticky(w->kitInformation()->id())) w->makeReadOnly(); } @@ -354,7 +354,7 @@ void KitManagerConfigWidget::workingCopyWasUpdated(Kit *k) k->fix(); m_fixingKit = false; - foreach (KitAspectWidget *w, m_widgets) + for (KitAspectWidget *w : qAsConst(m_widgets)) w->refresh(); m_cachedDisplayName.clear(); @@ -382,7 +382,7 @@ void KitManagerConfigWidget::kitWasUpdated(Kit *k) void KitManagerConfigWidget::showEvent(QShowEvent *event) { Q_UNUSED(event) - foreach (KitAspectWidget *widget, m_widgets) + for (KitAspectWidget *widget : qAsConst(m_widgets)) widget->refresh(); } diff --git a/src/plugins/projectexplorer/kitmodel.cpp b/src/plugins/projectexplorer/kitmodel.cpp index 0bb09cf951e..ed3604fa247 100644 --- a/src/plugins/projectexplorer/kitmodel.cpp +++ b/src/plugins/projectexplorer/kitmodel.cpp @@ -113,7 +113,8 @@ KitModel::KitModel(QBoxLayout *parentLayout, QObject *parent) rootItem()->appendChild(m_autoRoot); rootItem()->appendChild(m_manualRoot); - foreach (Kit *k, KitManager::sortKits(KitManager::kits())) + const QList kits = KitManager::sortKits(KitManager::kits()); + for (Kit *k : kits) addKit(k); changeDefaultKit(); @@ -193,7 +194,8 @@ void KitModel::apply() }); // Remove unused kits: - foreach (KitNode *n, m_toRemoveList) + const QList removeList = m_toRemoveList; + for (KitNode *n : removeList) n->widget->removeKit(); emit layoutChanged(); // Force update. @@ -310,7 +312,7 @@ void KitModel::updateKit(Kit *) void KitModel::removeKit(Kit *k) { QList nodes = m_toRemoveList; - foreach (KitNode *n, nodes) { + for (KitNode *n : qAsConst(nodes)) { if (n->widget->configures(k)) { m_toRemoveList.removeOne(n); if (m_defaultNode == n) diff --git a/src/plugins/projectexplorer/miniprojecttargetselector.cpp b/src/plugins/projectexplorer/miniprojecttargetselector.cpp index 6a4b2264880..bb2845cb292 100644 --- a/src/plugins/projectexplorer/miniprojecttargetselector.cpp +++ b/src/plugins/projectexplorer/miniprojecttargetselector.cpp @@ -634,7 +634,7 @@ private: setKit(m_kit); } else { // Refresh all widgets if the number of mutable settings did not change - foreach (KitAspectWidget *w, m_widgets) + for (KitAspectWidget *w : qAsConst(m_widgets)) w->refresh(); } } @@ -1001,7 +1001,8 @@ void MiniProjectTargetSelector::projectAdded(Project *project) connect(project, &Project::removedTarget, this, &MiniProjectTargetSelector::handleRemovalOfTarget); - foreach (Target *t, project->targets()) + const QList targets = project->targets(); + for (Target *t : targets) addedTarget(t); updateProjectListVisible(); @@ -1018,7 +1019,8 @@ void MiniProjectTargetSelector::projectRemoved(Project *project) disconnect(project, &Project::removedTarget, this, &MiniProjectTargetSelector::handleRemovalOfTarget); - foreach (Target *t, project->targets()) + const QList targets = project->targets(); + for (Target *t : targets) removedTarget(t); updateProjectListVisible(); @@ -1165,9 +1167,11 @@ void MiniProjectTargetSelector::updateTargetListVisible() void MiniProjectTargetSelector::updateBuildListVisible() { int maxCount = 0; - for (Project *p : SessionManager::projects()) - foreach (Target *t, p->targets()) + for (Project *p : SessionManager::projects()) { + const QList targets = p->targets(); + for (Target *t : targets) maxCount = qMax(t->buildConfigurations().size(), maxCount); + } bool visible = maxCount > 1; m_listWidgets[BUILD]->setVisible(visible); @@ -1179,9 +1183,11 @@ void MiniProjectTargetSelector::updateBuildListVisible() void MiniProjectTargetSelector::updateDeployListVisible() { int maxCount = 0; - for (Project *p : SessionManager::projects()) - foreach (Target *t, p->targets()) + for (Project *p : SessionManager::projects()) { + const QList targets = p->targets(); + for (Target *t : targets) maxCount = qMax(t->deployConfigurations().size(), maxCount); + } bool visible = maxCount > 1; m_listWidgets[DEPLOY]->setVisible(visible); @@ -1193,9 +1199,11 @@ void MiniProjectTargetSelector::updateDeployListVisible() void MiniProjectTargetSelector::updateRunListVisible() { int maxCount = 0; - for (Project *p : SessionManager::projects()) - foreach (Target *t, p->targets()) + for (Project *p : SessionManager::projects()) { + const QList targets = p->targets(); + for (Target *t : targets) maxCount = qMax(t->runConfigurations().size(), maxCount); + } bool visible = maxCount > 1; m_listWidgets[RUN]->setVisible(visible); @@ -1221,7 +1229,8 @@ void MiniProjectTargetSelector::changeStartupProject(Project *project) if (project) { QList list; - foreach (Target *t, project->targets()) + const QList targets = project->targets(); + for (Target *t : targets) list.append(t); m_listWidgets[TARGET]->setProjectConfigurations(list, project->activeTarget()); } else { diff --git a/src/plugins/projectexplorer/msvctoolchain.cpp b/src/plugins/projectexplorer/msvctoolchain.cpp index 3f0bfb54daf..c4eae8b7903 100644 --- a/src/plugins/projectexplorer/msvctoolchain.cpp +++ b/src/plugins/projectexplorer/msvctoolchain.cpp @@ -340,7 +340,8 @@ static QVector detectVisualStudioFromRegistry() #endif QSettings vsRegistry(keyRoot + QStringLiteral("VS7"), QSettings::NativeFormat); QScopedPointer vcRegistry; - foreach (const QString &vsName, vsRegistry.allKeys()) { + const QStringList keys = vsRegistry.allKeys(); + for (const QString &vsName : keys) { const QVersionNumber version = QVersionNumber::fromString(vsName); if (!version.isNull()) { const QString installationPath = fixRegistryPath(vsRegistry.value(vsName).toString()); @@ -1063,7 +1064,7 @@ Utils::LanguageExtensions MsvcToolChain::languageExtensions(const QStringList &c WarningFlags MsvcToolChain::warningFlags(const QStringList &cflags) const { WarningFlags flags = WarningFlags::NoWarnings; - foreach (QString flag, cflags) { + for (QString flag : cflags) { if (!flag.isEmpty() && flag[0] == QLatin1Char('-')) flag[0] = QLatin1Char('/'); @@ -1908,7 +1909,8 @@ Toolchains MsvcToolChainFactory::autoDetect(const ToolchainDetector &detector) c const QString defaultSdkPath = sdkRegistry.value(QLatin1String("CurrentInstallFolder")) .toString(); if (!defaultSdkPath.isEmpty()) { - foreach (const QString &sdkKey, sdkRegistry.childGroups()) { + const QStringList groups = sdkRegistry.childGroups(); + for (const QString &sdkKey : groups) { const QString name = sdkRegistry.value(sdkKey + QLatin1String("/ProductName")).toString(); const QString folder = sdkRegistry.value(sdkKey + QLatin1String("/InstallationFolder")) .toString(); @@ -1944,7 +1946,7 @@ Toolchains MsvcToolChainFactory::autoDetect(const ToolchainDetector &detector) c results = tmp + results; else results += tmp; - } // foreach + } // for } // 2) Installed MSVCs @@ -1964,7 +1966,8 @@ Toolchains MsvcToolChainFactory::autoDetect(const ToolchainDetector &detector) c MsvcToolChain::ia64, MsvcToolChain::x86_ia64}; - foreach (const VisualStudioInstallation &i, detectVisualStudio()) { + const QVector studios = detectVisualStudio(); + for (const VisualStudioInstallation &i : studios) { for (MsvcToolChain::Platform platform : platforms) { const bool toolchainInstalled = QFileInfo(vcVarsBatFor(i.vcVarsPath, platform, i.version)).isFile(); @@ -2143,7 +2146,8 @@ Utils::optional MsvcToolChain::generateEnvironmentSettings(const Utils: const QString output = stdOut.mid(start, end - start); - foreach (const QString &line, output.split(QLatin1String("\n"))) { + const QStringList lines = output.split(QLatin1String("\n")); + for (const QString &line : lines) { const int pos = line.indexOf('='); if (pos > 0) { const QString varName = line.mid(0, pos); diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index 9f1626cb578..90a7a6874b5 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -2610,12 +2610,12 @@ void ProjectExplorerPluginPrivate::determineSessionToRestoreAtStartup() // Process command line arguments first: const bool lastSessionArg = m_instance->pluginSpec()->arguments().contains("-lastsession"); m_sessionToRestoreAtStartup = lastSessionArg ? SessionManager::startupSession() : QString(); - QStringList arguments = ExtensionSystem::PluginManager::arguments(); + const QStringList arguments = ExtensionSystem::PluginManager::arguments(); if (!lastSessionArg) { QStringList sessions = SessionManager::sessions(); // We have command line arguments, try to find a session in them // Default to no session loading - foreach (const QString &arg, arguments) { + for (const QString &arg : arguments) { if (sessions.contains(arg)) { // Session argument m_sessionToRestoreAtStartup = arg; @@ -3093,7 +3093,7 @@ static QPair subprojectEnabledState(const Project *pro) result.first = true; const QList &projects = SessionManager::projectOrder(pro); - foreach (Project *project, projects) { + for (const Project *project : projects) { if (project && project->activeTarget() && project->activeTarget()->activeBuildConfiguration() && !project->activeTarget()->activeBuildConfiguration()->isEnabled()) { @@ -3249,7 +3249,8 @@ void ProjectExplorerPlugin::runRunConfiguration(RunConfiguration *rc, QList> ProjectExplorerPlugin::runningRunControlProcesses() { QList> processes; - foreach (RunControl *rc, allRunControls()) { + const QList runControls = allRunControls(); + for (RunControl *rc : runControls) { if (rc->isRunning()) processes << qMakePair(rc->runnable(), rc->applicationProcessHandle()); } @@ -3576,7 +3577,7 @@ void ProjectExplorerPluginPrivate::updateContextMenuActions(Node *currentNode) m_runActionContextMenu->setData(QVariant::fromValue(runConfigs.first())); } else if (runConfigs.count() > 1) { runMenu->menu()->menuAction()->setVisible(true); - foreach (RunConfiguration *rc, runConfigs) { + for (RunConfiguration *rc : qAsConst(runConfigs)) { auto *act = new QAction(runMenu->menu()); act->setData(QVariant::fromValue(rc)); act->setText(tr("Run %1").arg(rc->displayName())); diff --git a/src/plugins/projectexplorer/projectimporter.cpp b/src/plugins/projectexplorer/projectimporter.cpp index e69a1413612..2db6dafa2b6 100644 --- a/src/plugins/projectexplorer/projectimporter.cpp +++ b/src/plugins/projectexplorer/projectimporter.cpp @@ -82,7 +82,8 @@ ProjectImporter::ProjectImporter(const Utils::FilePath &path) : m_projectPath(pa ProjectImporter::~ProjectImporter() { - foreach (Kit *k, KitManager::kits()) + const QList kits = KitManager::kits(); + for (Kit *k : kits) removeProject(k); } @@ -134,7 +135,7 @@ const QList ProjectImporter::import(const Utils::FilePath &importPath } qCDebug(log) << "Looking for kits"; - foreach (void *data, dataList) { + for (void *data : qAsConst(dataList)) { QTC_ASSERT(data, continue); QList kitList; const QList tmp @@ -149,7 +150,7 @@ const QList ProjectImporter::import(const Utils::FilePath &importPath qCDebug(log) << " " << tmp.count() << "matching kits found."; } - foreach (Kit *k, kitList) { + for (Kit *k : qAsConst(kitList)) { qCDebug(log) << "Creating buildinfos for kit" << k->displayName(); const QList infoList = buildInfoList(data); if (infoList.isEmpty()) { @@ -167,7 +168,7 @@ const QList ProjectImporter::import(const Utils::FilePath &importPath } } - foreach (auto *dd, dataList) + for (void *dd : qAsConst(dataList)) deleteDirectoryData(dd); dataList.clear(); @@ -189,7 +190,7 @@ Target *ProjectImporter::preferredTarget(const QList &possibleTargets) activeTarget = possibleTargets.at(0); bool pickedFallback = false; - foreach (Target *t, possibleTargets) { + for (Target *t : possibleTargets) { if (t->kit() == KitManager::defaultKit()) return t; if (pickedFallback) @@ -234,12 +235,13 @@ void ProjectImporter::makePersistent(Kit *k) const k->removeKey(KIT_TEMPORARY_NAME); k->removeKey(KIT_FINAL_NAME); - foreach (const TemporaryInformationHandler &tih, m_temporaryHandlers) { + for (const TemporaryInformationHandler &tih : qAsConst(m_temporaryHandlers)) { const Utils::Id fid = fullId(tih.id); const QVariantList temporaryValues = k->value(fid).toList(); // Mark permanent in all other kits: - foreach (Kit *ok, KitManager::kits()) { + const QList kits = KitManager::kits(); + for (Kit *ok : kits) { if (ok == k || !ok->hasValue(fid)) continue; const QVariantList otherTemporaryValues @@ -258,7 +260,7 @@ void ProjectImporter::makePersistent(Kit *k) const void ProjectImporter::cleanupKit(Kit *k) const { QTC_ASSERT(k, return); - foreach (const TemporaryInformationHandler &tih, m_temporaryHandlers) { + for (const TemporaryInformationHandler &tih : qAsConst(m_temporaryHandlers)) { const Utils::Id fid = fullId(tih.id); const QVariantList temporaryValues = Utils::filtered(k->value(fid).toList(), [fid, k](const QVariant &v) { diff --git a/src/plugins/projectexplorer/projectnodes.cpp b/src/plugins/projectexplorer/projectnodes.cpp index 3915a733ec1..c4b33d74140 100644 --- a/src/plugins/projectexplorer/projectnodes.cpp +++ b/src/plugins/projectexplorer/projectnodes.cpp @@ -88,7 +88,7 @@ static FolderNode *recursiveFindOrCreateFolderNode(FolderNode *folder, parts[0].prepend('/'); ProjectExplorer::FolderNode *parent = folder; - foreach (const QString &part, parts) { + for (const QString &part : qAsConst(parts)) { path = path.pathAppended(part); // Find folder in subFolders FolderNode *next = parent->folderNode(path); @@ -352,7 +352,8 @@ FilePath Node::pathOrDirectory(bool dir) const } else { // Otherwise we figure out a commonPath from the subfolders QStringList list; - foreach (FolderNode *f, folder->folderNodes()) + const QList folders = folder->folderNodes(); + for (FolderNode *f : folders) list << f->filePath().toString() + QLatin1Char('/'); location = FilePath::fromString(Utils::commonPath(list)); } diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp index 6c5b70718ce..c376cac20fe 100644 --- a/src/plugins/projectexplorer/projecttreewidget.cpp +++ b/src/plugins/projectexplorer/projecttreewidget.cpp @@ -326,7 +326,7 @@ int ProjectTreeWidget::expandedCount(Node *node) return 0; int count = 0; - foreach (ProjectTreeWidget *tree, m_projectTreeWidgets) { + for (ProjectTreeWidget *tree : qAsConst(m_projectTreeWidgets)) { QModelIndex idx = index; while (idx.isValid() && idx != tree->m_view->rootIndex()) { if (!tree->m_view->isExpanded(idx)) diff --git a/src/plugins/projectexplorer/projectwindow.cpp b/src/plugins/projectexplorer/projectwindow.cpp index 8c9d3a64619..8997c8d6d63 100644 --- a/src/plugins/projectexplorer/projectwindow.cpp +++ b/src/plugins/projectexplorer/projectwindow.cpp @@ -304,7 +304,8 @@ public: : m_project(project) { QTC_ASSERT(m_project, return); - foreach (ProjectPanelFactory *factory, ProjectPanelFactory::factories()) + const QList factories = ProjectPanelFactory::factories(); + for (ProjectPanelFactory *factory : factories) appendChild(new MiscSettingsPanelItem(factory, project)); } diff --git a/src/plugins/projectexplorer/projectwizardpage.cpp b/src/plugins/projectexplorer/projectwizardpage.cpp index 10ad1b66ddd..5a6c3380e72 100644 --- a/src/plugins/projectexplorer/projectwizardpage.cpp +++ b/src/plugins/projectexplorer/projectwizardpage.cpp @@ -96,7 +96,7 @@ AddNewTree::AddNewTree(FolderNode *node, QList children, const QSt { if (node) m_toolTip = node->directory().toString(); - foreach (AddNewTree *child, children) + for (AddNewTree *child : qAsConst(children)) appendChild(child); } @@ -108,7 +108,7 @@ AddNewTree::AddNewTree(FolderNode *node, QList children, { if (node) m_toolTip = node->directory().toString(); - foreach (AddNewTree *child, children) + for (AddNewTree *child : qAsConst(children)) appendChild(child); } @@ -259,7 +259,8 @@ static AddNewTree *buildAddFilesTree(FolderNode *root, const FilePaths &files, Node *contextNode, BestNodeSelector *selector) { QList children; - foreach (FolderNode *fn, root->folderNodes()) { + const QList folderNodes = root->folderNodes(); + for (FolderNode *fn : folderNodes) { AddNewTree *child = buildAddFilesTree(fn, files, contextNode, selector); if (child) children.append(child); @@ -388,7 +389,8 @@ void ProjectWizardPage::initializeVersionControls() } } else { // Create - foreach (IVersionControl *vc, VcsManager::versionControls()) { + const QList versionControls = VcsManager::versionControls(); + for (IVersionControl *vc : versionControls) { if (vc->supportsOperation(IVersionControl::CreateRepositoryOperation)) { versionControlChoices.append(vc->displayName()); m_activeVersionControls.append(vc); @@ -427,7 +429,7 @@ bool ProjectWizardPage::runVersionControl(const QList &files, QSt } // Add files if supported. if (versionControl->supportsOperation(IVersionControl::AddOperation)) { - foreach (const GeneratedFile &generatedFile, files) { + for (const GeneratedFile &generatedFile : files) { if (!versionControl->vcsAdd(generatedFile.filePath())) { *errorMessage = tr("Failed to add \"%1\" to the version control system.").arg(generatedFile.path()); return false; @@ -545,7 +547,7 @@ void ProjectWizardPage::setFiles(const QStringList &fileNames) } ); - foreach (const QString &f, formattedFiles) + for (const QString &f : qAsConst(formattedFiles)) str << QDir::toNativeSeparators(f) << '\n'; str << ""; diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.cpp b/src/plugins/projectexplorer/runsettingspropertiespage.cpp index 5c1d68d40bf..546c215b345 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/runsettingspropertiespage.cpp @@ -447,7 +447,8 @@ QString RunSettingsWidget::uniqueDCName(const QString &name) QString result = name.trimmed(); if (!result.isEmpty()) { QStringList dcNames; - foreach (DeployConfiguration *dc, m_target->deployConfigurations()) { + const QList configurations = m_target->deployConfigurations(); + for (DeployConfiguration *dc : configurations) { if (dc == m_target->activeDeployConfiguration()) continue; dcNames.append(dc->displayName()); @@ -462,7 +463,8 @@ QString RunSettingsWidget::uniqueRCName(const QString &name) QString result = name.trimmed(); if (!result.isEmpty()) { QStringList rcNames; - foreach (RunConfiguration *rc, m_target->runConfigurations()) { + const QList configurations = m_target->runConfigurations(); + for (RunConfiguration *rc : configurations) { if (rc == m_target->activeRunConfiguration()) continue; rcNames.append(rc->displayName()); diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp index 7518dc3cd02..67f1616c322 100644 --- a/src/plugins/projectexplorer/session.cpp +++ b/src/plugins/projectexplorer/session.cpp @@ -192,7 +192,8 @@ bool SessionManagerPrivate::recursiveDependencyCheck(const QString &newDep, cons if (newDep == checkDep) return false; - foreach (const QString &dependency, m_depMap.value(checkDep)) { + const QStringList depList = m_depMap.value(checkDep); + for (const QString &dependency : depList) { if (!recursiveDependencyCheck(newDep, dependency)) return false; } @@ -213,7 +214,7 @@ QList SessionManager::dependencies(const Project *project) const QStringList proDeps = d->m_depMap.value(proName); QList projects; - foreach (const QString &dep, proDeps) { + for (const QString &dep : proDeps) { const Utils::FilePath fn = Utils::FilePath::fromString(dep); Project *pro = Utils::findOrDefault(d->m_projects, [&fn](Project *p) { return p->projectFilePath() == fn; }); if (pro) @@ -522,7 +523,8 @@ bool SessionManager::save() while (i != d->m_depMap.constEnd()) { QString key = i.key(); QStringList values; - foreach (const QString &value, i.value()) + const QStringList valueList = i.value(); + for (const QString &value : valueList) values << value; depMap.insert(key, values); ++i; @@ -587,9 +589,9 @@ QStringList SessionManagerPrivate::dependencies(const QString &proName) const void SessionManagerPrivate::dependencies(const QString &proName, QStringList &result) const { - QStringList depends = m_depMap.value(proName); + const QStringList depends = m_depMap.value(proName); - foreach (const QString &dep, depends) + for (const QString &dep : depends) dependencies(dep, result); if (!result.contains(proName)) @@ -668,7 +670,7 @@ QStringList SessionManagerPrivate::dependenciesOrder() const // remove the handled projects from the dependency lists // of the remaining unordered projects for (int i = 0; i < unordered.count(); ++i) { - foreach (const QString &pro, ordered) { + for (const QString &pro : qAsConst(ordered)) { QStringList depList = unordered.at(i).second; depList.removeAll(pro); unordered[i].second = depList; @@ -689,7 +691,7 @@ QList SessionManager::projectOrder(const Project *project) else pros = d->dependenciesOrder(); - foreach (const QString &proFile, pros) { + for (const QString &proFile : qAsConst(pros)) { for (Project *pro : projects()) { if (pro->projectFilePath().toString() == proFile) { result << pro; @@ -725,9 +727,11 @@ void SessionManager::configureEditor(IEditor *editor, const QString &fileName) void SessionManager::configureEditors(Project *project) { - foreach (IDocument *document, DocumentModel::openedDocuments()) { + const QList documents = DocumentModel::openedDocuments(); + for (IDocument *document : documents) { if (project->isKnownFile(document->filePath())) { - foreach (IEditor *editor, DocumentModel::editorsForDocument(document)) { + const QList editors = DocumentModel::editorsForDocument(document); + for (IEditor *editor : editors) { if (auto textEditor = qobject_cast(editor)) { project->editorConfiguration()->configureEditor(textEditor); } @@ -892,7 +896,7 @@ bool SessionManager::cloneSession(const QString &original, const QString &clone) void SessionManagerPrivate::restoreValues(const PersistentSettingsReader &reader) { const QStringList keys = reader.restoreValue(QLatin1String("valueKeys")).toStringList(); - foreach (const QString &key, keys) { + for (const QString &key : keys) { QVariant value = reader.restoreValue(QLatin1String("value-") + key); m_values.insert(key, value); } @@ -905,7 +909,8 @@ void SessionManagerPrivate::restoreDependencies(const PersistentSettingsReader & while (i != depMap.constEnd()) { const QString &key = i.key(); QStringList values; - foreach (const QString &value, i.value().toStringList()) + const QStringList valueList = i.value().toStringList(); + for (const QString &value : valueList) values << value; m_depMap.insert(key, values); ++i; @@ -973,7 +978,8 @@ void SessionManagerPrivate::restoreProjects(const FilePaths &fileList) ProjectExplorerPlugin::OpenProjectResult result = ProjectExplorerPlugin::openProjects(fileList); if (!result) ProjectExplorerPlugin::showOpenProjectError(result); - foreach (Project *p, result.projects()) + const QList projects = result.projects(); + for (const Project *p : projects) m_failedProjects.removeAll(p->projectFilePath()); } }