QWaylandShellSurfaceTemplate Class
template <typename T> class QWaylandShellSurfaceTemplateQWaylandShellSurfaceTemplate ist eine Hilfsklasse zum Erstellen benutzerdefinierter Shell-Oberflächenklassen. Mehr...
| Header: | #include <QWaylandShellSurfaceTemplate> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
| qmake: | QT += waylandcompositor |
| Erbt von: | QWaylandShellSurface |
| Vererbt an: | QWaylandIviSurface, „ QWaylandWlShellSurface “ sowie QWaylandXdgSurface |
Statische öffentliche Mitglieder
| T * | findIn(QWaylandObject *container) |
Ausführliche Beschreibung
QWaylandShellSurfaceTemplate ist eine Vorlagenklasse, die von QWaylandShellSurface erbt und die Erstellung benutzerdefinierter Shell-Erweiterungen erleichtert.
Sie stellt die Verbindung zwischen ` Qt Wayland Compositor ` und der von ` qtwaylandscanner` generierten Klasse her, basierend auf der XML-Beschreibung des Erweiterungsprotokolls.
Sie bietet zwei konkrete Erleichterungen:
- Eine Neuimplementierung von ` QWaylandCompositorExtension::extensionInterface()`, die den `
wl_interface`-Zeiger für die von `qtwaylandscanner` generierte Basisklasse zurückgibt. - Eine statische Funktion ` findIn()`, die in einem angegebenen Container nach einer Instanz der Erweiterung sucht und diese zurückgibt, falls sie gefunden wird.
Es gilt dasselbe Verwendungsmuster wie für ` QWaylandCompositorExtensionTemplate`, wobei ` T ` die Unterklasse selbst ist.
Siehe auch „Custom Shell“.
Dokumentation zu Mitgliedsfunktionen
[static] T *QWaylandShellSurfaceTemplate::findIn(QWaylandObject *container)
Wenn eine Instanz der Schnittstelle unter container registriert wurde, wird diese zurückgegeben. Andernfalls wird null zurückgegeben. Die Suche erfolgt anhand der generierten Datei „ interfaceName() “, die mit dem Namen der Schnittstelle in der Protokollbeschreibung übereinstimmt.
© 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.