diff options
Diffstat (limited to 'src/corelib/tools/qrect.h')
-rw-r--r-- | src/corelib/tools/qrect.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/corelib/tools/qrect.h b/src/corelib/tools/qrect.h index cfe92e81e6..5deb220b2d 100644 --- a/src/corelib/tools/qrect.h +++ b/src/corelib/tools/qrect.h @@ -146,6 +146,8 @@ public: constexpr inline QRect &operator+=(const QMargins &margins) noexcept; constexpr inline QRect &operator-=(const QMargins &margins) noexcept; + Q_REQUIRED_RESULT static constexpr inline QRect span(const QPoint &p1, const QPoint &p2) noexcept; + friend constexpr inline bool operator==(const QRect &, const QRect &) noexcept; friend constexpr inline bool operator!=(const QRect &, const QRect &) noexcept; friend constexpr inline size_t qHash(const QRect &, size_t) noexcept; @@ -505,6 +507,12 @@ constexpr inline QRect &QRect::operator-=(const QMargins &margins) noexcept return *this; } +constexpr QRect QRect::span(const QPoint &p1, const QPoint &p2) noexcept +{ + return QRect(QPoint(qMin(p1.x(), p2.x()), qMin(p1.y(), p2.y())), + QPoint(qMax(p1.x(), p2.x()), qMax(p1.y(), p2.y()))); +} + #ifndef QT_NO_DEBUG_STREAM Q_CORE_EXPORT QDebug operator<<(QDebug, const QRect &); #endif |