4#ifndef QWAYLANDQUICKITEM_P_H
5#define QWAYLANDQUICKITEM_P_H
18#include <QtQuick/private/qquickitem_p.h>
19#include <QtQuick/QSGMaterialShader>
20#include <QtQuick/QSGMaterial>
22#include <QtWaylandCompositor/QWaylandQuickItem>
23#include <QtWaylandCompositor/QWaylandOutput>
41 void setupExternalOESShader(
const QString &shaderFilename);
48 ~QWaylandBufferMaterial()
override;
54 void updateScenegraphTextures(
QRhi *rhi);
60 friend QWaylandBufferMaterialShader;
63 void ensureTextures(
int count);
114 q->setAcceptTouchEvents(
enable);
115 q->setAcceptHoverEvents(
enable);
128 virtual void raise();
129 virtual void lower();
145 bool paintByProvider =
false;
The QMatrix4x4 class represents a 4x4 transformation matrix in 3D space.
static QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
\threadsafe
\inmodule QtCore\reentrant
\qmltype Window \instantiates QQuickWindow \inqmlmodule QtQuick
The QSGMaterialShader class represents a graphics API independent shader program.
virtual bool updateUniformData(RenderState &state, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
This function is called by the scene graph to get the contents of the shader program's uniform buffer...
virtual void updateSampledImage(RenderState &state, int binding, QSGTexture **texture, QSGMaterial *newMaterial, QSGMaterial *oldMaterial)
This function is called by the scene graph to prepare use of sampled images in the shader,...
The QSGMaterial class encapsulates rendering state for a shader program.
virtual QSGMaterialShader * createShader(QSGRendererInterface::RenderMode renderMode) const =0
This function returns a new instance of a the QSGMaterialShader implementation used to render geometr...
virtual QSGMaterialType * type() const =0
This function is called by the scene graph to query an identifier that is unique to the QSGMaterialSh...
RenderMode
\value RenderMode2D Normal 2D rendering \value RenderMode2DNoDepthBuffer Normal 2D rendering with dep...
T * data() const noexcept
Returns the value of the pointer referenced by this object.
void reset(T *other=nullptr) noexcept(noexcept(Cleanup::cleanup(std::declval< T * >())))
Deletes the existing object it is pointing to (if any), and sets its pointer to other.
\macro QT_RESTRICTED_CAST_FROM_ASCII
\inmodule QtWaylandCompositor
\qmltype WaylandOutput \instantiates QWaylandOutput \inqmlmodule QtWayland.Compositor
QWaylandQuickItem * findSibling(QWaylandSurface *surface) const
qreal scaleFactor() const
void setInputEventsEnabled(bool enable)
QQuickWindow * connectedWindow
QWaylandSurface::Origin origin
QScopedPointer< QWaylandView > view
QWaylandOutput * connectedOutput
QPointer< QObject > subsurfaceHandler
QMetaObject::Connection texProviderConnection
bool shouldSendInputEvents() const
void placeBelowSibling(QWaylandQuickItem *sibling)
void placeAboveSibling(QWaylandQuickItem *sibling)
QWaylandSurfaceTextureProvider * provider
QList< QWaylandSeat * > touchingSeats
QWaylandQuickItemPrivate()=default
static const QWaylandQuickItemPrivate * get(const QWaylandQuickItem *item)
QPointer< QWaylandSurface > oldSurface
\qmltype WaylandQuickItem \instantiates QWaylandQuickItem \inqmlmodule QtWayland.Compositor
bool allowDiscardFrontBuffer
By default, the item locks the current buffer until a new buffer is available and updatePaintNode() i...
void surfaceDestroyed()
\qmlsignal void QtWayland.Compositor::WaylandQuickItem::surfaceDestroyed()
void bufferLockedChanged()
\qmltype WaylandSurface \instantiates QWaylandSurface \inqmlmodule QtWayland.Compositor
Origin
This enum type is used to specify the origin of a QWaylandSurface's buffer.
\qmltype WaylandView \instantiates QWaylandView \inqmlmodule QtWayland.Compositor
void allowDiscardFrontBufferChanged()
QWaylandSurface * surface
\qmlproperty WaylandSurface QtWayland.Compositor::WaylandView::surface
void bufferLockedChanged()
Combined button and popup list for selecting options.
GLenum GLenum GLsizei count
typedef GLenum(GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSKHRPROC)(void)
GLint GLsizei GLsizei GLenum format
GLdouble GLdouble GLdouble GLdouble q
socketLayer bind(QHostAddress::Any, 4000)
The QSGMaterialType class is used as a unique type token in combination with QSGMaterial.