43 #include <QtCore/qnamespace.h>
57 constexpr
bool isNull()
const noexcept;
59 constexpr
int left()
const noexcept;
60 constexpr
int top()
const noexcept;
61 constexpr
int right()
const noexcept;
62 constexpr
int bottom()
const noexcept;
87 m1.m_left == m2.m_left &&
88 m1.m_top == m2.m_top &&
89 m1.m_right == m2.m_right &&
90 m1.m_bottom == m2.m_bottom;
98 template <std::size_t
I,
100 std::enable_if_t<(I < 4), bool> =
true,
101 std::enable_if_t<std::is_same_v<std::decay_t<M>,
QMargins>,
bool> =
true>
102 friend constexpr decltype(
auto) get(
M &&
m) noexcept
104 if constexpr (
I == 0)
120 #ifndef QT_NO_DATASTREAM
132 : m_left(aleft), m_top(atop), m_right(aright), m_bottom(abottom) {}
135 {
return m_left==0 && m_top==0 && m_right==0 && m_bottom==0; }
157 { m_right = aright; }
160 { m_bottom = abottom; }
164 return QMargins(m1.left() + m2.left(), m1.top() + m2.top(),
165 m1.right() + m2.right(), m1.bottom() + m2.bottom());
170 return QMargins(m1.left() - m2.left(), m1.top() - m2.top(),
171 m1.right() - m2.right(), m1.bottom() - m2.bottom());
177 lhs.right() +
rhs, lhs.bottom() +
rhs);
183 rhs.right() + lhs,
rhs.bottom() + lhs);
189 lhs.right() -
rhs, lhs.bottom() -
rhs);
230 return QMargins(qMax(m1.left(), m2.left()), qMax(m1.top(), m2.top()),
231 qMax(m1.right(), m2.right()), qMax(m1.bottom(), m2.bottom()));
236 return *
this = *
this + margins;
241 return *
this = *
this - margins;
264 return *
this = *
this *
factor;
269 return *
this = *
this /
divisor;
274 return *
this = *
this *
factor;
279 return *
this = *
this /
divisor;
292 #ifndef QT_NO_DEBUG_STREAM
307 constexpr
bool isNull()
const noexcept;
310 constexpr
qreal top()
const noexcept;
326 constexpr
inline QMargins toMargins()
const noexcept;
344 return !(lhs ==
rhs);
347 template <std::size_t
I,
349 std::enable_if_t<(I < 4), bool> =
true,
350 std::enable_if_t<std::is_same_v<std::decay_t<M>,
QMarginsF>,
bool> =
true>
351 friend constexpr decltype(
auto) get(
M &&
m) noexcept
353 if constexpr (
I == 0)
370 #ifndef QT_NO_DATASTREAM
380 : m_left(0), m_top(0), m_right(0), m_bottom(0) {}
383 : m_left(aleft), m_top(atop), m_right(aright), m_bottom(abottom) {}
386 : m_left(margins.
left()), m_top(margins.
top()), m_right(margins.
right()), m_bottom(margins.
bottom()) {}
411 { m_right = aright; }
414 { m_bottom = abottom; }
419 lhs.right() +
rhs.right(), lhs.bottom() +
rhs.bottom());
425 lhs.right() -
rhs.right(), lhs.bottom() -
rhs.bottom());
431 lhs.right() +
rhs, lhs.bottom() +
rhs);
437 rhs.right() + lhs,
rhs.bottom() + lhs);
443 lhs.right() -
rhs, lhs.bottom() -
rhs);
449 lhs.right() *
rhs, lhs.bottom() *
rhs);
455 rhs.right() * lhs,
rhs.bottom() * lhs);
467 return QMarginsF(qMax(m1.left(), m2.left()), qMax(m1.top(), m2.top()),
468 qMax(m1.right(), m2.right()), qMax(m1.bottom(), m2.bottom()));
473 return *
this = *
this + margins;
478 return *
this = *
this - margins;
492 m_left -= subtrahend;
494 m_right -= subtrahend;
495 m_bottom -= subtrahend;
501 return *
this = *
this *
factor;
506 return *
this = *
this /
divisor;
524 #ifndef QT_NO_DEBUG_STREAM
The QDataStream class provides serialization of binary data to a QIODevice.
The QDebug class provides an output stream for debugging information.
The QMarginsF class defines the four margins of a rectangle.
constexpr QMarginsF & operator-=(const QMarginsF &margins) noexcept
constexpr qreal right() const noexcept
constexpr qreal left() const noexcept
constexpr QMarginsF() noexcept
constexpr qreal top() const noexcept
constexpr void setLeft(qreal aleft) noexcept
constexpr QMarginsF & operator+=(const QMarginsF &margins) noexcept
constexpr QMarginsF & operator/=(qreal divisor)
constexpr friend bool operator!=(const QMarginsF &lhs, const QMarginsF &rhs) noexcept
constexpr bool isNull() const noexcept
constexpr QMargins toMargins() const noexcept
constexpr QMarginsF & operator*=(qreal factor) noexcept
constexpr void setRight(qreal aright) noexcept
constexpr void setBottom(qreal abottom) noexcept
constexpr void setTop(qreal atop) noexcept
constexpr qreal bottom() const noexcept
constexpr friend bool operator==(const QMarginsF &lhs, const QMarginsF &rhs) noexcept
The QMargins class defines the four margins of a rectangle.
constexpr void setTop(int top) noexcept
QDataStream & operator>>(QDataStream &stream, QMargins &m)
constexpr int bottom() const noexcept
QDataStream & operator<<(QDataStream &stream, const QMargins &m)
constexpr bool isNull() const noexcept
constexpr void setBottom(int bottom) noexcept
QMargins operator*(const QMargins &margins, int factor)
constexpr friend bool operator==(const QMargins &m1, const QMargins &m2) noexcept
constexpr void setLeft(int left) noexcept
constexpr QMargins & operator-=(const QMargins &margins) noexcept
constexpr int left() const noexcept
QMargins operator|(const QMargins &m1, const QMargins &m2)
constexpr QMargins & operator*=(int) noexcept
constexpr QMargins & operator/=(int)
constexpr QMargins & operator+=(const QMargins &margins) noexcept
QMargins operator/(const QMargins &margins, int divisor)
constexpr QMargins() noexcept
constexpr friend bool operator!=(const QMargins &m1, const QMargins &m2) noexcept
constexpr int right() const noexcept
constexpr int top() const noexcept
QMargins operator-(const QMargins &m1, const QMargins &m2)
QMargins operator+(const QMargins &m1, const QMargins &m2)
constexpr void setRight(int right) noexcept
QT_PREPEND_NAMESPACE(qreal) type
QT_PREPEND_NAMESPACE(qreal) type
QT_PREPEND_NAMESPACE(qreal) type
QT_PREPEND_NAMESPACE(qreal) type
auto it unsigned count const
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro vuzp8 reg2 vuzp d d ®2 endm macro vzip8 reg2 vzip d d ®2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld[DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld if[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp skip1(dst_w_bpp<=(lowbit *8)) &&((lowbit *8)<(pixblock_size *dst_w_bpp)) .if lowbit< 16 tst DST_R
[3]
bool qFuzzyCompare(qfloat16 p1, qfloat16 p2) noexcept
bool qFuzzyIsNull(qfloat16 f) noexcept
int qRound(qfloat16 d) noexcept
QT_END_INCLUDE_NAMESPACE typedef double qreal
Q_DECLARE_TYPEINFO(QMargins, Q_RELOCATABLE_TYPE)
GLdouble GLdouble GLdouble GLdouble top
int QT_PREPEND_NAMESPACE(QSharedMemoryPrivate)