manual repaint test: port away from Q_FOREACH
The Q_FOREACH is in a header, so we need to port away from it, otherwise it makes any TU that includes it (in PCH builds: all) incompatible with QT_NO_FOREACH. This is a trivial case of marking the local constructor const, but go a step further and replace the QList with a C array ("never use a dynamically-sized container for statically-sized data"). Both consumers of the container (after s/foreach/for/) can deal with array. Task-number: QTBUG-115839 Change-Id: I142e438dcf2d785bb34022a3fb1ff46b8eaa0edd Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> (cherry picked from commit c0738f9ff00801e58f47603de5742cf330e55c13) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
dc9e677f7f
commit
ed6914e017
@ -28,20 +28,20 @@ public:
|
||||
const int rectSize = 10;
|
||||
QRect rect(pos.x() - rectSize, pos.y() - rectSize, rectSize *2, rectSize * 2);
|
||||
|
||||
QList<QRect> updateRects;
|
||||
updateRects.append(rect.translated(rectSize * 2, rectSize * 2));
|
||||
updateRects.append(rect.translated(rectSize * 2, -rectSize * 2));
|
||||
updateRects.append(rect.translated(-rectSize * 2, rectSize * 2));
|
||||
updateRects.append(rect.translated(-rectSize * 2, -rectSize * 2));
|
||||
|
||||
const QRect updateRects[] = {
|
||||
rect.translated(rectSize * 2, rectSize * 2),
|
||||
rect.translated(rectSize * 2, -rectSize * 2),
|
||||
rect.translated(-rectSize * 2, rectSize * 2),
|
||||
rect.translated(-rectSize * 2, -rectSize * 2),
|
||||
};
|
||||
|
||||
bool useRegion = false;
|
||||
if (useRegion) {
|
||||
QRegion region;
|
||||
region.setRects(updateRects.data(), 4);
|
||||
region.setRects(updateRects, 4);
|
||||
update(region);
|
||||
} else {
|
||||
foreach (QRect rect, updateRects)
|
||||
for (QRect rect : updateRects)
|
||||
update(rect);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user