diff options
Diffstat (limited to 'src/quick/items/qquickanchors_p_p.h')
-rw-r--r-- | src/quick/items/qquickanchors_p_p.h | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/quick/items/qquickanchors_p_p.h b/src/quick/items/qquickanchors_p_p.h index 3357e134bf..0373b1f824 100644 --- a/src/quick/items/qquickanchors_p_p.h +++ b/src/quick/items/qquickanchors_p_p.h @@ -113,12 +113,12 @@ public: , inDestructor(false) , baselineAnchorLine(QQuickAnchors::InvalidAnchor) , centerAligned(true) + , usedAnchors(QQuickAnchors::InvalidAnchor) + , componentComplete(true) , updatingFill(0) , updatingCenterIn(0) , updatingHorizontalAnchor(0) , updatingVerticalAnchor(0) - , componentComplete(true) - , usedAnchors(QQuickAnchors::InvalidAnchor) { } @@ -198,13 +198,16 @@ public: uint inDestructor : 1; QQuickAnchors::Anchor baselineAnchorLine : 7; uint centerAligned : 1; - uint updatingFill : 2; - uint updatingCenterIn : 2; - uint updatingHorizontalAnchor : 2; - uint updatingVerticalAnchor : 2; - - uint componentComplete : 1; uint usedAnchors : 7; // QQuickAnchors::Anchors + uint componentComplete : 1; + + // Instead of using a mostly empty bit field, we can stretch the following fields up to be full + // bytes. The advantage is that incrementing/decrementing does not need any combining ands/ors. + qint8 updatingFill; + qint8 updatingCenterIn; + qint8 updatingHorizontalAnchor; + qint8 updatingVerticalAnchor; + static inline QQuickAnchorsPrivate *get(QQuickAnchors *o) { return static_cast<QQuickAnchorsPrivate *>(QObjectPrivate::get(o)); |