diff options
author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2020-04-03 12:25:46 +0200 |
---|---|---|
committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2020-04-08 21:58:41 +0200 |
commit | e349f787d595aa343ca86af94159b6730d55b8d5 (patch) | |
tree | 276c688e411ea5ece26f68450eb074afb8d6639d /src/widgets/graphicsview/qgraphicsitem.cpp | |
parent | 6dab2577bfa57e242e9568047c976f5e509c03f4 (diff) |
QGraphicsView: consistently use ranged for and iterators
- replace random access with ranged for
- replace foreach with ranged for
- add qAsConst where possible
- iterate directly over QMap, rather than the keys (address FIXME
comment)
- add some const to ensure that code has no side effects on
containers or indices used in different places
Change-Id: I6199fd6edd5e4426c6c7fee0ff64ec9421a64cd5
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/widgets/graphicsview/qgraphicsitem.cpp')
-rw-r--r-- | src/widgets/graphicsview/qgraphicsitem.cpp | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/widgets/graphicsview/qgraphicsitem.cpp b/src/widgets/graphicsview/qgraphicsitem.cpp index 09c49a239f..ddb4e06fe2 100644 --- a/src/widgets/graphicsview/qgraphicsitem.cpp +++ b/src/widgets/graphicsview/qgraphicsitem.cpp @@ -1075,7 +1075,7 @@ void QGraphicsItemPrivate::setIsMemberOfGroup(bool enabled) Q_Q(QGraphicsItem); isMemberOfGroup = enabled; if (!qgraphicsitem_cast<QGraphicsItemGroup *>(q)) { - foreach (QGraphicsItem *child, children) + for (QGraphicsItem *child : qAsConst(children)) child->d_func()->setIsMemberOfGroup(enabled); } } @@ -1591,9 +1591,8 @@ QGraphicsItem::~QGraphicsItem() if (d_ptr->isObject && !d_ptr->gestureContext.isEmpty()) { QGraphicsObject *o = static_cast<QGraphicsObject *>(this); if (QGestureManager *manager = QGestureManager::instance(QGestureManager::DontForceCreation)) { - const auto types = d_ptr->gestureContext.keys(); // FIXME: iterate over the map directly? - for (Qt::GestureType type : types) - manager->cleanupCachedGestures(o, type); + for (auto it = d_ptr->gestureContext.constBegin(); it != d_ptr->gestureContext.constEnd(); ++it) + manager->cleanupCachedGestures(o, it.key()); } } #endif @@ -2511,7 +2510,7 @@ void QGraphicsItemPrivate::setVisibleHelper(bool newVisible, bool explicitly, const bool updateChildren = update && !((flags & QGraphicsItem::ItemClipsChildrenToShape || flags & QGraphicsItem::ItemContainsChildrenInShape) && !(flags & QGraphicsItem::ItemHasNoContents)); - foreach (QGraphicsItem *child, children) { + for (QGraphicsItem *child : qAsConst(children)) { if (!newVisible || !child->d_ptr->explicitlyHidden) child->d_ptr->setVisibleHelper(newVisible, false, updateChildren, hiddenByPanel); } @@ -2701,7 +2700,7 @@ void QGraphicsItemPrivate::setEnabledHelper(bool newEnabled, bool explicitly, bo if (update) q_ptr->update(); - foreach (QGraphicsItem *child, children) { + for (QGraphicsItem *child : qAsConst(children)) { if (!newEnabled || !child->d_ptr->explicitlyDisabled) child->d_ptr->setEnabledHelper(newEnabled, /* explicitly = */ false); } @@ -3981,7 +3980,7 @@ void QGraphicsItem::ensureVisible(const QRectF &rect, int xmargin, int ymargin) sceneRect = sceneTransform().mapRect(rect); else sceneRect = sceneBoundingRect(); - foreach (QGraphicsView *view, d_ptr->scene->d_func()->views) + for (QGraphicsView *view : qAsConst(d_ptr->scene->d_func()->views)) view->ensureVisible(sceneRect, xmargin, ymargin); } } @@ -4765,7 +4764,7 @@ inline void QGraphicsItemPrivate::sendScenePosChange() if (flags & QGraphicsItem::ItemSendsScenePositionChanges) q->itemChange(QGraphicsItem::ItemScenePositionHasChanged, q->scenePos()); if (scenePosDescendants) { - foreach (QGraphicsItem *item, scene->d_func()->scenePosItems) { + for (QGraphicsItem *item : qAsConst(scene->d_func()->scenePosItems)) { if (q->isAncestorOf(item)) item->itemChange(QGraphicsItem::ItemScenePositionHasChanged, item->scenePos()); } @@ -7330,7 +7329,7 @@ void QGraphicsItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) // temporarily removing this item from the selection list. if (d_ptr->selected) { scene->d_func()->selectedItems.remove(this); - foreach (QGraphicsItem *item, scene->d_func()->selectedItems) { + for (QGraphicsItem *item : qAsConst(scene->d_func()->selectedItems)) { if (item->isSelected()) { selectionChanged = true; break; |