QWaylandCompositorExtension 类
QWaylandCompositorExtension 是 compositor 扩展的基类。更多信息请参阅此处...
头文件 | #include <QWaylandCompositorExtension> |
CMake | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
qmake | QT += waylandcompositor |
继承关系 | QWaylandObject |
由以下类继承 |
公共函数
QWaylandCompositorExtension() | |
QWaylandCompositorExtension(QWaylandObject *容器) | |
QWaylandObject * | extensionContainer() const |
虚拟的 const struct wl_interface * | extensionInterface() const = 0 |
虚拟的 void | initialize() |
void | setExtensionContainer(QWaylandObject *容器) |
详细描述
QWaylandCompositorExtension 是在连接的 compositor 端实现 Wayland 扩展的基类。如果没有明确设置其他扩展容器,则它会自动将其自身添加到父对象中,前提是它继承自 QWaylandObject。
例如,对于注册全局扩展,您可以继承自 QWaylandCompositorExtension 并将 QWaylandCompositor 对象作为扩展容器进行传递。
另见QWaylandCompositorExtensionTemplate 和 自定义壳。
成员函数文档
QWaylandCompositorExtension::QWaylandCompositorExtension()
创建一个没有容器的 QWaylandCompositorExtension。
QWaylandCompositorExtension::QWaylandCompositorExtension(QWaylandObject *容器)
创建一个 QWaylandCompositorExtension 并将其添加到扩展 容器。该 容器 不会成为 QWaylandCompositorExtension 的父对象。
扩展将在调用 initialize() 后稍后将其自身添加到 容器 中。为了自动执行此操作,必须在当前线程中运行事件循环。
当 QWaylandCompositorExtension 被销毁时,它将再次将其自身从 容器 中移除。
QWaylandObject *QWaylandCompositorExtension::extensionContainer() const
返回此 QWaylandCompositorExtension 的扩展容器或未设置时的 null。
[纯虚函数]
const struct wl_interface *QWaylandCompositorExtension::extensionInterface() const
一个纯虚函数,应该被重新实现以返回与此 QWaylandCompositorExtension 对应的 wl_interface
。
[虚函数]
void QWaylandCompositorExtension::initialize()
初始化 QWaylandCompositorExtension。默认实现如果未设置,则采用父对象作为扩展容器,如果父对象继承自 QWaylandObject。默认实现还将 QWaylandCompositorExtension 添加到扩展容器管理的扩展列表。
在子类中重写此函数以提供自定义初始化代码。
void QWaylandCompositorExtension::setExtensionContainer(QWaylandObject *container)
将此 QWaylandCompositorExtension 的扩展容器设置为 container。必须在 initialize() 调用之前调用此函数,并且初始化后无法更改。
另请参阅 extensionContainer。
© 2024 Qt 公司有限公司。此处包含的文档贡献是各自所有者版权的一部分。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 和相应的标志是芬兰及其它世界各地的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。