Reduce number of QRegion::rects() calls in QBlitterPaintEngine::fillRect()
And remove unused variable. Change-Id: Ife98bbe5b02e1d18639c100ed3e58985a2ea9218 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>bb10
parent
5be5e8ff3a
commit
b81a52dc38
|
|
@ -602,12 +602,11 @@ void QBlitterPaintEngine::fillRect(const QRectF &rect, const QBrush &brush)
|
|||
d->pmData->blittable()->drawPixmap(targetRect, pm, srcRect);
|
||||
}
|
||||
} else if (clipData->hasRegionClip) {
|
||||
QVector<QRect> clipRects = clipData->clipRegion.rects();
|
||||
QRect unclippedTargetRect(x, y, blitWidth, blitHeight);
|
||||
QRegion intersectedRects = clipData->clipRegion.intersected(unclippedTargetRect);
|
||||
|
||||
for (int i = 0; i < intersectedRects.rects().size(); ++i) {
|
||||
QRect targetRect = intersectedRects.rects().at(i);
|
||||
const QVector<QRect> intersectedRects = clipData->clipRegion.intersected(unclippedTargetRect).rects();
|
||||
const int intersectedSize = intersectedRects.size();
|
||||
for (int i = 0; i < intersectedSize; ++i) {
|
||||
const QRect &targetRect = intersectedRects.at(i);
|
||||
if (!targetRect.isValid() || targetRect.isEmpty())
|
||||
continue;
|
||||
int tmpSrcX = srcX + (targetRect.x() - x);
|
||||
|
|
|
|||
Loading…
Reference in New Issue