Sur cette page

QWaylandView Class

La classe QWaylandView représente une vue d'une surface sur un périphérique de sortie. En savoir plus...

En-tête : #include <QWaylandView>
CMake : find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor)
target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor)
qmake : QT += waylandcompositor
Hérite de : QObject

Propriétés

Fonctions publiques

QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)
virtual ~QWaylandView() override
virtual bool advance()
bool allowDiscardFrontBuffer() const
virtual void bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage)
virtual QWaylandBufferRef currentBuffer()
virtual QRegion currentDamage()
virtual void discardCurrentBuffer()
bool isBufferLocked() const
bool isPrimary() const
QWaylandOutput *output() const
void setAllowDiscardFrontBuffer(bool discard)
void setBufferLocked(bool locked)
void setOutput(QWaylandOutput *output)
void setPrimary()
void setSurface(QWaylandSurface *surface)
QWaylandSurface *surface() const
struct wl_resource *surfaceResource() const

Signaux

Description détaillée

QWaylandView correspond à la présentation d’une surface sur une sortie spécifique, en gérant les tampons qui contiennent le contenu à afficher. Vous pouvez avoir plusieurs vues sur la même surface.

Documentation des propriétés

allowDiscardFrontBuffer : bool

Par défaut, la vue verrouille le tampon actuel jusqu’à ce que la fonction ` advance()` soit appelée. Définissez cette propriété sur ` true ` pour permettre à Qt de libérer le tampon lorsque la vue principale ne l’utilise plus.

Cela permet d’éviter qu’une vue secondaire, dont la fréquence de mise à jour est inférieure, ne ralentisse la fréquence d’affichage de l’application cliente.

Fonctions d'accès :

bool allowDiscardFrontBuffer() const
void setAllowDiscardFrontBuffer(bool discard)

Signal de notification :

void allowDiscardFrontBufferChanged()

bufferLocked : bool

Cette propriété indique si le tampon de la vue est actuellement verrouillé. Lorsque le tampon est verrouillé, la fonction advance() ne passe pas au tampon suivant et renvoie la valeur false.

La valeur par défaut est ` false`.

Fonctions d'accès :

bool isBufferLocked() const
void setBufferLocked(bool locked)

Signal de notification :

void bufferLockedChanged()

output : QWaylandOutput*

Cette propriété contient la sortie sur laquelle cette vue affiche sa surface.

Fonctions d'accès :

QWaylandOutput *output() const
void setOutput(QWaylandOutput *output)

Signal de notification :

void outputChanged()

surface : QWaylandSurface*

Cette propriété contient la surface affichée par cette QWaylandView.

Fonctions d'accès :

QWaylandSurface *surface() const
void setSurface(QWaylandSurface *surface)

Signal de notification :

void surfaceChanged()

Documentation des fonctions membres

QWaylandView::QWaylandView(QObject *renderObject = nullptr, QObject *parent = nullptr)

Crée un objet `QWaylandView` avec les paramètres ` renderObject ` et ` parent` fournis.

[override virtual noexcept] QWaylandView::~QWaylandView()

Supprime l'QWaylandView.

[virtual] bool QWaylandView::advance()

Met à jour le tampon actuel et la zone de dégâts avec la dernière version validée par le client. Renvoie « true » si du nouveau contenu a été validé depuis le dernier appel à la fonction advance(). Sinon, renvoie « false ».

Voir également currentBuffer() et currentDamage().

[virtual] void QWaylandView::bufferCommitted(const QWaylandBufferRef &buffer, const QRegion &damage)

Cette fonction est appelée lorsqu’une nouvelle « buffer » est validée sur la surface de cette vue. « damage » contient la région qui diffère du tampon actuel, c’est-à-dire la région qui doit être mise à jour. La nouvelle « buffer » deviendra active lors du prochain appel à « advance() ».

Les sous-classes qui réimplémentent cette fonction doivent appeler l'implémentation de base.

[virtual] QWaylandBufferRef QWaylandView::currentBuffer()

Renvoie une référence au tampon actuel de cette vue.

[virtual] QRegion QWaylandView::currentDamage()

Renvoie la zone de dégâts actuelle de cette vue.

[virtual] void QWaylandView::discardCurrentBuffer()

Forcer la vue à vider son tampon actuel, afin de permettre sa réutilisation côté client.

bool QWaylandView::isPrimary() const

Renvoie « true » si cette QWaylandView est la vue principale de la QWaylandSurface

Voir aussi QWaylandSurface::primaryView.

void QWaylandView::setPrimary()

Définit cette QWaylandView comme vue principale de la surface.

Cette fonction n'a aucun effet si cet « QWaylandView » ne contient aucun élément. QWaylandSurface

Voir également ` isPrimary()` et ` QWaylandSurface::primaryView`.

struct wl_resource *QWaylandView::surfaceResource() const

Renvoie la ressource de surface Wayland correspondant à cette instance de ` QWaylandView`.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.