5#ifndef QQUICKANCHORS_P_P_H
6#define QQUICKANCHORS_P_P_H
21#include <private/qobject_p.h>
29 QML_ADDED_IN_VERSION(2, 0)
32 QQuickAnchorLine(QQuickItem *i, QQuickAnchors::Anchor l) : item(i), anchorLine(l) {}
33 QQuickAnchorLine(QQuickItem *i, uint l)
35 , anchorLine(
static_cast<QQuickAnchors::Anchor>(l))
36 { Q_ASSERT(l < ((QQuickAnchors::BaselineAnchor << 1) - 1)); }
38 QQuickItem *item =
nullptr;
39 QQuickAnchors::Anchor anchorLine = QQuickAnchors::InvalidAnchor;
42inline bool operator==(
const QQuickAnchorLine& a,
const QQuickAnchorLine& b)
44 return a.item == b.item && a.anchorLine == b.anchorLine;
50 Q_DECLARE_PUBLIC(QQuickAnchors)
120 bool calcStretch(QQuickItem *edge1Item, QQuickAnchors::Anchor edge1Line,
121 QQuickItem *edge2Item, QQuickAnchors::Anchor edge2Line,
122 qreal offset1, qreal offset2, QQuickAnchors::Anchor line, qreal &stretch)
const;
182 return static_cast<QQuickAnchorsPrivate *>(QObjectPrivate::get(o));
188Q_DECLARE_METATYPE(QQuickAnchorLine)
qint8 updatingVerticalAnchor
bool checkHAnchorValid(QQuickAnchorLine anchor) const
QQuickItem * hCenterAnchorItem
bool isItemComplete() const
void remDepend(QQuickItem *)
QQuickItem * rightAnchorItem
QQuickGeometryChange calculateDependency(QQuickItem *) const
void updateHorizontalAnchors()
void setItemHeight(qreal)
QQuickItem * topAnchorItem
qint8 updatingHorizontalAnchor
QQuickItem * bottomAnchorItem
bool checkVAnchorValid(QQuickAnchorLine anchor) const
void addDepend(QQuickItem *)
QQuickItem * vCenterAnchorItem
void setItemSize(const QSizeF &)
static QQuickAnchorsPrivate * get(QQuickAnchors *o)
void itemGeometryChanged(QQuickItem *, QQuickGeometryChange, const QRectF &) override
QQuickItem * baselineAnchorItem
QQuickAnchorsPrivate * anchorPrivate() override
void updateVerticalAnchors()
bool calcStretch(QQuickItem *edge1Item, QQuickAnchors::Anchor edge1Line, QQuickItem *edge2Item, QQuickAnchors::Anchor edge2Line, qreal offset1, qreal offset2, QQuickAnchors::Anchor line, qreal &stretch) const
uint bottomMarginExplicit
QQuickItem * leftAnchorItem
void setItemPos(const QPointF &)
void setSizeChange(bool enabled)
void setAllChanged(bool enabled)
void setVerticalChange(bool enabled)
void setWidthChange(bool enabled)
void setHeightChange(bool enabled)
void setHorizontalChange(bool enabled)
static qreal hcenter(const QQuickItem *item)
static qreal vcenter(const QQuickItem *item)
static QQuickAnchors::Anchor reverseAnchorLine(QQuickAnchors::Anchor anchorLine)
static qreal adjustedPosition(QQuickItem *item, QQuickAnchors::Anchor anchorLine)
static qreal position(const QQuickItem *item, QQuickAnchors::Anchor anchorLine)
bool operator==(const QQuickAnchorLine &a, const QQuickAnchorLine &b)