53 BpsMargins(qreal aTop, qreal aRight, qreal aBottom, qreal aLeft);
63 inline bool isNull()
const;
68 inline bool isValid()
const;
73 inline qreal top()
const;
78 inline qreal right()
const;
83 inline qreal bottom()
const;
88 inline qreal left()
const;
94 inline void setTop(qreal aValue);
100 inline void setRight(qreal aValue);
106 inline void setBottom(qreal aValue);
112 inline void setLeft(qreal aValue);
117 inline qreal& rtop();
122 inline qreal& rright();
127 inline qreal& rbottom();
132 inline qreal& rleft();
151 inline BpsMargins& operator/=(qreal aDivisor);
163 qreal mTop, mRight, mBottom, mLeft;
169 Q_DECLARE_TYPEINFO(
BpsMargins, Q_MOVABLE_TYPE);
206 return qIsNull(mTop) && qIsNull(mRight) && qIsNull(mBottom) && qIsNull(mLeft);
211 return mTop>=0.0 && mRight>=0.0 && mBottom>=0.0 && mLeft>=0.0;
245 Q_ASSERT(!qIsNull(aDivisor));
267 qFuzzyCompare(aFirst.mTop, aSecond.mTop) &&
268 qFuzzyCompare(aFirst.mRight, aSecond.mRight) &&
269 qFuzzyCompare(aFirst.mBottom, aSecond.mBottom) &&
270 qFuzzyCompare(aFirst.mLeft, aSecond.mLeft);
282 !qFuzzyCompare(aFirst.mTop, aSecond.mTop) ||
283 !qFuzzyCompare(aFirst.mRight, aSecond.mRight) ||
284 !qFuzzyCompare(aFirst.mBottom, aSecond.mBottom) ||
285 !qFuzzyCompare(aFirst.mLeft, aSecond.mLeft);
298 aMargins.mTop * aFactor,
299 aMargins.mRight * aFactor,
300 aMargins.mBottom * aFactor,
301 aMargins.mLeft * aFactor
315 aMargins.mTop * aFactor,
316 aMargins.mRight * aFactor,
317 aMargins.mBottom * aFactor,
318 aMargins.mLeft * aFactor
330 Q_ASSERT(!qIsNull(aDivisor));
333 aMargins.mTop / aDivisor,
334 aMargins.mRight / aDivisor,
335 aMargins.mBottom / aDivisor,
336 aMargins.mLeft / aDivisor
Public include file for BPS CORE library macros.
#define BPSCORE_EXPORT
Declare class to be an import from the shared library.
Definition: bpscore_global.h:22
BPSCORE_EXPORT QDataStream & operator<<(QDataStream &aStream, const BpsDecimal &aDecimal)
Write the binary code of the decimal value to a data stream.
BPSCORE_EXPORT QDataStream & operator>>(QDataStream &aStream, BpsDecimal &aDecimal)
Read the binary code of the decimal value from a data stream.
This class is used to store margins top, right, bottom and left.
Definition: bpsmargins.h:15
bool isValid() const
Definition: bpsmargins.h:209
BpsMargins()
The default constructor creates an invalid margins object (all values = -1.0).
qreal & rtop()
Definition: bpsmargins.h:224
qreal left() const
Definition: bpsmargins.h:217
qreal right() const
Definition: bpsmargins.h:215
void setTop(qreal aValue)
Set the top margin value.
Definition: bpsmargins.h:219
qreal bottom() const
Definition: bpsmargins.h:216
qreal & rright()
Definition: bpsmargins.h:225
BpsMargins & operator*=(qreal aFactor)
Multiply all margin values by a factor.
Definition: bpsmargins.h:234
void setBottom(qreal aValue)
Set the bottom margin value.
Definition: bpsmargins.h:221
BpsMargins(qreal aTop, qreal aRight, qreal aBottom, qreal aLeft)
Convenience constructor where the margin values are provided.
BpsMargins(const BpsMargins &aMargins)
The copy constructor.
qreal & rleft()
Definition: bpsmargins.h:227
BpsMargins & operator/=(qreal aDivisor)
Divide all margin values by a divisor.
Definition: bpsmargins.h:243
bool operator==(const BpsMargins &aFirst, const BpsMargins &aSecond)
Compare two margin objects.
Definition: bpsmargins.h:264
void setLeft(qreal aValue)
Set the left margin value.
Definition: bpsmargins.h:222
BpsMargins(qreal aTopBottom, qreal aLeftRight)
Convenience constructor where the margin values are provided.
void setRight(qreal aValue)
Set the right margin value.
Definition: bpsmargins.h:220
BpsMargins(qreal aValue)
Convenience constructor where the margin values are provided.
const BpsMargins operator*(const BpsMargins &aMargins, qreal aFactor)
Multiply a margin object by a qreal.
Definition: bpsmargins.h:294
qreal & rbottom()
Definition: bpsmargins.h:226
const BpsMargins operator*(qreal aFactor, const BpsMargins &aMargins)
Multiply a qreal with a margin object.
Definition: bpsmargins.h:311
const BpsMargins operator/(const BpsMargins &aMargins, qreal aDivisor)
Divide a margin object by a qreal.
Definition: bpsmargins.h:328
bool operator!=(const BpsMargins &aFirst, const BpsMargins &aSecond)
Compare two margin objects.
Definition: bpsmargins.h:279
qreal top() const
Definition: bpsmargins.h:214
bool isNull() const
Definition: bpsmargins.h:204
QVariant fromValue(const T &value)