Spec-Zone.ru › Qt

Класс QWaylandCompositor

Класс QWaylandCompositor управляет сервером отображения Wayland. Подробнее...

Заголовок: #include <QWaylandCompositor>
CMake: find_package(Qt6 COMPONENTS Waylandcompositor REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Waylandcompositor)
qmake: QT += waylandcompositor
С тех пор: Qt 5.8
Инициализируется: WaylandCompositor
Наследует: QWaylandObject
  • Список всех членов, включая унаследованные

Свойства

  • additionalShmFormats : QVector<ShmFormat>
  • created : const bool
  • defaultOutput : QWaylandOutput*
  • defaultSeat : QWaylandSeat* const
  • retainedSelection : bool
  • socketName : QByteArray
  • useHardwareIntegrationExtension : bool

Открытые функции

QWaylandCompositor(QObject *parent = nullptr)
virtual ~QWaylandCompositor() override
void addSocketDescriptor(int fd)
QVector<QWaylandCompositor::ShmFormat> additionalShmFormats() const
virtual void create()
QWaylandOutput * defaultOutput() const
QWaylandSeat * defaultSeat() const
void destroyClient(QWaylandClient *client)
void destroyClientForSurface(QWaylandSurface *surface)
virtual void grabSurface(QWaylandSurfaceGrabber *grabber, const QWaylandBufferRef &buffer)
bool isCreated() const
QWaylandOutput * outputFor(QWindow *window) const
bool retainedSelectionEnabled() const
QWaylandSeat * seatFor(QInputEvent *inputEvent)
void setAdditionalShmFormats(const QVector<QWaylandCompositor::ShmFormat> &additionalShmFormats)
void setDefaultOutput(QWaylandOutput *output)
void setRetainedSelectionEnabled(bool enabled)
void setSocketName(const QByteArray &name)
void setUseHardwareIntegrationExtension(bool use)
QByteArray socketName() const
bool useHardwareIntegrationExtension() const

Сигналы

void additionalShmFormatsChanged()
void createdChanged()
void defaultOutputChanged()
void defaultSeatChanged(QWaylandSeat *newDevice, QWaylandSeat *oldDevice)
void retainedSelectionChanged(bool retainedSelection)
void socketNameChanged(const QByteArray &socketName)
void surfaceCreated(QWaylandSurface *surface)
void surfaceRequested(QWaylandClient *client, uint id, int version)
void useHardwareIntegrationExtensionChanged()

Подробное описание

Класс QWaylandCompositor управляет подключениями к клиентам, а также различными выводами и местами.

Как правило, приложение-композитор будет иметь один экземпляр WaylandCompositor, который может иметь несколько выводов в качестве дочерних элементов.

Документация свойств

[since 6.0] additionalShmFormats : QVector<ShmFormat>

Это свойство содержит список дополнительных форматов wl_shm, рекламируемых как поддерживаемые композитором.

По умолчанию перечислены только необходимые ShmFormat_ARGB8888 и ShmFormat_XRGB8888, и этот список будет пустым.

Это свойство должно быть установлено перед созданием композитора create. Последующие изменения не повлияют.

Это свойство было добавлено в Qt 6.0.

Функции доступа:

QVector<QWaylandCompositor::ShmFormat> additionalShmFormats() const
void setAdditionalShmFormats(const QVector<QWaylandCompositor::ShmFormat> &additionalShmFormats)

Сигнал уведомления:

void additionalShmFormatsChanged()

[read-only] created : const bool

Это свойство имеет значение true, если QWaylandCompositor был инициализирован, в противном случае оно равно false.

Функции доступа:

bool isCreated() const

Сигнал уведомления:

void createdChanged()

defaultOutput : QWaylandOutput*

Это свойство содержит первый элемент в списке выходов, добавленных в QWaylandCompositor, или null, если выходы не были добавлены.

Установка нового значения для свойства «default output» помещает его в начало списка выходов, делая его новым значением по умолчанию, но предыдущее значение по умолчанию не удаляется из списка. Если новый выход по умолчанию уже присутствует в списке выходов, он перемещается в начало списка.

Функции доступа:

QWaylandOutput * defaultOutput() const
void setDefaultOutput(QWaylandOutput *output)

Сигнал уведомления:

void defaultOutputChanged()

[read-only] defaultSeat : QWaylandSeat* const

Это свойство содержит сеанс по умолчанию для данного QWaylandCompositor.

Функции доступа:

QWaylandSeat * defaultSeat() const

Сигнал уведомления:

void defaultSeatChanged(QWaylandSeat *newDevice, QWaylandSeat *oldDevice)

retainedSelection : bool

Это свойство указывает, включено ли сохранение выделения.

Функции доступа:

bool retainedSelectionEnabled() const
void setRetainedSelectionEnabled(bool enabled)

Сигнал уведомления:

void retainedSelectionChanged(bool retainedSelection)

socketName : QByteArray

Это свойство содержит имя сокета, используемое QWaylandCompositor для связи с клиентами. Это свойство должно быть установлено до создания QWaylandCompositor.

Если socketName пустое (по умолчанию), используется содержимое аргумента start --wayland-socket-name. Если аргумент не задан, композитор пытается найти имя сокета, которое по умолчанию является wayland-0.

Функции доступа:

QByteArray socketName() const
void setSocketName(const QByteArray &name)

Сигнал уведомления:

void socketNameChanged(const QByteArray &socketName)

useHardwareIntegrationExtension : bool

Это свойство содержит значение, указывающее, должен ли быть включён расширение аппаратной интеграции для этого QWaylandCompositor.

Это свойство должно быть установлено перед созданием композитора create.

Функции доступа:

bool useHardwareIntegrationExtension() const
void setUseHardwareIntegrationExtension(bool use)

Сигнал уведомления:

void useHardwareIntegrationExtensionChanged()

Документация по членам функций

QWaylandCompositor::QWaylandCompositor(QObject *parent = nullptr)

Создаёт QWaylandCompositor с указанным parent.

[signal] void QWaylandCompositor::surfaceCreated(QWaylandSurface *surface)

Этот сигнал подаётся, когда был создан новый экземпляр QWaylandSurface surface.

[signal] void QWaylandCompositor::surfaceRequested(QWaylandClient *client, uint id, int version)

Этот сигнал подаётся, когда client создал поверхность с id id. Также доступна версия интерфейса version.

Слоты, подключенные к этому сигналу, могут создавать и инициализировать экземпляр QWaylandSurface в контексте слота. В противном случае создаётся поверхность по умолчанию.

Подключения к этому сигналу должны быть типа Qt::DirectConnection.

[override virtual] QWaylandCompositor::~QWaylandCompositor()

Удаляет QWaylandCompositor

[invokable, since 5.12] void QWaylandCompositor::addSocketDescriptor(int fd)

Прослушивает подключения клиентов на дескрипторе файла fd, относящемся к уже привязанному и прослушивающему сокету сервера.

Не принимает владения над дескриптором файла; его необходимо явно закрыть, если нужно.

Примечание: Этот метод доступен только с libwayland 1.10.0 или новее. Если построено с более ранней libwayland, этот метод является пустой операцией.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Эта функция была добавлена в Qt 5.12.

[virtual] void QWaylandCompositor::create()

Инициализирует QWaylandCompositor. Если вы переопределяете эту функцию в своём подклассе, не забудьте вызвать реализацию базового класса.

[invokable] void QWaylandCompositor::destroyClient(QWaylandClient *client)

Удаляет client.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

[invokable] void QWaylandCompositor::destroyClientForSurface(QWaylandSurface *surface)

Удаляет клиента для поверхности surface.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

[virtual] void QWaylandCompositor::grabSurface(QWaylandSurfaceGrabber *grabber, const QWaylandBufferRef &buffer)

Получите содержимое поверхности из заданного буфера. По умолчанию для работы требуется OpenGL-контекст, привязанный к текущей нити. Если это невозможно, переопределите эту функцию в подклассе вашего композитора, чтобы реализовать пользовательскую логику. По умолчанию реализация захватывает только общие и OpenGL-буферы. Переопределите ее в подклассе композитора, чтобы обработать другие типы буферов.

Примечание: Вы не должны вызывать эту функцию вручную, а вместо этого используйте QWaylandSurfaceGrabber (grabber).

[invokable] QWaylandOutput *QWaylandCompositor::outputFor(QWindow *window) const

Возвращает QWaylandOutput, подключенный к заданному окну.

Примечание: Этот метод может быть вызван через метасистему и из QML. См. Q_INVOKABLE.

QWaylandSeat *QWaylandCompositor::seatFor(QInputEvent *inputEvent)

Выбирает область ввода для заданного события ввода inputEvent. В настоящее время Qt поддерживает только одну область ввода, но вы можете переопределить QWaylandCompositorPrivate::seatFor для пользовательского выбора области.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qwaylandcompositor.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API