QWaylandSurfaceRole Class
Die Klasse QWaylandSurfaceRole repräsentiert die Rolle der Oberfläche im Kontext von wl_surface. Mehr...
Kopfzeile: | #include <QWaylandSurfaceRole> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
qmake: | QT += waylandcompositor |
Öffentliche Funktionen
QWaylandSurfaceRole(const QByteArray &name) | |
const QByteArray | name() |
Detaillierte Beschreibung
QWaylandSurfaceRole wird verwendet, um die Rolle einer QWaylandSurface zu repräsentieren. Gemäß der Protokollspezifikation ist die Rolle einer Oberfläche dauerhaft, wenn sie einmal gesetzt wurde, und wenn die gleiche Oberfläche später für eine andere Rolle wiederverwendet wird, stellt dies einen Protokollfehler dar. Das mehrfache Setzen der Oberfläche auf dieselbe Rolle ist kein Fehler.
So kann beispielsweise QWaylandXdgShell Oberflächen entweder die Rolle "Popup" oder "Toplevel" zuweisen. Wenn get_toplevel
auf einer Oberfläche angefordert wird, die zuvor eine get_popup
-Anforderung erhalten hat, dann gibt der Compositor einen Protokollfehler aus.
Rollen werden anhand von Zeigerwerten verglichen, so dass zwei beliebige Objekte von QWaylandSurfaceRole als unterschiedliche Rollen betrachtet werden, unabhängig davon, wie ihre names lauten. Ein typischer Weg, eine Rolle zuzuweisen, ist ein statisches QWaylandSurfaceRole-Objekt, das diese Rolle repräsentiert.
class MyShellSurfaceSubType { static QWaylandSurfaceRole s_role; // ... }; // ... surface->setRole(&MyShellSurfaceSubType::s_role, resource->handle, MY_ERROR_CODE);
Dokumentation der Mitgliedsfunktionen
QWaylandSurfaceRole::QWaylandSurfaceRole(const QByteArray &name)
Erzeugt eine QWaylandSurfaceRole und weist ihr name zu. Der Name wird in Fehlermeldungen, die diese QWaylandSurfaceRole betreffen, verwendet.
const QByteArray QWaylandSurfaceRole::name()
Gibt den Namen der QWaylandSurfaceRole zurück. Der Name wird in Fehlermeldungen verwendet, die diese QWaylandSurfaceRole betreffen, z. B. wenn versucht wird, die Rolle einer Oberfläche zu ändern.
© 2025 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.