From: Ivailo Monev Date: Thu, 12 Dec 2019 23:26:29 +0000 (+0000) Subject: RectInRegion() function cleanup X-Git-Tag: 4.12.0~4776 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=d22129d4790b5239ce9c7f88a34df86af9b44f35;p=kde%2FKatie.git RectInRegion() function cleanup Signed-off-by: Ivailo Monev --- diff --git a/src/gui/painting/qregion.cpp b/src/gui/painting/qregion.cpp index 1296879a3..17cefc09f 100644 --- a/src/gui/painting/qregion.cpp +++ b/src/gui/painting/qregion.cpp @@ -1679,11 +1679,10 @@ QT_END_INCLUDE_NAMESPACE * Remember, x2 and y2 are not in the region */ #define EXTENTCHECK(r1, r2) \ - ((r1)->right() >= (r2)->left() && \ - (r1)->left() <= (r2)->right() && \ - (r1)->bottom() >= (r2)->top() && \ - (r1)->top() <= (r2)->bottom()) - + (r1.right() >= r2.left() && \ + r1.left() <= r2.right() && \ + r1.bottom() >= r2.top() && \ + r1.top() <= r2.bottom()) /* * Check to see if there is enough memory in the present region. @@ -2579,7 +2578,7 @@ static void SubtractRegion(QRegionPrivate *regM, QRegionPrivate *regS, { Q_ASSERT(!isEmptyHelper(regM)); Q_ASSERT(!isEmptyHelper(regS)); - Q_ASSERT(EXTENTCHECK(®M->extents, ®S->extents)); + Q_ASSERT(EXTENTCHECK(regM->extents, regS->extents)); Q_ASSERT(!regS->contains(*regM)); Q_ASSERT(!EqualRegion(regM, regS)); @@ -2598,7 +2597,7 @@ static void SubtractRegion(QRegionPrivate *regM, QRegionPrivate *regS, static void XorRegion(QRegionPrivate *sra, QRegionPrivate *srb, QRegionPrivate &dest) { Q_ASSERT(!isEmptyHelper(sra) && !isEmptyHelper(srb)); - Q_ASSERT(EXTENTCHECK(&sra->extents, &srb->extents)); + Q_ASSERT(EXTENTCHECK(sra->extents, srb->extents)); Q_ASSERT(!EqualRegion(sra, srb)); QRegionPrivate tra, trb; @@ -2672,28 +2671,24 @@ static bool PointInRegion(QRegionPrivate *pRegion, int x, int y) static bool RectInRegion(QRegionPrivate *region, int rx, int ry, uint rwidth, uint rheight) { - const QRect *pbox; - const QRect *pboxEnd; QRect rect(rx, ry, rwidth, rheight); - QRect *prect = ▭ - int partIn, partOut; - if (!region || region->numRects == 0 || !EXTENTCHECK(®ion->extents, prect)) + if (!region || region->numRects == 0 || !EXTENTCHECK(region->extents, rect)) return RectangleOut; - partOut = false; - partIn = false; + bool partOut = false; + bool partIn = false; - /* can stop when both partOut and partIn are true, or we reach prect->y2 */ - pbox = (region->numRects == 1) ? ®ion->extents : region->rects.constData(); - pboxEnd = pbox + region->numRects; + /* can stop when both partOut and partIn are true, or we reach rect->y2 */ + const QRect *pbox = (region->numRects == 1) ? ®ion->extents : region->rects.constData(); + const QRect *pboxEnd = pbox + region->numRects; for (; pbox < pboxEnd; ++pbox) { if (pbox->bottom() < ry) continue; if (pbox->top() > ry) { partOut = true; - if (partIn || pbox->top() > prect->bottom()) + if (partIn || pbox->top() > rect.bottom()) break; ry = pbox->top(); } @@ -2707,17 +2702,17 @@ static bool RectInRegion(QRegionPrivate *region, int rx, int ry, uint rwidth, ui break; } - if (pbox->left() <= prect->right()) { + if (pbox->left() <= rect.right()) { partIn = true; /* definitely overlap */ if (partOut) break; } - if (pbox->right() >= prect->right()) { + if (pbox->right() >= rect.right()) { ry = pbox->bottom() + 1; /* finished with this band */ - if (ry > prect->bottom()) + if (ry > rect.bottom()) break; - rx = prect->left(); /* reset x out to left again */ + rx = rect.left(); /* reset x out to left again */ } else { /* * Because boxes in a band are maximal width, if the first box @@ -4055,7 +4050,7 @@ QRegion& QRegion::operator+=(const QRect &r) QRegion QRegion::intersect(const QRegion &r) const { if (isEmptyHelper(d->qt_rgn) || isEmptyHelper(r.d->qt_rgn) - || !EXTENTCHECK(&d->qt_rgn->extents, &r.d->qt_rgn->extents)) + || !EXTENTCHECK(d->qt_rgn->extents, r.d->qt_rgn->extents)) return QRegion(); /* this is fully contained in r */ @@ -4100,7 +4095,7 @@ QRegion QRegion::intersect(const QRegion &r) const QRegion QRegion::intersect(const QRect &r) const { if (isEmptyHelper(d->qt_rgn) || r.isEmpty() - || !EXTENTCHECK(&d->qt_rgn->extents, &r)) + || !EXTENTCHECK(d->qt_rgn->extents, r)) return QRegion(); /* this is fully contained in r */ @@ -4129,7 +4124,7 @@ QRegion QRegion::subtract(const QRegion &r) const return *this; if (r.d->qt_rgn->contains(*d->qt_rgn)) return QRegion(); - if (!EXTENTCHECK(&d->qt_rgn->extents, &r.d->qt_rgn->extents)) + if (!EXTENTCHECK(d->qt_rgn->extents, r.d->qt_rgn->extents)) return *this; if (d == r.d || EqualRegion(d->qt_rgn, r.d->qt_rgn)) return QRegion(); @@ -4154,7 +4149,7 @@ QRegion QRegion::eor(const QRegion &r) const return r; } else if (isEmptyHelper(r.d->qt_rgn)) { return *this; - } else if (!EXTENTCHECK(&d->qt_rgn->extents, &r.d->qt_rgn->extents)) { + } else if (!EXTENTCHECK(d->qt_rgn->extents, r.d->qt_rgn->extents)) { return (*this + r); } else if (d == r.d || EqualRegion(d->qt_rgn, r.d->qt_rgn)) { return QRegion();