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 公司的商标。所有其他商标均为其各自所有者的财产。