Sur cette page

QWaylandOutput Class

La classe `QWaylandOutput` représente une zone d'affichage gérée par le compositeur. En savoir plus...

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

Types publics

enum Subpixel { SubpixelUnknown, SubpixelNone, SubpixelHorizontalRgb, SubpixelHorizontalBgr, SubpixelVerticalRgb, SubpixelVerticalBgr }
enum Transform { TransformNormal, Transform90, Transform180, Transform270, TransformFlipped, …, TransformFlipped270 }

Propriétés

Fonctions publiques

QWaylandOutput(QWaylandCompositor *compositor, QWindow *window)
virtual ~QWaylandOutput() override
void addMode(const QWaylandOutputMode &mode, bool preferred = false)
QRect availableGeometry() const
QWaylandCompositor *compositor() const
QWaylandOutputMode currentMode() const
void frameStarted()
QRect geometry() const
QString manufacturer() const
QString model() const
QList<QWaylandOutputMode> modes() const
QSize physicalSize() const
QPoint position() const
int scaleFactor() const
void sendFrameCallbacks()
void setAvailableGeometry(const QRect &availableGeometry)
void setCurrentMode(const QWaylandOutputMode &mode)
void setManufacturer(const QString &manufacturer)
void setModel(const QString &model)
void setPhysicalSize(const QSize &size)
void setPosition(const QPoint &pt)
void setScaleFactor(int scale)
void setSizeFollowsWindow(bool follow)
void setSubpixel(const QWaylandOutput::Subpixel &subpixel)
void setTransform(const QWaylandOutput::Transform &transform)
void setWindow(QWindow *window)
bool sizeFollowsWindow() const
QWaylandOutput::Subpixel subpixel() const
QWaylandOutput::Transform transform() const
virtual void update()
QWindow *window() const

Signaux

Membres publics statiques

QWaylandOutput *fromResource(wl_resource *resource)

Description détaillée

La classe QWaylandOutput gère une zone rectangulaire située dans les limites de la géométrie du compositeur, afin de l'utiliser pour afficher le contenu du client. Il peut s'agir, par exemple, d'un écran géré par l'interface WaylandCompositor.

Cette classe correspond à l'interface ` wl_output ` du protocole Wayland.

Documentation sur les types de membres

enum QWaylandOutput::Subpixel

Ce type d'énumération sert à spécifier la disposition des sous-pixels d'une image « QWaylandOutput ».

ConstanteValeurDescription
QWaylandOutput::SubpixelUnknown0La disposition des sous-pixels n'est pas définie.
QWaylandOutput::SubpixelNone1Il n’y a pas de sous-pixels.
QWaylandOutput::SubpixelHorizontalRgb2Les sous-pixels sont disposés horizontalement dans l'ordre rouge, vert, bleu.
QWaylandOutput::SubpixelHorizontalBgr3Les sous-pixels sont disposés horizontalement dans l'ordre bleu, vert, rouge.
QWaylandOutput::SubpixelVerticalRgb4Les sous-pixels sont disposés verticalement dans l'ordre rouge, vert, bleu.
QWaylandOutput::SubpixelVerticalBgr5Les sous-pixels sont disposés verticalement dans l'ordre bleu, vert, rouge.

Voir également QWaylandOutput::subpixel.

enum QWaylandOutput::Transform

* * Ce type d'énumération sert à spécifier l'orientation d'un QWaylandOutput. * *

ConstanteValeurDescription
QWaylandOutput::TransformNormal0L'orientation est normale. *
QWaylandOutput::Transform901L'orientation est pivotée de 90 degrés. *
QWaylandOutput::Transform1802L'orientation est pivotée de 180 degrés. *
QWaylandOutput::Transform2703L'orientation est pivotée de 270 degrés. *
QWaylandOutput::TransformFlipped4L'orientation est inversée. *
QWaylandOutput::TransformFlipped905L'orientation est inversée et pivotée de 90 degrés. *
QWaylandOutput::TransformFlipped1806L'orientation est inversée et pivotée de 180 degrés. *
QWaylandOutput::TransformFlipped2707L'orientation est inversée et pivotée de 270 degrés. * *

Voir également QWaylandOutput::transform.

Documentation sur les propriétés

availableGeometry : QRect

Cette propriété contient la géométrie de l'QWaylandOutput, qui permet d'afficher du contenu. La géométrie disponible est définie dans l'espace de coordonnées de sortie, commence à 0,0 et, par défaut, couvre toute la surface de sortie.

Fonctions d'accès :

QRect availableGeometry() const
void setAvailableGeometry(const QRect &availableGeometry)

Signal de notification :

void availableGeometryChanged()

Voir également « QWaylandOutput::currentMode » et « QWaylandOutput::geometry ».

compositor : QWaylandCompositor*

Cette propriété indique quel compositeur affiche le contenu sur cette QWaylandOutput.

Remarque : cette propriété ne peut être définie qu'une seule fois, avant l'initialisation de l'QWaylandOutput.

Fonctions d'accès :

QWaylandCompositor *compositor() const

Signal de notification :

void compositorChanged()

[read-only] geometry : QRect

Cette propriété contient la géométrie de l'QWaylandOutput.

Fonctions d'accès :

QRect geometry() const

Signal de notification :

void geometryChanged()

Voir aussi QWaylandOutput::currentMode.

manufacturer : QString

Cette propriété contient une description textuelle du fabricant de l'écran géré par cette QWaylandOutput.

Fonctions d'accès :

QString manufacturer() const
void setManufacturer(const QString &manufacturer)

Signal de notification :

void manufacturerChanged()

model : QString

Cette propriété contient une description textuelle du modèle de l'affichage géré par cet QWaylandOutput.

Fonctions d’accès :

QString model() const
void setModel(const QString &model)

Signal de notification :

void modelChanged()

physicalSize : QSize

Cette propriété indique la taille physique de l'QWaylandOutput, en millimètres.

Fonctions d'accès :

QSize physicalSize() const
void setPhysicalSize(const QSize &size)

Signal de notification :

void physicalSizeChanged()

Voir également « QWaylandOutput::geometry » et « QWaylandOutput::currentMode ».

position : QPoint

Cette propriété indique la position de cet QWaylandOutput dans le système de coordonnées du compositeur.

Fonctions d'accès :

QPoint position() const
void setPosition(const QPoint &pt)

Signal de notification :

void positionChanged()

scaleFactor : int

Cette propriété définit le facteur de mise à l'échelle appliqué par l'QWaylandCompositor aux tampons de surface avant leur affichage. Elle est utilisée sur les périphériques de sortie à haute densité, où un contenu non mis à l'échelle serait trop petit pour être exploitable. Le client peut à son tour définir le facteur d'échelle de son tampon afin de l'adapter à la sortie s'il préfère fournir un contenu en haute résolution adapté au périphérique de sortie.

La valeur par défaut est 1 (pas de mise à l'échelle).

Fonctions d'accès :

int scaleFactor() const
void setScaleFactor(int scale)

Signal de notification :

void scaleFactorChanged()

sizeFollowsWindow : bool

Cette propriété détermine si la taille de l'QWaylandOutput correspond à celle de sa fenêtre.

Si cette propriété est définie sur « true », tous les modes précédemment ajoutés sont remplacés par un mode adapté à la taille de la fenêtre et à la fréquence de rafraîchissement de l'écran.

La valeur par défaut est « false ».

Fonctions d'accès :

bool sizeFollowsWindow() const
void setSizeFollowsWindow(bool follow)

Signal de notification :

void sizeFollowsWindowChanged()

subpixel : QWaylandOutput::Subpixel

Cette propriété contient la disposition des sous-pixels de cette QWaylandOutput. La valeur par défaut est QWaylandOutput::SubpixelUnknown.

Fonctions d'accès :

QWaylandOutput::Subpixel subpixel() const
void setSubpixel(const QWaylandOutput::Subpixel &subpixel)

Signal de notification :

void subpixelChanged()

transform : QWaylandOutput::Transform

Cette propriété contient la transformation que l'QWaylandCompositor applique à une surface afin de compenser l'orientation de l'QWaylandOutput.

La valeur par défaut est « QWaylandOutput::TransformNormal ».

Fonctions d'accès :

QWaylandOutput::Transform transform() const
void setTransform(const QWaylandOutput::Transform &transform)

Signal de notification :

void transformChanged()

window : QWindow*

Cette propriété contient l'QWindow s relatives à cette QWaylandOutput.

Fonctions d’accès :

QWindow *window() const
void setWindow(QWindow *window)

Signal de notification :

void windowChanged()

Documentation des fonctions membres

QWaylandOutput::QWaylandOutput(QWaylandCompositor *compositor, QWindow *window)

Construit un objet `QWaylandOutput` dans ` compositor ` et avec l'window` spécifié. La fonction ` create()` doit être appelée sur l'compositor avant de construire un `QWaylandOutput` pour celui-ci.

L'objet QWaylandOutput est initialisé ultérieurement, en réponse à un événement. À ce stade, il est ajouté en tant que sortie pour l'compositor. S'il s'agit du premier objet QWaylandOutput créé pour cet compositor, il devient l'default output.

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

Supprime l'QWaylandOutput.

void QWaylandOutput::addMode(const QWaylandOutputMode &mode, bool preferred = false)

Ajoute le mode mode à la sortie et le marque comme mode préféré si preferred est true. Veuillez noter qu'il ne peut y avoir qu'un seul mode préféré.

QWaylandCompositor *QWaylandOutput::compositor() const

Renvoie le compositeur associé à cette QWaylandOutput.

Remarque : fonctiongetter pour la propriété « compositor ».

QWaylandOutputMode QWaylandOutput::currentMode() const

Renvoie la taille de l'affichage en pixels et la fréquence de rafraîchissement en mHz. Si le mode actuel n'est pas défini, la fonction renvoie un mode non valide.

Voir également setCurrentMode(), QWaylandOutput::modes et QWaylandOutputMode.

void QWaylandOutput::frameStarted()

Indique à ` QWaylandOutput ` qu'une image a commencé.

[static] QWaylandOutput *QWaylandOutput::fromResource(wl_resource *resource)

Renvoie l'QWaylandOutput correspondant à resource.

QList<QWaylandOutputMode> QWaylandOutput::modes() const

Renvoie la liste des modes.

void QWaylandOutput::sendFrameCallbacks()

Envoie les callbacks des trames en attente.

void QWaylandOutput::setCurrentMode(const QWaylandOutputMode &mode)

Définit le mode actuel. Le mode mode doit avoir été ajouté au préalable.

Voir également currentMode(), QWaylandOutput::modes et QWaylandOutputMode.

[virtual] void QWaylandOutput::update()

Prévoit qu'un document intitulé « QEvent::UpdateRequest » soit transmis à l'QWaylandOutput, à l'adresse window.

Voir également QWindow::requestUpdate().

© 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.