QWaylandXdgToplevel Class
QWaylandXdgToplevel 类表示 xdg 表面的顶层窗口特定部分。更多
Header: | #include <QWaylandXdgToplevel> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WaylandCompositor) target_link_libraries(mytarget PRIVATE Qt6::WaylandCompositor) |
qmake: | QT += waylandcompositor |
在 QML 中: | XdgToplevel |
继承: | QObject |
公共类型
enum | DecorationMode { ServerSideDecoration, ClientSideDecoration } |
属性
|
|
公共功能
QWaylandXdgToplevel(QWaylandXdgSurface *xdgSurface, QWaylandResource &resource) | |
bool | activated() const |
QString | appId() const |
QWaylandXdgToplevel::DecorationMode | decorationMode() const |
bool | fullscreen() const |
bool | isModal() const |
QSize | maxSize() const |
bool | maximized() const |
QSize | minSize() const |
QWaylandXdgToplevel * | parentToplevel() const |
bool | resizing() const |
void | sendClose() |
uint | sendConfigure(const QSize &size, const QList<QWaylandXdgToplevel::State> &states) |
uint | sendFullscreen(const QSize &size) |
uint | sendMaximized(const QSize &size) |
uint | sendResizing(const QSize &maxSize) |
uint | sendUnmaximized(const QSize &size = QSize(0, 0)) |
QSize | sizeForResize(const QSizeF &size, const QPointF &delta, Qt::Edges edges) const |
QString | title() const |
QWaylandXdgSurface * | xdgSurface() const |
信号
void | activatedChanged() |
void | appIdChanged() |
void | decorationModeChanged() |
void | fullscreenChanged() |
void | maxSizeChanged() |
void | maximizedChanged() |
void | minSizeChanged() |
void | modalChanged() |
void | parentToplevelChanged() |
void | resizingChanged() |
void | statesChanged() |
void | titleChanged() |
静态公共成员
QWaylandXdgToplevel * | fromResource(wl_resource *resource) |
QWaylandSurfaceRole * | role() |
详细说明
该类是QWaylandXdgShell 扩展的一部分,提供了一种扩展QWaylandXdgSurface 功能的方法,具有桌面风格窗口的特定功能。
它对应于 Wayland 接口xdg_toplevel
。
成员类型文档
enum QWaylandXdgToplevel::DecorationMode
该枚举类型用于指定顶层窗口的窗口装饰模式。
常数 | 值 | 说明 |
---|---|---|
QWaylandXdgToplevel::ServerSideDecoration | 2 | 合成器应绘制窗口装饰。 |
QWaylandXdgToplevel::ClientSideDecoration | 1 | 客户端应绘制窗口装饰。 |
属性文档
[read-only]
activated : const bool
此属性用于确定 toplevel 是否将自身绘制为输入焦点。
访问功能
bool | activated() const |
Notifier 信号:
void | activatedChanged() |
[read-only]
appId : const QString
此属性保存QWaylandXdgToplevel 的应用程序 ID。
访问功能:
QString | appId() const |
Notifier 信号:
void | appIdChanged() |
[read-only]
decorationMode : const enum DecorationMode
该属性用于保存该顶层当前的窗口装饰模式。
访问功能:
QWaylandXdgToplevel::DecorationMode | decorationMode() const |
Notifier 信号:
void | decorationModeChanged() |
另请参见 QWaylandXdgDecorationManagerV1 。
[read-only]
fullscreen : const bool
该属性用于保存客户端是否已确认全屏。
访问功能:
bool | fullscreen() const |
Notifier 信号:
void | fullscreenChanged() |
[read-only]
maxSize : const QSize
此属性表示QWaylandXdgToplevel 的最大尺寸。
合成器可以忽略此值,并要求更大的尺寸。
访问功能:
QSize | maxSize() const |
通知信号:
void | maxSizeChanged() |
[read-only]
maximized : const bool
该属性表示客户是否承认应将其最大化。
访问功能:
bool | maximized() const |
通知信号:
void | maximizedChanged() |
[read-only]
minSize : const QSize
此属性表示QWaylandXdgToplevel 的最小尺寸。
合成器可自由忽略此值并要求更小的尺寸。
访问功能:
QSize | minSize() const |
通知信号:
void | minSizeChanged() |
[read-only, since 6.8]
modal : const bool
此属性表示 toplevel 是否阻止其他窗口接收输入。
此属性在 Qt 6.8 中引入。
访问函数:
bool | isModal() const |
Notifier 信号:
void | modalChanged() |
[read-only]
parentToplevel : QWaylandXdgToplevel* const
该属性保存此XdgToplevel 的父级XdgToplevel 。
访问功能:
QWaylandXdgToplevel * | parentToplevel() const |
Notifier 信号:
void | parentToplevelChanged() |
[read-only]
resizing : const bool
此属性表示客户端是否已确认正在调整其大小。
访问功能:
bool | resizing() const |
通知信号:
void | resizingChanged() |
[read-only]
states : const QList<int>
此属性保存客户端对此 QWaylandToplevel 确认的最后状态。
Notifier 信号的最后状态:
void | statesChanged() |
[read-only]
title : const QString
该属性包含QWaylandXdgToplevel 的标题。
访问功能:
QString | title() const |
通知信号:
void | titleChanged() |
[read-only]
xdgSurface : QWaylandXdgSurface* const
该属性保存了QWaylandXdgSurface QWaylandXdgToplevel 。
访问函数:
QWaylandXdgSurface * | xdgSurface() const |
成员函数文档
[explicit]
QWaylandXdgToplevel::QWaylandXdgToplevel(QWaylandXdgSurface *xdgSurface, QWaylandResource &resource)
为给定的xdgSurface 和resource 构建 QWaylandXdgToplevel。
[static]
QWaylandXdgToplevel *QWaylandXdgToplevel::fromResource(wl_resource *resource)
返回与resource 对应的QWaylandXdgToplevel 。
[static]
QWaylandSurfaceRole *QWaylandXdgToplevel::role()
返回 QWaylandToplevel 的表面角色。
[invokable]
void QWaylandXdgToplevel::sendClose()
向客户端发送关闭事件。客户端可选择忽略该事件。
注: 可通过元对象系统和 QML 调用此函数。请参阅Q_INVOKABLE 。
uint QWaylandXdgToplevel::sendConfigure(const QSize &size, const QList<QWaylandXdgToplevel::State> &states)
向客户端发送配置事件。参数size 包含曲面的像素大小。尺寸为 0 表示客户端可自由决定尺寸。已知的states 在 QWaylandXdgToplevel::State 中枚举。
[invokable]
uint QWaylandXdgToplevel::sendFullscreen(const QSize &size)
方便发送已设置全屏状态、最大化和调整大小的配置事件。激活状态保持当前状态。
size 是窗口的新大小。
注: 可通过元对象系统和 QML 调用此函数。参见Q_INVOKABLE 。
另请参阅 sendUnmaximized 。
[invokable]
uint QWaylandXdgToplevel::sendMaximized(const QSize &size)
方便发送已设置最大化状态、取消全屏和调整大小的配置事件。激活状态保持当前状态。
size 是窗口的新大小。
注: 可通过元对象系统和 QML 调用该函数。请参阅Q_INVOKABLE 。
[invokable]
uint QWaylandXdgToplevel::sendResizing(const QSize &maxSize)
方便发送已设置大小调整状态、已移除最大化和全屏状态的配置事件。激活状态保持当前状态。
maxSize 是窗口的新大小。
注: 可通过元对象系统和 QML 调用此函数。请参阅Q_INVOKABLE 。
[invokable]
uint QWaylandXdgToplevel::sendUnmaximized(const QSize &size = QSize(0, 0))
方便发送配置事件,同时删除最大化、全屏和调整大小状态,并删除全屏和调整大小状态。激活状态保持当前状态。
size 是窗口的新大小。如果 为零,则由客户端决定大小。size
注: 可通过元对象系统和 QML 调用此函数。请参阅Q_INVOKABLE 。
[invokable]
QSize QWaylandXdgToplevel::sizeForResize(const QSizeF &size, const QPointF &delta, Qt::Edges edges) const
方便计算给定当前size 、一个delta 和在拖动中激活的edges 的新尺寸。
注: 可通过元对象系统和 QML 调用此函数。请参见Q_INVOKABLE 。
© 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.