QtShellSurface QML 类型
提供一个简单的识别和调整表面大小的方式。 更多...
导入声明 | import QtWayland.Compositor.QtShell |
自 | Qt 6.3 |
属性
- active : bool
- capabilities : enum
- frameMarginBottom : int
- frameMarginLeft : int
- frameMarginRight : int
- frameMarginTop : int
- maximumSize : size
- minimumSize : size
- surface : WaylandSurface
- windowFlags : int
- windowGeometry : rect
- windowPosition : point
- windowState : int
- windowTitle : string
信号
- void startMove()
- void startResize(枚举 edges)
方法
- void initialize(QtShell qtShell, WaylandSurface surface, WaylandResource resource)
- void requestWindowGeometry(int windowState, rect windowGeometry)
- void sendClose()
详细描述
该类型是 QtShell 扩展的一部分,并提供了一种扩展现有 WaylandSurface 功能以添加窗口管理功能的方式。
QtShellSurface 类型包含创建支持 QtShell 扩展的合成器所需的核心功能。它可以直接使用,也可以通过 QtShellChrome 类型使用,具体取决于合成器的需求。QtShellChrome 类型为与 QtShellSurface 对象一起工作提供了默认行为和便利的 API。
属性文档
active : bool |
该属性表示该表面当前是否被视为活动状态。
注意:在 QtShellSurface 中没有任何限制,防止多个表面同时处于活动状态。此类逻辑必须由合成器本身实现,或通过使用 QtShellChrome 类型实现,它会自动管理表面的激活状态。
capabilities : enum |
该属性表示合成器的功能。默认情况下,没有启用任何特殊功能。
- QtShellSurface.InteractiveMove 客户端可以使用 QWindow::startSystemMove() 触发服务器端交互式移动操作。合成器将通过 startMove() 信号通知。
- QtShellSurface.InteractiveResize 客户端可以使用 QWindow::startSystemResize() 触发服务器端交互式调整大小操作。合成器将通过 startResize() 信号通知。
frameMarginBottom : int |
这表示底部表面框架的边距。
frameMarginLeft : int |
这表示左侧表面框架的边距。
frameMarginRight : int |
这表示右侧表面框架的边距。
frameMarginTop : int |
这表示顶部表面框架的边距。
maximumSize : size |
如果客户端指定了最大尺寸,则表示窗口的最大尺寸。否则,为无效尺寸。
minimumSize : size |
如果客户端指定了最小尺寸,则表示窗口的最小尺寸。否则,为无效尺寸。
surface : WaylandSurface |
该属性表示与该 QtShellSurface 关联的表面。
windowFlags : int |
该属性表示 QtShellSurface 的窗口标志。
windowGeometry : rect |
该属性表示 shell 表面的窗口几何形状。
windowPosition : point |
该属性表示 shell 表面相对于其输出的位置。
windowState : int |
该属性表示 QtShellSurface 的窗口状态。
注意:当调用 requestWindowGeometry() 以更新表面的状态时,只有在客户端确认状态变化后,windowState
属性才会更新。
windowTitle : string |
此属性包含 QtShellSurface 的窗口标题。
信号文档
void startMove() |
void startResize(enum edges) |
客户端通过调用 QWindow::startSystemResize() 在合成器中请求了交互式调整大小操作。
edges 提供有关在调整大小时应移动哪个窗口边的信息。它是由以下值组成的掩码
- Qt.TopEdge
- Qt.LeftEdge
- Qt.RightEdge
- Qt.BottomEdge
注意:相应的处理程序是 onStartResize
。
另请参阅:capabilities。
方法文档
void initialize(QtShell qtShell, WaylandSurface surface, WaylandResource resource) |
初始化 QtShellSurface,将其与给定的 qtShell、surface 和 resource 关联。
请求为 QtShellSurface 新的 windowState 和 windowGeometry。当客户端确认请求后(此时可以假设没有必要时已经调整了表面缓冲区的大小),更新状态和几何形状。
void sendClose() |
请求客户端应用程序关闭自己。
© 2024 Qt 公司有限公司。此处包含的文档贡献是各自所有者的版权。此处提供的文档根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 以及相应的商标是芬兰及世界其他地区的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。