70 Q_PROPERTY(
bool busy READ isBusy NOTIFY busyChanged FINAL)
71 Q_PROPERTY(
int depth READ depth NOTIFY depthChanged FINAL)
72 Q_PROPERTY(QQuickItem *currentItem READ currentItem NOTIFY currentItemChanged FINAL)
73 Q_PROPERTY(QJSValue initialItem READ initialItem WRITE setInitialItem FINAL)
74#if QT_CONFIG(quick_viewtransitions)
75 Q_PROPERTY(QQuickTransition *popEnter READ popEnter WRITE setPopEnter NOTIFY popEnterChanged FINAL)
76 Q_PROPERTY(QQuickTransition *popExit READ popExit WRITE setPopExit NOTIFY popExitChanged FINAL)
77 Q_PROPERTY(QQuickTransition *pushEnter READ pushEnter WRITE setPushEnter NOTIFY pushEnterChanged FINAL)
78 Q_PROPERTY(QQuickTransition *pushExit READ pushExit WRITE setPushExit NOTIFY pushExitChanged FINAL)
79 Q_PROPERTY(QQuickTransition *replaceEnter READ replaceEnter WRITE setReplaceEnter NOTIFY replaceEnterChanged FINAL)
80 Q_PROPERTY(QQuickTransition *replaceExit READ replaceExit WRITE setReplaceExit NOTIFY replaceExitChanged FINAL)
83 Q_PROPERTY(
bool empty READ isEmpty NOTIFY emptyChanged FINAL REVISION(2, 3))
84 QML_NAMED_ELEMENT(StackView)
85 QML_ATTACHED(QQuickStackViewAttached)
86 QML_ADDED_IN_VERSION(2, 0)
89 explicit QQuickStackView(QQuickItem *parent =
nullptr);
92 static QQuickStackViewAttached *qmlAttachedProperties(QObject *object);
96 QQuickItem *currentItem()
const;
106 QJSValue initialItem()
const;
107 void setInitialItem(
const QJSValue &item);
109#if QT_CONFIG(quick_viewtransitions)
110 QQuickTransition *popEnter()
const;
111 void setPopEnter(QQuickTransition *enter);
113 QQuickTransition *popExit()
const;
114 void setPopExit(QQuickTransition *exit);
116 QQuickTransition *pushEnter()
const;
117 void setPushEnter(QQuickTransition *enter);
119 QQuickTransition *pushExit()
const;
120 void setPushExit(QQuickTransition *exit);
122 QQuickTransition *replaceEnter()
const;
123 void setReplaceEnter(QQuickTransition *enter);
125 QQuickTransition *replaceExit()
const;
126 void setReplaceExit(QQuickTransition *exit);
135 Q_INVOKABLE QQuickItem *get(
int index, QQuickStackView::LoadBehavior behavior = DontLoad);
136 Q_INVOKABLE QQuickItem *find(
const QJSValue &callback, QQuickStackView::LoadBehavior behavior = DontLoad);
142 ReplaceTransition = 2,
147 Q_INVOKABLE
void push(QQmlV4FunctionPtr args);
148 Q_INVOKABLE
void pop(QQmlV4FunctionPtr args);
149 Q_INVOKABLE
void replace(QQmlV4FunctionPtr args);
151 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *pushItems(QList<QQuickStackViewArg> args,
152 Operation operation = PushTransition);
153 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *pushItem(QQuickItem *item,
const QVariantMap &properties = {},
154 Operation operation = PushTransition);
155 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *pushItem(QQmlComponent *component,
const QVariantMap &properties = {},
156 Operation operation = PushTransition);
157 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *pushItem(
const QUrl &url,
const QVariantMap &properties = {},
158 Operation operation = PushTransition);
160 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *popToItem(QQuickItem *item, Operation operation = PopTransition);
161 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *popToIndex(
int index, Operation operation = PopTransition);
162 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *popCurrentItem(Operation operation = PopTransition);
164 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(
const QList<QQuickStackViewArg> &args,
165 Operation operation = ReplaceTransition);
166 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(QQuickItem *item,
167 const QVariantMap &properties = {}, Operation operation = ReplaceTransition);
168 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(QQmlComponent *component,
169 const QVariantMap &properties = {}, Operation operation = ReplaceTransition);
170 Q_REVISION(6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(
const QUrl &url,
171 const QVariantMap &properties = {}, Operation operation = ReplaceTransition);
174 bool isEmpty()
const;
177 void clear(Operation operation = Immediate);
182 void currentItemChanged();
183#if QT_CONFIG(quick_viewtransitions)
184 void popEnterChanged();
185 void popExitChanged();
186 void pushEnterChanged();
187 void pushExitChanged();
188 void replaceEnterChanged();
189 void replaceExitChanged();
192 Q_REVISION(2, 3)
void emptyChanged();
195 void componentComplete() override;
196 void geometryChange(
const QRectF &newGeometry,
const QRectF &oldGeometry) override;
197 bool childMouseEventFilter(QQuickItem *, QEvent *) override;
199#if QT_CONFIG(quicktemplates2_multitouch)
200 void touchEvent(QTouchEvent *event) override;
203#if QT_CONFIG(accessibility)
204 QAccessible::Role accessibleRole()
const override;
208 Q_DISABLE_COPY(QQuickStackView)
209 Q_DECLARE_PRIVATE(QQuickStackView)