]> git.sesse.net Git - rdpsrv/blob - Xserver/programs/Xserver/include/window.h
Support RDP5 logon packets.
[rdpsrv] / Xserver / programs / Xserver / include / window.h
1 /* $XConsortium: window.h /main/8 1996/03/21 13:35:33 mor $ */
2 /***********************************************************
3
4 Copyright (c) 1987  X Consortium
5
6 Permission is hereby granted, free of charge, to any person obtaining a copy
7 of this software and associated documentation files (the "Software"), to deal
8 in the Software without restriction, including without limitation the rights
9 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 copies of the Software, and to permit persons to whom the Software is
11 furnished to do so, subject to the following conditions:
12
13 The above copyright notice and this permission notice shall be included in
14 all copies or substantial portions of the Software.
15
16 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
19 X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
20 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
21 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
23 Except as contained in this notice, the name of the X Consortium shall not be
24 used in advertising or otherwise to promote the sale, use or other dealings
25 in this Software without prior written authorization from the X Consortium.
26
27
28 Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
29
30                         All Rights Reserved
31
32 Permission to use, copy, modify, and distribute this software and its 
33 documentation for any purpose and without fee is hereby granted, 
34 provided that the above copyright notice appear in all copies and that
35 both that copyright notice and this permission notice appear in 
36 supporting documentation, and that the name of Digital not be
37 used in advertising or publicity pertaining to distribution of the
38 software without specific, written prior permission.  
39
40 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
41 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
42 DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
43 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
44 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
45 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
46 SOFTWARE.
47
48 ******************************************************************/
49
50 #ifndef WINDOW_H
51 #define WINDOW_H
52
53 #include "misc.h"
54 #include "region.h"
55 #include "screenint.h"
56 #include "X11/Xproto.h"
57
58 #define TOTALLY_OBSCURED 0
59 #define UNOBSCURED 1
60 #define OBSCURED 2
61
62 #define VisibilityNotViewable   3
63
64 /* return values for tree-walking callback procedures */
65 #define WT_STOPWALKING          0
66 #define WT_WALKCHILDREN         1
67 #define WT_DONTWALKCHILDREN     2
68 #define WT_NOMATCH 3
69 #define NullWindow ((WindowPtr) 0)
70
71 typedef struct _BackingStore *BackingStorePtr;
72 typedef struct _Window *WindowPtr;
73
74 typedef int (*VisitWindowProcPtr)(
75 #if NeedNestedPrototypes
76     WindowPtr /*pWin*/,
77     pointer /*data*/
78 #endif
79 );
80
81 extern int TraverseTree(
82 #if NeedFunctionPrototypes
83     WindowPtr /*pWin*/,
84     VisitWindowProcPtr /*func*/,
85     pointer /*data*/
86 #endif
87 );
88
89 extern int WalkTree(
90 #if NeedFunctionPrototypes
91     ScreenPtr /*pScreen*/,
92     VisitWindowProcPtr /*func*/,
93     pointer /*data*/
94 #endif
95 );
96
97 extern WindowPtr AllocateWindow(
98 #if NeedFunctionPrototypes
99     ScreenPtr /*pScreen*/
100 #endif
101 );
102
103 extern Bool CreateRootWindow(
104 #if NeedFunctionPrototypes
105     ScreenPtr /*pScreen*/
106 #endif
107 );
108
109 extern void InitRootWindow(
110 #if NeedFunctionPrototypes
111     WindowPtr /*pWin*/
112 #endif
113 );
114
115 extern void ClippedRegionFromBox(
116 #if NeedFunctionPrototypes
117     WindowPtr /*pWin*/,
118     RegionPtr /*Rgn*/,
119     int /*x*/,
120     int /*y*/,
121     int /*w*/,
122     int /*h*/
123 #endif
124 );
125
126 extern WindowPtr RealChildHead(
127 #if NeedFunctionPrototypes
128     WindowPtr /*pWin*/
129 #endif
130 );
131
132 extern WindowPtr CreateWindow(
133 #if NeedFunctionPrototypes
134     Window /*wid*/,
135     WindowPtr /*pParent*/,
136     int /*x*/,
137     int /*y*/,
138     unsigned int /*w*/,
139     unsigned int /*h*/,
140     unsigned int /*bw*/,
141     unsigned int /*class*/,
142     Mask /*vmask*/,
143     XID* /*vlist*/,
144     int /*depth*/,
145     ClientPtr /*client*/,
146     VisualID /*visual*/,
147     int* /*error*/
148 #endif
149 );
150
151 extern int DeleteWindow(
152 #if NeedFunctionPrototypes
153     pointer /*pWin*/,
154     XID /*wid*/
155 #endif
156 );
157
158 extern void DestroySubwindows(
159 #if NeedFunctionPrototypes
160     WindowPtr /*pWin*/,
161     ClientPtr /*client*/
162 #endif
163 );
164
165 extern int ChangeWindowAttributes(
166 #if NeedFunctionPrototypes
167     WindowPtr /*pWin*/,
168     Mask /*vmask*/,
169     XID* /*vlist*/,
170     ClientPtr /*client*/
171 #endif
172 );
173
174 extern void GetWindowAttributes(
175 #if NeedFunctionPrototypes
176     WindowPtr /*pWin*/,
177     ClientPtr /*client*/,
178     xGetWindowAttributesReply* /* wa */
179 #endif
180 );
181
182 extern RegionPtr CreateUnclippedWinSize(
183 #if NeedFunctionPrototypes
184     WindowPtr /*pWin*/
185 #endif
186 );
187
188 extern void GravityTranslate(
189 #if NeedFunctionPrototypes
190     int /*x*/,
191     int /*y*/,
192     int /*oldx*/,
193     int /*oldy*/,
194     int /*dw*/,
195     int /*dh*/,
196     unsigned /*gravity*/,
197     int* /*destx*/,
198     int* /*desty*/
199 #endif
200 );
201
202 extern int ConfigureWindow(
203 #if NeedFunctionPrototypes
204     WindowPtr /*pWin*/,
205     Mask /*mask*/,
206     XID* /*vlist*/,
207     ClientPtr /*client*/
208 #endif
209 );
210
211 extern int CirculateWindow(
212 #if NeedFunctionPrototypes
213     WindowPtr /*pParent*/,
214     int /*direction*/,
215     ClientPtr /*client*/
216 #endif
217 );
218
219 extern int ReparentWindow(
220 #if NeedFunctionPrototypes
221     WindowPtr /*pWin*/,
222     WindowPtr /*pParent*/,
223     int /*x*/,
224     int /*y*/,
225     ClientPtr /*client*/
226 #endif
227 );
228
229 extern int MapWindow(
230 #if NeedFunctionPrototypes
231     WindowPtr /*pWin*/,
232     ClientPtr /*client*/
233 #endif
234 );
235
236 extern void MapSubwindows(
237 #if NeedFunctionPrototypes
238     WindowPtr /*pParent*/,
239     ClientPtr /*client*/
240 #endif
241 );
242
243 extern int UnmapWindow(
244 #if NeedFunctionPrototypes
245     WindowPtr /*pWin*/,
246     Bool /*fromConfigure*/
247 #endif
248 );
249
250 extern void UnmapSubwindows(
251 #if NeedFunctionPrototypes
252     WindowPtr /*pWin*/
253 #endif
254 );
255
256 extern void HandleSaveSet(
257 #if NeedFunctionPrototypes
258     ClientPtr /*client*/
259 #endif
260 );
261
262 extern Bool VisibleBoundingBoxFromPoint(
263 #if NeedFunctionPrototypes
264     WindowPtr /*pWin*/,
265     int /*x*/,
266     int /*y*/,
267     BoxPtr /*box*/
268 #endif
269 );
270
271 extern Bool PointInWindowIsVisible(
272 #if NeedFunctionPrototypes
273     WindowPtr /*pWin*/,
274     int /*x*/,
275     int /*y*/
276 #endif
277 );
278
279 extern RegionPtr NotClippedByChildren(
280 #if NeedFunctionPrototypes
281     WindowPtr /*pWin*/
282 #endif
283 );
284
285 extern void SendVisibilityNotify(
286 #if NeedFunctionPrototypes
287     WindowPtr /*pWin*/
288 #endif
289 );
290
291 extern void SaveScreens(
292 #if NeedFunctionPrototypes
293     int /*on*/,
294     int /*mode*/
295 #endif
296 );
297
298 extern WindowPtr FindWindowWithOptional(
299 #if NeedFunctionPrototypes
300     WindowPtr /*w*/
301 #endif
302 );
303
304 extern void CheckWindowOptionalNeed(
305 #if NeedFunctionPrototypes
306     WindowPtr /*w*/
307 #endif
308 );
309
310 extern Bool MakeWindowOptional(
311 #if NeedFunctionPrototypes
312     WindowPtr /*pWin*/
313 #endif
314 );
315
316 extern void DisposeWindowOptional(
317 #if NeedFunctionPrototypes
318     WindowPtr /*pWin*/
319 #endif
320 );
321
322 extern WindowPtr MoveWindowInStack(
323 #if NeedFunctionPrototypes
324     WindowPtr /*pWin*/,
325     WindowPtr /*pNextSib*/
326 #endif
327 );
328
329 void SetWinSize(
330 #if NeedFunctionPrototypes
331     WindowPtr /*pWin*/
332 #endif
333 );
334
335 void SetBorderSize(
336 #if NeedFunctionPrototypes
337     WindowPtr /*pWin*/
338 #endif
339 );
340
341 void ResizeChildrenWinSize(
342 #if NeedFunctionPrototypes
343     WindowPtr /*pWin*/,
344     int /*dx*/,
345     int /*dy*/,
346     int /*dw*/,
347     int /*dh*/
348 #endif
349 );
350
351 #endif /* WINDOW_H */