diff --git a/autotests/batchrenamejobtest.cpp b/autotests/batchrenamejobtest.cpp --- a/autotests/batchrenamejobtest.cpp +++ b/autotests/batchrenamejobtest.cpp @@ -31,14 +31,14 @@ private: void createTestFiles(const QStringList &fileList) { - foreach (const QString &filename, fileList) { + for (const QString &filename : fileList) { createTestFile(m_homeDir + filename); } } bool checkFileExistence(const QStringList &fileList) { - foreach (const QString &filename, fileList) { + for (const QString &filename : fileList) { const QString filePath = m_homeDir + filename; if (!QFile::exists(filePath)) { return false; @@ -51,7 +51,7 @@ { QList srcList; srcList.reserve(fileList.count()); - foreach (const QString &filename, fileList) { + for (const QString &filename : fileList) { const QString filePath = m_homeDir + filename; srcList.append(QUrl::fromLocalFile(filePath)); } diff --git a/autotests/clipboardupdatertest.cpp b/autotests/clipboardupdatertest.cpp --- a/autotests/clipboardupdatertest.cpp +++ b/autotests/clipboardupdatertest.cpp @@ -67,7 +67,7 @@ mimeData->setUrls(urls); clipboard->setMimeData(mimeData); - Q_FOREACH (const QUrl &url, urls) { + for (const QUrl &url : urls) { QUrl newUrl = url; newUrl.setPath(url.path() + QLatin1String("_renamed")); KIO::SimpleJob *job = KIO::rename(url, newUrl, KIO::HideProgressInfo); diff --git a/autotests/dataprotocoltest.cpp b/autotests/dataprotocoltest.cpp --- a/autotests/dataprotocoltest.cpp +++ b/autotests/dataprotocoltest.cpp @@ -139,7 +139,7 @@ kio_data.setExpectedMimeType(mimetype); MetaData exp_attrs; - foreach (const QString &meta, metalist) { + for (const QString &meta : metalist) { const QStringList metadata = meta.split(QLatin1Char('=')); Q_ASSERT(metadata.count() == 2); exp_attrs[metadata[0]] = metadata[1]; diff --git a/autotests/fileundomanagertest.cpp b/autotests/fileundomanagertest.cpp --- a/autotests/fileundomanagertest.cpp +++ b/autotests/fileundomanagertest.cpp @@ -589,7 +589,7 @@ const QMap metaData = job->metaData(); QList trashUrls; - foreach (const QUrl &src, lst) { + for (const QUrl &src : qAsConst(lst)) { QMap::ConstIterator it = metaData.find("trashURL-" + src.path()); QVERIFY(it != metaData.constEnd()); trashUrls.append(QUrl(it.value())); @@ -671,7 +671,7 @@ // Check if the clipboard was updated after paste operation QList urls2; - Q_FOREACH (const QUrl &url, urls) { + for (const QUrl &url : urls) { QUrl dUrl = destDirUrl.adjusted(QUrl::StripTrailingSlash); dUrl.setPath(dUrl.path() + '/' + url.fileName()); urls2 << dUrl; diff --git a/autotests/globaltest.cpp b/autotests/globaltest.cpp --- a/autotests/globaltest.cpp +++ b/autotests/globaltest.cpp @@ -107,7 +107,7 @@ QTemporaryDir dir; const QUrl baseUrl = QUrl::fromLocalFile(dir.path()); - foreach (const QString &localFile, existingFiles) { + for (const QString &localFile : qAsConst(existingFiles)) { QFile file(dir.path() + '/' + localFile); QVERIFY(file.open(QIODevice::WriteOnly)); } diff --git a/autotests/http/httpheaderdispositiontest.cpp b/autotests/http/httpheaderdispositiontest.cpp --- a/autotests/http/httpheaderdispositiontest.cpp +++ b/autotests/http/httpheaderdispositiontest.cpp @@ -40,7 +40,7 @@ results.clear(); } - foreach (const QByteArray &ba, results) { + for (const QByteArray &ba : qAsConst(results)) { QList values = ba.split('\t'); const QString key(QString::fromLatin1(values.takeFirst())); diff --git a/autotests/jobtest.cpp b/autotests/jobtest.cpp --- a/autotests/jobtest.cpp +++ b/autotests/jobtest.cpp @@ -1330,7 +1330,7 @@ job->setUiDelegate(nullptr); bool ok = job->exec(); QVERIFY(ok); - Q_FOREACH (const QUrl &dir, dirs) { + for (const QUrl &dir : qAsConst(dirs)) { QVERIFY(!QFile::exists(dir.toLocalFile())); } @@ -1684,13 +1684,13 @@ void JobTest::moveDestAlreadyExistsAutoRename(const QString &destDir, bool moveDirs) // #256650 { const QString prefix = moveDirs ? QStringLiteral("dir ") : QStringLiteral("file "); - QStringList sources; + const QString file1 = homeTmpDir() + prefix + "(1)"; const QString file2 = homeTmpDir() + prefix + "(2)"; const QString existingDest1 = destDir + prefix + "(1)"; const QString existingDest2 = destDir + prefix + "(2)"; - sources << file1 << file2 << existingDest1 << existingDest2; - Q_FOREACH (const QString &source, sources) { + const QStringList sources = QStringList() << file1 << file2 << existingDest1 << existingDest2; + for (const QString &source : sources) { if (moveDirs) { QVERIFY(QDir().mkdir(source)); } else { diff --git a/autotests/kdirmodeltest.cpp b/autotests/kdirmodeltest.cpp --- a/autotests/kdirmodeltest.cpp +++ b/autotests/kdirmodeltest.cpp @@ -99,7 +99,7 @@ * PATH/subdir/subsubdir/testfile */ const QString path = m_tempDir->path() + '/'; - foreach (const QString &f, m_topLevelFileNames) { + for (const QString &f : qAsConst(m_topLevelFileNames)) { createTestFile(path + f); } createTestFile(path + ".hiddenfile"); diff --git a/autotests/kfilewidgettest.cpp b/autotests/kfilewidgettest.cpp --- a/autotests/kfilewidgettest.cpp +++ b/autotests/kfilewidgettest.cpp @@ -56,7 +56,7 @@ QWidget *findLocationLabel(QWidget *parent) { const QList labels = parent->findChildren(); - foreach(QLabel *label, labels) { + for (QLabel *label : labels) { if (label->text() == i18n("&Name:")) return label->buddy(); } diff --git a/autotests/kmountpointtest.cpp b/autotests/kmountpointtest.cpp --- a/autotests/kmountpointtest.cpp +++ b/autotests/kmountpointtest.cpp @@ -38,7 +38,7 @@ return; } KMountPoint::Ptr mountWithDevice; - foreach (KMountPoint::Ptr mountPoint, mountPoints) { + for (KMountPoint::Ptr mountPoint : mountPoints) { qDebug() << "Mount: " << mountPoint->mountedFrom() << " (" << mountPoint->realDeviceName() << ") " << mountPoint->mountPoint() << " " << mountPoint->mountType(); @@ -102,7 +102,7 @@ return; } KMountPoint::Ptr mountWithDevice; - foreach (KMountPoint::Ptr mountPoint, mountPoints) { + for (KMountPoint::Ptr mountPoint : mountPoints) { qDebug() << "Possible mount: " << mountPoint->mountedFrom() << " (" << mountPoint->realDeviceName() << ") " << mountPoint->mountPoint() << " " << mountPoint->mountType() diff --git a/autotests/kurifiltersearchprovideractionstest.cpp b/autotests/kurifiltersearchprovideractionstest.cpp --- a/autotests/kurifiltersearchprovideractionstest.cpp +++ b/autotests/kurifiltersearchprovideractionstest.cpp @@ -72,7 +72,7 @@ QVERIFY(!menu->actions().at(0)->menu()->actions().isEmpty()); QStringList actionData; - Q_FOREACH (const QString &str, searchProviders) { + for (const QString &str : qAsConst(searchProviders)) { actionData.append(filterData.queryForPreferredSearchProvider(str)); } diff --git a/autotests/kurlcompletiontest.cpp b/autotests/kurlcompletiontest.cpp --- a/autotests/kurlcompletiontest.cpp +++ b/autotests/kurlcompletiontest.cpp @@ -411,7 +411,7 @@ } const QStringList matchesA = comp.allMatches(); //qDebug() << "got" << matchesA.count() << "matches"; - foreach (const QString &match, matchesA) { + for (const QString &match : matchesA) { QVERIFY2(!match.startsWith(QLatin1Char('g')), qPrintable(match)); } waitForCompletion(&comp); diff --git a/src/core/kcoredirlister.cpp b/src/core/kcoredirlister.cpp --- a/src/core/kcoredirlister.cpp +++ b/src/core/kcoredirlister.cpp @@ -412,7 +412,7 @@ qCDebug(KIO_CORE_DIRLISTER) << "lister:" << lister << "silent=" << silent; const QList urls = lister->d->lstDirs; - Q_FOREACH (const QUrl &url, urls) { + for (const QUrl &url : urls) { stopListingUrl(lister, url, silent); } @@ -1669,7 +1669,7 @@ { qCDebug(KIO_CORE_DIRLISTER) << dir; const QList cachedDirs = itemsCached.keys(); // seems slow, but there's no qcache iterator... - foreach (const QUrl &cachedDir, cachedDirs) { + for (const QUrl &cachedDir : cachedDirs) { if (dir == cachedDir || dir.isParentOf(cachedDir)) { itemsCached.remove(cachedDir); } @@ -1921,7 +1921,7 @@ kdl->d->emitItemsDeleted(deletedItems); } - Q_FOREACH (const KFileItem &item, deletedItems) { + for (const KFileItem &item : deletedItems) { if (item.isDir()) { deleteDir(item.url()); } @@ -2076,7 +2076,7 @@ qCDebug(KIO_CORE_DIRLISTER) << "Items in cache:"; const QList cachedDirs = itemsCached.keys(); - foreach (const QUrl &cachedDir, cachedDirs) { + for (const QUrl &cachedDir : cachedDirs) { DirItem *dirItem = itemsCached.object(cachedDir); qCDebug(KIO_CORE_DIRLISTER) << " " << cachedDir << "rootItem:" << (!dirItem->rootItem.isNull() ? dirItem->rootItem.url().toString() : QStringLiteral("NULL")) diff --git a/src/core/kfileitemlistproperties.cpp b/src/core/kfileitemlistproperties.cpp --- a/src/core/kfileitemlistproperties.cpp +++ b/src/core/kfileitemlistproperties.cpp @@ -86,7 +86,7 @@ m_mimeGroup.clear(); QFileInfo parentDirInfo; - foreach (const KFileItem &item, items) { + for (const KFileItem &item : items) { bool isLocal = false; const QUrl url = item.mostLocalUrl(&isLocal); m_isLocal = m_isLocal && isLocal; @@ -205,7 +205,7 @@ m_mimeType = m_items.first().mimetype(); m_mimeGroup = m_mimeType.left(m_mimeType.indexOf(QLatin1Char('/'))); } - foreach (const KFileItem &item, m_items) { + for (const KFileItem &item : qAsConst(m_items)) { const QString itemMimeType = item.mimetype(); // Determine if common mimetype among all items if (m_mimeType != itemMimeType) { diff --git a/src/core/kioglobal_p.cpp b/src/core/kioglobal_p.cpp --- a/src/core/kioglobal_p.cpp +++ b/src/core/kioglobal_p.cpp @@ -42,8 +42,8 @@ QMap map; for (int i = 0 ; i < count; ++i) { - auto locations = QStandardPaths::standardLocations(mapping[i].location); - Q_FOREACH(const QString &location, locations) { + const auto locations = QStandardPaths::standardLocations(mapping[i].location); + for (const QString &location : locations) { map.insert(location, mapping[i].name); } } diff --git a/src/core/kprotocolmanager.cpp b/src/core/kprotocolmanager.cpp --- a/src/core/kprotocolmanager.cpp +++ b/src/core/kprotocolmanager.cpp @@ -506,7 +506,7 @@ QNetworkProxyQuery query(url); const QList proxyList = QNetworkProxyFactory::systemProxyForQuery(query); proxies.reserve(proxyList.size()); - Q_FOREACH (const QNetworkProxy &proxy, proxyList) { + for (const QNetworkProxy &proxy : proxyList) { QUrl url; const QNetworkProxy::ProxyType type = proxy.type(); if (type == QNetworkProxy::NoProxy || type == QNetworkProxy::DefaultProxy) { @@ -615,7 +615,7 @@ PRIVATE_DATA; QMutexLocker lock(&d->mutex); const QStringList keys(d->cachedProxyData.keys()); - Q_FOREACH (const QString &key, keys) { + for (const QString &key : keys) { d->cachedProxyData[key]->removeAddress(proxy); } } @@ -682,7 +682,7 @@ const int count = proxies.count(); if (count > 0 && !(count == 1 && proxies.first() == QL1S("DIRECT"))) { - Q_FOREACH (const QString &proxy, proxies) { + for (const QString &proxy : proxies) { if (proxy == QL1S("DIRECT")) { proxyList << proxy; } else { @@ -1012,7 +1012,7 @@ KConfig acclangConf(QStringLiteral("accept-languages.codes"), KConfig::NoGlobals); KConfigGroup replacementCodes(&acclangConf, "ReplacementCodes"); QStringList languageListFinal; - Q_FOREACH (const QString &lang, languageList) { + for (const QString &lang : qAsConst(languageList)) { const QStringList langs = replacementCodes.readEntry(lang, QStringList()); if (langs.isEmpty()) { languageListFinal += lang; @@ -1027,7 +1027,7 @@ // the value evenly int prio = 10; QString header; - Q_FOREACH (const QString &lang, languageListFinal) { + for (const QString &lang : qAsConst(languageListFinal)) { header += lang; if (prio < 10) { header += QL1S(";q=0.") + QString::number(prio); @@ -1309,7 +1309,7 @@ for (QList::const_iterator it = allProtocols.begin(); it != allProtocols.end(); ++it) { const QStringList archiveMimetypes = (*it)->m_archiveMimeTypes; - Q_FOREACH (const QString &mime, archiveMimetypes) { + for (const QString &mime : archiveMimetypes) { d->protocolForArchiveMimetypes.insert(mime, (*it)->m_name); } } diff --git a/src/core/ksslcertificatemanager.cpp b/src/core/ksslcertificatemanager.cpp --- a/src/core/ksslcertificatemanager.cpp +++ b/src/core/ksslcertificatemanager.cpp @@ -136,7 +136,7 @@ { d->ignoredErrors.clear(); //### Quadratic runtime, woohoo! Use a QSet if that should ever be an issue. - foreach (KSslError::Error e, errors) + for (KSslError::Error e : errors) if (!isErrorIgnored(e)) { d->ignoredErrors.append(e); } @@ -146,7 +146,7 @@ { QList el; el.reserve(errors.size()); - foreach (const KSslError &e, errors) { + for (const KSslError &e : errors) { el.append(e.error()); } setIgnoredErrors(el); @@ -160,7 +160,7 @@ QList KSslCertificateRule::filterErrors(const QList &errors) const { QList ret; - foreach (KSslError::Error error, errors) { + for (KSslError::Error error : errors) { if (!isErrorIgnored(error)) { ret.append(error); } @@ -171,7 +171,7 @@ QList KSslCertificateRule::filterErrors(const QList &errors) const { QList ret; - foreach (const KSslError &error, errors) { + for (const KSslError &error : errors) { if (!isErrorIgnored(error.error())) { ret.append(error); } @@ -185,7 +185,7 @@ { QSet digests; QList ret; - foreach (const QSslCertificate &cert, certs) { + for (const QSslCertificate &cert : certs) { QByteArray digest = cert.digest(); if (!digests.contains(digest)) { digests.insert(digest); @@ -222,7 +222,7 @@ certs.append(QSslCertificate::fromPath(userCertDir + QLatin1Char('*'), QSsl::Pem, QRegExp::Wildcard)); - foreach (const QSslCertificate &cert, certs) { + for (const QSslCertificate &cert : qAsConst(certs)) { const QByteArray digest = cert.digest().toHex(); if (!group.hasKey(digest.constData())) { defaultCaCertificates += cert; diff --git a/src/core/ktcpsocket.cpp b/src/core/ktcpsocket.cpp --- a/src/core/ktcpsocket.cpp +++ b/src/core/ktcpsocket.cpp @@ -375,7 +375,7 @@ q->showSslErrors(); //H4X QList kErrors; kErrors.reserve(errors.size()); - foreach (const QSslError &e, errors) { + for (const QSslError &e : errors) { kErrors.append(KSslError(e)); } emit q->sslErrors(kErrors); @@ -1046,9 +1046,9 @@ QList KSslCipher::supportedCiphers() { QList ret; - QList candidates = QSslSocket::supportedCiphers(); + const QList candidates = QSslSocket::supportedCiphers(); ret.reserve(candidates.size()); - foreach (const QSslCipher &c, candidates) { + for (const QSslCipher &c : candidates) { ret.append(KSslCipher(c)); } return ret; diff --git a/src/core/slavebase.cpp b/src/core/slavebase.cpp --- a/src/core/slavebase.cpp +++ b/src/core/slavebase.cpp @@ -756,7 +756,7 @@ QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); - foreach (const UDSEntry &entry, list) { + for (const UDSEntry &entry : list) { stream << entry; } diff --git a/src/core/tcpslavebase.cpp b/src/core/tcpslavebase.cpp --- a/src/core/tcpslavebase.cpp +++ b/src/core/tcpslavebase.cpp @@ -746,7 +746,7 @@ //### We don't ask to permanently reject the certificate QString message = i18n("The server failed the authenticity check (%1).\n\n", d->host); - Q_FOREACH (const KSslError &err, d->sslErrors) { + for (const KSslError &err : qAsConst(d->sslErrors)) { message += err.errorString() + QLatin1Char('\n'); } message = message.trimmed(); diff --git a/src/filewidgets/kdiroperator.cpp b/src/filewidgets/kdiroperator.cpp --- a/src/filewidgets/kdiroperator.cpp +++ b/src/filewidgets/kdiroperator.cpp @@ -541,7 +541,7 @@ const QItemSelection selection = d->proxyModel->mapSelectionToSource(d->itemView->selectionModel()->selection()); const QModelIndexList indexList = selection.indexes(); - foreach (const QModelIndex &index, indexList) { + for (const QModelIndex &index : indexList) { KFileItem item = d->dirModel->itemForIndex(index); if (!item.isNull()) { itemList.append(item); @@ -1758,7 +1758,7 @@ } KFileItemList itemList; - foreach (const QUrl &url, urls) { + for (const QUrl &url : urls) { KFileItem item = d->dirLister->findByUrl(url); if (d->shouldFetchForItems && item.isNull()) { d->itemsToBeSetAsCurrent << url; @@ -1783,7 +1783,7 @@ if (selModel) { selModel->clear(); QModelIndex proxyIndex; - foreach (const KFileItem &item, items) { + for (const KFileItem &item : items) { if (!item.isNull()) { const QModelIndex dirIndex = d->dirModel->indexForItem(item); proxyIndex = d->proxyModel->mapFromSource(dirIndex); @@ -1826,7 +1826,7 @@ if (d->completeListDirty) { // create the list of all possible completions const KFileItemList itemList = d->dirLister->items(); - foreach (const KFileItem &item, itemList) { + for (const KFileItem &item : itemList) { d->completion.addItem(item.name()); if (item.isDir()) { d->dirCompletion.addItem(item.name()); diff --git a/src/filewidgets/kencodingfiledialog.cpp b/src/filewidgets/kencodingfiledialog.cpp --- a/src/filewidgets/kencodingfiledialog.cpp +++ b/src/filewidgets/kencodingfiledialog.cpp @@ -97,7 +97,7 @@ const QStringList encodings(KCharsets::charsets()->availableEncodingNames()); int insert = 0, system = 0; bool foundRequested = false; - foreach (const QString &encoding, encodings) { + for (const QString &encoding : encodings) { bool found = false; QTextCodec *codecForEnc = KCharsets::charsets()->codecForName(encoding, found); diff --git a/src/filewidgets/kfilecopytomenu.cpp b/src/filewidgets/kfilecopytomenu.cpp --- a/src/filewidgets/kfilecopytomenu.cpp +++ b/src/filewidgets/kfilecopytomenu.cpp @@ -160,7 +160,7 @@ // Recent Destinations const QStringList recentDirs = m_recentDirsGroup.readPathEntry("Paths", QStringList()); - Q_FOREACH (const QString &recentDir, recentDirs) { + for (const QString &recentDir : recentDirs) { const QUrl url = QUrl::fromLocalFile(recentDir); const QString text = KStringHandler::csqueeze(url.toDisplayString(QUrl::PreferLocalFile), 60); // shorten very long paths (#61386) QAction *act = new QAction(text, this); @@ -249,7 +249,7 @@ const QStringList entries = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::LocaleAware); const QMimeDatabase db; const QMimeType dirMime = db.mimeTypeForName(QStringLiteral("inode/directory")); - Q_FOREACH (const QString &subDir, entries) { + for (const QString &subDir : entries) { QString subPath = m_path + subDir; KFileCopyToDirectoryMenu *subMenu = new KFileCopyToDirectoryMenu(this, m_mainMenu, subPath); QString menuTitle(subDir); diff --git a/src/filewidgets/kfilemetapreview.cpp b/src/filewidgets/kfilemetapreview.cpp --- a/src/filewidgets/kfilemetapreview.cpp +++ b/src/filewidgets/kfilemetapreview.cpp @@ -67,7 +67,7 @@ if (mimeInfo.isValid()) { // check mime type inheritance const QStringList parentMimeTypes = mimeInfo.allAncestors(); - Q_FOREACH (const QString &parentMimeType, parentMimeTypes) { + for (const QString &parentMimeType : parentMimeTypes) { provider = m_previewProviders.value(parentMimeType); if (provider) { return provider; diff --git a/src/filewidgets/kfileplacesmodel.cpp b/src/filewidgets/kfileplacesmodel.cpp --- a/src/filewidgets/kfileplacesmodel.cpp +++ b/src/filewidgets/kfileplacesmodel.cpp @@ -585,7 +585,7 @@ const QList &deviceList = Solid::Device::listFromQuery(predicate); availableDevices.reserve(deviceList.size()); - foreach (const Solid::Device &device, deviceList) { + for (const Solid::Device &device : deviceList) { availableDevices << device.udi(); } @@ -760,7 +760,7 @@ } // Add bookmarks for the remaining devices, they were previously unknown - foreach (const QString &udi, devices) { + for (const QString &udi : qAsConst(devices)) { bookmark = KFilePlacesItem::createDeviceBookmark(bookmarkManager, udi); if (!bookmark.isNull()) { KFilePlacesItem *item = new KFilePlacesItem(bookmarkManager, @@ -873,7 +873,7 @@ QDataStream stream(&itemData, QIODevice::WriteOnly); - foreach (const QModelIndex &index, indexes) { + for (const QModelIndex &index : qAsConst(indexes)) { QUrl itemUrl = url(index); if (itemUrl.isValid()) { urls << itemUrl; @@ -947,7 +947,7 @@ KBookmarkGroup group = d->bookmarkManager->root(); - foreach (const QUrl &url, urls) { + for (const QUrl &url : urls) { // TODO: use KIO::stat in order to get the UDS_DISPLAY_NAME too KIO::MimetypeJob *job = KIO::mimetype(url); diff --git a/src/filewidgets/kfilepreviewgenerator.cpp b/src/filewidgets/kfilepreviewgenerator.cpp --- a/src/filewidgets/kfilepreviewgenerator.cpp +++ b/src/filewidgets/kfilepreviewgenerator.cpp @@ -714,7 +714,7 @@ KDirLister *dirLister = dirModel->dirLister(); const QList dirs = dirLister->directories(); items.reserve(dirs.size()); - foreach (const QUrl &url, dirs) { + for (const QUrl &url : dirs) { items << dirLister->itemsForDir(url); } applyCutItemEffect(items); @@ -918,7 +918,7 @@ DataChangeObtainer obt(this); KIconEffect *iconEffect = KIconLoader::global()->iconEffect(); - foreach (const KFileItem &item, items) { + for (const KFileItem &item : items) { if (cutUrls.contains(item.url())) { const QModelIndex index = dirModel->indexForItem(item); const QVariant value = dirModel->data(index, Qt::DecorationRole); diff --git a/src/filewidgets/kfilewidget.cpp b/src/filewidgets/kfilewidget.cpp --- a/src/filewidgets/kfilewidget.cpp +++ b/src/filewidgets/kfilewidget.cpp @@ -1328,7 +1328,7 @@ if (urlList.count() > 1) { QString urls; - foreach (const QUrl &url, urlList) { + for (const QUrl &url : urlList) { urls += QStringLiteral("\"%1\"").arg(relativePathOrUrl(currUrl, url)) + QLatin1Char(' '); } urls.chop(1); @@ -2480,8 +2480,8 @@ } else { QString filename = urlStr.mid(urlStr.lastIndexOf(QLatin1Char('/')) + 1); // only filename foreach (const QString &filter, filterWidget->filters()) { - QStringList patterns = filter.left(filter.indexOf(QLatin1Char('|'))).split(QLatin1Char(' '), QString::SkipEmptyParts); // '*.foo *.bar|Foo type' -> '*.foo', '*.bar' - foreach (const QString &p, patterns) { + const QStringList patterns = filter.left(filter.indexOf(QLatin1Char('|'))).split(QLatin1Char(' '), QString::SkipEmptyParts); // '*.foo *.bar|Foo type' -> '*.foo', '*.bar' + for (const QString &p : patterns) { QRegExp rx(p); rx.setPatternSyntax(QRegExp::Wildcard); if (rx.exactMatch(filename)) { diff --git a/src/filewidgets/knewfilemenu.cpp b/src/filewidgets/knewfilemenu.cpp --- a/src/filewidgets/knewfilemenu.cpp +++ b/src/filewidgets/knewfilemenu.cpp @@ -714,7 +714,7 @@ } else { mime = db.mimeTypeForName(entry.mimeType); } - Q_FOREACH (const QString &supportedMime, m_supportedMimeTypes) { + for (const QString &supportedMime : qAsConst(m_supportedMimeTypes)) { if (mime.inherits(supportedMime)) { keep = true; break; @@ -990,15 +990,15 @@ dir.setPath(path); const QStringList &entryList(dir.entryList(QStringList() << QStringLiteral("*.desktop"), QDir::Files)); files.reserve(files.size() + entryList.size()); - Q_FOREACH (const QString &entry, entryList) { + for (const QString &entry : entryList) { const QString file = concatPaths(dir.path(), entry); files.append(file); } } QMap slist; // used for sorting QMap ulist; // entries with unique URLs - Q_FOREACH (const QString &file, files) { + for (const QString &file : qAsConst(files)) { //qDebug() << file; if (file[0] != QLatin1Char('.')) { KNewFileMenuSingleton::Entry e; diff --git a/src/filewidgets/kurlnavigatorbutton.cpp b/src/filewidgets/kurlnavigatorbutton.cpp --- a/src/filewidgets/kurlnavigatorbutton.cpp +++ b/src/filewidgets/kurlnavigatorbutton.cpp @@ -426,7 +426,7 @@ Q_ASSERT(job == m_subDirsJob); Q_UNUSED(job); - foreach (const KIO::UDSEntry &entry, entries) { + for (const KIO::UDSEntry &entry : entries) { if (entry.isDir()) { const QString name = entry.stringValue(KIO::UDSEntry::UDS_NAME); QString displayName = entry.stringValue(KIO::UDSEntry::UDS_DISPLAY_NAME); diff --git a/src/filewidgets/kurlnavigatorplacesselector.cpp b/src/filewidgets/kurlnavigatorplacesselector.cpp --- a/src/filewidgets/kurlnavigatorplacesselector.cpp +++ b/src/filewidgets/kurlnavigatorplacesselector.cpp @@ -215,7 +215,7 @@ QMimeDatabase db; const QList urlList = KUrlMimeData::urlsFromMimeData(event->mimeData()); - foreach (const QUrl &url, urlList) { + for (const QUrl &url : urlList) { QMimeType mimetype = db.mimeTypeForUrl(url); if (mimetype.inherits(QStringLiteral("inode/directory"))) { m_placesModel->addPlace(url.fileName(), url); diff --git a/src/filewidgets/kurlnavigatorprotocolcombo.cpp b/src/filewidgets/kurlnavigatorprotocolcombo.cpp --- a/src/filewidgets/kurlnavigatorprotocolcombo.cpp +++ b/src/filewidgets/kurlnavigatorprotocolcombo.cpp @@ -56,7 +56,7 @@ m_protocols = protocols; m_menu->clear(); - foreach (const QString &protocol, protocols) { + for (const QString &protocol : protocols) { QAction *action = m_menu->addAction(protocol); action->setData(protocol); } diff --git a/src/ioslaves/file/file.cpp b/src/ioslaves/file/file.cpp --- a/src/ioslaves/file/file.cpp +++ b/src/ioslaves/file/file.cpp @@ -1491,7 +1491,7 @@ } } QDir dir; - Q_FOREACH (const QString &itemPath, dirsToDelete) { + for (const QString &itemPath : qAsConst(dirsToDelete)) { //qDebug() << "QDir::rmdir" << itemPath; if (!dir.rmdir(itemPath)) { if (auto err = execWithElevatedPrivilege(RMDIR, {itemPath}, errno)) { diff --git a/src/ioslaves/file/file_unix.cpp b/src/ioslaves/file/file_unix.cpp --- a/src/ioslaves/file/file_unix.cpp +++ b/src/ioslaves/file/file_unix.cpp @@ -889,7 +889,7 @@ QByteArray helperArgs; QDataStream out(&helperArgs, QIODevice::WriteOnly); out << action; - foreach (const QVariant &arg, args) { + for (const QVariant &arg : args) { out << arg; } diff --git a/src/ioslaves/http/http_cache_cleaner.cpp b/src/ioslaves/http/http_cache_cleaner.cpp --- a/src/ioslaves/http/http_cache_cleaner.cpp +++ b/src/ioslaves/http/http_cache_cleaner.cpp @@ -532,7 +532,7 @@ } // qDebug() << "we have too many fake/stale entries, cleaning up..."; QSet realFiles; - Q_FOREACH (CacheFileInfo *fi, fiList) { + for (CacheFileInfo *fi : fiList) { realFiles.insert(CacheIndex(fi->baseName)); } QHash::Iterator it = m_scoreboard.begin(); diff --git a/src/ioslaves/http/httpauthentication.cpp b/src/ioslaves/http/httpauthentication.cpp --- a/src/ioslaves/http/httpauthentication.cpp +++ b/src/ioslaves/http/httpauthentication.cpp @@ -229,7 +229,7 @@ QByteArray digestOffer; QByteArray ntlmOffer; QByteArray basicOffer; - Q_FOREACH (const QByteArray &offer, offers) { + for (const QByteArray &offer : offers) { const QByteArray scheme = offer.mid(0, offer.indexOf(' ')).toLower(); #if HAVE_LIBGSSAPI if (scheme == "negotiate") { // krazy:exclude=strings @@ -282,7 +282,7 @@ { // first detect if one entry may contain multiple offers QList alloffers; - foreach (QByteArray offer, offers) { + for (QByteArray offer : offers) { QByteArray scheme, cont; parseChallenge(offer, &scheme, &cont); diff --git a/src/ioslaves/http/kcookiejar/kcookiejar.cpp b/src/ioslaves/http/kcookiejar/kcookiejar.cpp --- a/src/ioslaves/http/kcookiejar/kcookiejar.cpp +++ b/src/ioslaves/http/kcookiejar/kcookiejar.cpp @@ -239,7 +239,7 @@ result += QL1S("; $Port"); } else { QString portNums; - Q_FOREACH (int port, mPorts) { + for (int port : qAsConst(mPorts)) { portNums += QString::number(port) + QL1C(' '); } result += QL1S("; $Port=\"") + portNums.trimmed() + QL1C('"'); @@ -448,7 +448,7 @@ } int protVersion = 0; - Q_FOREACH (const KHttpCookie &cookie, allCookies) { + for (const KHttpCookie &cookie : qAsConst(allCookies)) { if (cookie.protocolVersion() > protVersion) { protVersion = cookie.protocolVersion(); } @@ -463,7 +463,7 @@ cookieStr = cookieStr + QStringLiteral("$Version=") + QString::number(protVersion) + QStringLiteral("; "); } - Q_FOREACH (const KHttpCookie &cookie, allCookies) { + for (const KHttpCookie &cookie : qAsConst(allCookies)) { cookieStr = cookieStr + cookie.cookieStr(useDOMFormat) + QStringLiteral("; "); } @@ -837,7 +837,7 @@ } else { bool ok; const QStringList portNums = Value.split(QL1C(' '), QString::SkipEmptyParts); - Q_FOREACH (const QString &portNum, portNums) { + for (const QString &portNum : portNums) { const int port = portNum.toInt(&ok); if (ok) { lastCookie.mPorts.append(port); @@ -1284,7 +1284,7 @@ } QStringList portList; - Q_FOREACH (int port, ports) { + for (int port : ports) { portList << QString::number(port); } @@ -1605,7 +1605,7 @@ QDebug operator<<(QDebug dbg, const KHttpCookieList &list) { - Q_FOREACH (const KHttpCookie &cookie, list) { + for (const KHttpCookie &cookie : list) { dbg << cookie; } return dbg; diff --git a/src/ioslaves/http/kcookiejar/kcookieserver.cpp b/src/ioslaves/http/kcookiejar/kcookieserver.cpp --- a/src/ioslaves/http/kcookiejar/kcookieserver.cpp +++ b/src/ioslaves/http/kcookiejar/kcookieserver.cpp @@ -316,7 +316,7 @@ void KCookieServer::putCookie(QStringList &out, const KHttpCookie &cookie, const QList &fields) { - foreach (int i, fields) { + for (int i : fields) { switch (i) { case CF_DOMAIN : out << cookie.domain(); @@ -412,7 +412,7 @@ const QStringList domainList = _domain.split(QLatin1Char(' ')); if (allCookies) { - Q_FOREACH (const QString &domain, domainList) { + for (const QString &domain : domainList) { const KHttpCookieList *list = mCookieJar->getCookieList(domain, fqdn); if (!list) { continue; @@ -425,7 +425,7 @@ } } } else { - Q_FOREACH (const QString &domain, domainList) { + for (const QString &domain : domainList) { const KHttpCookieList *list = mCookieJar->getCookieList(domain, fqdn); if (!list) { continue; diff --git a/src/kcms/kio/kcookiesmanagement.cpp b/src/kcms/kio/kcookiesmanagement.cpp --- a/src/kcms/kio/kcookiesmanagement.cpp +++ b/src/kcms/kio/kcookiesmanagement.cpp @@ -247,7 +247,7 @@ CookieListViewItem *dom; const QStringList domains (reply.value()); - Q_FOREACH(const QString& domain, domains) + for (const QString& domain : domains) { const QString siteName = (domain.startsWith(QLatin1Char('.')) ? domain.mid(1) : domain); if (mUi.cookiesTreeWidget->findItems(siteName, Qt::MatchFixedString).isEmpty()) { diff --git a/src/kcms/kio/kproxydlg.cpp b/src/kcms/kio/kproxydlg.cpp --- a/src/kcms/kio/kproxydlg.cpp +++ b/src/kcms/kio/kproxydlg.cpp @@ -429,7 +429,7 @@ bool KProxyDialog::autoDetectSystemProxy(QLineEdit* edit, const QString& envVarStr, bool showValue) { const QStringList envVars = envVarStr.split(QL1C(','), QString::SkipEmptyParts); - Q_FOREACH (const QString & envVar, envVars) { + for (const QString & envVar : envVars) { const QByteArray envVarUtf8(envVar.toUtf8()); const QByteArray envVarValue = qgetenv(envVarUtf8.constData()); if (!envVarValue.isEmpty()) { diff --git a/src/kiod/kiod_main.cpp b/src/kiod/kiod_main.cpp --- a/src/kiod/kiod_main.cpp +++ b/src/kiod/kiod_main.cpp @@ -112,7 +112,7 @@ // Also register as all the names we should respond to (org.kde.kssld, org.kde.kcookiejar, etc.) // so that the calling code is independent from the physical "location" of the service. const QVector plugins = KPluginLoader::findPlugins(QStringLiteral("kf5/kiod")); - foreach (const KPluginMetaData &metaData, plugins) { + for (const KPluginMetaData &metaData : plugins) { const QString serviceName = metaData.rawData().value(QStringLiteral("X-KDE-DBus-ServiceName")).toString(); if (serviceName.isEmpty()) { qCWarning(KIOD_CATEGORY) << "No X-KDE-DBus-ServiceName found in" << metaData.fileName(); diff --git a/src/kpac/script.cpp b/src/kpac/script.cpp --- a/src/kpac/script.cpp +++ b/src/kpac/script.cpp @@ -319,7 +319,7 @@ QString ipAddress; const QList addresses = QNetworkInterface::allAddresses(); - Q_FOREACH (const QHostAddress& address, addresses) { + for (const QHostAddress& address : addresses) { if (isIPv4Address(address) && !isSpecialAddress(address) && !isLocalHostAddress(address)) { ipAddress = address.toString(); break; @@ -624,7 +624,7 @@ QStringList ipAddressList; const QList addresses = QNetworkInterface::allAddresses(); - Q_FOREACH (const QHostAddress& address, addresses) { + for (const QHostAddress& address : addresses) { if (!isSpecialAddress(address) && !isLocalHostAddress(address)) { ipAddressList << address.toString(); } @@ -646,7 +646,7 @@ QList ipV4List, ipV6List; const QStringList ipAddressList = context->argument(0).toString().split(QLatin1Char(';')); - Q_FOREACH (const QString &ipAddress, ipAddressList) { + for (const QString &ipAddress : ipAddressList) { QHostAddress address(ipAddress); switch (address.protocol()) { case QAbstractSocket::IPv4Protocol: diff --git a/src/kpasswdserver/autotests/kpasswdservertest.cpp b/src/kpasswdserver/autotests/kpasswdservertest.cpp --- a/src/kpasswdserver/autotests/kpasswdservertest.cpp +++ b/src/kpasswdserver/autotests/kpasswdservertest.cpp @@ -445,7 +445,7 @@ qlonglong seqNr = 0; QList idList; - Q_FOREACH(const KIO::AuthInfo& info, infos) { + for (const KIO::AuthInfo& info : infos) { const qlonglong id = server.queryAuthInfoAsync( info, QString(), diff --git a/src/kpasswdserver/kpasswdserver.cpp b/src/kpasswdserver/kpasswdserver.cpp --- a/src/kpasswdserver/kpasswdserver.cpp +++ b/src/kpasswdserver/kpasswdserver.cpp @@ -777,7 +777,7 @@ KPasswdServer::removeAuthForWindowId(qlonglong windowId) { const QStringList keysChanged = mWindowIdList.value(windowId); - foreach (const QString &key, keysChanged) + for (const QString &key : keysChanged) { AuthInfoContainerList *authList = m_authDict.value(key); if (!authList) diff --git a/src/kssld/kssld.cpp b/src/kssld/kssld.cpp --- a/src/kssld/kssld.cpp +++ b/src/kssld/kssld.cpp @@ -246,7 +246,7 @@ QList ignoredErrors; bool isRejected = false; - foreach (const QString &s, sl) { + for (const QString &s : qAsConst(sl)) { if (s == QLatin1String("Reject")) { isRejected = true; ignoredErrors.clear(); diff --git a/src/protocoltojson/main.cpp b/src/protocoltojson/main.cpp --- a/src/protocoltojson/main.cpp +++ b/src/protocoltojson/main.cpp @@ -155,7 +155,7 @@ } // insert all entries for all found locales, reparse config for this - Q_FOREACH(const QString &locale, foundLocalesForKey) { + for (const QString &locale : qAsConst(foundLocalesForKey)) { sconfig.setLocale(locale); protocolData.insert(QStringLiteral("%1[%2]").arg(key, locale), config.readEntry(key, QStringList())); } diff --git a/src/urifilters/ikws/ikwsopts.cpp b/src/urifilters/ikws/ikwsopts.cpp --- a/src/urifilters/ikws/ikwsopts.cpp +++ b/src/urifilters/ikws/ikwsopts.cpp @@ -337,10 +337,10 @@ group.writeEntry("UsePreferredWebShortcutsOnly", m_dlg.cbUseSelectedShortcutsOnly->isChecked()); int changedProviderCount = 0; - QList providers = m_providersModel->providers(); + const QList providers = m_providersModel->providers(); const QString path = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation) + QLatin1String("/kservices5/searchproviders/"); - Q_FOREACH(SearchProvider* provider, providers) + for (SearchProvider* provider : providers) { if (!provider->isDirty()) continue; @@ -362,7 +362,7 @@ Q_FOREACH(const QString& providerName, m_deletedProviders) { QStringList matches; - foreach(const QString& dir, servicesDirs) { + for (const QString& dir : servicesDirs) { QString current = dir + QLatin1Char('/') + providerName + QLatin1String(".desktop"); if(QFile::exists(current)) matches += current; diff --git a/src/urifilters/ikws/searchprovider.cpp b/src/urifilters/ikws/searchprovider.cpp --- a/src/urifilters/ikws/searchprovider.cpp +++ b/src/urifilters/ikws/searchprovider.cpp @@ -76,7 +76,7 @@ // Take the longest search shortcut as filename, // if such a file already exists, append a number and increase it // until the name is unique - Q_FOREACH(const QString& key, keys) + for (const QString& key : keys) { if (key.length() > name.length()) name = key.toLower(); diff --git a/src/urifilters/ikws/searchproviderdlg.cpp b/src/urifilters/ikws/searchproviderdlg.cpp --- a/src/urifilters/ikws/searchproviderdlg.cpp +++ b/src/urifilters/ikws/searchproviderdlg.cpp @@ -104,14 +104,14 @@ m_dlg.leShortcut->setCursorPosition(savedCursorPosition); QHash contenders; - QSet shorthands = normalizedShorthands.split(QLatin1Char(',')).toSet(); + const QSet shorthands = normalizedShorthands.split(QLatin1Char(',')).toSet(); // Look at each shorthand the user entered and wade through the search // provider list in search of a conflicting shorthand. Do not continue // search after finding one, because shorthands should be assigned only // once. Act like data inconsistencies regarding this don't exist (should // probably be handled on load). - Q_FOREACH (const QString &shorthand, shorthands) { + for (const QString &shorthand : shorthands) { Q_FOREACH (const SearchProvider* provider, m_providers) { if (provider != m_provider && provider->keys().contains(shorthand)) { contenders.insert(shorthand, provider); diff --git a/src/widgets/accessmanager.cpp b/src/widgets/accessmanager.cpp --- a/src/widgets/accessmanager.cpp +++ b/src/widgets/accessmanager.cpp @@ -519,7 +519,7 @@ const QString cookieStr = reply.value(); const QStringList cookies = cookieStr.split(QStringLiteral("; "), QString::SkipEmptyParts); - Q_FOREACH (const QString &cookie, cookies) { + for (const QString &cookie : cookies) { const int index = cookie.indexOf(QL1C('=')); const QStringRef name = cookie.leftRef(index); const QStringRef value = cookie.rightRef((cookie.length() - index - 1)); @@ -537,7 +537,7 @@ } QDBusInterface kcookiejar(QStringLiteral("org.kde.kcookiejar5"), QStringLiteral("/modules/kcookiejar"), QStringLiteral("org.kde.KCookieServer")); - Q_FOREACH (const QNetworkCookie &cookie, cookieList) { + for (const QNetworkCookie &cookie : cookieList) { QByteArray cookieHeader("Set-Cookie: "); if (d->isStorageDisabled && !cookie.isSessionCookie()) { QNetworkCookie sessionCookie(cookie); diff --git a/src/widgets/accessmanagerreply_p.cpp b/src/widgets/accessmanagerreply_p.cpp --- a/src/widgets/accessmanagerreply_p.cpp +++ b/src/widgets/accessmanagerreply_p.cpp @@ -209,7 +209,7 @@ setHeader(QNetworkRequest::ContentTypeHeader, mimeType.toUtf8()); } } else { - Q_FOREACH (const QString &httpHeader, httpHeaders) { + for (const QString &httpHeader : httpHeaders) { int index = httpHeader.indexOf(QL1C(':')); // Handle HTTP status line... if (index == -1) { diff --git a/src/widgets/dropjob.cpp b/src/widgets/dropjob.cpp --- a/src/widgets/dropjob.cpp +++ b/src/widgets/dropjob.cpp @@ -391,8 +391,8 @@ if (factory) { KIO::DndPopupMenuPlugin *plugin = factory->create(); if (plugin) { - auto actions = plugin->setup(itemProps, m_destUrl); - foreach (auto action, actions) { + const auto actions = plugin->setup(itemProps, m_destUrl); + for (auto action : actions) { action->setParent(popup); } m_pluginActions += actions; @@ -553,7 +553,7 @@ // Launch executable for each of the files QStringList args; args.reserve(m_urls.size()); - Q_FOREACH(const QUrl &url, m_urls) { + for (const QUrl &url : qAsConst(m_urls)) { args << url.toLocalFile(); // assume local files } QProcess::startDetached(m_destUrl.toLocalFile(), args); diff --git a/src/widgets/jobuidelegate.cpp b/src/widgets/jobuidelegate.cpp --- a/src/widgets/jobuidelegate.cpp +++ b/src/widgets/jobuidelegate.cpp @@ -211,7 +211,7 @@ if (ask) { QStringList prettyList; prettyList.reserve(urls.size()); - Q_FOREACH (const QUrl &url, urls) { + for (const QUrl &url : urls) { if (url.scheme() == QLatin1String("trash")) { QString path = url.path(); // HACK (#98983): remove "0-foo". Note that it works better than @@ -345,7 +345,7 @@ const QStringList sl = sslMetaData.value(QStringLiteral("ssl_peer_chain")).split(QLatin1Char('\x01'), QString::SkipEmptyParts); QList certChain; bool decodedOk = true; - foreach (const QString &s, sl) { + for (const QString &s : sl) { certChain.append(QSslCertificate(s.toLatin1())); //or is it toLocal8Bit or whatever? if (certChain.last().isNull()) { decodedOk = false; diff --git a/src/widgets/kdirmodel.cpp b/src/widgets/kdirmodel.cpp --- a/src/widgets/kdirmodel.cpp +++ b/src/widgets/kdirmodel.cpp @@ -260,7 +260,7 @@ if (node->item().isDir()) { QList urls; static_cast(node)->collectAllChildUrls(urls); - Q_FOREACH (const QUrl &u, urls) { + for (const QUrl &u : qAsConst(urls)) { m_nodeHash.remove(u); } } @@ -435,7 +435,7 @@ qCWarning(KIO_WIDGETS) << "Items emitted in directory" << directoryUrl << "but that directory isn't in KDirModel!" << "Root directory:" << urlForNode(m_rootNode); - Q_FOREACH (const KFileItem &item, items) { + for (const KFileItem &item : items) { qDebug() << "Item:" << item.url(); } #ifndef NDEBUG @@ -556,7 +556,7 @@ // Let's use a bit array where each bit represents a given child node. const int childCount = dirNode->m_childNodes.count(); QBitArray rowNumbers(childCount, false); - Q_FOREACH (const KFileItem &item, items) { + for (const KFileItem &item : items) { if (!node) { // don't lookup the first item twice url = item.url(); node = nodeForUrl(url); @@ -1042,7 +1042,7 @@ urls.reserve(indexes.size()); mostLocalUrls.reserve(indexes.size()); bool canUseMostLocalUrls = true; - foreach (const QModelIndex &index, indexes) { + for (const QModelIndex &index : indexes) { const KFileItem &item = d->nodeForIndex(index)->item(); urls << item.url(); bool isLocal; diff --git a/src/widgets/kfileitemactions.cpp b/src/widgets/kfileitemactions.cpp --- a/src/widgets/kfileitemactions.cpp +++ b/src/widgets/kfileitemactions.cpp @@ -60,7 +60,7 @@ { const QString itemMimeType = item.mimetype(); - foreach (const QString &i, list) { + for (const QString &i : list) { if (i == itemMimeType || i == QLatin1String("all/all")) { return true; @@ -412,7 +412,7 @@ ServiceList &list = s.selectList(priority, submenuName); const ServiceList userServices = KDesktopFileActions::userDefinedServices(*(*it2), isLocal, urlList); - foreach (const KServiceAction &action, userServices) { + for (const KServiceAction &action : userServices) { if (showGroup.readEntry(action.name(), true)) { list += action; } @@ -580,7 +580,7 @@ KService::List result; result.reserve(rankings.size()); - Q_FOREACH (const KFileItemActionsPrivate::ServiceRank &tempRank, rankings) { + for (const KFileItemActionsPrivate::ServiceRank &tempRank : qAsConst(rankings)) { result << tempRank.service; } @@ -708,9 +708,9 @@ const QStringList mimeTypeList = listMimeTypes(fileItems); const QStringList serviceIdList = listPreferredServiceIds(mimeTypeList, m_traderConstraint); - foreach (const QString& serviceId, serviceIdList) { + for (const QString& serviceId : serviceIdList) { KFileItemList serviceItems; - foreach (const KFileItem &item, fileItems) { + for (const KFileItem &item : fileItems) { const KService::Ptr serv = preferredService(item.mimetype(), m_traderConstraint); const QString preferredServiceId = serv ? serv->storageId() : QString(); if (preferredServiceId == serviceId) { @@ -742,9 +742,9 @@ void KFileItemActionsPrivate::openWithByMime(const KFileItemList &fileItems) { const QStringList mimeTypeList = listMimeTypes(fileItems); - foreach (const QString& mimeType, mimeTypeList) { + for (const QString& mimeType : mimeTypeList) { KFileItemList mimeItems; - foreach (const KFileItem &item, fileItems) { + for (const KFileItem &item : fileItems) { if (item.mimetype() == mimeType) { mimeItems << item; } @@ -773,7 +773,7 @@ QStringList KFileItemActionsPrivate::listMimeTypes(const KFileItemList &items) { QStringList mimeTypeList; - foreach (const KFileItem &item, items) { + for (const KFileItem &item : items) { if (!mimeTypeList.contains(item.mimetype())) { mimeTypeList << item.mimetype(); } @@ -785,7 +785,7 @@ { QStringList serviceIdList; serviceIdList.reserve(mimeTypeList.size()); - Q_FOREACH (const QString &mimeType, mimeTypeList) { + for (const QString &mimeType : mimeTypeList) { const KService::Ptr serv = preferredService(mimeType, traderConstraint); const QString newOffer = serv ? serv->storageId() : QString(); serviceIdList << newOffer; diff --git a/src/widgets/kpropertiesdialog.cpp b/src/widgets/kpropertiesdialog.cpp --- a/src/widgets/kpropertiesdialog.cpp +++ b/src/widgets/kpropertiesdialog.cpp @@ -286,7 +286,7 @@ Q_ASSERT(!d->m_singleUrl.isEmpty()); d->m_items.reserve(urls.size()); - foreach (const QUrl& url, urls) { + for (const QUrl& url : urls) { KIO::StatJob *job = KIO::stat(url); KJobWidgets::setWindow(job, parent); job->exec(); @@ -627,7 +627,7 @@ // qDebug() << "trader query: " << query; const KService::List offers = KMimeTypeTrader::self()->query(mimetype, QStringLiteral("KPropertiesDialog/Plugin"), query); - foreach (const KService::Ptr &ptr, offers) { + for (const KService::Ptr &ptr : offers) { KPropertiesDialogPlugin *plugin = ptr->createInstance(q); if (!plugin) { continue; diff --git a/src/widgets/ksslinfodialog.cpp b/src/widgets/ksslinfodialog.cpp --- a/src/widgets/ksslinfodialog.cpp +++ b/src/widgets/ksslinfodialog.cpp @@ -222,13 +222,13 @@ //static QList > KSslInfoDialog::errorsFromString(const QString &es) { - QStringList sl = es.split(QLatin1Char('\n'), QString::KeepEmptyParts); + const QStringList sl = es.split(QLatin1Char('\n'), QString::KeepEmptyParts); QList > ret; ret.reserve(sl.size()); - foreach (const QString &s, sl) { + for (const QString &s : sl) { QList certErrors; - QStringList sl2 = s.split(QLatin1Char('\t'), QString::SkipEmptyParts); - foreach (const QString &s2, sl2) { + const QStringList sl2 = s.split(QLatin1Char('\t'), QString::SkipEmptyParts); + for (const QString &s2 : sl2) { bool didConvert; KSslError::Error error = static_cast(s2.toInt(&didConvert)); if (didConvert) { diff --git a/src/widgets/kurifilter.cpp b/src/widgets/kurifilter.cpp --- a/src/widgets/kurifilter.cpp +++ b/src/widgets/kurifilter.cpp @@ -532,7 +532,7 @@ void KUriFilterPlugin::setSearchProviders(KUriFilterData &data, const QList &providers) const { data.d->searchProviderList.reserve(data.d->searchProviderList.size() + providers.size()); - Q_FOREACH (KUriFilterSearchProvider *searchProvider, providers) { + for (KUriFilterSearchProvider *searchProvider : providers) { data.d->searchProviderList << searchProvider->name(); data.d->searchProviderMap.insert(searchProvider->name(), searchProvider); } diff --git a/src/widgets/kurlcompletion.cpp b/src/widgets/kurlcompletion.cpp --- a/src/widgets/kurlcompletion.cpp +++ b/src/widgets/kurlcompletion.cpp @@ -290,8 +290,8 @@ ::endpwent(); #else //currently terminationRequested is ignored on Windows - QStringList allUsers = KUser::allUserNames(); - Q_FOREACH(const QString& s, allUsers) { + const QStringList allUsers = KUser::allUserNames(); + for (const QString& s : allUsers) { addMatch(tilde + s); } #endif @@ -838,11 +838,11 @@ q->clear(); QProcessEnvironment env = QProcessEnvironment::systemEnvironment(); - QStringList keys = env.keys(); + const QStringList keys = env.keys(); QStringList l; l.reserve(keys.size()); - Q_FOREACH(const QString &key, keys) { + for (const QString &key : keys) { l.append(prepend + QLatin1Char('$') + key); } diff --git a/src/widgets/paste.cpp b/src/widgets/paste.cpp --- a/src/widgets/paste.cpp +++ b/src/widgets/paste.cpp @@ -200,7 +200,7 @@ { QStringList formats; const QStringList allFormats = mimeData->formats(); - Q_FOREACH (const QString &format, allFormats) { + for (const QString &format : allFormats) { if (format == QLatin1String("application/x-qiconlist")) { // Q3IconView and kde4's libkonq continue; } diff --git a/src/widgets/previewjob.cpp b/src/widgets/previewjob.cpp --- a/src/widgets/previewjob.cpp +++ b/src/widgets/previewjob.cpp @@ -350,7 +350,7 @@ const QMimeType mimeInfo = db.mimeTypeForName(mimeType); if (mimeInfo.isValid()) { const QStringList parentMimeTypes = mimeInfo.allAncestors(); - Q_FOREACH (const QString &parentMimeType, parentMimeTypes) { + for (const QString &parentMimeType : parentMimeTypes) { pluginIt = mimeMap.constFind(parentMimeType); if (pluginIt != mimeMap.constEnd()) { break; @@ -765,11 +765,11 @@ QStringList PreviewJob::defaultPlugins() { - QStringList blacklist = QStringList() + const QStringList blacklist = QStringList() << QStringLiteral("textthumbnail"); QStringList defaultPlugins = availablePlugins(); - foreach (const QString plugin, blacklist) { + for (const QString plugin : blacklist) { defaultPlugins.removeAll(plugin); } diff --git a/tests/getalltest.cpp b/tests/getalltest.cpp --- a/tests/getalltest.cpp +++ b/tests/getalltest.cpp @@ -12,25 +12,25 @@ //for (int i = 0 ; i < 2 ; ++i ) { // test twice to see if they got deleted qDebug() << "All services"; - KService::List services = KService::allServices(); + const KService::List services = KService::allServices(); qDebug() << "got " << services.count() << " services"; - Q_FOREACH (const KService::Ptr s, services) { + for (const KService::Ptr s : services) { qDebug() << s->name() << " " << s->entryPath(); } //} qDebug() << "All mimeTypes"; QMimeDatabase db; - QList mimeTypes = db.allMimeTypes(); + const QList mimeTypes = db.allMimeTypes(); qDebug() << "got " << mimeTypes.count() << " mimeTypes"; - Q_FOREACH (const QMimeType &m, mimeTypes) { + for (const QMimeType &m : mimeTypes) { qDebug() << m.name(); } qDebug() << "All service types"; - KServiceType::List list = KServiceType::allServiceTypes(); + const KServiceType::List list = KServiceType::allServiceTypes(); qDebug() << "got " << list.count() << " service types"; - Q_FOREACH (const KServiceType::Ptr st, list) { + for (const KServiceType::Ptr st : list) { qDebug() << st->name(); } diff --git a/tests/udsentrybenchmark.cpp b/tests/udsentrybenchmark.cpp --- a/tests/udsentrybenchmark.cpp +++ b/tests/udsentrybenchmark.cpp @@ -271,7 +271,7 @@ } const QVector fields = a.fields(); - foreach (uint field, fields) { + for (uint field : fields) { if (!b.contains(field)) { return false; }