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
QWaylandQuickItem Class Reference

\qmltype WaylandQuickItem \instantiates QWaylandQuickItem \inqmlmodule QtWayland.Compositor More...

#include <qwaylandquickitem.h>

+ Inheritance diagram for QWaylandQuickItem:
+ Collaboration diagram for QWaylandQuickItem:

Public Slots

virtual void takeFocus (QWaylandSeat *device=nullptr)
 Calling this function causes the item to take the focus of the input device.
 
void setPaintEnabled (bool paintEnabled)
 
void raise ()
 
void lower ()
 
void sendMouseMoveEvent (const QPointF &position, QWaylandSeat *seat=nullptr)
 
- 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 surfaceChanged ()
 
void compositorChanged ()
 
void paintEnabledChanged ()
 
void touchEventsEnabledChanged ()
 
void originChanged ()
 
void surfaceDestroyed ()
 \qmlsignal void QtWayland.Compositor::WaylandQuickItem::surfaceDestroyed()
 
void inputEventsEnabledChanged ()
 
void focusOnClickChanged ()
 
void mouseMove (const QPointF &windowPosition)
 
void mouseRelease ()
 
void subsurfaceHandlerChanged ()
 
void outputChanged ()
 
void bufferLockedChanged ()
 
void allowDiscardFrontBufferChanged ()
 
- 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

 QWaylandQuickItem (QQuickItem *parent=nullptr)
 Constructs a QWaylandQuickItem with the given parent.
 
 ~QWaylandQuickItem () override
 Destroy the QWaylandQuickItem.
 
QWaylandCompositorcompositor () const
 
QWaylandViewview () const
 Returns the view rendered by this QWaylandQuickItem.
 
QWaylandSurfacesurface () const
 
void setSurface (QWaylandSurface *surface)
 
QWaylandSurface::Origin origin () const
 
bool isTextureProvider () const override
 Returns true if this item is a texture provider.
 
QSGTextureProvidertextureProvider () const override
 Returns the texture provider of this QWaylandQuickItem.
 
bool isPaintEnabled () const
 
bool touchEventsEnabled () const
 
void setTouchEventsEnabled (bool enabled)
 
bool inputEventsEnabled () const
 
void setInputEventsEnabled (bool enabled)
 
bool focusOnClick () const
 
void setFocusOnClick (bool focus)
 
bool inputRegionContains (const QPointF &localPosition) const
 Returns true if the input region of this item's surface contains the position given by localPosition.
 
Q_INVOKABLE QPointF mapToSurface (const QPointF &point) const
 \qmlmethod point WaylandQuickItem::mapToSurface(point point)
 
 Q_REVISION (1, 13) Q_INVOKABLE QPointF mapFromSurface(const QPointF &point) const
 
QObjectsubsurfaceHandler () const
 \qmlproperty object QtWayland.Compositor::WaylandQuickItem::subsurfaceHandler
 
void setSubsurfaceHandler (QObject *)
 
QWaylandOutputoutput () const
 
void setOutput (QWaylandOutput *output)
 
bool isBufferLocked () const
 
void setBufferLocked (bool locked)
 
bool allowDiscardFrontBuffer () const
 
void setAllowDiscardFrontBuffer (bool discard)
 
Q_INVOKABLE void setPrimary ()
 \qmlmethod WaylandQuickItem::setPrimary()
 
- 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
 
- 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 ()
 

Protected Member Functions

void mousePressEvent (QMouseEvent *event) override
 
void mouseMoveEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void hoverEnterEvent (QHoverEvent *event) override
 
void hoverMoveEvent (QHoverEvent *event) override
 
void hoverLeaveEvent (QHoverEvent *event) override
 
void keyPressEvent (QKeyEvent *event) override
 
void keyReleaseEvent (QKeyEvent *event) override
 
void touchEvent (QTouchEvent *event) override
 
void touchUngrabEvent () override
 This event handler can be reimplemented in a subclass to be notified when a touch ungrab event has occurred on this item.
 
virtual void surfaceChangedEvent (QWaylandSurface *newSurface, QWaylandSurface *oldSurface)
 
QSGNodeupdatePaintNode (QSGNode *oldNode, UpdatePaintNodeData *data) override
 Called on the render thread when it is time to sync the state of the item with the scene graph.
 
 QWaylandQuickItem (QWaylandQuickItemPrivate &dd, QQuickItem *parent=nullptr)
 
- 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.
 
virtual void itemChange (ItemChange, const ItemChangeData &)
 Called when change occurs for this item.
 
virtual void geometryChange (const QRectF &newGeometry, const QRectF &oldGeometry)
 
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.
 
void componentComplete () override
 \reimp Derived classes should call the base class method before adding their own actions to perform at componentComplete.
 
virtual void focusInEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive focus-in events for an item.
 
virtual void focusOutEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive focus-out 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 mouseUngrabEvent ()
 This event handler can be reimplemented in a subclass to be notified when a mouse ungrab event has occurred on this item.
 
virtual bool childMouseEventFilter (QQuickItem *, QEvent *)
 Reimplement this method to filter the pointer events that are received by this item's children.
 
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

QWaylandCompositorcompositor
 \qmlproperty WaylandCompositor QtWayland.Compositor::WaylandQuickItem::compositor
 
QWaylandSurfacesurface
 \qmlproperty WaylandSurface QtWayland.Compositor::WaylandQuickItem::surface
 
bool paintEnabled
 \qmlproperty bool QtWayland.Compositor::WaylandQuickItem::paintEnabled
 
bool touchEventsEnabled
 \qmlproperty bool QtWayland.Compositor::WaylandQuickItem::touchEventsEnabled
 
QWaylandSurface::Origin origin
 \qmlproperty enum QtWayland.Compositor::WaylandQuickItem::origin
 
bool inputEventsEnabled
 
bool focusOnClick
 \qmlproperty bool QtWayland.Compositor::WaylandQuickItem::focusOnClick
 
QObjectsubsurfaceHandler
 
QWaylandOutputoutput
 \qmlproperty WaylandOutput QtWayland.Compositor::WaylandQuickItem::output
 
bool bufferLocked
 \qmlproperty bool QtWayland.Compositor::WaylandQuickItem::bufferLocked
 
bool allowDiscardFrontBuffer
 By default, the item locks the current buffer until a new buffer is available and updatePaintNode() is called.
 
- 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

- 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...
 
- 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 inherited from QQuickItem
const QSizetargetSize = QSize())
 
qreal y const
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 

Detailed Description

\qmltype WaylandQuickItem \instantiates QWaylandQuickItem \inqmlmodule QtWayland.Compositor

Since
5.8

Provides a Qt Quick item that represents a WaylandView.

Qt Quick-based Wayland compositors can use this type to display a client's contents on an output device. It passes user input to the client.

\inmodule QtWaylandCompositor

Since
5.8

The QWaylandQuickItem class provides a Qt Quick item representing a QWaylandView.

When writing a QWaylandCompositor in Qt Quick, this class can be used to display a client's contents on an output device and will pass user input to the client.

Definition at line 26 of file qwaylandquickitem.h.

Constructor & Destructor Documentation

◆ QWaylandQuickItem() [1/2]

QWaylandQuickItem::QWaylandQuickItem ( QQuickItem * parent = nullptr)

Constructs a QWaylandQuickItem with the given parent.

Definition at line 452 of file qwaylandquickitem.cpp.

◆ ~QWaylandQuickItem()

QWaylandQuickItem::~QWaylandQuickItem ( )
override

Destroy the QWaylandQuickItem.

Definition at line 470 of file qwaylandquickitem.cpp.

References QQuickItem::activeFocusChanged(), d, and disconnect().

+ Here is the call graph for this function:

◆ QWaylandQuickItem() [2/2]

QWaylandQuickItem::QWaylandQuickItem ( QWaylandQuickItemPrivate & dd,
QQuickItem * parent = nullptr )
protected

Definition at line 460 of file qwaylandquickitem.cpp.

References QQuickItem::activeFocusChanged(), and QObject::connect().

+ Here is the call graph for this function:

Member Function Documentation

◆ allowDiscardFrontBuffer()

bool QWaylandQuickItem::allowDiscardFrontBuffer ( ) const

Definition at line 1007 of file qwaylandquickitem.cpp.

References d.

◆ allowDiscardFrontBufferChanged

void QWaylandQuickItem::allowDiscardFrontBufferChanged ( )
signal

◆ bufferLockedChanged

void QWaylandQuickItem::bufferLockedChanged ( )
signal

Referenced by QWaylandQuickItemPrivate::init().

+ Here is the caller graph for this function:

◆ compositor()

QWaylandCompositor * QWaylandQuickItem::compositor ( ) const

Definition at line 493 of file qwaylandquickitem.cpp.

References d.

◆ compositorChanged

void QWaylandQuickItem::compositorChanged ( )
signal

Referenced by setSurface().

+ Here is the caller graph for this function:

◆ focusOnClick()

bool QWaylandQuickItem::focusOnClick ( ) const

Definition at line 1197 of file qwaylandquickitem.cpp.

References d.

◆ focusOnClickChanged

void QWaylandQuickItem::focusOnClickChanged ( )
signal

Referenced by setFocusOnClick().

+ Here is the caller graph for this function:

◆ hoverEnterEvent()

void QWaylandQuickItem::hoverEnterEvent ( QHoverEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 661 of file qwaylandquickitem.cpp.

References compositor, d, inputRegionContains(), QQuickItem::mapToScene(), and QWaylandSeat::sendMouseMoveEvent().

+ Here is the call graph for this function:

◆ hoverLeaveEvent()

void QWaylandQuickItem::hoverLeaveEvent ( QHoverEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 703 of file qwaylandquickitem.cpp.

References compositor, d, and QWaylandSeat::setMouseFocus().

+ Here is the call graph for this function:

◆ hoverMoveEvent()

void QWaylandQuickItem::hoverMoveEvent ( QHoverEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 680 of file qwaylandquickitem.cpp.

References compositor, d, inputRegionContains(), QQuickItem::mapToScene(), mapToSurface(), QWaylandSeat::sendMouseMoveEvent(), and surface.

+ Here is the call graph for this function:

◆ inputEventsEnabled()

bool QWaylandQuickItem::inputEventsEnabled ( ) const

Definition at line 1593 of file qwaylandquickitem.cpp.

References d.

◆ inputEventsEnabledChanged

void QWaylandQuickItem::inputEventsEnabledChanged ( )
signal

Referenced by setInputEventsEnabled().

+ Here is the caller graph for this function:

◆ inputRegionContains()

bool QWaylandQuickItem::inputRegionContains ( const QPointF & localPosition) const

Returns true if the input region of this item's surface contains the position given by localPosition.

Definition at line 1217 of file qwaylandquickitem.cpp.

References mapToSurface(), and surface.

Referenced by hoverEnterEvent(), hoverMoveEvent(), mousePressEvent(), and touchEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isBufferLocked()

bool QWaylandQuickItem::isBufferLocked ( ) const

Definition at line 983 of file qwaylandquickitem.cpp.

References d.

◆ isPaintEnabled()

bool QWaylandQuickItem::isPaintEnabled ( ) const

Definition at line 1312 of file qwaylandquickitem.cpp.

References d.

◆ isTextureProvider()

bool QWaylandQuickItem::isTextureProvider ( ) const
overridevirtual

Returns true if this item is a texture provider.

The default implementation returns false.

This function can be called from any thread.

Reimplemented from QQuickItem.

Definition at line 559 of file qwaylandquickitem.cpp.

References d, and QQuickItem::isTextureProvider().

+ Here is the call graph for this function:

◆ keyPressEvent()

void QWaylandQuickItem::keyPressEvent ( QKeyEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 742 of file qwaylandquickitem.cpp.

References compositor, d, qWarning, QWaylandSeat::sendFullKeyEvent(), and QWaylandSeat::setKeyboardFocus().

+ Here is the call graph for this function:

◆ keyReleaseEvent()

void QWaylandQuickItem::keyReleaseEvent ( QKeyEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 759 of file qwaylandquickitem.cpp.

References compositor, d, and QWaylandSeat::sendFullKeyEvent().

+ Here is the call graph for this function:

◆ lower

void QWaylandQuickItem::lower ( )
slot

Definition at line 1610 of file qwaylandquickitem.cpp.

References d.

Referenced by QWaylandQuickShellSurfaceItem::setStaysOnBottom().

+ Here is the caller graph for this function:

◆ mapToSurface()

QPointF QWaylandQuickItem::mapToSurface ( const QPointF & point) const

\qmlmethod point WaylandQuickItem::mapToSurface(point point)

Maps the given point in this item's coordinate system to the equivalent point within the Wayland surface's coordinate system, and returns the mapped coordinate.

Maps the given point in this item's coordinate system to the equivalent point within the Wayland surface's coordinate system, and returns the mapped coordinate.

Definition at line 1237 of file qwaylandquickitem.cpp.

References d, QWaylandSurface::destinationSize, QSize::height(), QQuickItem::height, surface, QSize::width(), QQuickItem::width, QPointF::x(), and QPointF::y().

Referenced by hoverMoveEvent(), inputRegionContains(), mouseMoveEvent(), and mousePressEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mouseMove

void QWaylandQuickItem::mouseMove ( const QPointF & windowPosition)
signal

Referenced by mouseMoveEvent().

+ Here is the caller graph for this function:

◆ mouseMoveEvent()

void QWaylandQuickItem::mouseMoveEvent ( QMouseEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 607 of file qwaylandquickitem.cpp.

References compositor, d, emit, QQuickItem::mapToItem(), QQuickItem::mapToScene(), mapToSurface(), mouseMove(), output, QQuickItem::position(), QWaylandSeat::sendMouseMoveEvent(), surface, and view().

+ Here is the call graph for this function:

◆ mousePressEvent()

void QWaylandQuickItem::mousePressEvent ( QMouseEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 581 of file qwaylandquickitem.cpp.

References compositor, d, inputRegionContains(), mapToSurface(), QWaylandSeat::sendMouseMoveEvent(), QWaylandSeat::sendMousePressEvent(), and takeFocus().

+ Here is the call graph for this function:

◆ mouseRelease

void QWaylandQuickItem::mouseRelease ( )
signal

Referenced by mouseReleaseEvent().

+ Here is the caller graph for this function:

◆ mouseReleaseEvent()

void QWaylandQuickItem::mouseReleaseEvent ( QMouseEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 638 of file qwaylandquickitem.cpp.

References compositor, d, emit, mouseRelease(), and QWaylandSeat::sendMouseReleaseEvent().

+ Here is the call graph for this function:

◆ origin()

QWaylandSurface::Origin QWaylandQuickItem::origin ( ) const

Definition at line 553 of file qwaylandquickitem.cpp.

References d.

◆ originChanged

void QWaylandQuickItem::originChanged ( )
signal

◆ output()

QWaylandOutput * QWaylandQuickItem::output ( ) const

Definition at line 955 of file qwaylandquickitem.cpp.

References d.

◆ outputChanged

void QWaylandQuickItem::outputChanged ( )
signal

Referenced by QWaylandQuickItemPrivate::init().

+ Here is the caller graph for this function:

◆ paintEnabledChanged

void QWaylandQuickItem::paintEnabledChanged ( )
signal

Referenced by setPaintEnabled().

+ Here is the caller graph for this function:

◆ Q_REVISION()

QWaylandQuickItem::Q_REVISION ( 1 ,
13  ) const &

◆ raise

void QWaylandQuickItem::raise ( )
slot

Definition at line 1626 of file qwaylandquickitem.cpp.

References d.

Referenced by QWaylandQuickShellSurfaceItem::setStaysOnTop().

+ Here is the caller graph for this function:

◆ sendMouseMoveEvent

void QWaylandQuickItem::sendMouseMoveEvent ( const QPointF & position,
QWaylandSeat * seat = nullptr )
slot

Definition at line 1642 of file qwaylandquickitem.cpp.

References compositor, QQuickItem::position(), qWarning, QWaylandSeat::sendMouseMoveEvent(), and view().

+ Here is the call graph for this function:

◆ setAllowDiscardFrontBuffer()

void QWaylandQuickItem::setAllowDiscardFrontBuffer ( bool discard)

Definition at line 1013 of file qwaylandquickitem.cpp.

References d.

◆ setBufferLocked()

void QWaylandQuickItem::setBufferLocked ( bool locked)

Definition at line 989 of file qwaylandquickitem.cpp.

References d.

◆ setFocusOnClick()

void QWaylandQuickItem::setFocusOnClick ( bool focus)

Definition at line 1203 of file qwaylandquickitem.cpp.

References d, emit, focus, and focusOnClickChanged().

+ Here is the call graph for this function:

◆ setInputEventsEnabled()

void QWaylandQuickItem::setInputEventsEnabled ( bool enabled)

Definition at line 1599 of file qwaylandquickitem.cpp.

References d, emit, inputEventsEnabledChanged(), and QQuickItem::setEnabled().

+ Here is the call graph for this function:

◆ setOutput()

void QWaylandQuickItem::setOutput ( QWaylandOutput * output)

Definition at line 961 of file qwaylandquickitem.cpp.

References d, and output.

◆ setPaintEnabled

void QWaylandQuickItem::setPaintEnabled ( bool paintEnabled)
slot

Definition at line 1318 of file qwaylandquickitem.cpp.

References d, emit, QQuickItem::enabled, paintEnabledChanged(), and QQuickItem::update().

Referenced by QWaylandQuickHardwareLayer::setSceneGraphPainting().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setPrimary()

void QWaylandQuickItem::setPrimary ( )

\qmlmethod WaylandQuickItem::setPrimary()

Makes this WaylandQuickItem the primary view for the surface.

Makes this QWaylandQuickItem's view the primary view for the surface.

See also
QWaylandSurface::primaryView

Definition at line 1030 of file qwaylandquickitem.cpp.

References d.

◆ setSubsurfaceHandler()

void QWaylandQuickItem::setSubsurfaceHandler ( QObject * handler)

Definition at line 936 of file qwaylandquickitem.cpp.

References d, emit, and subsurfaceHandlerChanged().

+ Here is the call graph for this function:

◆ setSurface()

void QWaylandQuickItem::setSurface ( QWaylandSurface * surface)

Definition at line 526 of file qwaylandquickitem.cpp.

References compositorChanged(), d, emit, surface, surfaceChanged(), and QQuickItem::update().

Referenced by QtWayland::IviSurfaceIntegration::IviSurfaceIntegration(), QtWayland::QtShellIntegration::QtShellIntegration(), QtWayland::WlShellIntegration::WlShellIntegration(), QtWayland::XdgPopupIntegration::XdgPopupIntegration(), QtWayland::XdgToplevelIntegration::XdgToplevelIntegration(), QtWayland::IviSurfaceIntegration::~IviSurfaceIntegration(), QtWayland::QtShellIntegration::~QtShellIntegration(), and QtWayland::WlShellIntegration::~WlShellIntegration().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setTouchEventsEnabled()

void QWaylandQuickItem::setTouchEventsEnabled ( bool enabled)

Definition at line 1584 of file qwaylandquickitem.cpp.

References d, emit, QQuickItem::enabled, and touchEventsEnabledChanged().

+ Here is the call graph for this function:

◆ subsurfaceHandler()

QObject * QWaylandQuickItem::subsurfaceHandler ( ) const

\qmlproperty object QtWayland.Compositor::WaylandQuickItem::subsurfaceHandler

This property provides a way to override the default subsurface behavior.

By default, Qt will create a new SurfaceItem as a child of this item, and maintain the correct position.

To override the default, assign a handler object to this property. The handler should implement a handleSubsurfaceAdded(WaylandSurface) function.

ShellSurfaceItem {
function handleSubsurfaceAdded(child) {
// create custom surface item, and connect the subsurfacePositionChanged signal
}
}
}
QLayoutItem * child
[0]

The default value of this property is null.

Definition at line 930 of file qwaylandquickitem.cpp.

References d.

◆ subsurfaceHandlerChanged

void QWaylandQuickItem::subsurfaceHandlerChanged ( )
signal

Referenced by setSubsurfaceHandler().

+ Here is the caller graph for this function:

◆ surface()

QWaylandSurface * QWaylandQuickItem::surface ( ) const

Definition at line 520 of file qwaylandquickitem.cpp.

References d.

◆ surfaceChanged

void QWaylandQuickItem::surfaceChanged ( )
signal

Referenced by Vsp2Layer::Vsp2Layer(), QWaylandQuickItemPrivate::init(), and setSurface().

+ Here is the caller graph for this function:

◆ surfaceChangedEvent()

void QWaylandQuickItem::surfaceChangedEvent ( QWaylandSurface * newSurface,
QWaylandSurface * oldSurface )
protectedvirtual

Definition at line 837 of file qwaylandquickitem.cpp.

References Q_UNUSED.

◆ surfaceDestroyed

void QWaylandQuickItem::surfaceDestroyed ( )
signal

\qmlsignal void QtWayland.Compositor::WaylandQuickItem::surfaceDestroyed()

This signal is emitted when the client has destroyed the wl_surface associated with the WaylandQuickItem. The handler for this signal is expected to either destroy the WaylandQuickItem immediately or start a close animation and then destroy the Item.

If an animation is started, bufferLocked should be set to ensure the item keeps its content until the animation finishes

See also
bufferLocked

This signal is emitted when the client has destroyed the wl_surface associated with the QWaylandQuickItem. The handler for this signal is expected to either destroy the QWaylandQuickItem immediately or start a close animation and then destroy the Item.

If an animation is started, bufferLocked should be set to ensure the item keeps its content until the animation finishes

See also
QWaylandQuickItem::bufferLocked

Referenced by QWaylandQuickItemPrivate::init(), QWaylandQuickShellSurfaceItemPrivate::maybeCreateAutoPopup(), and QWaylandQtShellChrome::setShellSurfaceItem().

+ Here is the caller graph for this function:

◆ takeFocus

void QWaylandQuickItem::takeFocus ( QWaylandSeat * device = nullptr)
virtualslot

Calling this function causes the item to take the focus of the input device.

Definition at line 1102 of file qwaylandquickitem.cpp.

References QWaylandSurface::client, compositor, device, QWaylandCompositorExtensionTemplate< QWaylandQtTextInputMethod >::findIn(), QWaylandCompositorExtensionTemplate< QWaylandTextInput >::findIn(), QWaylandCompositorExtensionTemplate< QWaylandTextInputV3 >::findIn(), QQuickItem::forceActiveFocus(), Q_FUNC_INFO, qCDebug, QWaylandClient::QtTextInputMethodV1, QWaylandQtTextInputMethod::setFocus(), QWaylandTextInput::setFocus(), QWaylandTextInputV3::setFocus(), surface, testFlag(), QWaylandClient::textInputProtocols(), QWaylandClient::TextInputV2, and QWaylandClient::TextInputV3.

Referenced by mousePressEvent(), and touchEvent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ textureProvider()

QSGTextureProvider * QWaylandQuickItem::textureProvider ( ) const
overridevirtual

Returns the texture provider of this QWaylandQuickItem.

Reimplemented from QQuickItem.

Definition at line 568 of file qwaylandquickitem.cpp.

References d, QQuickItem::isTextureProvider(), and QQuickItem::textureProvider().

+ Here is the call graph for this function:

◆ touchEvent()

void QWaylandQuickItem::touchEvent ( QTouchEvent * event)
overrideprotectedvirtual

Reimplemented from QQuickItem.

Definition at line 773 of file qwaylandquickitem.cpp.

References compositor, d, inputRegionContains(), QQuickItem::mapToScene(), QWaylandSeat::mouseFocus(), QWaylandSeat::sendFullTouchEvent(), QWaylandSeat::sendMouseMoveEvent(), surface, takeFocus(), QEvent::TouchBegin, QEvent::TouchCancel, and QEvent::TouchEnd.

+ Here is the call graph for this function:

◆ touchEventsEnabled()

bool QWaylandQuickItem::touchEventsEnabled ( ) const

Definition at line 1343 of file qwaylandquickitem.cpp.

References d.

◆ touchEventsEnabledChanged

void QWaylandQuickItem::touchEventsEnabledChanged ( )
signal

Referenced by setTouchEventsEnabled().

+ Here is the caller graph for this function:

◆ touchUngrabEvent()

void QWaylandQuickItem::touchUngrabEvent ( )
overrideprotectedvirtual

This event handler can be reimplemented in a subclass to be notified when a touch ungrab event has occurred on this item.

Reimplemented from QQuickItem.

Definition at line 808 of file qwaylandquickitem.cpp.

References QWaylandSurface::client, d, QWaylandSeat::sendTouchCancelEvent(), and surface.

+ Here is the call graph for this function:

◆ updatePaintNode()

QSGNode * QWaylandQuickItem::updatePaintNode ( QSGNode * oldNode,
UpdatePaintNodeData * updatePaintNodeData )
overrideprotectedvirtual

Called on the render thread when it is time to sync the state of the item with the scene graph.

The function is called as a result of QQuickItem::update(), if the user has set the QQuickItem::ItemHasContents flag on the item.

The function should return the root of the scene graph subtree for this item. Most implementations will return a single QSGGeometryNode containing the visual representation of this item. oldNode is the node that was returned the last time the function was called. updatePaintNodeData provides a pointer to the QSGTransformNode associated with this QQuickItem.

QSGNode *MyItem::updatePaintNode(QSGNode *node, UpdatePaintNodeData *)
{
QSGSimpleRectNode *n = static_cast<QSGSimpleRectNode *>(node);
if (!n) {
n->setColor(Qt::red);
}
n->setRect(boundingRect());
return n;
}
virtual QRectF boundingRect() const
Returns the extents of the item in its own coordinate system: a rectangle from {0,...
\group qtquick-scenegraph-nodes \title Qt Quick Scene Graph Node classes
Definition qsgnode.h:37
The QSGSimpleRectNode class is a convenience class for drawing solid filled rectangles using scenegra...
@ red
Definition qnamespace.h:35
GLfloat n

The main thread is blocked while this function is executed so it is safe to read values from the QQuickItem instance and other objects in the main thread.

If no call to QQuickItem::updatePaintNode() result in actual scene graph changes, like QSGNode::markDirty() or adding and removing nodes, then the underlying implementation may decide to not render the scene again as the visual outcome is identical.

Warning
It is crucial that graphics operations and interaction with the scene graph happens exclusively on the render thread, primarily during the QQuickItem::updatePaintNode() call. The best rule of thumb is to only use classes with the "QSG" prefix inside the QQuickItem::updatePaintNode() function.
This function is called on the render thread. This means any QObjects or thread local storage that is created will have affinity to the render thread, so apply caution when doing anything other than rendering in this function. Similarly for signals, these will be emitted on the render thread and will thus often be delivered via queued connections.
Note
All classes with QSG prefix should be used solely on the scene graph's rendering thread. See \l {Scene Graph and Rendering} for more information.
See also
QSGMaterial, QSGGeometryNode, QSGGeometry, QSGFlatColorMaterial, QSGTextureMaterial, QSGNode::markDirty(), {Graphics Resource Handling}

Reimplemented from QQuickItem.

Definition at line 1451 of file qwaylandquickitem.cpp.

References QWaylandSurface::bufferScale, compositor, QObject::connect(), d, QSGGeometry::defaultAttributes_TexturedPoint2D(), QObject::destroyed(), disconnect(), QSGBasicGeometryNode::geometry(), QWaylandQuickItemPrivate::get(), QRectF::height(), QSize::height(), QQuickItem::height, QRectF::isValid(), QSGTexture::Linear, QSGGeometryNode::material(), QWaylandSurface::OriginBottomLeft, QSGNode::OwnsGeometry, QSGNode::OwnsMaterial, Q_ASSERT, qCWarning, QT_CONFIG, rect, QSGSimpleTextureNode::setFiltering(), QSGNode::setFlag(), QSGBasicGeometryNode::setGeometry(), QSGGeometryNode::setMaterial(), QSGSimpleTextureNode::setRect(), QSGSimpleTextureNode::setSourceRect(), QSGSimpleTextureNode::setTexture(), QQuickItem::smooth, QWaylandSurface::sourceGeometry, surface, QSGGeometry::updateTexturedRectGeometry(), QRectF::width(), QSize::width(), QQuickItem::width, QRectF::x(), and QRectF::y().

+ Here is the call graph for this function:

◆ view()

QWaylandView * QWaylandQuickItem::view ( ) const

Returns the view rendered by this QWaylandQuickItem.

Definition at line 502 of file qwaylandquickitem.cpp.

References d.

Referenced by Vsp2Layer::Vsp2Layer(), mouseMoveEvent(), and sendMouseMoveEvent().

+ Here is the caller graph for this function:

Property Documentation

◆ allowDiscardFrontBuffer

QWaylandQuickItem::allowDiscardFrontBuffer
readwrite

By default, the item locks the current buffer until a new buffer is available and updatePaintNode() is called.

Set this property to true to allow Qt to release the buffer immediately when the throttling view is no longer using it. This is useful for items that have slow update intervals.

Definition at line 40 of file qwaylandquickitem.h.

Referenced by QWaylandQuickItemPrivate::init().

◆ bufferLocked

QWaylandQuickItem::bufferLocked
readwrite

\qmlproperty bool QtWayland.Compositor::WaylandQuickItem::bufferLocked

This property holds whether the item's buffer is currently locked. As long as the buffer is locked, it will not be released and returned to the client.

The default is false.

This property holds whether the item's buffer is currently locked. As long as the buffer is locked, it will not be released and returned to the client.

The default is false.

Definition at line 39 of file qwaylandquickitem.h.

◆ compositor

QWaylandQuickItem::compositor
read

\qmlproperty WaylandCompositor QtWayland.Compositor::WaylandQuickItem::compositor

This property holds the compositor for the surface rendered by this WaylandQuickItem.

This property holds the compositor for the surface rendered by this QWaylandQuickItem.

Definition at line 30 of file qwaylandquickitem.h.

Referenced by hoverEnterEvent(), hoverLeaveEvent(), hoverMoveEvent(), keyPressEvent(), keyReleaseEvent(), mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), sendMouseMoveEvent(), takeFocus(), touchEvent(), and updatePaintNode().

◆ focusOnClick

QWaylandQuickItem::focusOnClick
readwrite

\qmlproperty bool QtWayland.Compositor::WaylandQuickItem::focusOnClick

This property specifies whether the WaylandQuickItem should take focus when it is clicked or touched.

The default is true.

This property specifies whether the QWaylandQuickItem should take focus when it is clicked or touched.

The default is true.

Definition at line 36 of file qwaylandquickitem.h.

◆ inputEventsEnabled

bool QWaylandQuickItem::inputEventsEnabled
readwrite

Definition at line 35 of file qwaylandquickitem.h.

◆ origin

QWaylandQuickItem::origin
read

\qmlproperty enum QtWayland.Compositor::WaylandQuickItem::origin

This property holds the origin of the QWaylandQuickItem.

This property holds the origin of the QWaylandQuickItem.

Definition at line 34 of file qwaylandquickitem.h.

◆ output

QWaylandQuickItem::output
readwrite

\qmlproperty WaylandOutput QtWayland.Compositor::WaylandQuickItem::output

This property holds the output on which this item is displayed.

This property holds the output on which this item is displayed.

Definition at line 38 of file qwaylandquickitem.h.

Referenced by mouseMoveEvent(), and setOutput().

◆ paintEnabled

QWaylandQuickItem::paintEnabled
readwrite

\qmlproperty bool QtWayland.Compositor::WaylandQuickItem::paintEnabled

Returns true if the item is hidden, though the texture is still updated. As opposed to hiding the item by setting \l{Item::visible}{visible} to false, setting this property to false will not prevent mouse or keyboard input from reaching item.

Holds true if the item is hidden, though the texture is still updated. As opposed to hiding the item by setting \l{QQuickItem::}{visible} to false, setting this property to false will not prevent mouse or keyboard input from reaching item.

Definition at line 32 of file qwaylandquickitem.h.

◆ subsurfaceHandler

QObject * QWaylandQuickItem::subsurfaceHandler
readwrite

Definition at line 37 of file qwaylandquickitem.h.

◆ surface

QWaylandQuickItem::surface
readwrite

\qmlproperty WaylandSurface QtWayland.Compositor::WaylandQuickItem::surface

This property holds the surface rendered by this WaylandQuickItem.

This property holds the surface rendered by this QWaylandQuickItem.

Definition at line 31 of file qwaylandquickitem.h.

Referenced by Vsp2Layer::enableVspLayer(), QWaylandQuickShellEventFilter::eventFilter(), Vsp2Layer::handleBufferCommitted(), Vsp2Layer::handleSurfaceChanged(), hoverMoveEvent(), inputRegionContains(), mapToSurface(), mouseMoveEvent(), setSurface(), takeFocus(), touchEvent(), touchUngrabEvent(), and updatePaintNode().

◆ touchEventsEnabled

QWaylandQuickItem::touchEventsEnabled
readwrite

\qmlproperty bool QtWayland.Compositor::WaylandQuickItem::touchEventsEnabled

This property holds true if touch events are forwarded to the client surface, false otherwise.

This property holds true if touch events are forwarded to the client surface, false otherwise.

Definition at line 33 of file qwaylandquickitem.h.


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