diff options
author | Mitch Curtis <mitch.curtis@nokia.com> | 2012-07-06 15:12:41 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-12 01:46:20 +0200 |
commit | 623bfe209371b6d35d030a66629b58f0f4f27b0d (patch) | |
tree | f4e710544947c86ad95df98101dce2411570f5f9 /src/corelib | |
parent | 74b0206a714a32102a7ea5dcc6dad580bd4a600c (diff) |
Add unary operator+ to QPoint and QPointF.
As requested by Winfried Schenke:
"QPoint should have an unary operator+ (the unary operator- exists).
Classes with arithmetic operators should provide a complete set of
operators, because some template code relies on it."
Task-number: QTBUG-22913
Change-Id: Ib0c5105975f56c15f00bb48d83c8d911f5a204ac
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/tools/qpoint.cpp | 16 | ||||
-rw-r--r-- | src/corelib/tools/qpoint.h | 10 |
2 files changed, 26 insertions, 0 deletions
diff --git a/src/corelib/tools/qpoint.cpp b/src/corelib/tools/qpoint.cpp index 368ef7d697..785e255db5 100644 --- a/src/corelib/tools/qpoint.cpp +++ b/src/corelib/tools/qpoint.cpp @@ -326,6 +326,14 @@ QT_BEGIN_NAMESPACE */ /*! + \fn const QPoint operator+(const QPoint &point) + \relates QPoint + \since 5.0 + + Returns \a point unmodified. +*/ + +/*! \fn const QPoint operator-(const QPoint &point) \overload \relates QPoint @@ -664,6 +672,14 @@ QDebug operator<<(QDebug d, const QPointF &p) */ /*! + \fn const QPointF operator+(const QPointF &point) + \relates QPointF + \since 5.0 + + Returns \a point unmodified. +*/ + +/*! \fn const QPointF operator-(const QPointF &point) \relates QPointF \overload diff --git a/src/corelib/tools/qpoint.h b/src/corelib/tools/qpoint.h index be9567bc52..dc38ec622a 100644 --- a/src/corelib/tools/qpoint.h +++ b/src/corelib/tools/qpoint.h @@ -86,6 +86,7 @@ public: friend Q_DECL_CONSTEXPR inline const QPoint operator*(double, const QPoint &); friend Q_DECL_CONSTEXPR inline const QPoint operator*(const QPoint &, int); friend Q_DECL_CONSTEXPR inline const QPoint operator*(int, const QPoint &); + friend Q_DECL_CONSTEXPR inline const QPoint operator+(const QPoint &); friend Q_DECL_CONSTEXPR inline const QPoint operator-(const QPoint &); friend Q_DECL_CONSTEXPR inline const QPoint operator/(const QPoint &, qreal); @@ -182,6 +183,9 @@ Q_DECL_CONSTEXPR inline const QPoint operator*(double factor, const QPoint &p) Q_DECL_CONSTEXPR inline const QPoint operator*(int factor, const QPoint &p) { return QPoint(p.xp*factor, p.yp*factor); } +Q_DECL_CONSTEXPR inline const QPoint operator+(const QPoint &p) +{ return p; } + Q_DECL_CONSTEXPR inline const QPoint operator-(const QPoint &p) { return QPoint(-p.xp, -p.yp); } @@ -235,6 +239,7 @@ public: friend Q_DECL_CONSTEXPR inline const QPointF operator-(const QPointF &, const QPointF &); friend Q_DECL_CONSTEXPR inline const QPointF operator*(qreal, const QPointF &); friend Q_DECL_CONSTEXPR inline const QPointF operator*(const QPointF &, qreal); + friend Q_DECL_CONSTEXPR inline const QPointF operator+(const QPointF &); friend Q_DECL_CONSTEXPR inline const QPointF operator-(const QPointF &); friend Q_DECL_CONSTEXPR inline const QPointF operator/(const QPointF &, qreal); @@ -355,6 +360,11 @@ Q_DECL_CONSTEXPR inline const QPointF operator*(qreal c, const QPointF &p) return QPointF(p.xp*c, p.yp*c); } +Q_DECL_CONSTEXPR inline const QPointF operator+(const QPointF &p) +{ + return p; +} + Q_DECL_CONSTEXPR inline const QPointF operator-(const QPointF &p) { return QPointF(-p.xp, -p.yp); |