<QWaylandQuickExtension> - Qt Wayland Compositor Qt Quick Extension Macro Declarations

The <QWaylandQuickExtension> header file includes macros for creating Qt Quick types that correspond to subclasses of QWaylandCompositorExtension and QWaylandObject . 更多...

头: #include <QWaylandQuickExtension>

Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS ( className )
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CONTAINER_CLASS ( className )
Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_NAMED_CLASS ( className , QmlType )

详细描述

If you are creating extensions to Qt Wayland Compositor, the macros in the QWaylandQuickExtension header may be a useful alternative to manually implementing the required parts for each class.

另请参阅 Custom Shell .

宏文档编制

Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS ( className )

This macro can be used to define a Qt Quick class based on a Wayland extension. It defines a new class which inherits from className and which suffixes the name with "QuickExtension".

The class should be a subclass of QWaylandCompositorExtension ,和 QWaylandCompositorExtension::initialize () will be called automatically. The type must be manually registered in Qt Quick using qmlRegisterType ().

另请参阅 Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_NAMED_CLASS .

Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CONTAINER_CLASS ( className )

This macro can be used to define a Qt Quick class intended to contain Wayland extensions. It

It defines a new class which inherits from className and which suffixes the name with "QuickExtensionContainer". The class given by className should inherit from QWaylandObject , and the new class will have an extensions property which manages the extensions by calling addExtension () 和 removeExtension () in the base class.

The type must be manually registered in Qt Quick using qmlRegisterType ().

Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_NAMED_CLASS ( className , QmlType )

This macro can be used to define a Qt Quick class based on a Wayland extension. It defines a new class which inherits from className and which suffixes the name with "QuickExtension".

The macro works the same as Q_COMPOSITOR_DECLARE_QUICK_EXTENSION_CLASS , but will also automatically register the new type as QmlType in Qt Quick.