diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -69,6 +69,7 @@ ) add_definitions(-DQT_NO_KEYWORDS) +add_definitions(-DQT_NO_FOREACH) if (EXISTS "${CMAKE_SOURCE_DIR}/.git") add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x060000) endif() diff --git a/daemon/actions/bundled/handlebuttoneventsconfig.cpp b/daemon/actions/bundled/handlebuttoneventsconfig.cpp --- a/daemon/actions/bundled/handlebuttoneventsconfig.cpp +++ b/daemon/actions/bundled/handlebuttoneventsconfig.cpp @@ -93,7 +93,7 @@ QList boxes; boxes << m_lidCloseCombo << m_powerButtonCombo; - Q_FOREACH (QComboBox *box, boxes) { + for (QComboBox *box : qAsConst(boxes)) { box->addItem(QIcon::fromTheme("dialog-cancel"), i18n("Do nothing"), (uint)SuspendSession::None); if (PowerManagement::instance()->canSuspend()) { box->addItem(QIcon::fromTheme("system-suspend"), i18nc("Suspend to RAM", "Sleep"), (uint)SuspendSession::ToRamMode); diff --git a/daemon/backends/upower/backlighthelper.cpp b/daemon/backends/upower/backlighthelper.cpp --- a/daemon/backends/upower/backlighthelper.cpp +++ b/daemon/backends/upower/backlighthelper.cpp @@ -69,13 +69,13 @@ backlightDir.setFilter(QDir::AllDirs | QDir::NoDot | QDir::NoDotDot | QDir::NoDotAndDotDot | QDir::Readable); backlightDir.setSorting(QDir::Name | QDir::Reversed);// Reverse is needed to priorize acpi_video1 over 0 - QStringList interfaces = backlightDir.entryList(); + const QStringList interfaces = backlightDir.entryList(); QFile file; QByteArray buffer; QStringList firmware, platform, raw, leds; - Q_FOREACH(const QString & interface, interfaces) { + for (const QString & interface : interfaces) { file.setFileName(BACKLIGHT_SYSFS_PATH + interface + "/type"); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { continue; diff --git a/daemon/backends/upower/powerdevilupowerbackend.cpp b/daemon/backends/upower/powerdevilupowerbackend.cpp --- a/daemon/backends/upower/powerdevilupowerbackend.cpp +++ b/daemon/backends/upower/powerdevilupowerbackend.cpp @@ -350,7 +350,7 @@ } // battery - Q_FOREACH(OrgFreedesktopUPowerDeviceInterface * upowerDevice, m_devices) { + for (const OrgFreedesktopUPowerDeviceInterface * upowerDevice : qAsConst(m_devices)) { if (upowerDevice->type() == 2 && upowerDevice->powerSupply()) { QString udi = upowerDevice->path(); setCapacityForBattery(udi, qRound(upowerDevice->capacity())); // acknowledge capacity @@ -547,8 +547,8 @@ m_lidIsClosed = m_upowerInterface->lidIsClosed(); m_onBattery = m_upowerInterface->onBattery(); - QList deviceList = m_upowerInterface->EnumerateDevices(); - Q_FOREACH (const QDBusObjectPath & device, deviceList) { + const QList deviceList = m_upowerInterface->EnumerateDevices(); + for (const QDBusObjectPath & device : deviceList) { addDevice(device.path()); } @@ -625,7 +625,7 @@ qreal energyFullTotal = 0.0; uint stateTotal = 0; - Q_FOREACH(OrgFreedesktopUPowerDeviceInterface * upowerDevice, m_devices) { + for (const OrgFreedesktopUPowerDeviceInterface * upowerDevice : qAsConst(m_devices)) { const uint type = upowerDevice->type(); if (( type == 2 || type == 3) && upowerDevice->powerSupply()) { const uint state = upowerDevice->state(); diff --git a/daemon/backends/upower/udevqtclient.cpp b/daemon/backends/upower/udevqtclient.cpp --- a/daemon/backends/upower/udevqtclient.cpp +++ b/daemon/backends/upower/udevqtclient.cpp @@ -62,7 +62,7 @@ } // apply our filters; an empty list means listen to everything - Q_FOREACH (const QString& subsysDevtype, subsystemList) { + for (const QString& subsysDevtype : subsystemList) { int ix = subsysDevtype.indexOf(u'/'); if (ix > 0) { diff --git a/daemon/powerdevilactionpool.cpp b/daemon/powerdevilactionpool.cpp --- a/daemon/powerdevilactionpool.cpp +++ b/daemon/powerdevilactionpool.cpp @@ -92,9 +92,9 @@ void ActionPool::init(PowerDevil::Core *parent) { // Load all the actions - KService::List offers = KServiceTypeTrader::self()->query(QStringLiteral("PowerDevil/Action"), + const KService::List offers = KServiceTypeTrader::self()->query(QStringLiteral("PowerDevil/Action"), QStringLiteral("[X-KDE-PowerDevil-Action-IsBundled] == FALSE")); - Q_FOREACH (KService::Ptr offer, offers) { + for (const KService::Ptr offer : offers) { QString actionId = offer->property(QStringLiteral("X-KDE-PowerDevil-Action-ID"), QVariant::String).toString(); qCDebug(POWERDEVIL) << "Got a valid offer for " << actionId; @@ -149,9 +149,9 @@ // Register DBus objects { - KService::List offers = KServiceTypeTrader::self()->query(QStringLiteral("PowerDevil/Action"), + const KService::List offers = KServiceTypeTrader::self()->query(QStringLiteral("PowerDevil/Action"), QStringLiteral("[X-KDE-PowerDevil-Action-RegistersDBusInterface] == TRUE")); - Q_FOREACH (KService::Ptr offer, offers) { + for (const KService::Ptr offer : offers) { QString actionId = offer->property(QStringLiteral("X-KDE-PowerDevil-Action-ID"), QVariant::String).toString(); if (m_actionPool.contains(actionId)) { @@ -190,7 +190,7 @@ void ActionPool::unloadAllActiveActions() { - Q_FOREACH (const QString &action, m_activeActions) { + for (const QString &action : qAsConst(m_activeActions)) { m_actionPool[action]->onProfileUnload(); m_actionPool[action]->unloadAction(); } diff --git a/daemon/powerdevilapp.cpp b/daemon/powerdevilapp.cpp --- a/daemon/powerdevilapp.cpp +++ b/daemon/powerdevilapp.cpp @@ -101,7 +101,7 @@ } QFileInfo backendFileInfo; - Q_FOREACH (const QFileInfo &f, fileInfos) { + for (const QFileInfo &f : qAsConst(fileInfos)) { if (f.baseName().toLower() == QLatin1String("powerdevilupowerbackend")) { backendFileInfo = f; break; diff --git a/daemon/powerdevilcore.cpp b/daemon/powerdevilcore.cpp --- a/daemon/powerdevilcore.cpp +++ b/daemon/powerdevilcore.cpp @@ -129,7 +129,8 @@ this, SLOT(onDeviceRemoved(QString))); // Force the addition of already existent batteries - Q_FOREACH (const Device &device, Device::listFromType(DeviceInterface::Battery, QString())) { + const auto devices = Device::listFromType(DeviceInterface::Battery, QString()); + for (const Device &device : devices) { onDeviceAdded(device.udi()); } } @@ -350,7 +351,8 @@ } // Cool, now let's load the needed actions - Q_FOREACH (const QString &actionName, config.groupList()) { + const auto groupList = config.groupList(); + for (const QString &actionName : groupList) { Action *action = ActionPool::instance()->loadAction(actionName, config.group(actionName), this); if (action) { action->onProfileLoad(); @@ -797,9 +799,9 @@ void Core::unregisterActionTimeouts(Action* action) { // Clear all timeouts from the action - QList< int > timeoutsToClean = m_registeredActionTimeouts[action]; + const QList< int > timeoutsToClean = m_registeredActionTimeouts[action]; - Q_FOREACH (int id, timeoutsToClean) { + for (int id : timeoutsToClean) { KIdleTime::instance()->removeIdleTimeout(id); } diff --git a/daemon/powerdevilpolicyagent.cpp b/daemon/powerdevilpolicyagent.cpp --- a/daemon/powerdevilpolicyagent.cpp +++ b/daemon/powerdevilpolicyagent.cpp @@ -654,8 +654,8 @@ void PolicyAgent::releaseAllInhibitions() { - QList< uint > allCookies = m_cookieToAppName.keys(); - Q_FOREACH (uint cookie, allCookies) { + const QList< uint > allCookies = m_cookieToAppName.keys(); + for (uint cookie : allCookies) { ReleaseInhibition(cookie); } } diff --git a/daemon/powerdevilprofilegenerator.cpp b/daemon/powerdevilprofilegenerator.cpp --- a/daemon/powerdevilprofilegenerator.cpp +++ b/daemon/powerdevilprofilegenerator.cpp @@ -46,7 +46,8 @@ KSharedConfigPtr profilesConfig = KSharedConfig::openConfig("powermanagementprofilesrc", KConfig::SimpleConfig); // And clear it - Q_FOREACH (const QString &group, profilesConfig->groupList()) { + const QStringList groupList = profilesConfig->groupList(); + for (const QString &group : groupList) { // Don't delete activity-specific settings if (group != "Activities") { profilesConfig->deleteGroup(group); diff --git a/kcmodule/activities/activitypage.cpp b/kcmodule/activities/activitypage.cpp --- a/kcmodule/activities/activitypage.cpp +++ b/kcmodule/activities/activitypage.cpp @@ -111,16 +111,16 @@ void ActivityPage::load() { - Q_FOREACH (ActivityWidget *widget, m_activityWidgets) { + for (ActivityWidget *widget : qAsConst(m_activityWidgets)) { widget->load(); } Q_EMIT changed(false); } void ActivityPage::save() { - Q_FOREACH (ActivityWidget *widget, m_activityWidgets) { + for (ActivityWidget *widget : qAsConst(m_activityWidgets)) { widget->save(); } @@ -185,7 +185,8 @@ } int index = 0; - Q_FOREACH (const QString &activity, m_activityConsumer->activities()) { + const QStringList activities = m_activityConsumer->activities(); + for (const QString &activity : activities) { KActivities::Info *info = new KActivities::Info(activity, this); const QString icon = info->icon(); const QString name = info->name(); diff --git a/kcmodule/activities/activitywidget.cpp b/kcmodule/activities/activitywidget.cpp --- a/kcmodule/activities/activitywidget.cpp +++ b/kcmodule/activities/activitywidget.cpp @@ -109,7 +109,8 @@ m_ui->actLikeComboBox->addItem(QIcon::fromTheme("battery-low"), i18n("PC running on low battery"), "LowBattery"); bool hasBattery = false; - Q_FOREACH (const Solid::Device &device, Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString())) { + const auto batteries = Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString()); + for (const Solid::Device &device : batteries) { const Solid::Battery *b = qobject_cast (device.asDeviceInterface(Solid::DeviceInterface::Battery)); if (b->type() == Solid::Battery::PrimaryBattery || b->type() == Solid::Battery::UpsBattery) { hasBattery = false; @@ -120,7 +121,8 @@ m_ui->actLikeRadio->setVisible(hasBattery); m_ui->actLikeComboBox->setVisible(hasBattery); - Q_FOREACH (const QString &activity, m_activityConsumer->activities()) { + const QStringList activities = m_activityConsumer->activities(); + for (const QString &activity : activities) { if (activity == m_activity) { continue; } diff --git a/kcmodule/common/actioneditwidget.cpp b/kcmodule/common/actioneditwidget.cpp --- a/kcmodule/common/actioneditwidget.cpp +++ b/kcmodule/common/actioneditwidget.cpp @@ -48,9 +48,9 @@ QMap< int, QList > > widgets; // Load all the services - KService::List offers = KServiceTypeTrader::self()->query("PowerDevil/Action", "(Type == 'Service')"); + const KService::List offers = KServiceTypeTrader::self()->query("PowerDevil/Action", "(Type == 'Service')"); - Q_FOREACH (const KService::Ptr &offer, offers) { + for (const KService::Ptr &offer : offers) { // Does it have a runtime requirement? if (offer->property("X-KDE-PowerDevil-Action-HasRuntimeRequirement", QVariant::Bool).toBool()) { qCDebug(POWERDEVIL) << offer->name() << " has a runtime requirement"; diff --git a/kcmodule/global/GeneralPage.cpp b/kcmodule/global/GeneralPage.cpp --- a/kcmodule/global/GeneralPage.cpp +++ b/kcmodule/global/GeneralPage.cpp @@ -93,7 +93,8 @@ bool hasPowerSupplyBattery = false; bool hasPeripheralBattery = false; - Q_FOREACH (const Solid::Device &device, Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString())) { + const auto devices = Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString()); + for (const Solid::Device &device : devices) { const Solid::Battery *b = qobject_cast (device.asDeviceInterface(Solid::DeviceInterface::Battery)); if (b->isPowerSupply()) { hasPowerSupplyBattery = true; diff --git a/kcmodule/profiles/EditPage.cpp b/kcmodule/profiles/EditPage.cpp --- a/kcmodule/profiles/EditPage.cpp +++ b/kcmodule/profiles/EditPage.cpp @@ -115,7 +115,8 @@ connect(watcher, SIGNAL(serviceUnregistered(QString)), this, SLOT(onServiceUnregistered(QString))); bool hasBattery = false; - Q_FOREACH(const Solid::Device &device, Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString())) { + const auto batteries = Solid::Device::listFromType(Solid::DeviceInterface::Battery, QString()); + for(const Solid::Device &device : batteries) { const Solid::Battery *b = qobject_cast (device.asDeviceInterface(Solid::DeviceInterface::Battery)); if (b->isPowerSupply() && (b->type() == Solid::Battery::PrimaryBattery || b->type() == Solid::Battery::UpsBattery)) { hasBattery = true;