This repository has been archived by the owner on May 9, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdtk-gui-dplatformhandle.html
173 lines (173 loc) · 13 KB
/
dtk-gui-dplatformhandle.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<!-- dplatformhandle.cpp -->
<title>DPlatformHandle Class | Dtk Reference Documentation 1.0.0</title>
<link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
<script type="text/javascript">
document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
// loading style sheet breaks anchors that were jumped to before
// so force jumping to anchor again
setTimeout(function() {
var anchor = location.hash;
// need to jump to different anchor first (e.g. none)
location.hash = "#";
setTimeout(function() {
location.hash = anchor;
}, 0);
}, 0);
</script>
</head>
<body>
<div class="header" id="qtdocheader">
<div class="main">
<div class="main-rounded">
<div class="navigationbar">
<ul>
<li><a href="index.html">Dtk Doc</a></li>
<li><a href="index.html">Dtk Reference Documentation</a></li>
<li>DPlatformHandle</li>
<li id="buildversion"><a href="index.html">Qt 5.15.2 Reference Documentation</a></li>
</ul>
</div>
</div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#public-types">Public Types</a></li>
<li class="level1"><a href="#public-functions">Public Functions</a></li>
<li class="level1"><a href="#details">Detailed Description</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">DPlatformHandle Class</h1>
<span class="small-subtitle">class <a href="dtk.html">Dtk</a>::<a href="dtk-gui.html">Gui</a>::DPlatformHandle</span>
<!-- $$$DPlatformHandle-brief -->
<p>一个和Qt dxcb平台插件交互的工具类. <a href="#details">More...</a></p>
<!-- @@@DPlatformHandle -->
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> Header:</td><td class="memItemRight bottomAlign"> <span class="preprocessor">#include <DPlatformHandle></span>
</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherited By:</td><td class="memItemRight bottomAlign"> <p><a href="dtk-widget-dplatformwindowhandle.html">Dtk::Widget::DPlatformWindowHandle</a></p>
</td></tr></table></div><ul>
<li><a href="dtk-gui-dplatformhandle-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="public-types"></a>
<h2 id="public-types">Public Types</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> struct </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle-wmblurarea.html">WMBlurArea</a></b></td></tr>
</table></div>
<a name="public-functions"></a>
<h2 id="public-functions">Public Functions</h2>
<div class="table"><table class="alignedsummary">
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#autoInputMaskByClipPathChanged">autoInputMaskByClipPathChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#borderColorChanged">borderColorChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#borderWidthChanged">borderWidthChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#clipPathChanged">clipPathChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#enableBlurWindowChanged">enableBlurWindowChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#enableSystemMoveChanged">enableSystemMoveChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#enableSystemResizeChanged">enableSystemResizeChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#frameMaskChanged">frameMaskChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#shadowColorChanged">shadowColorChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#shadowOffsetChanged">shadowOffsetChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#shadowRadiusChanged">shadowRadiusChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#translucentBackgroundChanged">translucentBackgroundChanged</a></b>()</td></tr>
<tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="dtk-gui-dplatformhandle.html#windowRadiusChanged">windowRadiusChanged</a></b>()</td></tr>
</table></div>
<a name="details"></a>
<!-- $$$DPlatformHandle-description -->
<div class="descr">
<h2 id="details">Detailed Description</h2>
<p>实质性的功能皆在dxcb插件中实现,此插件目前只 支持X11平台,在其它平台上使用这个类不会有任何效果。关于dxcb:它介于Qt应用和Qt xcb平台 插件之间,通过覆写xcb插件中某些对象的虚函数来改变它的一些行为,本质上来讲是Qt xcb插件的 扩展,在X11平台上为DTK应用提供了一些改变窗口效果的功能(比如自定义窗口的边框)、其它和平 台密切相关的实现(比如修复Qt应用在X11平台的一些bug),不能脱离Qt xcb插件独立运行。dxcb 通过重载 QPlatformNativeInterface 提供接口,DPlatformHandle 中使用 <a href="http://doc.qt.io/qt-5/qguiapplication.html#platformFunction">QGuiApplication::platformFunction</a> 调用这些接口。Application、dxcb、qt xcb 之间 的关系:</p>
<pre style="font-family: FreeMono, Consolas, Menlo, 'Noto Mono', 'Courier New', Courier, monospace;line-height: 100%;">
┏━━━━━━━━━━━━━━━━┓
┃ Application ┃
┗━━━━━━━━━━━━━━━━┛
⇅
┏━━━━━━━━━━━━━━━━━━━━┓
┃ dxcb plugin ┃
┗━━━━━━━━━━━━━━━━━━━━┛
⇅
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ qt xcb platform ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
</pre>
<p><a href="http://doc.qt.io/qt-5/qpa.html">QPA</a> <a href="https://github.com/linuxdeepin/qt5dxcb-plugin/">dxcb插件</a></p>
<p><b>Warning:</b> 使用此工具前要确保应用加载了dxcb插件</p>
<p><b>Warning:</b> 因为 <a href="http://doc.qt.io/qt-5/qguiapplication.html#platformFunction">QGuiApplication::platformFunction</a> 是在 Qt 5.4.0 版本引入的新接口, 所以 DPlatformHandle 不支持 Qt 5.4.0 以下版本。</p>
</div>
<p><b>See also </b>Dtk::Gui::DPlatformHandle::isDXcbPlatform, <a href="http://doc.qt.io/qt-5/qguiapplication.html#platformNativeInterface">QGuiApplication::platformNativeInterface</a>, Dtk::Widget::DMainWindow, and <a href="dtk-gui-dwindowmanagerhelper.html">DWindowManagerHelper</a>.</p>
<!-- @@@DPlatformHandle -->
<div class="func">
<h2>Member Function Documentation</h2>
<!-- $$$autoInputMaskByClipPathChanged[overload1]$$$autoInputMaskByClipPathChanged -->
<h3 class="fn" id="autoInputMaskByClipPathChanged"><a name="autoInputMaskByClipPathChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">autoInputMaskByClipPathChanged</span>()</h3>
<p>信号会在 autoInputMaskByClipPath 属性的值改变时被发送</p>
<!-- @@@autoInputMaskByClipPathChanged -->
<!-- $$$borderColorChanged[overload1]$$$borderColorChanged -->
<h3 class="fn" id="borderColorChanged"><a name="borderColorChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">borderColorChanged</span>()</h3>
<p>信号会在 borderColor 属性的值改变时被发送</p>
<!-- @@@borderColorChanged -->
<!-- $$$borderWidthChanged[overload1]$$$borderWidthChanged -->
<h3 class="fn" id="borderWidthChanged"><a name="borderWidthChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">borderWidthChanged</span>()</h3>
<p>信号会在 borderWidth 属性的值改变时被发送</p>
<!-- @@@borderWidthChanged -->
<!-- $$$clipPathChanged[overload1]$$$clipPathChanged -->
<h3 class="fn" id="clipPathChanged"><a name="clipPathChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">clipPathChanged</span>()</h3>
<p>信号会在 clipPath 属性的值改变时被发送</p>
<!-- @@@clipPathChanged -->
<!-- $$$enableBlurWindowChanged[overload1]$$$enableBlurWindowChanged -->
<h3 class="fn" id="enableBlurWindowChanged"><a name="enableBlurWindowChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">enableBlurWindowChanged</span>()</h3>
<p>信号会在 enableBlurWindow 属性的值改变时被发送</p>
<!-- @@@enableBlurWindowChanged -->
<!-- $$$enableSystemMoveChanged[overload1]$$$enableSystemMoveChanged -->
<h3 class="fn" id="enableSystemMoveChanged"><a name="enableSystemMoveChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">enableSystemMoveChanged</span>()</h3>
<p>信号会在 enableSystemMove 属性的值改变时被发送</p>
<!-- @@@enableSystemMoveChanged -->
<!-- $$$enableSystemResizeChanged[overload1]$$$enableSystemResizeChanged -->
<h3 class="fn" id="enableSystemResizeChanged"><a name="enableSystemResizeChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">enableSystemResizeChanged</span>()</h3>
<p>信号会在 enableSystemResize 属性的值改变时被发送</p>
<!-- @@@enableSystemResizeChanged -->
<!-- $$$frameMaskChanged[overload1]$$$frameMaskChanged -->
<h3 class="fn" id="frameMaskChanged"><a name="frameMaskChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">frameMaskChanged</span>()</h3>
<p>信号会在 frameMask 属性的值改变时被发送</p>
<!-- @@@frameMaskChanged -->
<!-- $$$shadowColorChanged[overload1]$$$shadowColorChanged -->
<h3 class="fn" id="shadowColorChanged"><a name="shadowColorChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">shadowColorChanged</span>()</h3>
<p>信号会在 shadowColor 属性的值改变时被发送</p>
<!-- @@@shadowColorChanged -->
<!-- $$$shadowOffsetChanged[overload1]$$$shadowOffsetChanged -->
<h3 class="fn" id="shadowOffsetChanged"><a name="shadowOffsetChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">shadowOffsetChanged</span>()</h3>
<p>信号会在 shadowOffset 属性的值改变时被发送</p>
<!-- @@@shadowOffsetChanged -->
<!-- $$$shadowRadiusChanged[overload1]$$$shadowRadiusChanged -->
<h3 class="fn" id="shadowRadiusChanged"><a name="shadowRadiusChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">shadowRadiusChanged</span>()</h3>
<p>信号会在 shadowRadius 属性的值改变时被发送</p>
<!-- @@@shadowRadiusChanged -->
<!-- $$$translucentBackgroundChanged[overload1]$$$translucentBackgroundChanged -->
<h3 class="fn" id="translucentBackgroundChanged"><a name="translucentBackgroundChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">translucentBackgroundChanged</span>()</h3>
<p>信号会在 translucentBackground 属性的值改变时被发送</p>
<!-- @@@translucentBackgroundChanged -->
<!-- $$$windowRadiusChanged[overload1]$$$windowRadiusChanged -->
<h3 class="fn" id="windowRadiusChanged"><a name="windowRadiusChanged"></a><span class="type">void</span> DPlatformHandle::<span class="name">windowRadiusChanged</span>()</h3>
<p>信号会在 windowRadius 属性的值改变时被发送</p>
<!-- @@@windowRadiusChanged -->
</div>
</div>
</div>
</div>
</div>
</div>
<div class="footer">
<p>
<acronym title="Copyright">©</acronym> 2020 The Qt Company Ltd.
Documentation contributions included herein are the copyrights of
their respective owners.<br/> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br/> 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. </p>
</div>
</body>
</html>