summaryrefslogtreecommitdiffstats
path: root/src/corelib
diff options
context:
space:
mode:
authorJohn Layt <jlayt@kde.org>2014-02-14 15:23:47 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-21 20:33:10 +0100
commit9c6447e0815a18102e5ebe236c52ba4343dbb8fa (patch)
tree2e27887362be73a6b252ebb93bf7e333eaa5d823 /src/corelib
parentdb352e1e97a0eb38cb5756f264b3162efeb86c02 (diff)
QMargins - Add missing operators
Add missing standard operators. [ChangeLog][QtCore][QMargins] Added missing addition and subtraction operators. Change-Id: I6aeed39531a736c12d378a817a9431279da79bc4 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/tools/qmargins.cpp45
-rw-r--r--src/corelib/tools/qmargins.h23
2 files changed, 68 insertions, 0 deletions
diff --git a/src/corelib/tools/qmargins.cpp b/src/corelib/tools/qmargins.cpp
index 06f41a6737..7d8a167a88 100644
--- a/src/corelib/tools/qmargins.cpp
+++ b/src/corelib/tools/qmargins.cpp
@@ -182,6 +182,42 @@ QT_BEGIN_NAMESPACE
*/
/*!
+ \fn const QMargins operator+(const QMargins &lhs, int rhs)
+ \relates QMargins
+
+ Returns a QMargins object that is formed by adding \a rhs to
+ \a lhs.
+
+ \sa QMargins::operator+=(), QMargins::operator-=()
+
+ \since 5.3
+*/
+
+/*!
+ \fn const QMargins operator+(int lhs, const QMargins &rhs)
+ \relates QMargins
+
+ Returns a QMargins object that is formed by adding \a lhs to
+ \a rhs.
+
+ \sa QMargins::operator+=(), QMargins::operator-=()
+
+ \since 5.3
+*/
+
+/*!
+ \fn const QMargins operator-(const QMargins &lhs, int rhs)
+ \relates QMargins
+
+ Returns a QMargins object that is formed by subtracting \a rhs from
+ \a lhs.
+
+ \sa QMargins::operator+=(), QMargins::operator-=()
+
+ \since 5.3
+*/
+
+/*!
\fn const QMargins operator*(const QMargins &margins, int factor)
\relates QMargins
@@ -258,6 +294,15 @@ QT_BEGIN_NAMESPACE
*/
/*!
+ \fn QMargins operator+(const QMargins &margins)
+ \relates QMargins
+
+ Returns a QMargin object that is formed from all components of \a margins.
+
+ \since 5.3
+*/
+
+/*!
\fn QMargins operator-(const QMargins &margins)
\relates QMargins
diff --git a/src/corelib/tools/qmargins.h b/src/corelib/tools/qmargins.h
index 6bffa544c1..55355ac859 100644
--- a/src/corelib/tools/qmargins.h
+++ b/src/corelib/tools/qmargins.h
@@ -161,6 +161,24 @@ Q_DECL_CONSTEXPR inline QMargins operator-(const QMargins &m1, const QMargins &m
m1.right() - m2.right(), m1.bottom() - m2.bottom());
}
+Q_DECL_CONSTEXPR inline QMargins operator+(const QMargins &lhs, int rhs)
+{
+ return QMargins(lhs.left() + rhs, lhs.top() + rhs,
+ lhs.right() + rhs, lhs.bottom() + rhs);
+}
+
+Q_DECL_CONSTEXPR inline QMargins operator+(int lhs, const QMargins &rhs)
+{
+ return QMargins(rhs.left() + lhs, rhs.top() + lhs,
+ rhs.right() + lhs, rhs.bottom() + lhs);
+}
+
+Q_DECL_CONSTEXPR inline QMargins operator-(const QMargins &lhs, int rhs)
+{
+ return QMargins(lhs.left() - rhs, lhs.top() - rhs,
+ lhs.right() - rhs, lhs.bottom() - rhs);
+}
+
Q_DECL_CONSTEXPR inline QMargins operator*(const QMargins &margins, int factor)
{
return QMargins(margins.left() * factor, margins.top() * factor,
@@ -245,6 +263,11 @@ inline QMargins &QMargins::operator/=(qreal divisor)
return *this = *this / divisor;
}
+Q_DECL_CONSTEXPR inline QMargins operator+(const QMargins &margins)
+{
+ return margins;
+}
+
Q_DECL_CONSTEXPR inline QMargins operator-(const QMargins &margins)
{
return QMargins(-margins.left(), -margins.top(), -margins.right(), -margins.bottom());