QT_BEGIN_NAMESPACE
+class QQuickItemViewTransitioner;
+
class QQuickBasePositionerPrivate : public QQuickImplicitSizeItemPrivate, public QQuickItemChangeListener
{
Q_DECLARE_PUBLIC(QQuickBasePositioner)
public:
QQuickBasePositionerPrivate()
: spacing(0), type(QQuickBasePositioner::None)
- , moveTransition(0), addTransition(0), positioningDirty(false)
+ , transitioner(0), positioningDirty(false)
, doingPositioning(false), anchorConflict(false), layoutDirection(Qt::LeftToRight)
{
}
void init(QQuickBasePositioner::PositionerType at)
{
type = at;
- childrenDoNotOverlap = true;
}
qreal spacing;
QQuickBasePositioner::PositionerType type;
- QQuickTransition *moveTransition;
- QQuickTransition *addTransition;
- QQuickStateOperation::ActionList addActions;
- QQuickStateOperation::ActionList moveActions;
- QQuickTransitionManager addTransitionManager;
- QQuickTransitionManager moveTransitionManager;
+ QQuickItemViewTransitioner *transitioner;
void watchChanges(QQuickItem *other);
void unwatchChanges(QQuickItem* other);
void itemDestroyed(QQuickItem *item)
{
Q_Q(QQuickBasePositioner);
- q->positionedItems.removeOne(QQuickBasePositioner::PositionedItem(item));
+ int index = q->positionedItems.find(QQuickBasePositioner::PositionedItem(item));
+ if (index >= 0)
+ q->removePositionedItem(&q->positionedItems, index);
}
static Qt::LayoutDirection getLayoutDirection(const QQuickBasePositioner *positioner)