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.
Pick-to: 6.6 6.5
Task-number: QTBUG-115839
Change-Id: I142e438dcf2d785bb34022a3fb1ff46b8eaa0edd
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
bb10
parent
7f5d2262c1
commit
c0738f9ff0
|
|
@ -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…
Reference in New Issue