equal
deleted
inserted
replaced
702 return true; |
702 return true; |
703 return false; |
703 return false; |
704 } |
704 } |
705 |
705 |
706 /*! |
706 /*! |
|
707 \fn bool QRegion::intersects(const QRect &rect) const |
707 \since 4.2 |
708 \since 4.2 |
708 |
709 |
709 Returns true if this region intersects with \a rect, otherwise |
710 Returns true if this region intersects with \a rect, otherwise |
710 returns false. |
711 returns false. |
711 */ |
712 */ |
712 bool QRegion::intersects(const QRect &rect) const |
713 |
713 { |
|
714 if (isEmpty() || rect.isNull()) |
|
715 return false; |
|
716 |
|
717 const QRect r = rect.normalized(); |
|
718 if (!rect_intersects(boundingRect(), r)) |
|
719 return false; |
|
720 if (rectCount() == 1) |
|
721 return true; |
|
722 |
|
723 const QVector<QRect> myRects = rects(); |
|
724 for (QVector<QRect>::const_iterator it = myRects.constBegin(); it < myRects.constEnd(); ++it) |
|
725 if (rect_intersects(r, *it)) |
|
726 return true; |
|
727 return false; |
|
728 } |
|
729 |
714 |
730 #if !defined (Q_OS_UNIX) && !defined (Q_WS_WIN) |
715 #if !defined (Q_OS_UNIX) && !defined (Q_WS_WIN) |
731 /*! |
716 /*! |
732 \overload |
717 \overload |
733 \since 4.4 |
718 \since 4.4 |
4347 return true; |
4332 return true; |
4348 else |
4333 else |
4349 return EqualRegion(d->qt_rgn, r.d->qt_rgn); |
4334 return EqualRegion(d->qt_rgn, r.d->qt_rgn); |
4350 } |
4335 } |
4351 |
4336 |
|
4337 bool QRegion::intersects(const QRect &rect) const |
|
4338 { |
|
4339 if (isEmptyHelper(d->qt_rgn) || rect.isNull()) |
|
4340 return false; |
|
4341 |
|
4342 const QRect r = rect.normalized(); |
|
4343 if (!rect_intersects(d->qt_rgn->extents, r)) |
|
4344 return false; |
|
4345 if (d->qt_rgn->numRects == 1) |
|
4346 return true; |
|
4347 |
|
4348 const QVector<QRect> myRects = rects(); |
|
4349 for (QVector<QRect>::const_iterator it = myRects.constBegin(); it < myRects.constEnd(); ++it) |
|
4350 if (rect_intersects(r, *it)) |
|
4351 return true; |
|
4352 return false; |
|
4353 } |
|
4354 |
|
4355 |
4352 #endif |
4356 #endif |
4353 QT_END_NAMESPACE |
4357 QT_END_NAMESPACE |