24using namespace Qt::StringLiterals;
70 double left()
const {
return mLeft; }
76 double top()
const {
return mTop; }
82 double right()
const {
return mRight; }
88 double bottom()
const {
return mBottom; }
129 inline QgsMargins &operator+=(
double addend );
135 inline QgsMargins &operator-=(
double subtrahend );
141 inline QgsMargins &operator*=(
double factor );
147 inline QgsMargins &operator/=(
double divisor );
153 QString toString()
const;
160 static QgsMargins fromString(
const QString &
string );
164 SIP_PYOBJECT __repr__();
166 const QString str = u
"<QgsMargins: %1 %2 %3 %4>"_s.arg( sipCpp->left() ).arg( sipCpp->top() ).arg( sipCpp->right() ).arg( sipCpp->bottom() );
167 sipRes = PyUnicode_FromString( str.toUtf8().constData() );
179 double mBottom = 0.0;
270 return *
this = *
this + margins;
275 return *
this = *
this - margins;
291 mRight -= subtrahend;
292 mBottom -= subtrahend;
298 return *
this = *
this * factor;
303 return *
this = *
this / divisor;
Defines the four margins of a rectangle.
QgsMargins()=default
Constructs a margins object with all margins set to 0.
void setBottom(double bottom)
Sets the bottom margin to bottom.
QgsMargins & operator*=(double factor)
Multiplies each component of this object by factor and returns a reference to it.
double top() const
Returns the top margin.
void setLeft(double left)
Sets the left margin to left.
bool isNull() const
Returns true if all margins are is 0; otherwise returns false.
double right() const
Returns the right margin.
double bottom() const
Returns the bottom margin.
QgsMargins & operator/=(double divisor)
Multiplies each component of this object by factor and returns a reference to it.
QgsMargins(double left, double top, double right, double bottom)
Constructs margins with the given left, top, right, bottom.
void setRight(double right)
Sets the right margin to right.
void setTop(double top)
Sets the top margin to top.
QgsMargins & operator+=(const QgsMargins &margins)
Add each component of margins to the respective component of this object and returns a reference to i...
QgsMargins & operator-=(const QgsMargins &margins)
Subtract each component of margins from the respective component of this object and returns a referen...
double left() const
Returns the left margin.
bool qgsDoubleNear(double a, double b, double epsilon=4 *std::numeric_limits< double >::epsilon())
Compare two doubles (but allow some difference).
Q_DECLARE_TYPEINFO(QgsMargins, Q_MOVABLE_TYPE)
QgsMargins operator*(const QgsMargins &margins, double factor)
Returns a QgsMargins object that is formed by multiplying each component of the given margins by fact...
QgsMargins operator-(const QgsMargins &m1, const QgsMargins &m2)
Returns a QgsMargins object that is formed by subtracting m2 from m1; each component is subtracted se...
QgsMargins operator/(const QgsMargins &margins, double divisor)
Returns a QgsMargins object that is formed by dividing the components of the given margins by the giv...
QgsMargins operator+(const QgsMargins &m1, const QgsMargins &m2)
Returns a QgsMargins object that is the sum of the given margins, m1 and m2; each component is added ...
bool operator!=(const QgsMargins &lhs, const QgsMargins &rhs)
Returns true if lhs and rhs are different; otherwise returns false.
bool operator==(const QgsMargins &lhs, const QgsMargins &rhs)
Returns true if lhs and rhs are equal; otherwise returns false.