diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -73,7 +73,7 @@ if(epoxy_FOUND) set(HAVE_EPOXY 1) endif() - +add_definitions(-DQT_NO_FOREACH) add_subdirectory(src) if (BUILD_TESTING) add_subdirectory(autotests) diff --git a/src/kdeclarative/configpropertymap.cpp b/src/kdeclarative/configpropertymap.cpp --- a/src/kdeclarative/configpropertymap.cpp +++ b/src/kdeclarative/configpropertymap.cpp @@ -108,7 +108,8 @@ return; } - foreach (KConfigSkeletonItem *item, config.data()->items()) { + const auto lstItems = config.data()->items(); + for (KConfigSkeletonItem *item : lstItems) { item->setProperty(q->value(item->key())); } diff --git a/src/kdeclarative/qmlobject.cpp b/src/kdeclarative/qmlobject.cpp --- a/src/kdeclarative/qmlobject.cpp +++ b/src/kdeclarative/qmlobject.cpp @@ -100,8 +100,8 @@ { QString errorStr = QStringLiteral("Error loading QML file.\n"); if (component->isError()) { - QList errors = component->errors(); - foreach (const QQmlError &error, errors) { + const QList errors = component->errors(); + for (const QQmlError &error : errors) { errorStr += (error.line() > 0 ? QString(QString::number(error.line()) + QLatin1String(": ")) : QLatin1String("")) + error.description() + QLatin1Char('\n'); } diff --git a/src/qmlcontrols/draganddrop/DeclarativeDragArea.cpp b/src/qmlcontrols/draganddrop/DeclarativeDragArea.cpp --- a/src/qmlcontrols/draganddrop/DeclarativeDragArea.cpp +++ b/src/qmlcontrols/draganddrop/DeclarativeDragArea.cpp @@ -360,7 +360,7 @@ pm.fill(Qt::transparent); QPainter p(&pm); int i = 0; - foreach (const QString &ic, icons) { + for (const QString &ic : qAsConst(icons)) { p.drawPixmap(QPoint(i * imageSize, 0), QIcon::fromTheme(ic).pixmap(imageSize)); i++; } diff --git a/src/qmlcontrols/draganddrop/DeclarativeMimeData.cpp b/src/qmlcontrols/draganddrop/DeclarativeMimeData.cpp --- a/src/qmlcontrols/draganddrop/DeclarativeMimeData.cpp +++ b/src/qmlcontrols/draganddrop/DeclarativeMimeData.cpp @@ -52,7 +52,8 @@ m_source(nullptr) { // Copy the standard MIME data - foreach(QString format, copy->formats()) { + const auto formats = copy->formats(); + for (const QString &format : formats) { QMimeData::setData(format, copy->data(format)); } @@ -90,7 +91,8 @@ QJsonArray DeclarativeMimeData::urls() const { QJsonArray varUrls; - foreach (const QUrl &url, QMimeData::urls()) { + const auto lstUrls = QMimeData::urls(); + for (const QUrl &url : lstUrls) { varUrls.append(url.toString()); } return varUrls; @@ -100,7 +102,7 @@ { QList urlList; urlList.reserve(urls.size()); - foreach (const QVariant &varUrl, urls) { + for (const QVariant &varUrl : urls) { urlList << varUrl.toUrl(); } QMimeData::setUrls(urlList); diff --git a/src/qmlcontrols/draganddrop/MimeDataWrapper.cpp b/src/qmlcontrols/draganddrop/MimeDataWrapper.cpp --- a/src/qmlcontrols/draganddrop/MimeDataWrapper.cpp +++ b/src/qmlcontrols/draganddrop/MimeDataWrapper.cpp @@ -56,7 +56,8 @@ QJsonArray MimeDataWrapper::urls() const { QJsonArray varUrls; - foreach (const QUrl &url, m_data->urls()) { + const auto urls = m_data->urls(); + for (const QUrl &url : urls) { varUrls.append(url.toString()); } return varUrls; diff --git a/src/qmlcontrols/kquickcontrolsaddons/clipboard.cpp b/src/qmlcontrols/kquickcontrolsaddons/clipboard.cpp --- a/src/qmlcontrols/kquickcontrolsaddons/clipboard.cpp +++ b/src/qmlcontrols/kquickcontrolsaddons/clipboard.cpp @@ -60,7 +60,8 @@ QVariant ret; if(format == QStringLiteral("text/uri-list")) { QVariantList retList; - foreach(const QUrl& url, data->urls()) + const auto urls = data->urls(); + for (const QUrl& url : urls) retList += url; ret = retList; } else if(format.startsWith(QStringLiteral("text/"))) { @@ -95,10 +96,10 @@ break; default: if (content.type() == QVariant::List) { - QVariantList list = content.toList(); + const QVariantList list = content.toList(); QList urls; bool wasUrlList = true; - foreach (const QVariant& url, list) { + for (const QVariant& url : list) { if (url.type() != QVariant::Url) { wasUrlList = false; break; diff --git a/src/qmlcontrols/kquickcontrolsaddons/eventgenerator.cpp b/src/qmlcontrols/kquickcontrolsaddons/eventgenerator.cpp --- a/src/qmlcontrols/kquickcontrolsaddons/eventgenerator.cpp +++ b/src/qmlcontrols/kquickcontrolsaddons/eventgenerator.cpp @@ -65,7 +65,7 @@ const QList items = allChildItemsRecursive(parentItem); - foreach(QQuickItem *item, items) { + for (QQuickItem *item : items) { sendMouseEvent(item, type, x, y, button, buttons, modifiers); } } @@ -90,7 +90,7 @@ const QList items = allChildItemsRecursive(parentItem); - foreach(QQuickItem *item, items) { + for (QQuickItem *item : items) { sendWheelEvent(item, x, y, pixelDelta, angleDelta, buttons, modifiers); } } @@ -129,18 +129,20 @@ const QList items = allChildItemsRecursive(parentItem); - foreach(QQuickItem *item, items) { + for (QQuickItem *item : items) { sendGrabEvent(item, type); } } QList EventGenerator::allChildItemsRecursive(QQuickItem *parentItem) { QList itemList; - itemList.append(parentItem->childItems()); + const auto childsItems = parentItem->childItems(); + itemList.append(childsItems); - foreach(QQuickItem *childItem, parentItem->childItems()) { + + for (QQuickItem *childItem : childsItems) { itemList.append(allChildItemsRecursive(childItem)); } diff --git a/src/qmlcontrols/kquickcontrolsaddons/mouseeventlistener.cpp b/src/qmlcontrols/kquickcontrolsaddons/mouseeventlistener.cpp --- a/src/qmlcontrols/kquickcontrolsaddons/mouseeventlistener.cpp +++ b/src/qmlcontrols/kquickcontrolsaddons/mouseeventlistener.cpp @@ -375,7 +375,8 @@ QScreen* MouseEventListener::screenForGlobalPos(const QPoint& globalPos) { - foreach(QScreen *screen, QGuiApplication::screens()) { + const auto screens = QGuiApplication::screens(); + for (QScreen *screen : screens) { if (screen->geometry().contains(globalPos)) { return screen; }