diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2019-06-18 22:10:47 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2019-06-18 22:10:49 +0200 |
commit | a628d05ced75d0666bd462f94807d3d600ca25d2 (patch) | |
tree | bf23328804affd0928fe0440ce563c83ccfaed85 | |
parent | b91c44ee859b8e1e09b8c20acabbed7a523b076b (diff) |
Eradicate Java-style iterators and mark the module free of them
Java-style iterators are scheduled for deprecation, or at the very
least banned from use in Qt code.
Change-Id: If50aade7e5a57f247ec8c0e77103dfd2d2160c3c
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
-rw-r--r-- | .qmake.conf | 2 | ||||
-rw-r--r-- | examples/bluetooth/btchat/remoteselector.cpp | 10 | ||||
-rw-r--r-- | examples/bluetooth/btfiletransfer/remoteselector.cpp | 25 | ||||
-rw-r--r-- | examples/bluetooth/btfiletransfer/remoteselector.h | 2 | ||||
-rw-r--r-- | src/nfc/qnearfieldtagtype2.cpp | 7 | ||||
-rw-r--r-- | src/nfc/qnearfieldtarget.cpp | 9 | ||||
-rw-r--r-- | src/nfc/qqmlndefrecord.cpp | 5 |
7 files changed, 25 insertions, 35 deletions
diff --git a/.qmake.conf b/.qmake.conf index db2e0b65..1581612e 100644 --- a/.qmake.conf +++ b/.qmake.conf @@ -1,3 +1,5 @@ load(qt_build_config) +DEFINES += QT_NO_JAVA_STYLE_ITERATORS + MODULE_VERSION = 5.14.0 diff --git a/examples/bluetooth/btchat/remoteselector.cpp b/examples/bluetooth/btchat/remoteselector.cpp index 2bd1efcc..ec5d207c 100644 --- a/examples/bluetooth/btchat/remoteselector.cpp +++ b/examples/bluetooth/btchat/remoteselector.cpp @@ -114,17 +114,15 @@ void RemoteSelector::serviceDiscovered(const QBluetoothServiceInfo &serviceInfo) << serviceInfo.protocolServiceMultiplexer(); qDebug() << "\tRFCOMM server channel:" << serviceInfo.serverChannel(); #endif - QMapIterator<QListWidgetItem *, QBluetoothServiceInfo> i(m_discoveredServices); - while (i.hasNext()){ - i.next(); - if (serviceInfo.device().address() == i.value().device().address()){ + const QBluetoothAddress address = serviceInfo.device().address(); + for (const QBluetoothServiceInfo &info : qAsConst(m_discoveredServices)) { + if (info.device().address() == address) return; - } } QString remoteName; if (serviceInfo.device().name().isEmpty()) - remoteName = serviceInfo.device().address().toString(); + remoteName = address.toString(); else remoteName = serviceInfo.device().name(); diff --git a/examples/bluetooth/btfiletransfer/remoteselector.cpp b/examples/bluetooth/btfiletransfer/remoteselector.cpp index 766bd028..b3c60cb3 100644 --- a/examples/bluetooth/btfiletransfer/remoteselector.cpp +++ b/examples/bluetooth/btfiletransfer/remoteselector.cpp @@ -171,18 +171,17 @@ void RemoteSelector::serviceDiscovered(const QBluetoothServiceInfo &serviceInfo) // new QListWidgetItem(QString::fromLatin1("%1\t%2\t%3").arg(serviceInfo.device().address().toString(), // serviceInfo.device().name(), serviceInfo.serviceName())); - QMutableMapIterator<int, QBluetoothServiceInfo> i(m_discoveredServices); - while (i.hasNext()){ - i.next(); - if (serviceInfo.device().address() == i.value().device().address()){ - i.setValue(serviceInfo); + const QBluetoothAddress address = serviceInfo.device().address(); + for (QBluetoothServiceInfo &info : m_discoveredServices) { + if (info.device().address() == address){ + info = serviceInfo; return; } } int row = ui->remoteDevices->rowCount(); ui->remoteDevices->insertRow(row); - QTableWidgetItem *item = new QTableWidgetItem(serviceInfo.device().address().toString()); + QTableWidgetItem *item = new QTableWidgetItem(address.toString()); ui->remoteDevices->setItem(row, 0, item); item = new QTableWidgetItem(serviceInfo.device().name()); ui->remoteDevices->setItem(row, 1, item); @@ -190,9 +189,7 @@ void RemoteSelector::serviceDiscovered(const QBluetoothServiceInfo &serviceInfo) ui->remoteDevices->setItem(row, 2, item); - QBluetoothLocalDevice::Pairing p; - - p = m_localDevice->pairingStatus(serviceInfo.device().address()); + QBluetoothLocalDevice::Pairing p = m_localDevice->pairingStatus(address); ui->remoteDevices->blockSignals(true); @@ -275,13 +272,11 @@ void RemoteSelector::on_stopButton_clicked() m_discoveryAgent->stop(); } -QString RemoteSelector::addressToName(const QBluetoothAddress &address) +QString RemoteSelector::addressToName(const QBluetoothAddress &address) const { - QMapIterator<int, QBluetoothServiceInfo> i(m_discoveredServices); - while (i.hasNext()){ - i.next(); - if (i.value().device().address() == address) - return i.value().device().name(); + for (const QBluetoothServiceInfo &info : m_discoveredServices) { + if (info.device().address() == address) + return info.device().name(); } return address.toString(); } diff --git a/examples/bluetooth/btfiletransfer/remoteselector.h b/examples/bluetooth/btfiletransfer/remoteselector.h index 670eb252..8266c8c4 100644 --- a/examples/bluetooth/btfiletransfer/remoteselector.h +++ b/examples/bluetooth/btfiletransfer/remoteselector.h @@ -95,7 +95,7 @@ private: QPointer<pinDisplay> m_pindisplay; bool m_pairingError; - QString addressToName(const QBluetoothAddress &address); + QString addressToName(const QBluetoothAddress &address) const; public Q_SLOTS: void startDiscovery(); diff --git a/src/nfc/qnearfieldtagtype2.cpp b/src/nfc/qnearfieldtagtype2.cpp index 24ff8280..492dc5e3 100644 --- a/src/nfc/qnearfieldtagtype2.cpp +++ b/src/nfc/qnearfieldtagtype2.cpp @@ -307,9 +307,7 @@ void QNearFieldTagType2::timerEvent(QTimerEvent *event) killTimer(event->timerId()); - QMutableMapIterator<QNearFieldTarget::RequestId, SectorSelectState> i(d->m_pendingSectorSelectCommands); - while (i.hasNext()) { - i.next(); + for (auto i = d->m_pendingSectorSelectCommands.begin(), end = d->m_pendingSectorSelectCommands.end(); i != end; ++i) { SectorSelectState &state = i.value(); @@ -318,8 +316,7 @@ void QNearFieldTagType2::timerEvent(QTimerEvent *event) setResponseForRequest(i.key(), true); - i.remove(); - + d->m_pendingSectorSelectCommands.erase(i); break; } } diff --git a/src/nfc/qnearfieldtarget.cpp b/src/nfc/qnearfieldtarget.cpp index de32223c..7d83db78 100644 --- a/src/nfc/qnearfieldtarget.cpp +++ b/src/nfc/qnearfieldtarget.cpp @@ -497,13 +497,12 @@ void QNearFieldTarget::setResponseForRequest(const QNearFieldTarget::RequestId & { Q_D(QNearFieldTarget); - QMutableMapIterator<RequestId, QVariant> i(d->m_decodedResponses); - while (i.hasNext()) { - i.next(); - + for (auto i = d->m_decodedResponses.begin(), end = d->m_decodedResponses.end(); i != end; /* erasing */) { // no more external references if (i.key().refCount() == 1) - i.remove(); + i = d->m_decodedResponses.erase(i); + else + ++i; } d->m_decodedResponses.insert(id, response); diff --git a/src/nfc/qqmlndefrecord.cpp b/src/nfc/qqmlndefrecord.cpp index bc3667fe..5a96bec8 100644 --- a/src/nfc/qqmlndefrecord.cpp +++ b/src/nfc/qqmlndefrecord.cpp @@ -215,10 +215,9 @@ QQmlNdefRecord *qNewDeclarativeNdefRecordForNdefRecord(const QNdefRecord &record { const QString urn = urnForRecordType(record.typeNameFormat(), record.type()); - QMapIterator<QString, const QMetaObject *> i(*registeredNdefRecordTypes()); - while (i.hasNext()) { - i.next(); + const auto *rt = registeredNdefRecordTypes(); + for (auto i = rt->cbegin(), end = rt->cend(); i != end; ++i) { QRegularExpression rx(QRegularExpression::anchoredPattern(i.key())); if (!rx.match(urn).hasMatch()) continue; |