Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QQuickStackView Class Reference

#include <qquickstackview_p.h>

+ Inheritance diagram for QQuickStackView:
+ Collaboration diagram for QQuickStackView:

Public Types

enum  Status { Inactive = 0 , Deactivating = 1 , Activating = 2 , Active = 3 }
 
enum  LoadBehavior { DontLoad , ForceLoad }
 
enum  Operation {
  Transition = -1 , Immediate = 0 , PushTransition = 1 , ReplaceTransition = 2 ,
  PopTransition = 3
}
 
- Public Types inherited from QQuickItem
enum  Flag {
  ItemClipsChildrenToShape = 0x01 , ItemIsFocusScope = 0x04 , ItemHasContents = 0x08 , ItemAcceptsDrops = 0x10 ,
  ItemIsViewport = 0x20 , ItemObservesViewport = 0x40
}
 \qmltype Item \instantiates QQuickItem \inherits QtObject \inqmlmodule QtQuick More...
 
enum  ItemChange {
  ItemChildAddedChange , ItemChildRemovedChange , ItemSceneChange , ItemVisibleHasChanged ,
  ItemParentHasChanged , ItemOpacityHasChanged , ItemActiveFocusHasChanged , ItemRotationHasChanged ,
  ItemAntialiasingHasChanged , ItemDevicePixelRatioHasChanged , ItemEnabledHasChanged
}
 Used in conjunction with QQuickItem::itemChange() to notify the item about certain types of changes. More...
 
enum  TransformOrigin {
  TopLeft , Top , TopRight , Left ,
  Center , Right , BottomLeft , Bottom ,
  BottomRight
}
 \variable QQuickItem::ItemChangeData::realValue The numeric value that has changed: \l {QQuickItem::opacity()}{opacity}, \l {QQuickItem::rotation()}{rotation}, or \l {QScreen::devicePixelRatio}{device pixel ratio}. More...
 

Public Slots

void clear (Operation operation=Immediate)
 \qmlmethod void QtQuick.Controls::StackView::clear(transition)
 
- Public Slots inherited from QQuickItem
void update ()
 Schedules a call to updatePaintNode() for this item.
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Signals

void busyChanged ()
 
void depthChanged ()
 
void currentItemChanged ()
 
 Q_REVISION (2, 3) void emptyChanged()
 
- Signals inherited from QQuickControl
void fontChanged ()
 
void availableWidthChanged ()
 
void availableHeightChanged ()
 
void paddingChanged ()
 
void topPaddingChanged ()
 
void leftPaddingChanged ()
 
void rightPaddingChanged ()
 
void bottomPaddingChanged ()
 
void spacingChanged ()
 
void localeChanged ()
 
void focusReasonChanged ()
 
void mirroredChanged ()
 
void visualFocusChanged ()
 
void hoveredChanged ()
 
void hoverEnabledChanged ()
 
void wheelEnabledChanged ()
 
void backgroundChanged ()
 
void contentItemChanged ()
 
void baselineOffsetChanged ()
 
 Q_REVISION (2, 5) void horizontalPaddingChanged()
 
 Q_REVISION (2, 5) void verticalPaddingChanged()
 
 Q_REVISION (2, 5) void implicitContentWidthChanged()
 
 Q_REVISION (2, 5) void implicitContentHeightChanged()
 
 Q_REVISION (2, 5) void implicitBackgroundWidthChanged()
 
 Q_REVISION (2, 5) void implicitBackgroundHeightChanged()
 
 Q_REVISION (2, 5) void topInsetChanged()
 
 Q_REVISION (2, 5) void leftInsetChanged()
 
 Q_REVISION (2, 5) void rightInsetChanged()
 
 Q_REVISION (2, 5) void bottomInsetChanged()
 
- Signals inherited from QQuickItem
void childrenRectChanged (const QRectF &)
 
void baselineOffsetChanged (qreal)
 
void stateChanged (const QString &)
 
void focusChanged (bool)
 
void activeFocusChanged (bool)
 
Q_REVISION(6, 7) void focusPolicyChanged(Qt Q_REVISION (2, 1) void activeFocusOnTabChanged(bool)
 
void parentChanged (QQuickItem *)
 
void transformOriginChanged (TransformOrigin)
 
void smoothChanged (bool)
 
void antialiasingChanged (bool)
 
void clipChanged (bool)
 
 Q_REVISION (2, 1) void windowChanged(QQuickWindow *window)
 
void childrenChanged ()
 
void opacityChanged ()
 
void enabledChanged ()
 
void visibleChanged ()
 
void visibleChildrenChanged ()
 
void rotationChanged ()
 
void scaleChanged ()
 
void xChanged ()
 
void yChanged ()
 
void widthChanged ()
 
void heightChanged ()
 
void zChanged ()
 
void implicitWidthChanged ()
 
void implicitHeightChanged ()
 
 Q_REVISION (2, 11) void containmentMaskChanged()
 
 Q_REVISION (6, 0) void paletteChanged()
 
 Q_REVISION (6, 0) void paletteCreated()
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 

Public Member Functions

 QQuickStackView (QQuickItem *parent=nullptr)
 Provides a stack-based navigation model.
 
 ~QQuickStackView ()
 
bool isBusy () const
 \qmlproperty bool QtQuick.Controls::StackView::busy \readonly This property holds whether a transition is running.
 
int depth () const
 \qmlproperty int QtQuick.Controls::StackView::depth \readonly This property holds the number of items currently pushed onto the stack.
 
QQuickItemcurrentItem () const
 \qmlproperty Item QtQuick.Controls::StackView::currentItem \readonly This property holds the current top-most item in the stack.
 
QJSValue initialItem () const
 \qmlproperty var QtQuick.Controls::StackView::initialItem
 
void setInitialItem (const QJSValue &item)
 
Q_INVOKABLE QQuickItemget (int index, QQuickStackView::LoadBehavior behavior=DontLoad)
 \qmlmethod Item QtQuick.Controls::StackView::get(index, behavior)
 
Q_INVOKABLE QQuickItemfind (const QJSValue &callback, QQuickStackView::LoadBehavior behavior=DontLoad)
 \qmlmethod Item QtQuick.Controls::StackView::find(callback, behavior)
 
Q_INVOKABLE void push (QQmlV4FunctionPtr args)
 \qmlmethod Item QtQuick.Controls::StackView::push(item, properties, operation)
 
Q_INVOKABLE void pop (QQmlV4FunctionPtr args)
 \qmlmethod Item QtQuick.Controls::StackView::pop(item, operation)
 
Q_INVOKABLE void replace (QQmlV4FunctionPtr args)
 \qmlmethod Item QtQuick.Controls::StackView::replace(target, item, properties, operation)
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *pushItems(QList< QQuickStackViewArg > args
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *pushItem(QQuickItem *item
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *pushItem(QQmlComponent *component
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *pushItem(const QUrl &url
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *popToItem(QQuickItem *item
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *popToIndex(int index
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *popCurrentItem(Operation operation
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(const QList< QQuickStackViewArg > &args
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(QQuickItem *item
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(QQmlComponent *component
 
 Q_REVISION (6, 7) Q_INVOKABLE QQuickItem *replaceCurrentItem(const QUrl &url
 
bool isEmpty () const
 
- Public Member Functions inherited from QQuickControl
 QQuickControl (QQuickItem *parent=nullptr)
 
 ~QQuickControl ()
 
QFont font () const
 \qmlproperty font QtQuick.Controls::Control::font
 
void setFont (const QFont &font)
 
void resetFont ()
 
qreal availableWidth () const
 \qmlproperty real QtQuick.Controls::Control::availableWidth \readonly
 
qreal availableHeight () const
 \qmlproperty real QtQuick.Controls::Control::availableHeight \readonly
 
qreal padding () const
 \qmlproperty real QtQuick.Controls::Control::padding
 
void setPadding (qreal padding)
 
void resetPadding ()
 
qreal topPadding () const
 \qmlproperty real QtQuick.Controls::Control::topPadding
 
void setTopPadding (qreal padding)
 
void resetTopPadding ()
 
qreal leftPadding () const
 \qmlproperty real QtQuick.Controls::Control::leftPadding
 
void setLeftPadding (qreal padding)
 
void resetLeftPadding ()
 
qreal rightPadding () const
 \qmlproperty real QtQuick.Controls::Control::rightPadding
 
void setRightPadding (qreal padding)
 
void resetRightPadding ()
 
qreal bottomPadding () const
 \qmlproperty real QtQuick.Controls::Control::bottomPadding
 
void setBottomPadding (qreal padding)
 
void resetBottomPadding ()
 
qreal spacing () const
 \qmlproperty real QtQuick.Controls::Control::spacing
 
void setSpacing (qreal spacing)
 
void resetSpacing ()
 
QLocale locale () const
 \qmlproperty Locale QtQuick.Controls::Control::locale
 
void setLocale (const QLocale &locale)
 
void resetLocale ()
 
bool isMirrored () const
 \qmlproperty bool QtQuick.Controls::Control::mirrored \readonly
 
Qt::FocusReason focusReason () const
 \qmlproperty enumeration QtQuick.Controls::Control::focusReason \readonly
 
void setFocusReason (Qt::FocusReason reason)
 
bool hasVisualFocus () const
 \qmlproperty bool QtQuick.Controls::Control::visualFocus \readonly
 
bool isHovered () const
 \qmlproperty bool QtQuick.Controls::Control::hovered \readonly
 
void setHovered (bool hovered)
 
bool isHoverEnabled () const
 \qmlproperty bool QtQuick.Controls::Control::hoverEnabled
 
void setHoverEnabled (bool enabled)
 
void resetHoverEnabled ()
 
bool isWheelEnabled () const
 \qmlproperty bool QtQuick.Controls::Control::wheelEnabled
 
void setWheelEnabled (bool enabled)
 
QQuickItembackground () const
 \qmlproperty Item QtQuick.Controls::Control::background
 
void setBackground (QQuickItem *background)
 
QQuickItemcontentItem () const
 \qmlproperty Item QtQuick.Controls::Control::contentItem
 
void setContentItem (QQuickItem *item)
 
qreal baselineOffset () const
 
void setBaselineOffset (qreal offset)
 
void resetBaselineOffset ()
 
qreal horizontalPadding () const
 
void setHorizontalPadding (qreal padding)
 
void resetHorizontalPadding ()
 
qreal verticalPadding () const
 
void setVerticalPadding (qreal padding)
 
void resetVerticalPadding ()
 
qreal implicitContentWidth () const
 
qreal implicitContentHeight () const
 
qreal implicitBackgroundWidth () const
 
qreal implicitBackgroundHeight () const
 
qreal topInset () const
 
void setTopInset (qreal inset)
 
void resetTopInset ()
 
qreal leftInset () const
 
void setLeftInset (qreal inset)
 
void resetLeftInset ()
 
qreal rightInset () const
 
void setRightInset (qreal inset)
 
void resetRightInset ()
 
qreal bottomInset () const
 
void setBottomInset (qreal inset)
 
void resetBottomInset ()
 
- Public Member Functions inherited from QQuickItem
 QQuickItem (QQuickItem *parent=nullptr)
 Constructs a QQuickItem with the given parent.
 
 ~QQuickItem () override
 Destroys the QQuickItem.
 
QQuickWindowwindow () const
 Returns the window in which this item is rendered.
 
QQuickItemparentItem () const
 
void setParentItem (QQuickItem *parent)
 
void stackBefore (const QQuickItem *)
 Moves the specified sibling item to the index before this item within the list of children.
 
void stackAfter (const QQuickItem *)
 Moves the specified sibling item to the index after this item within the list of children.
 
QRectF childrenRect ()
 \qmlpropertygroup QtQuick::Item::childrenRect \qmlproperty real QtQuick::Item::childrenRect.x \qmlproperty real QtQuick::Item::childrenRect.y \qmlproperty real QtQuick::Item::childrenRect.width \qmlproperty real QtQuick::Item::childrenRect.height \readonly
 
QList< QQuickItem * > childItems () const
 Returns the children of this item.
 
bool clip () const
 \qmlproperty bool QtQuick::Item::clip This property holds whether clipping is enabled.
 
void setClip (bool)
 
QString state () const
 \qmlproperty string QtQuick::Item::state
 
void setState (const QString &)
 
qreal baselineOffset () const
 \qmlproperty int QtQuick::Item::baselineOffset
 
void setBaselineOffset (qreal)
 
QQmlListProperty< QQuickTransformtransform ()
 
qreal x () const
 
qreal y () const
 
QPointF position () const
 
void setX (qreal)
 
void setY (qreal)
 
void setPosition (const QPointF &)
 
QBindable< qrealbindableX ()
 
QBindable< qrealbindableY ()
 
qreal width () const
 
void setWidth (qreal)
 
void resetWidth ()
 
void setImplicitWidth (qreal)
 
qreal implicitWidth () const
 Returns the width of the item that is implied by other properties that determine the content.
 
QBindable< qrealbindableWidth ()
 
qreal height () const
 
void setHeight (qreal)
 
void resetHeight ()
 
void setImplicitHeight (qreal)
 
qreal implicitHeight () const
 
QBindable< qrealbindableHeight ()
 
QSizeF size () const
 
void setSize (const QSizeF &size)
 
TransformOrigin transformOrigin () const
 
void setTransformOrigin (TransformOrigin)
 
QPointF transformOriginPoint () const
 
void setTransformOriginPoint (const QPointF &)
 
qreal z () const
 
void setZ (qreal)
 
qreal rotation () const
 
void setRotation (qreal)
 
qreal scale () const
 
void setScale (qreal)
 
qreal opacity () const
 
void setOpacity (qreal)
 
bool isVisible () const
 
void setVisible (bool)
 
bool isEnabled () const
 
void setEnabled (bool)
 
bool smooth () const
 
void setSmooth (bool)
 
bool activeFocusOnTab () const
 \qmlproperty bool QtQuick::Item::activeFocusOnTab
 
void setActiveFocusOnTab (bool)
 
bool antialiasing () const
 
void setAntialiasing (bool)
 
void resetAntialiasing ()
 
Flags flags () const
 Returns the item flags for this item.
 
void setFlag (Flag flag, bool enabled=true)
 Enables the specified flag for this item if enabled is true; if enabled is false, the flag is disabled.
 
void setFlags (Flags flags)
 Enables the specified flags for this item.
 
virtual QRectF boundingRect () const
 Returns the extents of the item in its own coordinate system: a rectangle from {0, 0} to \l width() and \l height().
 
virtual QRectF clipRect () const
 Returns the rectangular area within this item that is currently visible in \l viewportItem(), if there is a viewport and the \l ItemObservesViewport flag is set; otherwise, the extents of this item in its own coordinate system: a rectangle from {0, 0} to \l width() and \l height().
 
QQuickItemviewportItem () const
 If the \l ItemObservesViewport flag is set, returns the nearest parent with the \l ItemIsViewport flag.
 
bool hasActiveFocus () const
 
bool hasFocus () const
 
void setFocus (bool)
 
void setFocus (bool focus, Qt::FocusReason reason)
 
bool isFocusScope () const
 Returns true if this item is a focus scope, and false otherwise.
 
QQuickItemscopedFocusItem () const
 If this item is a focus scope, this returns the item in its focus chain that currently has focus.
 
Qt::FocusPolicy focusPolicy () const
 
void setFocusPolicy (Qt::FocusPolicy policy)
 Sets the focus policy of this item to policy.
 
bool isAncestorOf (const QQuickItem *child) const
 Returns true if this item is an ancestor of child (i.e., if this item is child's parent, or one of child's parent's ancestors).
 
Qt::MouseButtons acceptedMouseButtons () const
 Returns the mouse buttons accepted by this item.
 
void setAcceptedMouseButtons (Qt::MouseButtons buttons)
 Sets the mouse buttons accepted by this item to buttons.
 
bool acceptHoverEvents () const
 Returns whether hover events are accepted by this item.
 
void setAcceptHoverEvents (bool enabled)
 If enabled is true, this sets the item to accept hover events; otherwise, hover events are not accepted by this item.
 
bool acceptTouchEvents () const
 Returns whether touch events are accepted by this item.
 
void setAcceptTouchEvents (bool accept)
 If enabled is true, this sets the item to accept touch events; otherwise, touch events are not accepted by this item.
 
bool isUnderMouse () const
 
void grabMouse ()
 
void ungrabMouse ()
 
bool keepMouseGrab () const
 Returns whether mouse input should exclusively remain with this item.
 
void setKeepMouseGrab (bool)
 Sets whether the mouse input should remain exclusively with this item.
 
bool filtersChildMouseEvents () const
 Returns whether pointer events intended for this item's children should be filtered through this item.
 
void setFiltersChildMouseEvents (bool filter)
 Sets whether pointer events intended for this item's children should be filtered through this item.
 
void grabTouchPoints (const QList< int > &ids)
 
void ungrabTouchPoints ()
 
bool keepTouchGrab () const
 Returns whether the touch points grabbed by this item should exclusively remain with this item.
 
void setKeepTouchGrab (bool)
 Sets whether the touch points grabbed by this item should remain exclusively with this item.
 
 Q_REVISION (2, 4) Q_INVOKABLE bool grabToImage(const QJSValue &callback
 
QSharedPointer< QQuickItemGrabResultgrabToImage (const QSize &targetSize=QSize())
 Grabs the item into an in-memory image.
 
virtual Q_INVOKABLE bool contains (const QPointF &point) const
 \qmlmethod bool QtQuick::Item::contains(point point)
 
QObjectcontainmentMask () const
 
void setContainmentMask (QObject *mask)
 
QTransform itemTransform (QQuickItem *, bool *) const
 \qmlmethod point QtQuick::Item::mapFromItem(Item item, real x, real y) \qmlmethod point QtQuick::Item::mapFromItem(Item item, point p) \qmlmethod rect QtQuick::Item::mapFromItem(Item item, real x, real y, real width, real height) \qmlmethod rect QtQuick::Item::mapFromItem(Item item, rect r)
 
QPointF mapToScene (const QPointF &point) const
 Maps the given point in this item's coordinate system to the equivalent point within the scene's coordinate system, and returns the mapped coordinate.
 
QRectF mapRectToItem (const QQuickItem *item, const QRectF &rect) const
 Maps the given rect in this item's coordinate system to the equivalent rectangular area within item's coordinate system, and returns the mapped rectangle value.
 
QRectF mapRectToScene (const QRectF &rect) const
 Maps the given rect in this item's coordinate system to the equivalent rectangular area within the scene's coordinate system, and returns the mapped rectangle value.
 
QPointF mapFromScene (const QPointF &point) const
 Maps the given point in the scene's coordinate system to the equivalent point within this item's coordinate system, and returns the mapped coordinate.
 
QRectF mapRectFromItem (const QQuickItem *item, const QRectF &rect) const
 Maps the given rect in item's coordinate system to the equivalent rectangular area within this item's coordinate system, and returns the mapped rectangle value.
 
QRectF mapRectFromScene (const QRectF &rect) const
 Maps the given rect in the scene's coordinate system to the equivalent rectangular area within this item's coordinate system, and returns the mapped rectangle value.
 
void polish ()
 Schedules a polish event for this item.
 
Q_INVOKABLE QPointF mapFromItem (const QQuickItem *item, const QPointF &point) const
 Maps the given point in item's coordinate system to the equivalent point within this item's coordinate system, and returns the mapped coordinate.
 
Q_INVOKABLE QPointF mapFromItem (const QQuickItem *item, qreal x, qreal y)
 
Q_INVOKABLE QRectF mapFromItem (const QQuickItem *item, const QRectF &rect) const
 
Q_INVOKABLE QRectF mapFromItem (const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const
 
Q_INVOKABLE QPointF mapToItem (const QQuickItem *item, const QPointF &point) const
 Maps the given point in this item's coordinate system to the equivalent point within item's coordinate system, and returns the mapped coordinate.
 
Q_INVOKABLE QPointF mapToItem (const QQuickItem *item, qreal x, qreal y)
 
Q_INVOKABLE QRectF mapToItem (const QQuickItem *item, const QRectF &rect) const
 
Q_INVOKABLE QRectF mapToItem (const QQuickItem *item, qreal x, qreal y, qreal width, qreal height) const
 
 Q_REVISION (2, 7) Q_INVOKABLE QPointF mapFromGlobal(qreal x
 
 Q_REVISION (2, 7) Q_INVOKABLE QPointF mapFromGlobal(const QPointF &point) const
 
 Q_REVISION (2, 7) Q_INVOKABLE QPointF mapToGlobal(qreal x
 
 Q_REVISION (2, 7) Q_INVOKABLE QPointF mapToGlobal(const QPointF &point) const
 
Q_INVOKABLE void forceActiveFocus ()
 \qmlmethod point QtQuick::Item::mapToItem(Item item, real x, real y) \qmlmethod point QtQuick::Item::mapToItem(Item item, point p) \qmlmethod rect QtQuick::Item::mapToItem(Item item, real x, real y, real width, real height) \qmlmethod rect QtQuick::Item::mapToItem(Item item, rect r)
 
Q_INVOKABLE void forceActiveFocus (Qt::FocusReason reason)
 \qmlmethod QtQuick::Item::forceActiveFocus(Qt::FocusReason reason) This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Forces active focus on the item with the given reason.
 
 Q_REVISION (2, 1) Q_INVOKABLE QQuickItem *nextItemInFocusChain(bool forward
 
Q_INVOKABLE QQuickItemchildAt (qreal x, qreal y) const
 \qmlmethod QtQuick::Item::childAt(real x, real y)
 
 Q_REVISION (6, 3) Q_INVOKABLE void ensurePolished()
 
 Q_REVISION (6, 3) Q_INVOKABLE void dumpItemTree() const
 
virtual bool isTextureProvider () const
 Returns true if this item is a texture provider.
 
virtual QSGTextureProvidertextureProvider () const
 Returns the texture provider for an item.
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 
- Public Member Functions inherited from QQmlParserStatus
 QQmlParserStatus ()
 
virtual ~QQmlParserStatus ()
 

Static Public Member Functions

static QQuickStackViewAttachedqmlAttachedProperties (QObject *object)
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 

Public Attributes

Operation operation = Immediate)
 
const QVariantMapproperties = {}
 
const QVariantMap Operation operation = Immediate)
 
- Public Attributes inherited from QQuickItem
const QSizetargetSize = QSize())
 
qreal y const
 

Protected Member Functions

void componentComplete () override
 Invoked after the root component that caused this instantiation has completed construction.
 
void geometryChange (const QRectF &newGeometry, const QRectF &oldGeometry) override
 
bool childMouseEventFilter (QQuickItem *, QEvent *) override
 Reimplement this method to filter the pointer events that are received by this item's children.
 
- Protected Member Functions inherited from QQuickControl
virtual QFont defaultFont () const
 
 QQuickControl (QQuickControlPrivate &dd, QQuickItem *parent)
 
void classBegin () override
 Invoked after class creation, but before any properties have been set.
 
void itemChange (ItemChange change, const ItemChangeData &value) override
 Called when change occurs for this item.
 
void focusInEvent (QFocusEvent *event) override
 This event handler can be reimplemented in a subclass to receive focus-in events for an item.
 
void focusOutEvent (QFocusEvent *event) override
 This event handler can be reimplemented in a subclass to receive focus-out events for an item.
 
void mousePressEvent (QMouseEvent *event) override
 This event handler can be reimplemented in a subclass to receive mouse press events for an item.
 
void mouseMoveEvent (QMouseEvent *event) override
 This event handler can be reimplemented in a subclass to receive mouse move events for an item.
 
void mouseReleaseEvent (QMouseEvent *event) override
 This event handler can be reimplemented in a subclass to receive mouse release events for an item.
 
void mouseUngrabEvent () override
 This event handler can be reimplemented in a subclass to be notified when a mouse ungrab event has occurred on this item.
 
virtual void fontChange (const QFont &newFont, const QFont &oldFont)
 
virtual void mirrorChange ()
 
virtual void spacingChange (qreal newSpacing, qreal oldSpacing)
 
virtual void paddingChange (const QMarginsF &newPadding, const QMarginsF &oldPadding)
 
virtual void contentItemChange (QQuickItem *newItem, QQuickItem *oldItem)
 
virtual void localeChange (const QLocale &newLocale, const QLocale &oldLocale)
 
virtual void insetChange (const QMarginsF &newInset, const QMarginsF &oldInset)
 
virtual void enabledChange ()
 
QString accessibleName () const
 
void maybeSetAccessibleName (const QString &name)
 
QVariant accessibleProperty (const char *propertyName)
 
bool setAccessibleProperty (const char *propertyName, const QVariant &value)
 
- Protected Member Functions inherited from QQuickItem
bool event (QEvent *) override
 \reimp
 
bool isComponentComplete () const
 Returns true if construction of the QML component is complete; otherwise returns false.
 
bool widthValid () const
 Returns whether the width property has been set explicitly.
 
bool heightValid () const
 Returns whether the height property has been set explicitly.
 
void setImplicitSize (qreal, qreal)
 
void classBegin () override
 \reimp Derived classes should call the base class method before adding their own action to perform at classBegin.
 
virtual void keyPressEvent (QKeyEvent *event)
 This event handler can be reimplemented in a subclass to receive key press events for an item.
 
virtual void keyReleaseEvent (QKeyEvent *event)
 This event handler can be reimplemented in a subclass to receive key release events for an item.
 
virtual void mouseDoubleClickEvent (QMouseEvent *event)
 This event handler can be reimplemented in a subclass to receive mouse double-click events for an item.
 
virtual void touchUngrabEvent ()
 This event handler can be reimplemented in a subclass to be notified when a touch ungrab event has occurred on this item.
 
virtual void touchEvent (QTouchEvent *event)
 This event handler can be reimplemented in a subclass to receive touch events for an item.
 
virtual void hoverEnterEvent (QHoverEvent *event)
 This event handler can be reimplemented in a subclass to receive hover-enter events for an item.
 
virtual void hoverMoveEvent (QHoverEvent *event)
 This event handler can be reimplemented in a subclass to receive hover-move events for an item.
 
virtual void hoverLeaveEvent (QHoverEvent *event)
 This event handler can be reimplemented in a subclass to receive hover-leave events for an item.
 
virtual QSGNodeupdatePaintNode (QSGNode *, UpdatePaintNodeData *)
 Called on the render thread when it is time to sync the state of the item with the scene graph.
 
virtual void releaseResources ()
 This function is called when an item should release graphics resources which are not already managed by the nodes returned from QQuickItem::updatePaintNode().
 
virtual void updatePolish ()
 This function should perform any layout as required for this item.
 
 QQuickItem (QQuickItemPrivate &dd, QQuickItem *parent=nullptr)
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 

Properties

bool busy
 
int depth
 
QQuickItemcurrentItem
 
QJSValue initialItem
 
bool empty
 
- Properties inherited from QQuickControl
QFont font
 
qreal availableWidth
 
qreal availableHeight
 
qreal padding
 
qreal topPadding
 
qreal leftPadding
 
qreal rightPadding
 
qreal bottomPadding
 
qreal spacing
 
QLocale locale
 
bool mirrored
 
Qt::FocusReason focusReason
 
bool visualFocus
 
bool hovered
 
bool hoverEnabled
 
bool wheelEnabled
 
QQuickItembackground
 
QQuickItemcontentItem
 
qreal baselineOffset
 
qreal horizontalPadding
 
qreal verticalPadding
 
qreal implicitContentWidth
 
qreal implicitContentHeight
 
qreal implicitBackgroundWidth
 
qreal implicitBackgroundHeight
 
qreal topInset
 
qreal leftInset
 
qreal rightInset
 
qreal bottomInset
 
- Properties inherited from QQuickItem
QQuickItemparent
 \qmlproperty Item QtQuick::Item::parent This property holds the visual parent of the item.
 
qreal x
 \qmlproperty real QtQuick::Item::x \qmlproperty real QtQuick::Item::y \qmlproperty real QtQuick::Item::width \qmlproperty real QtQuick::Item::height
 
qreal y
 Defines the item's y position relative to its parent.
 
qreal z
 \qmlproperty real QtQuick::Item::z
 
qreal width
 This property holds the width of this item.
 
qreal height
 This property holds the height of this item.
 
qreal opacity
 \qmlproperty real QtQuick::Item::opacity
 
bool enabled
 \qmlproperty bool QtQuick::Item::enabled
 
bool visible
 \qmlproperty bool QtQuick::Item::visible
 
Qt::FocusPolicy focusPolicy
 \qmlproperty enumeration QtQuick::Item::focusPolicy
 
qreal rotation
 \qmlproperty real QtQuick::Item::rotation This property holds the rotation of the item in degrees clockwise around its transformOrigin.
 
qreal scale
 \qmlproperty real QtQuick::Item::scale This property holds the scale factor for this item.
 
TransformOrigin transformOrigin
 \qmlproperty enumeration QtQuick::Item::transformOrigin This property holds the origin point around which scale and rotation transform.
 
QPointF transformOriginPoint
 
QQmlListProperty< QQuickTransformtransform
 \qmlproperty list<Transform> QtQuick::Item::transform This property holds the list of transformations to apply.
 
bool smooth
 \qmlproperty bool QtQuick::Item::smooth
 
bool antialiasing
 \qmlproperty bool QtQuick::Item::antialiasing
 
qreal implicitWidth
 
qreal implicitHeight
 
QObjectcontainmentMask
 \qmlproperty QObject* QtQuick::Item::containmentMask
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Additional Inherited Members

- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 

Detailed Description

Definition at line 64 of file qquickstackview_p.h.

Member Enumeration Documentation

◆ LoadBehavior

Enumerator
DontLoad 
ForceLoad 

Definition at line 126 of file qquickstackview_p.h.

◆ Operation

Enumerator
Transition 
Immediate 
PushTransition 
ReplaceTransition 
PopTransition 

Definition at line 135 of file qquickstackview_p.h.

◆ Status

Enumerator
Inactive 
Deactivating 
Activating 
Active 

Definition at line 95 of file qquickstackview_p.h.

Constructor & Destructor Documentation

◆ QQuickStackView()

QQuickStackView::QQuickStackView ( QQuickItem * parent = nullptr)
explicit

Provides a stack-based navigation model.

\qmltype StackView
\inherits Control

! \instantiates QQuickStackView \inqmlmodule QtQuick.Controls

Since
5.7

StackView can be used with a set of inter-linked information pages. For example, an email application with separate views to list the latest emails, view a specific email, and list/view the attachments. The email list view is pushed onto the stack as users open an email, and popped out as they choose to go back.

The following snippet demonstrates a simple use case, where the mainView is pushed onto and popped out of the stack on relevant button click:

\qml ApplicationWindow { title: qsTr("Hello World") width: 640 height: 480 visible: true

StackView { id: stack initialItem: mainView anchors.fill: parent }

Component { id: mainView

Row { spacing: 10

Button { text: "Push" onClicked: stack.push(mainView) } Button { text: "Pop" enabled: stack.depth > 1 onClicked: stack.pop()

} Text { text: stack.depth } } } } \endqml

Definition at line 383 of file qquickstackview.cpp.

References d, QQuickItem::ItemIsFocusScope, QLayoutPolicy::Preferred, and QQuickItem::setFlag().

+ Here is the call graph for this function:

◆ ~QQuickStackView()

QQuickStackView::~QQuickStackView ( )

Definition at line 392 of file qquickstackview.cpp.

References d, and qDeleteAll().

+ Here is the call graph for this function:

Member Function Documentation

◆ busyChanged

void QQuickStackView::busyChanged ( )
signal

◆ childMouseEventFilter()

bool QQuickStackView::childMouseEventFilter ( QQuickItem * item,
QEvent * event )
overrideprotectedvirtual

Reimplement this method to filter the pointer events that are received by this item's children.

This method will only be called if filtersChildMouseEvents() is true.

Return true if the specified event should not be passed on to the specified child item, and false otherwise. If you return true, you should also \l {QEvent::accept()}{accept} or \l {QEvent::ignore()}{ignore} the event, to signal if event propagation should stop or continue. The event will, however, always be sent to all childMouseEventFilters up the parent chain.

Note
Despite the name, this function filters all QPointerEvent instances during delivery to all children (typically mouse, touch, and tablet events). When overriding this function in a subclass, we suggest writing generic event-handling code using only the accessors found in QPointerEvent. Alternatively you can switch on event->type() and/or event->device()->type() to handle different event types in different ways.
Filtering is just one way to share responsibility in case of gestural ambiguity (for example on press, you don't know whether the user will tap or drag). Another way is to call QPointerEvent::addPassiveGrabber() on press, so as to non-exclusively monitor the progress of the QEventPoint. In either case, the item or pointer handler that is monitoring can steal the exclusive grab later on, when it becomes clear that the gesture fits the pattern that it is expecting.
See also
setFiltersChildMouseEvents()

Reimplemented from QQuickItem.

Definition at line 1638 of file qquickstackview.cpp.

References item, QEvent::MouseButtonPress, QEvent::UngrabMouse, QGraphicsItem::window(), and QQuickItem::window().

+ Here is the call graph for this function:

◆ clear

void QQuickStackView::clear ( Operation operation = Immediate)
slot

\qmlmethod void QtQuick.Controls::StackView::clear(transition)

Removes all items from the stack.

pop-ownership

Since QtQuick.Controls 2.3, a transition can be optionally specified. Supported transitions:

\value StackView.Immediate Clear the stack immediately without any transition (default). \value StackView.PushTransition Clear the stack with a push transition. \value StackView.ReplaceTransition Clear the stack with a replace transition. \value StackView.PopTransition Clear the stack with a pop transition.

Definition at line 1377 of file qquickstackview.cpp.

References d, Immediate, operation, operationName(), QQuickStackTransition::popEnter(), QQuickStackTransition::popExit(), Q_UNUSED, qDeleteAll(), QStringLiteral, and QQuickStackElement::removal.

+ Here is the call graph for this function:

◆ componentComplete()

void QQuickStackView::componentComplete ( )
overrideprotectedvirtual

Invoked after the root component that caused this instantiation has completed construction.

At this point all static values and binding values have been assigned to the class.

Reimplemented from QQuickControl.

Definition at line 1600 of file qquickstackview.cpp.

References Active, QQuickControl::componentComplete(), d, error, QQuickStackElement::fromObject(), QQuickStackElement::fromString(), o, QStringLiteral, and QQuickStackElement::setStatus().

+ Here is the call graph for this function:

◆ currentItem()

QQuickItem * QQuickStackView::currentItem ( ) const

\qmlproperty Item QtQuick.Controls::StackView::currentItem \readonly This property holds the current top-most item in the stack.

Definition at line 438 of file qquickstackview.cpp.

References d.

◆ currentItemChanged

void QQuickStackView::currentItemChanged ( )
signal

◆ depth()

int QQuickStackView::depth ( ) const

\qmlproperty int QtQuick.Controls::StackView::depth \readonly This property holds the number of items currently pushed onto the stack.

Definition at line 427 of file qquickstackview.cpp.

References d.

◆ depthChanged

void QQuickStackView::depthChanged ( )
signal

◆ find()

QQuickItem * QQuickStackView::find ( const QJSValue & callback,
QQuickStackView::LoadBehavior behavior = DontLoad )

\qmlmethod Item QtQuick.Controls::StackView::find(callback, behavior)

Search for a specific item inside the stack. The callback function is called for each item in the stack (with the item and index as arguments) until the callback function returns true. The return value is the item found. For example:

stackView.find(function(item, index) {
return item.isTheOne
})
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction function
GLuint index
[2]
QGraphicsItem * item

Supported behavior values: \value StackView.DontLoad Unloaded items are skipped (the callback function is not called for them). \value StackView.ForceLoad Unloaded items are forced to load.

Definition at line 483 of file qquickstackview.cpp.

References QJSValue::call(), d, engine, ForceLoad, i, QQuickStackElement::item, QQuickStackElement::load(), QJSEngine::newQObject(), and qmlEngine().

+ Here is the call graph for this function:

◆ geometryChange()

void QQuickStackView::geometryChange ( const QRectF & newGeometry,
const QRectF & oldGeometry )
overrideprotectedvirtual
Since
6.0

This function is called to handle this item's changes in geometry from oldGeometry to newGeometry. If the two geometries are the same, it doesn't do anything.

Derived classes must call the base class method within their implementation.

Reimplemented from QQuickControl.

Definition at line 1623 of file qquickstackview.cpp.

References d, QQuickControl::geometryChange(), QRectF::height(), QQuickStackElement::heightValid, QQuickStackElement::item, QQuickItem::setHeight(), QQuickItem::setWidth(), QRectF::width(), and QQuickStackElement::widthValid.

+ Here is the call graph for this function:

◆ get()

QQuickItem * QQuickStackView::get ( int index,
QQuickStackView::LoadBehavior behavior = DontLoad )

\qmlmethod Item QtQuick.Controls::StackView::get(index, behavior)

Returns the item at position index in the stack, or null if the index is out of bounds.

Supported behavior values: \value StackView.DontLoad The item is not forced to load (and null is returned if not yet loaded). \value StackView.ForceLoad The item is forced to load.

Definition at line 454 of file qquickstackview.cpp.

References d, ForceLoad, QQuickStackElement::item, and QQuickStackElement::load().

+ Here is the call graph for this function:

◆ initialItem()

QJSValue QQuickStackView::initialItem ( ) const

\qmlproperty var QtQuick.Controls::StackView::initialItem

This property holds the initial item that should be shown when the StackView is created. The initial item can be an \l Item, \l Component, or a \l [QML] url. Specifying an initial item is equivalent to:

Component.onCompleted: stackView.push(myInitialItem)
See also
push()

Definition at line 1424 of file qquickstackview.cpp.

References d.

◆ isBusy()

bool QQuickStackView::isBusy ( ) const

\qmlproperty bool QtQuick.Controls::StackView::busy \readonly This property holds whether a transition is running.

Definition at line 416 of file qquickstackview.cpp.

References d.

◆ isEmpty()

bool QQuickStackView::isEmpty ( ) const
Since
QtQuick.Controls 2.3 (Qt 5.10) \qmlproperty bool QtQuick.Controls::StackView::empty \readonly

This property holds whether the stack is empty.

See also
depth

Definition at line 1357 of file qquickstackview.cpp.

References d.

◆ pop()

void QQuickStackView::pop ( QQmlV4FunctionPtr args)

\qmlmethod Item QtQuick.Controls::StackView::pop(item, operation)

Pops one or more items off the stack. Returns the last item removed from the stack.

If the item argument is specified, all items down to (but not including) item will be popped. If item is null, all items down to (but not including) the first item is popped. If not specified, only the current item is popped.

Note
A pop() operation on a stack with depth 1 or 0 does nothing. In such cases, the stack can be emptied using the \l clear() method.

pop-ownership

An operation can be optionally specified as the last argument. Supported operations:

\value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1).

If no operation is provided, PopTransition will be used.

Examples:

stackView.pop()
stackView.pop(someItem, StackView.Immediate)
stackView.pop(StackView.Immediate)
stackView.pop(null)
Note
If you are \l {The QML script compiler}{compiling QML}, use the strongly-typed \l popToItem, \l popToIndex or \l popCurrentItem functions instead.
See also
clear(), {Popping Items}, {Unwinding Items via Pop}

Definition at line 684 of file qquickstackview.cpp.

References args, d, Immediate, item, QQuickStackElement::item, QList< T >::length(), QV4::Encode::null(), o, operation, operationName(), QQuickStackTransition::popEnter(), QQuickStackTransition::popExit(), PopTransition, qobject_cast< QQuickItem * >(), QStringLiteral, QQuickStackElement::removal, and QV4::QObjectWrapper::wrap().

+ Here is the call graph for this function:

◆ push()

void QQuickStackView::push ( QQmlV4FunctionPtr args)

\qmlmethod Item QtQuick.Controls::StackView::push(item, properties, operation)

Pushes an item onto the stack using an optional operation, and optionally applies a set of properties on the item. The item can be an \l Item, \l Component, or a \l [QML] url. Returns the item that became current.

StackView creates an instance automatically if the pushed item is a \l Component, or a \l [QML] url, and the instance will be destroyed when it is popped off the stack. See \l {Item Ownership} for more information.

The optional properties argument specifies a map of initial property values for the pushed item. For dynamically created items, these values are applied before the creation is finalized. This is more efficient than setting property values after creation, particularly where large sets of property values are defined, and also allows property bindings to be set up (using \l{Qt::binding} {Qt.binding()}) before the item is created.

Pushing a single item:

stackView.push(rect)
// or with properties:
stackView.push(rect, {"color": "red"})
rect
[4]

Multiple items can be pushed at the same time either by passing them as additional arguments, or as an array. The last item becomes the current item. Each item can be followed by a set of properties to apply.

Passing a variable amount of arguments:

stackView.push(rect1, rect2, rect3)
// or with properties:
stackView.push(rect1, {"color": "red"}, rect2, {"color": "green"}, rect3, {"color": "blue"})

Pushing an array of items:

stackView.push([rect1, rect2, rect3])
// or with properties:
stackView.push([rect1, {"color": "red"}, rect2, {"color": "green"}, rect3, {"color": "blue"}])

An operation can be optionally specified as the last argument. Supported operations:

\value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1).

If no operation is provided, Immediate will be used if the stack is empty, and PushTransition otherwise.

Note
Items that already exist in the stack are not pushed.
If you are \l {The QML script compiler}{compiling QML}, use the strongly-typed \l pushItem or \l pushItems functions instead.
See also
initialItem, {Pushing Items}

Definition at line 570 of file qquickstackview.cpp.

References args, d, elements, error, Immediate, it, QList< T >::length(), QV4::Encode::null(), operation, operationName(), QQuickStackTransition::pushEnter(), QQuickStackTransition::pushExit(), PushTransition, QStringLiteral, and QV4::QObjectWrapper::wrap().

+ Here is the call graph for this function:

◆ Q_REVISION [1/12]

QQuickStackView::Q_REVISION ( 2 ,
3  )
signal

◆ Q_REVISION() [2/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [3/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [4/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [5/12]

QQuickStackView::Q_REVISION ( 6 ,
7  ) const &

◆ Q_REVISION() [6/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [7/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [8/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [9/12]

QQuickStackView::Q_REVISION ( 6 ,
7  ) const &

◆ Q_REVISION() [10/12]

QQuickStackView::Q_REVISION ( 6 ,
7  ) const &

◆ Q_REVISION() [11/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ Q_REVISION() [12/12]

QQuickStackView::Q_REVISION ( 6 ,
7  )

◆ qmlAttachedProperties()

QQuickStackViewAttached * QQuickStackView::qmlAttachedProperties ( QObject * object)
static

Definition at line 406 of file qquickstackview.cpp.

◆ replace()

void QQuickStackView::replace ( QQmlV4FunctionPtr args)

\qmlmethod Item QtQuick.Controls::StackView::replace(target, item, properties, operation)

Replaces one or more items on the stack with the specified item and optional operation, and optionally applies a set of properties on the item. The item can be an \l Item, \l Component, or a \l [QML] url. Returns the item that became current.

pop-ownership

If the target argument is specified, all items down to the target item will be replaced. If target is null, all items in the stack will be replaced. If not specified, only the top item will be replaced.

StackView creates an instance automatically if the replacing item is a \l Component, or a \l [QML] url. The optional properties argument specifies a map of initial property values for the replacing item. For dynamically created items, these values are applied before the creation is finalized. This is more efficient than setting property values after creation, particularly where large sets of property values are defined, and also allows property bindings to be set up (using \l{Qt::binding} {Qt.binding()}) before the item is created.

Replace the top item:

stackView.replace(rect)
// or with properties:
stackView.replace(rect, {"color": "red"})

Multiple items can be replaced at the same time either by passing them as additional arguments, or as an array. Each item can be followed by a set of properties to apply.

Passing a variable amount of arguments:

stackView.replace(rect1, rect2, rect3)
// or with properties:
stackView.replace(rect1, {"color": "red"}, rect2, {"color": "green"}, rect3, {"color": "blue"})

Replacing an array of items:

stackView.replace([rect1, rect2, rect3])
// or with properties:
stackView.replace([rect1, {"color": "red"}, rect2, {"color": "green"}, rect3, {"color": "blue"}])

An operation can be optionally specified as the last argument. Supported operations:

\value StackView.Immediate An immediate operation without transitions. \value StackView.PushTransition An operation with push transitions (since QtQuick.Controls 2.1). \value StackView.ReplaceTransition An operation with replace transitions (since QtQuick.Controls 2.1). \value StackView.PopTransition An operation with pop transitions (since QtQuick.Controls 2.1).

If no operation is provided, Immediate will be used if the stack is empty, and ReplaceTransition otherwise.

The following example illustrates the use of push and pop transitions with replace().

StackView {
id: stackView
initialItem: Component {
Page {
Row {
spacing: 20
text: "<"
onClicked: stackView.replace(page, StackView.PopTransition)
}
text: ">"
onClicked: stackView.replace(page, StackView.PushTransition)
}
}
}
}
}
QQuickItem * centerIn
QQuickItem * parent
\qmlproperty Item QtQuick::Item::parent This property holds the visual parent of the item.
Definition qquickitem.h:67
QString & replace(qsizetype i, qsizetype len, QChar after)
Definition qstring.cpp:3824
QString text
Button
GLenum GLuint id
[7]
QQuickAnchors * anchors(QQuickItem *item)
QByteArray page
[45]
Note
If you are \l {The QML script compiler}{compiling QML}, use the strongly-typed \l replaceCurrentItem functions instead.
See also
push(), {Replacing Items}

Definition at line 856 of file qquickstackview.cpp.

References args, d, elements, error, Immediate, QList< T >::length(), QV4::Encode::null(), operation, operationName(), QStringLiteral, QQuickStackElement::removal, QQuickStackTransition::replaceEnter(), QQuickStackTransition::replaceExit(), ReplaceTransition, and QV4::QObjectWrapper::wrap().

+ Here is the call graph for this function:

◆ setInitialItem()

void QQuickStackView::setInitialItem ( const QJSValue & item)

Definition at line 1430 of file qquickstackview.cpp.

References d, and item.

Member Data Documentation

◆ operation [1/2]

const QVariantMap Operation QQuickStackView::operation = Immediate)

Definition at line 149 of file qquickstackview_p.h.

Referenced by clear(), pop(), push(), and replace().

◆ operation [2/2]

const QVariantMap Operation QQuickStackView::operation = Immediate)

Definition at line 151 of file qquickstackview_p.h.

◆ properties

const QVariantMap & QQuickStackView::properties = {}

Definition at line 150 of file qquickstackview_p.h.

Property Documentation

◆ busy

bool QQuickStackView::busy
read

Definition at line 67 of file qquickstackview_p.h.

◆ currentItem

QQuickItem * QQuickStackView::currentItem
read

Definition at line 69 of file qquickstackview_p.h.

◆ depth

int QQuickStackView::depth
read

Definition at line 68 of file qquickstackview_p.h.

◆ empty

bool QQuickStackView::empty
read

Definition at line 80 of file qquickstackview_p.h.

◆ initialItem

QJSValue QQuickStackView::initialItem
readwrite

Definition at line 70 of file qquickstackview_p.h.


The documentation for this class was generated from the following files: