1 /*
2  * This file generated automatically from composite.xml by d_client.py.
3  * Edit at your peril.
4  */
5 
6 /**
7  * @defgroup XCB_Composite_API XCB Composite API
8  * @brief Composite XCB Protocol Implementation.
9  * @{
10  **/
11 
12 module xcb.composite;
13 
14 import xcb.xcb;
15 import xcb.xproto;
16 import xcb.xfixes;
17 
18 extern (C):
19 
20 enum int XCB_COMPOSITE_MAJOR_VERSION = 0;
21 enum int XCB_COMPOSITE_MINOR_VERSION = 4;
22 
23 extern (C) __gshared extern xcb_extension_t xcb_composite_id;
24 
25 enum xcb_composite_redirect_t {
26 	XCB_COMPOSITE_REDIRECT_AUTOMATIC = 0,
27 	XCB_COMPOSITE_REDIRECT_MANUAL = 1
28 }
29 
30 alias XCB_COMPOSITE_REDIRECT_AUTOMATIC = xcb_composite_redirect_t.XCB_COMPOSITE_REDIRECT_AUTOMATIC;
31 alias XCB_COMPOSITE_REDIRECT_MANUAL = xcb_composite_redirect_t.XCB_COMPOSITE_REDIRECT_MANUAL;
32 
33 /**
34  * @brief xcb_composite_query_version_cookie_t
35  **/
36 struct xcb_composite_query_version_cookie_t {
37 	uint sequence; /**<  */
38 }
39 
40 /** Opcode for xcb_composite_query_version. */
41 enum XCB_COMPOSITE_QUERY_VERSION = 0;
42 
43 /**
44  * @brief xcb_composite_query_version_request_t
45  **/
46 struct xcb_composite_query_version_request_t {
47 	ubyte major_opcode; /**<  */
48 	ubyte minor_opcode; /**<  */
49 	ushort length; /**<  */
50 	uint client_major_version; /**<  */
51 	uint client_minor_version; /**<  */
52 }
53 
54 /**
55  * @brief xcb_composite_query_version_reply_t
56  **/
57 struct xcb_composite_query_version_reply_t {
58 	ubyte response_type; /**<  */
59 	ubyte pad0; /**<  */
60 	ushort sequence; /**<  */
61 	uint length; /**<  */
62 	uint major_version; /**<  */
63 	uint minor_version; /**<  */
64 	ubyte[16] pad1; /**<  */
65 }
66 
67 /** Opcode for xcb_composite_redirect_window. */
68 enum XCB_COMPOSITE_REDIRECT_WINDOW = 1;
69 
70 /**
71  * @brief xcb_composite_redirect_window_request_t
72  **/
73 struct xcb_composite_redirect_window_request_t {
74 	ubyte major_opcode; /**<  */
75 	ubyte minor_opcode; /**<  */
76 	ushort length; /**<  */
77 	xcb_window_t window; /**<  */
78 	ubyte update; /**<  */
79 	ubyte[3] pad0; /**<  */
80 }
81 
82 /** Opcode for xcb_composite_redirect_subwindows. */
83 enum XCB_COMPOSITE_REDIRECT_SUBWINDOWS = 2;
84 
85 /**
86  * @brief xcb_composite_redirect_subwindows_request_t
87  **/
88 struct xcb_composite_redirect_subwindows_request_t {
89 	ubyte major_opcode; /**<  */
90 	ubyte minor_opcode; /**<  */
91 	ushort length; /**<  */
92 	xcb_window_t window; /**<  */
93 	ubyte update; /**<  */
94 	ubyte[3] pad0; /**<  */
95 }
96 
97 /** Opcode for xcb_composite_unredirect_window. */
98 enum XCB_COMPOSITE_UNREDIRECT_WINDOW = 3;
99 
100 /**
101  * @brief xcb_composite_unredirect_window_request_t
102  **/
103 struct xcb_composite_unredirect_window_request_t {
104 	ubyte major_opcode; /**<  */
105 	ubyte minor_opcode; /**<  */
106 	ushort length; /**<  */
107 	xcb_window_t window; /**<  */
108 	ubyte update; /**<  */
109 	ubyte[3] pad0; /**<  */
110 }
111 
112 /** Opcode for xcb_composite_unredirect_subwindows. */
113 enum XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS = 4;
114 
115 /**
116  * @brief xcb_composite_unredirect_subwindows_request_t
117  **/
118 struct xcb_composite_unredirect_subwindows_request_t {
119 	ubyte major_opcode; /**<  */
120 	ubyte minor_opcode; /**<  */
121 	ushort length; /**<  */
122 	xcb_window_t window; /**<  */
123 	ubyte update; /**<  */
124 	ubyte[3] pad0; /**<  */
125 }
126 
127 /** Opcode for xcb_composite_create_region_from_border_clip. */
128 enum XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP = 5;
129 
130 /**
131  * @brief xcb_composite_create_region_from_border_clip_request_t
132  **/
133 struct xcb_composite_create_region_from_border_clip_request_t {
134 	ubyte major_opcode; /**<  */
135 	ubyte minor_opcode; /**<  */
136 	ushort length; /**<  */
137 	xcb_xfixes_region_t region; /**<  */
138 	xcb_window_t window; /**<  */
139 }
140 
141 /** Opcode for xcb_composite_name_window_pixmap. */
142 enum XCB_COMPOSITE_NAME_WINDOW_PIXMAP = 6;
143 
144 /**
145  * @brief xcb_composite_name_window_pixmap_request_t
146  **/
147 struct xcb_composite_name_window_pixmap_request_t {
148 	ubyte major_opcode; /**<  */
149 	ubyte minor_opcode; /**<  */
150 	ushort length; /**<  */
151 	xcb_window_t window; /**<  */
152 	xcb_pixmap_t pixmap; /**<  */
153 }
154 
155 /**
156  * @brief xcb_composite_get_overlay_window_cookie_t
157  **/
158 struct xcb_composite_get_overlay_window_cookie_t {
159 	uint sequence; /**<  */
160 }
161 
162 /** Opcode for xcb_composite_get_overlay_window. */
163 enum XCB_COMPOSITE_GET_OVERLAY_WINDOW = 7;
164 
165 /**
166  * @brief xcb_composite_get_overlay_window_request_t
167  **/
168 struct xcb_composite_get_overlay_window_request_t {
169 	ubyte major_opcode; /**<  */
170 	ubyte minor_opcode; /**<  */
171 	ushort length; /**<  */
172 	xcb_window_t window; /**<  */
173 }
174 
175 /**
176  * @brief xcb_composite_get_overlay_window_reply_t
177  **/
178 struct xcb_composite_get_overlay_window_reply_t {
179 	ubyte response_type; /**<  */
180 	ubyte pad0; /**<  */
181 	ushort sequence; /**<  */
182 	uint length; /**<  */
183 	xcb_window_t overlay_win; /**<  */
184 	ubyte[20] pad1; /**<  */
185 }
186 
187 /** Opcode for xcb_composite_release_overlay_window. */
188 enum XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW = 8;
189 
190 /**
191  * @brief xcb_composite_release_overlay_window_request_t
192  **/
193 struct xcb_composite_release_overlay_window_request_t {
194 	ubyte major_opcode; /**<  */
195 	ubyte minor_opcode; /**<  */
196 	ushort length; /**<  */
197 	xcb_window_t window; /**<  */
198 }
199 
200 /**
201  *
202  * @param c The connection
203  * @return A cookie
204  *
205  * Delivers a request to the X server.
206  *
207  */
208 xcb_composite_query_version_cookie_t xcb_composite_query_version(xcb_connection_t* c /**< */ , uint client_major_version /**< */ ,
209 	uint client_minor_version /**< */ );
210 
211 /**
212  *
213  * @param c The connection
214  * @return A cookie
215  *
216  * Delivers a request to the X server.
217  *
218  * This form can be used only if the request will cause
219  * a reply to be generated. Any returned error will be
220  * placed in the event queue.
221  */
222 xcb_composite_query_version_cookie_t xcb_composite_query_version_unchecked(xcb_connection_t* c /**< */ , uint client_major_version /**< */ ,
223 	uint client_minor_version /**< */ );
224 
225 /**
226  * Return the reply
227  * @param c      The connection
228  * @param cookie The cookie
229  * @param e      The xcb_generic_error_t supplied
230  *
231  * Returns the reply of the request asked by
232  *
233  * The parameter @p e supplied to this function must be NULL if
234  * xcb_composite_query_version_unchecked(). is used.
235  * Otherwise, it stores the error if any.
236  *
237  * The returned value must be freed by the caller using free().
238  */
239 xcb_composite_query_version_reply_t* xcb_composite_query_version_reply(xcb_connection_t* c /**< */ ,
240 	xcb_composite_query_version_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
241 
242 /**
243  *
244  * @param c The connection
245  * @return A cookie
246  *
247  * Delivers a request to the X server.
248  *
249  * This form can be used only if the request will not cause
250  * a reply to be generated. Any returned error will be
251  * saved for handling by xcb_request_check().
252  */
253 xcb_void_cookie_t xcb_composite_redirect_window_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
254 
255 /**
256  *
257  * @param c The connection
258  * @return A cookie
259  *
260  * Delivers a request to the X server.
261  *
262  */
263 xcb_void_cookie_t xcb_composite_redirect_window(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
264 
265 /**
266  *
267  * @param c The connection
268  * @return A cookie
269  *
270  * Delivers a request to the X server.
271  *
272  * This form can be used only if the request will not cause
273  * a reply to be generated. Any returned error will be
274  * saved for handling by xcb_request_check().
275  */
276 xcb_void_cookie_t xcb_composite_redirect_subwindows_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
277 
278 /**
279  *
280  * @param c The connection
281  * @return A cookie
282  *
283  * Delivers a request to the X server.
284  *
285  */
286 xcb_void_cookie_t xcb_composite_redirect_subwindows(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
287 
288 /**
289  *
290  * @param c The connection
291  * @return A cookie
292  *
293  * Delivers a request to the X server.
294  *
295  * This form can be used only if the request will not cause
296  * a reply to be generated. Any returned error will be
297  * saved for handling by xcb_request_check().
298  */
299 xcb_void_cookie_t xcb_composite_unredirect_window_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
300 
301 /**
302  *
303  * @param c The connection
304  * @return A cookie
305  *
306  * Delivers a request to the X server.
307  *
308  */
309 xcb_void_cookie_t xcb_composite_unredirect_window(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
310 
311 /**
312  *
313  * @param c The connection
314  * @return A cookie
315  *
316  * Delivers a request to the X server.
317  *
318  * This form can be used only if the request will not cause
319  * a reply to be generated. Any returned error will be
320  * saved for handling by xcb_request_check().
321  */
322 xcb_void_cookie_t xcb_composite_unredirect_subwindows_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
323 
324 /**
325  *
326  * @param c The connection
327  * @return A cookie
328  *
329  * Delivers a request to the X server.
330  *
331  */
332 xcb_void_cookie_t xcb_composite_unredirect_subwindows(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , ubyte update /**< */ );
333 
334 /**
335  *
336  * @param c The connection
337  * @return A cookie
338  *
339  * Delivers a request to the X server.
340  *
341  * This form can be used only if the request will not cause
342  * a reply to be generated. Any returned error will be
343  * saved for handling by xcb_request_check().
344  */
345 xcb_void_cookie_t xcb_composite_create_region_from_border_clip_checked(xcb_connection_t* c /**< */ ,
346 	xcb_xfixes_region_t region /**< */ , xcb_window_t window /**< */ );
347 
348 /**
349  *
350  * @param c The connection
351  * @return A cookie
352  *
353  * Delivers a request to the X server.
354  *
355  */
356 xcb_void_cookie_t xcb_composite_create_region_from_border_clip(xcb_connection_t* c /**< */ , xcb_xfixes_region_t region /**< */ ,
357 	xcb_window_t window /**< */ );
358 
359 /**
360  *
361  * @param c The connection
362  * @return A cookie
363  *
364  * Delivers a request to the X server.
365  *
366  * This form can be used only if the request will not cause
367  * a reply to be generated. Any returned error will be
368  * saved for handling by xcb_request_check().
369  */
370 xcb_void_cookie_t xcb_composite_name_window_pixmap_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , xcb_pixmap_t pixmap /**< */ );
371 
372 /**
373  *
374  * @param c The connection
375  * @return A cookie
376  *
377  * Delivers a request to the X server.
378  *
379  */
380 xcb_void_cookie_t xcb_composite_name_window_pixmap(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ , xcb_pixmap_t pixmap /**< */ );
381 
382 /**
383  *
384  * @param c The connection
385  * @return A cookie
386  *
387  * Delivers a request to the X server.
388  *
389  */
390 xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ );
391 
392 /**
393  *
394  * @param c The connection
395  * @return A cookie
396  *
397  * Delivers a request to the X server.
398  *
399  * This form can be used only if the request will cause
400  * a reply to be generated. Any returned error will be
401  * placed in the event queue.
402  */
403 xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window_unchecked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ );
404 
405 /**
406  * Return the reply
407  * @param c      The connection
408  * @param cookie The cookie
409  * @param e      The xcb_generic_error_t supplied
410  *
411  * Returns the reply of the request asked by
412  *
413  * The parameter @p e supplied to this function must be NULL if
414  * xcb_composite_get_overlay_window_unchecked(). is used.
415  * Otherwise, it stores the error if any.
416  *
417  * The returned value must be freed by the caller using free().
418  */
419 xcb_composite_get_overlay_window_reply_t* xcb_composite_get_overlay_window_reply(xcb_connection_t* c /**< */ ,
420 	xcb_composite_get_overlay_window_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
421 
422 /**
423  *
424  * @param c The connection
425  * @return A cookie
426  *
427  * Delivers a request to the X server.
428  *
429  * This form can be used only if the request will not cause
430  * a reply to be generated. Any returned error will be
431  * saved for handling by xcb_request_check().
432  */
433 xcb_void_cookie_t xcb_composite_release_overlay_window_checked(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ );
434 
435 /**
436  *
437  * @param c The connection
438  * @return A cookie
439  *
440  * Delivers a request to the X server.
441  *
442  */
443 xcb_void_cookie_t xcb_composite_release_overlay_window(xcb_connection_t* c /**< */ , xcb_window_t window /**< */ );
444 
445 /**
446  * @}
447  */