1/*
2 * This file generated automatically from xproto.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6/**
7 * @defgroup XCB__API XCB API
8 * @brief XCB Protocol Implementation.
9 * @{
10 **/
11
12#ifndef __XPROTO_H
13#define __XPROTO_H
14
15#include "xcb.h"
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21/**
22 * @brief xcb_char2b_t
23 **/
24typedef struct xcb_char2b_t {
25 uint8_t byte1; /**< */
26 uint8_t byte2; /**< */
27} xcb_char2b_t;
28
29/**
30 * @brief xcb_char2b_iterator_t
31 **/
32typedef struct xcb_char2b_iterator_t {
33 xcb_char2b_t *data; /**< */
34 int rem; /**< */
35 int index; /**< */
36} xcb_char2b_iterator_t;
37
38typedef uint32_t xcb_window_t;
39
40/**
41 * @brief xcb_window_iterator_t
42 **/
43typedef struct xcb_window_iterator_t {
44 xcb_window_t *data; /**< */
45 int rem; /**< */
46 int index; /**< */
47} xcb_window_iterator_t;
48
49typedef uint32_t xcb_pixmap_t;
50
51/**
52 * @brief xcb_pixmap_iterator_t
53 **/
54typedef struct xcb_pixmap_iterator_t {
55 xcb_pixmap_t *data; /**< */
56 int rem; /**< */
57 int index; /**< */
58} xcb_pixmap_iterator_t;
59
60typedef uint32_t xcb_cursor_t;
61
62/**
63 * @brief xcb_cursor_iterator_t
64 **/
65typedef struct xcb_cursor_iterator_t {
66 xcb_cursor_t *data; /**< */
67 int rem; /**< */
68 int index; /**< */
69} xcb_cursor_iterator_t;
70
71typedef uint32_t xcb_font_t;
72
73/**
74 * @brief xcb_font_iterator_t
75 **/
76typedef struct xcb_font_iterator_t {
77 xcb_font_t *data; /**< */
78 int rem; /**< */
79 int index; /**< */
80} xcb_font_iterator_t;
81
82typedef uint32_t xcb_gcontext_t;
83
84/**
85 * @brief xcb_gcontext_iterator_t
86 **/
87typedef struct xcb_gcontext_iterator_t {
88 xcb_gcontext_t *data; /**< */
89 int rem; /**< */
90 int index; /**< */
91} xcb_gcontext_iterator_t;
92
93typedef uint32_t xcb_colormap_t;
94
95/**
96 * @brief xcb_colormap_iterator_t
97 **/
98typedef struct xcb_colormap_iterator_t {
99 xcb_colormap_t *data; /**< */
100 int rem; /**< */
101 int index; /**< */
102} xcb_colormap_iterator_t;
103
104typedef uint32_t xcb_atom_t;
105
106/**
107 * @brief xcb_atom_iterator_t
108 **/
109typedef struct xcb_atom_iterator_t {
110 xcb_atom_t *data; /**< */
111 int rem; /**< */
112 int index; /**< */
113} xcb_atom_iterator_t;
114
115typedef uint32_t xcb_drawable_t;
116
117/**
118 * @brief xcb_drawable_iterator_t
119 **/
120typedef struct xcb_drawable_iterator_t {
121 xcb_drawable_t *data; /**< */
122 int rem; /**< */
123 int index; /**< */
124} xcb_drawable_iterator_t;
125
126typedef uint32_t xcb_fontable_t;
127
128/**
129 * @brief xcb_fontable_iterator_t
130 **/
131typedef struct xcb_fontable_iterator_t {
132 xcb_fontable_t *data; /**< */
133 int rem; /**< */
134 int index; /**< */
135} xcb_fontable_iterator_t;
136
137typedef uint32_t xcb_visualid_t;
138
139/**
140 * @brief xcb_visualid_iterator_t
141 **/
142typedef struct xcb_visualid_iterator_t {
143 xcb_visualid_t *data; /**< */
144 int rem; /**< */
145 int index; /**< */
146} xcb_visualid_iterator_t;
147
148typedef uint32_t xcb_timestamp_t;
149
150/**
151 * @brief xcb_timestamp_iterator_t
152 **/
153typedef struct xcb_timestamp_iterator_t {
154 xcb_timestamp_t *data; /**< */
155 int rem; /**< */
156 int index; /**< */
157} xcb_timestamp_iterator_t;
158
159typedef uint32_t xcb_keysym_t;
160
161/**
162 * @brief xcb_keysym_iterator_t
163 **/
164typedef struct xcb_keysym_iterator_t {
165 xcb_keysym_t *data; /**< */
166 int rem; /**< */
167 int index; /**< */
168} xcb_keysym_iterator_t;
169
170typedef uint8_t xcb_keycode_t;
171
172/**
173 * @brief xcb_keycode_iterator_t
174 **/
175typedef struct xcb_keycode_iterator_t {
176 xcb_keycode_t *data; /**< */
177 int rem; /**< */
178 int index; /**< */
179} xcb_keycode_iterator_t;
180
181typedef uint8_t xcb_button_t;
182
183/**
184 * @brief xcb_button_iterator_t
185 **/
186typedef struct xcb_button_iterator_t {
187 xcb_button_t *data; /**< */
188 int rem; /**< */
189 int index; /**< */
190} xcb_button_iterator_t;
191
192/**
193 * @brief xcb_point_t
194 **/
195typedef struct xcb_point_t {
196 int16_t x; /**< */
197 int16_t y; /**< */
198} xcb_point_t;
199
200/**
201 * @brief xcb_point_iterator_t
202 **/
203typedef struct xcb_point_iterator_t {
204 xcb_point_t *data; /**< */
205 int rem; /**< */
206 int index; /**< */
207} xcb_point_iterator_t;
208
209/**
210 * @brief xcb_rectangle_t
211 **/
212typedef struct xcb_rectangle_t {
213 int16_t x; /**< */
214 int16_t y; /**< */
215 uint16_t width; /**< */
216 uint16_t height; /**< */
217} xcb_rectangle_t;
218
219/**
220 * @brief xcb_rectangle_iterator_t
221 **/
222typedef struct xcb_rectangle_iterator_t {
223 xcb_rectangle_t *data; /**< */
224 int rem; /**< */
225 int index; /**< */
226} xcb_rectangle_iterator_t;
227
228/**
229 * @brief xcb_arc_t
230 **/
231typedef struct xcb_arc_t {
232 int16_t x; /**< */
233 int16_t y; /**< */
234 uint16_t width; /**< */
235 uint16_t height; /**< */
236 int16_t angle1; /**< */
237 int16_t angle2; /**< */
238} xcb_arc_t;
239
240/**
241 * @brief xcb_arc_iterator_t
242 **/
243typedef struct xcb_arc_iterator_t {
244 xcb_arc_t *data; /**< */
245 int rem; /**< */
246 int index; /**< */
247} xcb_arc_iterator_t;
248
249/**
250 * @brief xcb_format_t
251 **/
252typedef struct xcb_format_t {
253 uint8_t depth; /**< */
254 uint8_t bits_per_pixel; /**< */
255 uint8_t scanline_pad; /**< */
256 uint8_t pad0[5]; /**< */
257} xcb_format_t;
258
259/**
260 * @brief xcb_format_iterator_t
261 **/
262typedef struct xcb_format_iterator_t {
263 xcb_format_t *data; /**< */
264 int rem; /**< */
265 int index; /**< */
266} xcb_format_iterator_t;
267
268typedef enum xcb_visual_class_t {
269 XCB_VISUAL_CLASS_STATIC_GRAY = 0,
270 XCB_VISUAL_CLASS_GRAY_SCALE = 1,
271 XCB_VISUAL_CLASS_STATIC_COLOR = 2,
272 XCB_VISUAL_CLASS_PSEUDO_COLOR = 3,
273 XCB_VISUAL_CLASS_TRUE_COLOR = 4,
274 XCB_VISUAL_CLASS_DIRECT_COLOR = 5
275} xcb_visual_class_t;
276
277/**
278 * @brief xcb_visualtype_t
279 **/
280typedef struct xcb_visualtype_t {
281 xcb_visualid_t visual_id; /**< */
282 uint8_t _class; /**< */
283 uint8_t bits_per_rgb_value; /**< */
284 uint16_t colormap_entries; /**< */
285 uint32_t red_mask; /**< */
286 uint32_t green_mask; /**< */
287 uint32_t blue_mask; /**< */
288 uint8_t pad0[4]; /**< */
289} xcb_visualtype_t;
290
291/**
292 * @brief xcb_visualtype_iterator_t
293 **/
294typedef struct xcb_visualtype_iterator_t {
295 xcb_visualtype_t *data; /**< */
296 int rem; /**< */
297 int index; /**< */
298} xcb_visualtype_iterator_t;
299
300/**
301 * @brief xcb_depth_t
302 **/
303typedef struct xcb_depth_t {
304 uint8_t depth; /**< */
305 uint8_t pad0; /**< */
306 uint16_t visuals_len; /**< */
307 uint8_t pad1[4]; /**< */
308} xcb_depth_t;
309
310/**
311 * @brief xcb_depth_iterator_t
312 **/
313typedef struct xcb_depth_iterator_t {
314 xcb_depth_t *data; /**< */
315 int rem; /**< */
316 int index; /**< */
317} xcb_depth_iterator_t;
318
319typedef enum xcb_event_mask_t {
320 XCB_EVENT_MASK_NO_EVENT = 0,
321 XCB_EVENT_MASK_KEY_PRESS = 1,
322 XCB_EVENT_MASK_KEY_RELEASE = 2,
323 XCB_EVENT_MASK_BUTTON_PRESS = 4,
324 XCB_EVENT_MASK_BUTTON_RELEASE = 8,
325 XCB_EVENT_MASK_ENTER_WINDOW = 16,
326 XCB_EVENT_MASK_LEAVE_WINDOW = 32,
327 XCB_EVENT_MASK_POINTER_MOTION = 64,
328 XCB_EVENT_MASK_POINTER_MOTION_HINT = 128,
329 XCB_EVENT_MASK_BUTTON_1_MOTION = 256,
330 XCB_EVENT_MASK_BUTTON_2_MOTION = 512,
331 XCB_EVENT_MASK_BUTTON_3_MOTION = 1024,
332 XCB_EVENT_MASK_BUTTON_4_MOTION = 2048,
333 XCB_EVENT_MASK_BUTTON_5_MOTION = 4096,
334 XCB_EVENT_MASK_BUTTON_MOTION = 8192,
335 XCB_EVENT_MASK_KEYMAP_STATE = 16384,
336 XCB_EVENT_MASK_EXPOSURE = 32768,
337 XCB_EVENT_MASK_VISIBILITY_CHANGE = 65536,
338 XCB_EVENT_MASK_STRUCTURE_NOTIFY = 131072,
339 XCB_EVENT_MASK_RESIZE_REDIRECT = 262144,
340 XCB_EVENT_MASK_SUBSTRUCTURE_NOTIFY = 524288,
341 XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT = 1048576,
342 XCB_EVENT_MASK_FOCUS_CHANGE = 2097152,
343 XCB_EVENT_MASK_PROPERTY_CHANGE = 4194304,
344 XCB_EVENT_MASK_COLOR_MAP_CHANGE = 8388608,
345 XCB_EVENT_MASK_OWNER_GRAB_BUTTON = 16777216
346} xcb_event_mask_t;
347
348typedef enum xcb_backing_store_t {
349 XCB_BACKING_STORE_NOT_USEFUL = 0,
350 XCB_BACKING_STORE_WHEN_MAPPED = 1,
351 XCB_BACKING_STORE_ALWAYS = 2
352} xcb_backing_store_t;
353
354/**
355 * @brief xcb_screen_t
356 **/
357typedef struct xcb_screen_t {
358 xcb_window_t root; /**< */
359 xcb_colormap_t default_colormap; /**< */
360 uint32_t white_pixel; /**< */
361 uint32_t black_pixel; /**< */
362 uint32_t current_input_masks; /**< */
363 uint16_t width_in_pixels; /**< */
364 uint16_t height_in_pixels; /**< */
365 uint16_t width_in_millimeters; /**< */
366 uint16_t height_in_millimeters; /**< */
367 uint16_t min_installed_maps; /**< */
368 uint16_t max_installed_maps; /**< */
369 xcb_visualid_t root_visual; /**< */
370 uint8_t backing_stores; /**< */
371 uint8_t save_unders; /**< */
372 uint8_t root_depth; /**< */
373 uint8_t allowed_depths_len; /**< */
374} xcb_screen_t;
375
376/**
377 * @brief xcb_screen_iterator_t
378 **/
379typedef struct xcb_screen_iterator_t {
380 xcb_screen_t *data; /**< */
381 int rem; /**< */
382 int index; /**< */
383} xcb_screen_iterator_t;
384
385/**
386 * @brief xcb_setup_request_t
387 **/
388typedef struct xcb_setup_request_t {
389 uint8_t byte_order; /**< */
390 uint8_t pad0; /**< */
391 uint16_t protocol_major_version; /**< */
392 uint16_t protocol_minor_version; /**< */
393 uint16_t authorization_protocol_name_len; /**< */
394 uint16_t authorization_protocol_data_len; /**< */
395 uint8_t pad1[2]; /**< */
396} xcb_setup_request_t;
397
398/**
399 * @brief xcb_setup_request_iterator_t
400 **/
401typedef struct xcb_setup_request_iterator_t {
402 xcb_setup_request_t *data; /**< */
403 int rem; /**< */
404 int index; /**< */
405} xcb_setup_request_iterator_t;
406
407/**
408 * @brief xcb_setup_failed_t
409 **/
410typedef struct xcb_setup_failed_t {
411 uint8_t status; /**< */
412 uint8_t reason_len; /**< */
413 uint16_t protocol_major_version; /**< */
414 uint16_t protocol_minor_version; /**< */
415 uint16_t length; /**< */
416} xcb_setup_failed_t;
417
418/**
419 * @brief xcb_setup_failed_iterator_t
420 **/
421typedef struct xcb_setup_failed_iterator_t {
422 xcb_setup_failed_t *data; /**< */
423 int rem; /**< */
424 int index; /**< */
425} xcb_setup_failed_iterator_t;
426
427/**
428 * @brief xcb_setup_authenticate_t
429 **/
430typedef struct xcb_setup_authenticate_t {
431 uint8_t status; /**< */
432 uint8_t pad0[5]; /**< */
433 uint16_t length; /**< */
434} xcb_setup_authenticate_t;
435
436/**
437 * @brief xcb_setup_authenticate_iterator_t
438 **/
439typedef struct xcb_setup_authenticate_iterator_t {
440 xcb_setup_authenticate_t *data; /**< */
441 int rem; /**< */
442 int index; /**< */
443} xcb_setup_authenticate_iterator_t;
444
445typedef enum xcb_image_order_t {
446 XCB_IMAGE_ORDER_LSB_FIRST = 0,
447 XCB_IMAGE_ORDER_MSB_FIRST = 1
448} xcb_image_order_t;
449
450/**
451 * @brief xcb_setup_t
452 **/
453typedef struct xcb_setup_t {
454 uint8_t status; /**< */
455 uint8_t pad0; /**< */
456 uint16_t protocol_major_version; /**< */
457 uint16_t protocol_minor_version; /**< */
458 uint16_t length; /**< */
459 uint32_t release_number; /**< */
460 uint32_t resource_id_base; /**< */
461 uint32_t resource_id_mask; /**< */
462 uint32_t motion_buffer_size; /**< */
463 uint16_t vendor_len; /**< */
464 uint16_t maximum_request_length; /**< */
465 uint8_t roots_len; /**< */
466 uint8_t pixmap_formats_len; /**< */
467 uint8_t image_byte_order; /**< */
468 uint8_t bitmap_format_bit_order; /**< */
469 uint8_t bitmap_format_scanline_unit; /**< */
470 uint8_t bitmap_format_scanline_pad; /**< */
471 xcb_keycode_t min_keycode; /**< */
472 xcb_keycode_t max_keycode; /**< */
473 uint8_t pad1[4]; /**< */
474} xcb_setup_t;
475
476/**
477 * @brief xcb_setup_iterator_t
478 **/
479typedef struct xcb_setup_iterator_t {
480 xcb_setup_t *data; /**< */
481 int rem; /**< */
482 int index; /**< */
483} xcb_setup_iterator_t;
484
485typedef enum xcb_mod_mask_t {
486 XCB_MOD_MASK_SHIFT = 1,
487 XCB_MOD_MASK_LOCK = 2,
488 XCB_MOD_MASK_CONTROL = 4,
489 XCB_MOD_MASK_1 = 8,
490 XCB_MOD_MASK_2 = 16,
491 XCB_MOD_MASK_3 = 32,
492 XCB_MOD_MASK_4 = 64,
493 XCB_MOD_MASK_5 = 128,
494 XCB_MOD_MASK_ANY = 32768
495} xcb_mod_mask_t;
496
497typedef enum xcb_key_but_mask_t {
498 XCB_KEY_BUT_MASK_SHIFT = 1,
499 XCB_KEY_BUT_MASK_LOCK = 2,
500 XCB_KEY_BUT_MASK_CONTROL = 4,
501 XCB_KEY_BUT_MASK_MOD_1 = 8,
502 XCB_KEY_BUT_MASK_MOD_2 = 16,
503 XCB_KEY_BUT_MASK_MOD_3 = 32,
504 XCB_KEY_BUT_MASK_MOD_4 = 64,
505 XCB_KEY_BUT_MASK_MOD_5 = 128,
506 XCB_KEY_BUT_MASK_BUTTON_1 = 256,
507 XCB_KEY_BUT_MASK_BUTTON_2 = 512,
508 XCB_KEY_BUT_MASK_BUTTON_3 = 1024,
509 XCB_KEY_BUT_MASK_BUTTON_4 = 2048,
510 XCB_KEY_BUT_MASK_BUTTON_5 = 4096
511} xcb_key_but_mask_t;
512
513typedef enum xcb_window_enum_t {
514 XCB_WINDOW_NONE = 0
515} xcb_window_enum_t;
516
517/** Opcode for xcb_key_press. */
518#define XCB_KEY_PRESS 2
519
520/**
521 * @brief xcb_key_press_event_t
522 **/
523typedef struct xcb_key_press_event_t {
524 uint8_t response_type; /**< */
525 xcb_keycode_t detail; /**< */
526 uint16_t sequence; /**< */
527 xcb_timestamp_t time; /**< */
528 xcb_window_t root; /**< */
529 xcb_window_t event; /**< */
530 xcb_window_t child; /**< */
531 int16_t root_x; /**< */
532 int16_t root_y; /**< */
533 int16_t event_x; /**< */
534 int16_t event_y; /**< */
535 uint16_t state; /**< */
536 uint8_t same_screen; /**< */
537 uint8_t pad0; /**< */
538} xcb_key_press_event_t;
539
540/** Opcode for xcb_key_release. */
541#define XCB_KEY_RELEASE 3
542
543typedef xcb_key_press_event_t xcb_key_release_event_t;
544
545typedef enum xcb_button_mask_t {
546 XCB_BUTTON_MASK_1 = 256,
547 XCB_BUTTON_MASK_2 = 512,
548 XCB_BUTTON_MASK_3 = 1024,
549 XCB_BUTTON_MASK_4 = 2048,
550 XCB_BUTTON_MASK_5 = 4096,
551 XCB_BUTTON_MASK_ANY = 32768
552} xcb_button_mask_t;
553
554/** Opcode for xcb_button_press. */
555#define XCB_BUTTON_PRESS 4
556
557/**
558 * @brief xcb_button_press_event_t
559 **/
560typedef struct xcb_button_press_event_t {
561 uint8_t response_type; /**< */
562 xcb_button_t detail; /**< */
563 uint16_t sequence; /**< */
564 xcb_timestamp_t time; /**< */
565 xcb_window_t root; /**< */
566 xcb_window_t event; /**< */
567 xcb_window_t child; /**< */
568 int16_t root_x; /**< */
569 int16_t root_y; /**< */
570 int16_t event_x; /**< */
571 int16_t event_y; /**< */
572 uint16_t state; /**< */
573 uint8_t same_screen; /**< */
574 uint8_t pad0; /**< */
575} xcb_button_press_event_t;
576
577/** Opcode for xcb_button_release. */
578#define XCB_BUTTON_RELEASE 5
579
580typedef xcb_button_press_event_t xcb_button_release_event_t;
581
582typedef enum xcb_motion_t {
583 XCB_MOTION_NORMAL = 0,
584 XCB_MOTION_HINT = 1
585} xcb_motion_t;
586
587/** Opcode for xcb_motion_notify. */
588#define XCB_MOTION_NOTIFY 6
589
590/**
591 * @brief xcb_motion_notify_event_t
592 **/
593typedef struct xcb_motion_notify_event_t {
594 uint8_t response_type; /**< */
595 uint8_t detail; /**< */
596 uint16_t sequence; /**< */
597 xcb_timestamp_t time; /**< */
598 xcb_window_t root; /**< */
599 xcb_window_t event; /**< */
600 xcb_window_t child; /**< */
601 int16_t root_x; /**< */
602 int16_t root_y; /**< */
603 int16_t event_x; /**< */
604 int16_t event_y; /**< */
605 uint16_t state; /**< */
606 uint8_t same_screen; /**< */
607 uint8_t pad0; /**< */
608} xcb_motion_notify_event_t;
609
610typedef enum xcb_notify_detail_t {
611 XCB_NOTIFY_DETAIL_ANCESTOR = 0,
612 XCB_NOTIFY_DETAIL_VIRTUAL = 1,
613 XCB_NOTIFY_DETAIL_INFERIOR = 2,
614 XCB_NOTIFY_DETAIL_NONLINEAR = 3,
615 XCB_NOTIFY_DETAIL_NONLINEAR_VIRTUAL = 4,
616 XCB_NOTIFY_DETAIL_POINTER = 5,
617 XCB_NOTIFY_DETAIL_POINTER_ROOT = 6,
618 XCB_NOTIFY_DETAIL_NONE = 7
619} xcb_notify_detail_t;
620
621typedef enum xcb_notify_mode_t {
622 XCB_NOTIFY_MODE_NORMAL = 0,
623 XCB_NOTIFY_MODE_GRAB = 1,
624 XCB_NOTIFY_MODE_UNGRAB = 2,
625 XCB_NOTIFY_MODE_WHILE_GRABBED = 3
626} xcb_notify_mode_t;
627
628/** Opcode for xcb_enter_notify. */
629#define XCB_ENTER_NOTIFY 7
630
631/**
632 * @brief xcb_enter_notify_event_t
633 **/
634typedef struct xcb_enter_notify_event_t {
635 uint8_t response_type; /**< */
636 uint8_t detail; /**< */
637 uint16_t sequence; /**< */
638 xcb_timestamp_t time; /**< */
639 xcb_window_t root; /**< */
640 xcb_window_t event; /**< */
641 xcb_window_t child; /**< */
642 int16_t root_x; /**< */
643 int16_t root_y; /**< */
644 int16_t event_x; /**< */
645 int16_t event_y; /**< */
646 uint16_t state; /**< */
647 uint8_t mode; /**< */
648 uint8_t same_screen_focus; /**< */
649} xcb_enter_notify_event_t;
650
651/** Opcode for xcb_leave_notify. */
652#define XCB_LEAVE_NOTIFY 8
653
654typedef xcb_enter_notify_event_t xcb_leave_notify_event_t;
655
656/** Opcode for xcb_focus_in. */
657#define XCB_FOCUS_IN 9
658
659/**
660 * @brief xcb_focus_in_event_t
661 **/
662typedef struct xcb_focus_in_event_t {
663 uint8_t response_type; /**< */
664 uint8_t detail; /**< */
665 uint16_t sequence; /**< */
666 xcb_window_t event; /**< */
667 uint8_t mode; /**< */
668 uint8_t pad0[3]; /**< */
669} xcb_focus_in_event_t;
670
671/** Opcode for xcb_focus_out. */
672#define XCB_FOCUS_OUT 10
673
674typedef xcb_focus_in_event_t xcb_focus_out_event_t;
675
676/** Opcode for xcb_keymap_notify. */
677#define XCB_KEYMAP_NOTIFY 11
678
679/**
680 * @brief xcb_keymap_notify_event_t
681 **/
682typedef struct xcb_keymap_notify_event_t {
683 uint8_t response_type; /**< */
684 uint8_t keys[31]; /**< */
685} xcb_keymap_notify_event_t;
686
687/** Opcode for xcb_expose. */
688#define XCB_EXPOSE 12
689
690/**
691 * @brief xcb_expose_event_t
692 **/
693typedef struct xcb_expose_event_t {
694 uint8_t response_type; /**< */
695 uint8_t pad0; /**< */
696 uint16_t sequence; /**< */
697 xcb_window_t window; /**< */
698 uint16_t x; /**< */
699 uint16_t y; /**< */
700 uint16_t width; /**< */
701 uint16_t height; /**< */
702 uint16_t count; /**< */
703 uint8_t pad1[2]; /**< */
704} xcb_expose_event_t;
705
706/** Opcode for xcb_graphics_exposure. */
707#define XCB_GRAPHICS_EXPOSURE 13
708
709/**
710 * @brief xcb_graphics_exposure_event_t
711 **/
712typedef struct xcb_graphics_exposure_event_t {
713 uint8_t response_type; /**< */
714 uint8_t pad0; /**< */
715 uint16_t sequence; /**< */
716 xcb_drawable_t drawable; /**< */
717 uint16_t x; /**< */
718 uint16_t y; /**< */
719 uint16_t width; /**< */
720 uint16_t height; /**< */
721 uint16_t minor_opcode; /**< */
722 uint16_t count; /**< */
723 uint8_t major_opcode; /**< */
724 uint8_t pad1[3]; /**< */
725} xcb_graphics_exposure_event_t;
726
727/** Opcode for xcb_no_exposure. */
728#define XCB_NO_EXPOSURE 14
729
730/**
731 * @brief xcb_no_exposure_event_t
732 **/
733typedef struct xcb_no_exposure_event_t {
734 uint8_t response_type; /**< */
735 uint8_t pad0; /**< */
736 uint16_t sequence; /**< */
737 xcb_drawable_t drawable; /**< */
738 uint16_t minor_opcode; /**< */
739 uint8_t major_opcode; /**< */
740 uint8_t pad1; /**< */
741} xcb_no_exposure_event_t;
742
743typedef enum xcb_visibility_t {
744 XCB_VISIBILITY_UNOBSCURED = 0,
745 XCB_VISIBILITY_PARTIALLY_OBSCURED = 1,
746 XCB_VISIBILITY_FULLY_OBSCURED = 2
747} xcb_visibility_t;
748
749/** Opcode for xcb_visibility_notify. */
750#define XCB_VISIBILITY_NOTIFY 15
751
752/**
753 * @brief xcb_visibility_notify_event_t
754 **/
755typedef struct xcb_visibility_notify_event_t {
756 uint8_t response_type; /**< */
757 uint8_t pad0; /**< */
758 uint16_t sequence; /**< */
759 xcb_window_t window; /**< */
760 uint8_t state; /**< */
761 uint8_t pad1[3]; /**< */
762} xcb_visibility_notify_event_t;
763
764/** Opcode for xcb_create_notify. */
765#define XCB_CREATE_NOTIFY 16
766
767/**
768 * @brief xcb_create_notify_event_t
769 **/
770typedef struct xcb_create_notify_event_t {
771 uint8_t response_type; /**< */
772 uint8_t pad0; /**< */
773 uint16_t sequence; /**< */
774 xcb_window_t parent; /**< */
775 xcb_window_t window; /**< */
776 int16_t x; /**< */
777 int16_t y; /**< */
778 uint16_t width; /**< */
779 uint16_t height; /**< */
780 uint16_t border_width; /**< */
781 uint8_t override_redirect; /**< */
782 uint8_t pad1; /**< */
783} xcb_create_notify_event_t;
784
785/** Opcode for xcb_destroy_notify. */
786#define XCB_DESTROY_NOTIFY 17
787
788/**
789 * @brief xcb_destroy_notify_event_t
790 **/
791typedef struct xcb_destroy_notify_event_t {
792 uint8_t response_type; /**< */
793 uint8_t pad0; /**< */
794 uint16_t sequence; /**< */
795 xcb_window_t event; /**< */
796 xcb_window_t window; /**< */
797} xcb_destroy_notify_event_t;
798
799/** Opcode for xcb_unmap_notify. */
800#define XCB_UNMAP_NOTIFY 18
801
802/**
803 * @brief xcb_unmap_notify_event_t
804 **/
805typedef struct xcb_unmap_notify_event_t {
806 uint8_t response_type; /**< */
807 uint8_t pad0; /**< */
808 uint16_t sequence; /**< */
809 xcb_window_t event; /**< */
810 xcb_window_t window; /**< */
811 uint8_t from_configure; /**< */
812 uint8_t pad1[3]; /**< */
813} xcb_unmap_notify_event_t;
814
815/** Opcode for xcb_map_notify. */
816#define XCB_MAP_NOTIFY 19
817
818/**
819 * @brief xcb_map_notify_event_t
820 **/
821typedef struct xcb_map_notify_event_t {
822 uint8_t response_type; /**< */
823 uint8_t pad0; /**< */
824 uint16_t sequence; /**< */
825 xcb_window_t event; /**< */
826 xcb_window_t window; /**< */
827 uint8_t override_redirect; /**< */
828 uint8_t pad1[3]; /**< */
829} xcb_map_notify_event_t;
830
831/** Opcode for xcb_map_request. */
832#define XCB_MAP_REQUEST 20
833
834/**
835 * @brief xcb_map_request_event_t
836 **/
837typedef struct xcb_map_request_event_t {
838 uint8_t response_type; /**< */
839 uint8_t pad0; /**< */
840 uint16_t sequence; /**< */
841 xcb_window_t parent; /**< */
842 xcb_window_t window; /**< */
843} xcb_map_request_event_t;
844
845/** Opcode for xcb_reparent_notify. */
846#define XCB_REPARENT_NOTIFY 21
847
848/**
849 * @brief xcb_reparent_notify_event_t
850 **/
851typedef struct xcb_reparent_notify_event_t {
852 uint8_t response_type; /**< */
853 uint8_t pad0; /**< */
854 uint16_t sequence; /**< */
855 xcb_window_t event; /**< */
856 xcb_window_t window; /**< */
857 xcb_window_t parent; /**< */
858 int16_t x; /**< */
859 int16_t y; /**< */
860 uint8_t override_redirect; /**< */
861 uint8_t pad1[3]; /**< */
862} xcb_reparent_notify_event_t;
863
864/** Opcode for xcb_configure_notify. */
865#define XCB_CONFIGURE_NOTIFY 22
866
867/**
868 * @brief xcb_configure_notify_event_t
869 **/
870typedef struct xcb_configure_notify_event_t {
871 uint8_t response_type; /**< */
872 uint8_t pad0; /**< */
873 uint16_t sequence; /**< */
874 xcb_window_t event; /**< */
875 xcb_window_t window; /**< */
876 xcb_window_t above_sibling; /**< */
877 int16_t x; /**< */
878 int16_t y; /**< */
879 uint16_t width; /**< */
880 uint16_t height; /**< */
881 uint16_t border_width; /**< */
882 uint8_t override_redirect; /**< */
883 uint8_t pad1; /**< */
884} xcb_configure_notify_event_t;
885
886/** Opcode for xcb_configure_request. */
887#define XCB_CONFIGURE_REQUEST 23
888
889/**
890 * @brief xcb_configure_request_event_t
891 **/
892typedef struct xcb_configure_request_event_t {
893 uint8_t response_type; /**< */
894 uint8_t stack_mode; /**< */
895 uint16_t sequence; /**< */
896 xcb_window_t parent; /**< */
897 xcb_window_t window; /**< */
898 xcb_window_t sibling; /**< */
899 int16_t x; /**< */
900 int16_t y; /**< */
901 uint16_t width; /**< */
902 uint16_t height; /**< */
903 uint16_t border_width; /**< */
904 uint16_t value_mask; /**< */
905} xcb_configure_request_event_t;
906
907/** Opcode for xcb_gravity_notify. */
908#define XCB_GRAVITY_NOTIFY 24
909
910/**
911 * @brief xcb_gravity_notify_event_t
912 **/
913typedef struct xcb_gravity_notify_event_t {
914 uint8_t response_type; /**< */
915 uint8_t pad0; /**< */
916 uint16_t sequence; /**< */
917 xcb_window_t event; /**< */
918 xcb_window_t window; /**< */
919 int16_t x; /**< */
920 int16_t y; /**< */
921} xcb_gravity_notify_event_t;
922
923/** Opcode for xcb_resize_request. */
924#define XCB_RESIZE_REQUEST 25
925
926/**
927 * @brief xcb_resize_request_event_t
928 **/
929typedef struct xcb_resize_request_event_t {
930 uint8_t response_type; /**< */
931 uint8_t pad0; /**< */
932 uint16_t sequence; /**< */
933 xcb_window_t window; /**< */
934 uint16_t width; /**< */
935 uint16_t height; /**< */
936} xcb_resize_request_event_t;
937
938typedef enum xcb_place_t {
939 XCB_PLACE_ON_TOP = 0,
940/**< The window is now on top of all siblings. */
941
942 XCB_PLACE_ON_BOTTOM = 1
943/**< The window is now below all siblings. */
944
945} xcb_place_t;
946
947/** Opcode for xcb_circulate_notify. */
948#define XCB_CIRCULATE_NOTIFY 26
949
950/**
951 * @brief xcb_circulate_notify_event_t
952 **/
953typedef struct xcb_circulate_notify_event_t {
954 uint8_t response_type; /**< */
955 uint8_t pad0; /**< */
956 uint16_t sequence; /**< */
957 xcb_window_t event; /**< */
958 xcb_window_t window; /**< */
959 uint8_t pad1[4]; /**< */
960 uint8_t place; /**< */
961 uint8_t pad2[3]; /**< */
962} xcb_circulate_notify_event_t;
963
964/** Opcode for xcb_circulate_request. */
965#define XCB_CIRCULATE_REQUEST 27
966
967typedef xcb_circulate_notify_event_t xcb_circulate_request_event_t;
968
969typedef enum xcb_property_t {
970 XCB_PROPERTY_NEW_VALUE = 0,
971 XCB_PROPERTY_DELETE = 1
972} xcb_property_t;
973
974/** Opcode for xcb_property_notify. */
975#define XCB_PROPERTY_NOTIFY 28
976
977/**
978 * @brief xcb_property_notify_event_t
979 **/
980typedef struct xcb_property_notify_event_t {
981 uint8_t response_type; /**< */
982 uint8_t pad0; /**< */
983 uint16_t sequence; /**< */
984 xcb_window_t window; /**< */
985 xcb_atom_t atom; /**< */
986 xcb_timestamp_t time; /**< */
987 uint8_t state; /**< */
988 uint8_t pad1[3]; /**< */
989} xcb_property_notify_event_t;
990
991/** Opcode for xcb_selection_clear. */
992#define XCB_SELECTION_CLEAR 29
993
994/**
995 * @brief xcb_selection_clear_event_t
996 **/
997typedef struct xcb_selection_clear_event_t {
998 uint8_t response_type; /**< */
999 uint8_t pad0; /**< */
1000 uint16_t sequence; /**< */
1001 xcb_timestamp_t time; /**< */
1002 xcb_window_t owner; /**< */
1003 xcb_atom_t selection; /**< */
1004} xcb_selection_clear_event_t;
1005
1006typedef enum xcb_time_t {
1007 XCB_TIME_CURRENT_TIME = 0
1008} xcb_time_t;
1009
1010typedef enum xcb_atom_enum_t {
1011 XCB_ATOM_NONE = 0,
1012 XCB_ATOM_ANY = 0,
1013 XCB_ATOM_PRIMARY = 1,
1014 XCB_ATOM_SECONDARY = 2,
1015 XCB_ATOM_ARC = 3,
1016 XCB_ATOM_ATOM = 4,
1017 XCB_ATOM_BITMAP = 5,
1018 XCB_ATOM_CARDINAL = 6,
1019 XCB_ATOM_COLORMAP = 7,
1020 XCB_ATOM_CURSOR = 8,
1021 XCB_ATOM_CUT_BUFFER0 = 9,
1022 XCB_ATOM_CUT_BUFFER1 = 10,
1023 XCB_ATOM_CUT_BUFFER2 = 11,
1024 XCB_ATOM_CUT_BUFFER3 = 12,
1025 XCB_ATOM_CUT_BUFFER4 = 13,
1026 XCB_ATOM_CUT_BUFFER5 = 14,
1027 XCB_ATOM_CUT_BUFFER6 = 15,
1028 XCB_ATOM_CUT_BUFFER7 = 16,
1029 XCB_ATOM_DRAWABLE = 17,
1030 XCB_ATOM_FONT = 18,
1031 XCB_ATOM_INTEGER = 19,
1032 XCB_ATOM_PIXMAP = 20,
1033 XCB_ATOM_POINT = 21,
1034 XCB_ATOM_RECTANGLE = 22,
1035 XCB_ATOM_RESOURCE_MANAGER = 23,
1036 XCB_ATOM_RGB_COLOR_MAP = 24,
1037 XCB_ATOM_RGB_BEST_MAP = 25,
1038 XCB_ATOM_RGB_BLUE_MAP = 26,
1039 XCB_ATOM_RGB_DEFAULT_MAP = 27,
1040 XCB_ATOM_RGB_GRAY_MAP = 28,
1041 XCB_ATOM_RGB_GREEN_MAP = 29,
1042 XCB_ATOM_RGB_RED_MAP = 30,
1043 XCB_ATOM_STRING = 31,
1044 XCB_ATOM_VISUALID = 32,
1045 XCB_ATOM_WINDOW = 33,
1046 XCB_ATOM_WM_COMMAND = 34,
1047 XCB_ATOM_WM_HINTS = 35,
1048 XCB_ATOM_WM_CLIENT_MACHINE = 36,
1049 XCB_ATOM_WM_ICON_NAME = 37,
1050 XCB_ATOM_WM_ICON_SIZE = 38,
1051 XCB_ATOM_WM_NAME = 39,
1052 XCB_ATOM_WM_NORMAL_HINTS = 40,
1053 XCB_ATOM_WM_SIZE_HINTS = 41,
1054 XCB_ATOM_WM_ZOOM_HINTS = 42,
1055 XCB_ATOM_MIN_SPACE = 43,
1056 XCB_ATOM_NORM_SPACE = 44,
1057 XCB_ATOM_MAX_SPACE = 45,
1058 XCB_ATOM_END_SPACE = 46,
1059 XCB_ATOM_SUPERSCRIPT_X = 47,
1060 XCB_ATOM_SUPERSCRIPT_Y = 48,
1061 XCB_ATOM_SUBSCRIPT_X = 49,
1062 XCB_ATOM_SUBSCRIPT_Y = 50,
1063 XCB_ATOM_UNDERLINE_POSITION = 51,
1064 XCB_ATOM_UNDERLINE_THICKNESS = 52,
1065 XCB_ATOM_STRIKEOUT_ASCENT = 53,
1066 XCB_ATOM_STRIKEOUT_DESCENT = 54,
1067 XCB_ATOM_ITALIC_ANGLE = 55,
1068 XCB_ATOM_X_HEIGHT = 56,
1069 XCB_ATOM_QUAD_WIDTH = 57,
1070 XCB_ATOM_WEIGHT = 58,
1071 XCB_ATOM_POINT_SIZE = 59,
1072 XCB_ATOM_RESOLUTION = 60,
1073 XCB_ATOM_COPYRIGHT = 61,
1074 XCB_ATOM_NOTICE = 62,
1075 XCB_ATOM_FONT_NAME = 63,
1076 XCB_ATOM_FAMILY_NAME = 64,
1077 XCB_ATOM_FULL_NAME = 65,
1078 XCB_ATOM_CAP_HEIGHT = 66,
1079 XCB_ATOM_WM_CLASS = 67,
1080 XCB_ATOM_WM_TRANSIENT_FOR = 68
1081} xcb_atom_enum_t;
1082
1083/** Opcode for xcb_selection_request. */
1084#define XCB_SELECTION_REQUEST 30
1085
1086/**
1087 * @brief xcb_selection_request_event_t
1088 **/
1089typedef struct xcb_selection_request_event_t {
1090 uint8_t response_type; /**< */
1091 uint8_t pad0; /**< */
1092 uint16_t sequence; /**< */
1093 xcb_timestamp_t time; /**< */
1094 xcb_window_t owner; /**< */
1095 xcb_window_t requestor; /**< */
1096 xcb_atom_t selection; /**< */
1097 xcb_atom_t target; /**< */
1098 xcb_atom_t property; /**< */
1099} xcb_selection_request_event_t;
1100
1101/** Opcode for xcb_selection_notify. */
1102#define XCB_SELECTION_NOTIFY 31
1103
1104/**
1105 * @brief xcb_selection_notify_event_t
1106 **/
1107typedef struct xcb_selection_notify_event_t {
1108 uint8_t response_type; /**< */
1109 uint8_t pad0; /**< */
1110 uint16_t sequence; /**< */
1111 xcb_timestamp_t time; /**< */
1112 xcb_window_t requestor; /**< */
1113 xcb_atom_t selection; /**< */
1114 xcb_atom_t target; /**< */
1115 xcb_atom_t property; /**< */
1116} xcb_selection_notify_event_t;
1117
1118typedef enum xcb_colormap_state_t {
1119 XCB_COLORMAP_STATE_UNINSTALLED = 0,
1120/**< The colormap was uninstalled. */
1121
1122 XCB_COLORMAP_STATE_INSTALLED = 1
1123/**< The colormap was installed. */
1124
1125} xcb_colormap_state_t;
1126
1127typedef enum xcb_colormap_enum_t {
1128 XCB_COLORMAP_NONE = 0
1129} xcb_colormap_enum_t;
1130
1131/** Opcode for xcb_colormap_notify. */
1132#define XCB_COLORMAP_NOTIFY 32
1133
1134/**
1135 * @brief xcb_colormap_notify_event_t
1136 **/
1137typedef struct xcb_colormap_notify_event_t {
1138 uint8_t response_type; /**< */
1139 uint8_t pad0; /**< */
1140 uint16_t sequence; /**< */
1141 xcb_window_t window; /**< */
1142 xcb_colormap_t colormap; /**< */
1143 uint8_t _new; /**< */
1144 uint8_t state; /**< */
1145 uint8_t pad1[2]; /**< */
1146} xcb_colormap_notify_event_t;
1147
1148/**
1149 * @brief xcb_client_message_data_t
1150 **/
1151typedef union xcb_client_message_data_t {
1152 uint8_t data8[20]; /**< */
1153 uint16_t data16[10]; /**< */
1154 uint32_t data32[5]; /**< */
1155} xcb_client_message_data_t;
1156
1157/**
1158 * @brief xcb_client_message_data_iterator_t
1159 **/
1160typedef struct xcb_client_message_data_iterator_t {
1161 xcb_client_message_data_t *data; /**< */
1162 int rem; /**< */
1163 int index; /**< */
1164} xcb_client_message_data_iterator_t;
1165
1166/** Opcode for xcb_client_message. */
1167#define XCB_CLIENT_MESSAGE 33
1168
1169/**
1170 * @brief xcb_client_message_event_t
1171 **/
1172typedef struct xcb_client_message_event_t {
1173 uint8_t response_type; /**< */
1174 uint8_t format; /**< */
1175 uint16_t sequence; /**< */
1176 xcb_window_t window; /**< */
1177 xcb_atom_t type; /**< */
1178 xcb_client_message_data_t data; /**< */
1179} xcb_client_message_event_t;
1180
1181typedef enum xcb_mapping_t {
1182 XCB_MAPPING_MODIFIER = 0,
1183 XCB_MAPPING_KEYBOARD = 1,
1184 XCB_MAPPING_POINTER = 2
1185} xcb_mapping_t;
1186
1187/** Opcode for xcb_mapping_notify. */
1188#define XCB_MAPPING_NOTIFY 34
1189
1190/**
1191 * @brief xcb_mapping_notify_event_t
1192 **/
1193typedef struct xcb_mapping_notify_event_t {
1194 uint8_t response_type; /**< */
1195 uint8_t pad0; /**< */
1196 uint16_t sequence; /**< */
1197 uint8_t request; /**< */
1198 xcb_keycode_t first_keycode; /**< */
1199 uint8_t count; /**< */
1200 uint8_t pad1; /**< */
1201} xcb_mapping_notify_event_t;
1202
1203/** Opcode for xcb_ge_generic. */
1204#define XCB_GE_GENERIC 35
1205
1206/**
1207 * @brief xcb_ge_generic_event_t
1208 **/
1209typedef struct xcb_ge_generic_event_t {
1210 uint8_t response_type; /**< */
1211 uint8_t extension; /**< */
1212 uint16_t sequence; /**< */
1213 uint32_t length; /**< */
1214 uint16_t event_type; /**< */
1215 uint8_t pad0[22]; /**< */
1216 uint32_t full_sequence; /**< */
1217} xcb_ge_generic_event_t;
1218
1219/** Opcode for xcb_request. */
1220#define XCB_REQUEST 1
1221
1222/**
1223 * @brief xcb_request_error_t
1224 **/
1225typedef struct xcb_request_error_t {
1226 uint8_t response_type; /**< */
1227 uint8_t error_code; /**< */
1228 uint16_t sequence; /**< */
1229 uint32_t bad_value; /**< */
1230 uint16_t minor_opcode; /**< */
1231 uint8_t major_opcode; /**< */
1232 uint8_t pad0; /**< */
1233} xcb_request_error_t;
1234
1235/** Opcode for xcb_value. */
1236#define XCB_VALUE 2
1237
1238/**
1239 * @brief xcb_value_error_t
1240 **/
1241typedef struct xcb_value_error_t {
1242 uint8_t response_type; /**< */
1243 uint8_t error_code; /**< */
1244 uint16_t sequence; /**< */
1245 uint32_t bad_value; /**< */
1246 uint16_t minor_opcode; /**< */
1247 uint8_t major_opcode; /**< */
1248 uint8_t pad0; /**< */
1249} xcb_value_error_t;
1250
1251/** Opcode for xcb_window. */
1252#define XCB_WINDOW 3
1253
1254typedef xcb_value_error_t xcb_window_error_t;
1255
1256/** Opcode for xcb_pixmap. */
1257#define XCB_PIXMAP 4
1258
1259typedef xcb_value_error_t xcb_pixmap_error_t;
1260
1261/** Opcode for xcb_atom. */
1262#define XCB_ATOM 5
1263
1264typedef xcb_value_error_t xcb_atom_error_t;
1265
1266/** Opcode for xcb_cursor. */
1267#define XCB_CURSOR 6
1268
1269typedef xcb_value_error_t xcb_cursor_error_t;
1270
1271/** Opcode for xcb_font. */
1272#define XCB_FONT 7
1273
1274typedef xcb_value_error_t xcb_font_error_t;
1275
1276/** Opcode for xcb_match. */
1277#define XCB_MATCH 8
1278
1279typedef xcb_request_error_t xcb_match_error_t;
1280
1281/** Opcode for xcb_drawable. */
1282#define XCB_DRAWABLE 9
1283
1284typedef xcb_value_error_t xcb_drawable_error_t;
1285
1286/** Opcode for xcb_access. */
1287#define XCB_ACCESS 10
1288
1289typedef xcb_request_error_t xcb_access_error_t;
1290
1291/** Opcode for xcb_alloc. */
1292#define XCB_ALLOC 11
1293
1294typedef xcb_request_error_t xcb_alloc_error_t;
1295
1296/** Opcode for xcb_colormap. */
1297#define XCB_COLORMAP 12
1298
1299typedef xcb_value_error_t xcb_colormap_error_t;
1300
1301/** Opcode for xcb_g_context. */
1302#define XCB_G_CONTEXT 13
1303
1304typedef xcb_value_error_t xcb_g_context_error_t;
1305
1306/** Opcode for xcb_id_choice. */
1307#define XCB_ID_CHOICE 14
1308
1309typedef xcb_value_error_t xcb_id_choice_error_t;
1310
1311/** Opcode for xcb_name. */
1312#define XCB_NAME 15
1313
1314typedef xcb_request_error_t xcb_name_error_t;
1315
1316/** Opcode for xcb_length. */
1317#define XCB_LENGTH 16
1318
1319typedef xcb_request_error_t xcb_length_error_t;
1320
1321/** Opcode for xcb_implementation. */
1322#define XCB_IMPLEMENTATION 17
1323
1324typedef xcb_request_error_t xcb_implementation_error_t;
1325
1326typedef enum xcb_window_class_t {
1327 XCB_WINDOW_CLASS_COPY_FROM_PARENT = 0,
1328 XCB_WINDOW_CLASS_INPUT_OUTPUT = 1,
1329 XCB_WINDOW_CLASS_INPUT_ONLY = 2
1330} xcb_window_class_t;
1331
1332typedef enum xcb_cw_t {
1333 XCB_CW_BACK_PIXMAP = 1,
1334/**< Overrides the default background-pixmap. The background pixmap and window must
1335have the same root and same depth. Any size pixmap can be used, although some
1336sizes may be faster than others.
1337
1338If `XCB_BACK_PIXMAP_NONE` is specified, the window has no defined background.
1339The server may fill the contents with the previous screen contents or with
1340contents of its own choosing.
1341
1342If `XCB_BACK_PIXMAP_PARENT_RELATIVE` is specified, the parent's background is
1343used, but the window must have the same depth as the parent (or a Match error
1344results). The parent's background is tracked, and the current version is
1345used each time the window background is required. */
1346
1347 XCB_CW_BACK_PIXEL = 2,
1348/**< Overrides `BackPixmap`. A pixmap of undefined size filled with the specified
1349background pixel is used for the background. Range-checking is not performed,
1350the background pixel is truncated to the appropriate number of bits. */
1351
1352 XCB_CW_BORDER_PIXMAP = 4,
1353/**< Overrides the default border-pixmap. The border pixmap and window must have the
1354same root and the same depth. Any size pixmap can be used, although some sizes
1355may be faster than others.
1356
1357The special value `XCB_COPY_FROM_PARENT` means the parent's border pixmap is
1358copied (subsequent changes to the parent's border attribute do not affect the
1359child), but the window must have the same depth as the parent. */
1360
1361 XCB_CW_BORDER_PIXEL = 8,
1362/**< Overrides `BorderPixmap`. A pixmap of undefined size filled with the specified
1363border pixel is used for the border. Range checking is not performed on the
1364border-pixel value, it is truncated to the appropriate number of bits. */
1365
1366 XCB_CW_BIT_GRAVITY = 16,
1367/**< Defines which region of the window should be retained if the window is resized. */
1368
1369 XCB_CW_WIN_GRAVITY = 32,
1370/**< Defines how the window should be repositioned if the parent is resized (see
1371`ConfigureWindow`). */
1372
1373 XCB_CW_BACKING_STORE = 64,
1374/**< A backing-store of `WhenMapped` advises the server that maintaining contents of
1375obscured regions when the window is mapped would be beneficial. A backing-store
1376of `Always` advises the server that maintaining contents even when the window
1377is unmapped would be beneficial. In this case, the server may generate an
1378exposure event when the window is created. A value of `NotUseful` advises the
1379server that maintaining contents is unnecessary, although a server may still
1380choose to maintain contents while the window is mapped. Note that if the server
1381maintains contents, then the server should maintain complete contents not just
1382the region within the parent boundaries, even if the window is larger than its
1383parent. While the server maintains contents, exposure events will not normally
1384be generated, but the server may stop maintaining contents at any time. */
1385
1386 XCB_CW_BACKING_PLANES = 128,
1387/**< The backing-planes indicates (with bits set to 1) which bit planes of the
1388window hold dynamic data that must be preserved in backing-stores and during
1389save-unders. */
1390
1391 XCB_CW_BACKING_PIXEL = 256,
1392/**< The backing-pixel specifies what value to use in planes not covered by
1393backing-planes. The server is free to save only the specified bit planes in the
1394backing-store or save-under and regenerate the remaining planes with the
1395specified pixel value. Any bits beyond the specified depth of the window in
1396these values are simply ignored. */
1397
1398 XCB_CW_OVERRIDE_REDIRECT = 512,
1399/**< The override-redirect specifies whether map and configure requests on this
1400window should override a SubstructureRedirect on the parent, typically to
1401inform a window manager not to tamper with the window. */
1402
1403 XCB_CW_SAVE_UNDER = 1024,
1404/**< If 1, the server is advised that when this window is mapped, saving the
1405contents of windows it obscures would be beneficial. */
1406
1407 XCB_CW_EVENT_MASK = 2048,
1408/**< The event-mask defines which events the client is interested in for this window
1409(or for some event types, inferiors of the window). */
1410
1411 XCB_CW_DONT_PROPAGATE = 4096,
1412/**< The do-not-propagate-mask defines which events should not be propagated to
1413ancestor windows when no client has the event type selected in this window. */
1414
1415 XCB_CW_COLORMAP = 8192,
1416/**< The colormap specifies the colormap that best reflects the true colors of the window. Servers
1417capable of supporting multiple hardware colormaps may use this information, and window man-
1418agers may use it for InstallColormap requests. The colormap must have the same visual type
1419and root as the window (or a Match error results). If CopyFromParent is specified, the parent's
1420colormap is copied (subsequent changes to the parent's colormap attribute do not affect the child).
1421However, the window must have the same visual type as the parent (or a Match error results),
1422and the parent must not have a colormap of None (or a Match error results). For an explanation
1423of None, see FreeColormap request. The colormap is copied by sharing the colormap object
1424between the child and the parent, not by making a complete copy of the colormap contents. */
1425
1426 XCB_CW_CURSOR = 16384
1427/**< If a cursor is specified, it will be used whenever the pointer is in the window. If None is speci-
1428fied, the parent's cursor will be used when the pointer is in the window, and any change in the
1429parent's cursor will cause an immediate change in the displayed cursor. */
1430
1431} xcb_cw_t;
1432
1433typedef enum xcb_back_pixmap_t {
1434 XCB_BACK_PIXMAP_NONE = 0,
1435 XCB_BACK_PIXMAP_PARENT_RELATIVE = 1
1436} xcb_back_pixmap_t;
1437
1438typedef enum xcb_gravity_t {
1439 XCB_GRAVITY_BIT_FORGET = 0,
1440 XCB_GRAVITY_WIN_UNMAP = 0,
1441 XCB_GRAVITY_NORTH_WEST = 1,
1442 XCB_GRAVITY_NORTH = 2,
1443 XCB_GRAVITY_NORTH_EAST = 3,
1444 XCB_GRAVITY_WEST = 4,
1445 XCB_GRAVITY_CENTER = 5,
1446 XCB_GRAVITY_EAST = 6,
1447 XCB_GRAVITY_SOUTH_WEST = 7,
1448 XCB_GRAVITY_SOUTH = 8,
1449 XCB_GRAVITY_SOUTH_EAST = 9,
1450 XCB_GRAVITY_STATIC = 10
1451} xcb_gravity_t;
1452
1453/** Opcode for xcb_create_window. */
1454#define XCB_CREATE_WINDOW 1
1455
1456/**
1457 * @brief xcb_create_window_request_t
1458 **/
1459typedef struct xcb_create_window_request_t {
1460 uint8_t major_opcode; /**< */
1461 uint8_t depth; /**< */
1462 uint16_t length; /**< */
1463 xcb_window_t wid; /**< */
1464 xcb_window_t parent; /**< */
1465 int16_t x; /**< */
1466 int16_t y; /**< */
1467 uint16_t width; /**< */
1468 uint16_t height; /**< */
1469 uint16_t border_width; /**< */
1470 uint16_t _class; /**< */
1471 xcb_visualid_t visual; /**< */
1472 uint32_t value_mask; /**< */
1473} xcb_create_window_request_t;
1474
1475/** Opcode for xcb_change_window_attributes. */
1476#define XCB_CHANGE_WINDOW_ATTRIBUTES 2
1477
1478/**
1479 * @brief xcb_change_window_attributes_request_t
1480 **/
1481typedef struct xcb_change_window_attributes_request_t {
1482 uint8_t major_opcode; /**< */
1483 uint8_t pad0; /**< */
1484 uint16_t length; /**< */
1485 xcb_window_t window; /**< */
1486 uint32_t value_mask; /**< */
1487} xcb_change_window_attributes_request_t;
1488
1489typedef enum xcb_map_state_t {
1490 XCB_MAP_STATE_UNMAPPED = 0,
1491 XCB_MAP_STATE_UNVIEWABLE = 1,
1492 XCB_MAP_STATE_VIEWABLE = 2
1493} xcb_map_state_t;
1494
1495/**
1496 * @brief xcb_get_window_attributes_cookie_t
1497 **/
1498typedef struct xcb_get_window_attributes_cookie_t {
1499 unsigned int sequence; /**< */
1500} xcb_get_window_attributes_cookie_t;
1501
1502/** Opcode for xcb_get_window_attributes. */
1503#define XCB_GET_WINDOW_ATTRIBUTES 3
1504
1505/**
1506 * @brief xcb_get_window_attributes_request_t
1507 **/
1508typedef struct xcb_get_window_attributes_request_t {
1509 uint8_t major_opcode; /**< */
1510 uint8_t pad0; /**< */
1511 uint16_t length; /**< */
1512 xcb_window_t window; /**< */
1513} xcb_get_window_attributes_request_t;
1514
1515/**
1516 * @brief xcb_get_window_attributes_reply_t
1517 **/
1518typedef struct xcb_get_window_attributes_reply_t {
1519 uint8_t response_type; /**< */
1520 uint8_t backing_store; /**< */
1521 uint16_t sequence; /**< */
1522 uint32_t length; /**< */
1523 xcb_visualid_t visual; /**< */
1524 uint16_t _class; /**< */
1525 uint8_t bit_gravity; /**< */
1526 uint8_t win_gravity; /**< */
1527 uint32_t backing_planes; /**< */
1528 uint32_t backing_pixel; /**< */
1529 uint8_t save_under; /**< */
1530 uint8_t map_is_installed; /**< */
1531 uint8_t map_state; /**< */
1532 uint8_t override_redirect; /**< */
1533 xcb_colormap_t colormap; /**< */
1534 uint32_t all_event_masks; /**< */
1535 uint32_t your_event_mask; /**< */
1536 uint16_t do_not_propagate_mask; /**< */
1537 uint8_t pad0[2]; /**< */
1538} xcb_get_window_attributes_reply_t;
1539
1540/** Opcode for xcb_destroy_window. */
1541#define XCB_DESTROY_WINDOW 4
1542
1543/**
1544 * @brief xcb_destroy_window_request_t
1545 **/
1546typedef struct xcb_destroy_window_request_t {
1547 uint8_t major_opcode; /**< */
1548 uint8_t pad0; /**< */
1549 uint16_t length; /**< */
1550 xcb_window_t window; /**< */
1551} xcb_destroy_window_request_t;
1552
1553/** Opcode for xcb_destroy_subwindows. */
1554#define XCB_DESTROY_SUBWINDOWS 5
1555
1556/**
1557 * @brief xcb_destroy_subwindows_request_t
1558 **/
1559typedef struct xcb_destroy_subwindows_request_t {
1560 uint8_t major_opcode; /**< */
1561 uint8_t pad0; /**< */
1562 uint16_t length; /**< */
1563 xcb_window_t window; /**< */
1564} xcb_destroy_subwindows_request_t;
1565
1566typedef enum xcb_set_mode_t {
1567 XCB_SET_MODE_INSERT = 0,
1568 XCB_SET_MODE_DELETE = 1
1569} xcb_set_mode_t;
1570
1571/** Opcode for xcb_change_save_set. */
1572#define XCB_CHANGE_SAVE_SET 6
1573
1574/**
1575 * @brief xcb_change_save_set_request_t
1576 **/
1577typedef struct xcb_change_save_set_request_t {
1578 uint8_t major_opcode; /**< */
1579 uint8_t mode; /**< */
1580 uint16_t length; /**< */
1581 xcb_window_t window; /**< */
1582} xcb_change_save_set_request_t;
1583
1584/** Opcode for xcb_reparent_window. */
1585#define XCB_REPARENT_WINDOW 7
1586
1587/**
1588 * @brief xcb_reparent_window_request_t
1589 **/
1590typedef struct xcb_reparent_window_request_t {
1591 uint8_t major_opcode; /**< */
1592 uint8_t pad0; /**< */
1593 uint16_t length; /**< */
1594 xcb_window_t window; /**< */
1595 xcb_window_t parent; /**< */
1596 int16_t x; /**< */
1597 int16_t y; /**< */
1598} xcb_reparent_window_request_t;
1599
1600/** Opcode for xcb_map_window. */
1601#define XCB_MAP_WINDOW 8
1602
1603/**
1604 * @brief xcb_map_window_request_t
1605 **/
1606typedef struct xcb_map_window_request_t {
1607 uint8_t major_opcode; /**< */
1608 uint8_t pad0; /**< */
1609 uint16_t length; /**< */
1610 xcb_window_t window; /**< */
1611} xcb_map_window_request_t;
1612
1613/** Opcode for xcb_map_subwindows. */
1614#define XCB_MAP_SUBWINDOWS 9
1615
1616/**
1617 * @brief xcb_map_subwindows_request_t
1618 **/
1619typedef struct xcb_map_subwindows_request_t {
1620 uint8_t major_opcode; /**< */
1621 uint8_t pad0; /**< */
1622 uint16_t length; /**< */
1623 xcb_window_t window; /**< */
1624} xcb_map_subwindows_request_t;
1625
1626/** Opcode for xcb_unmap_window. */
1627#define XCB_UNMAP_WINDOW 10
1628
1629/**
1630 * @brief xcb_unmap_window_request_t
1631 **/
1632typedef struct xcb_unmap_window_request_t {
1633 uint8_t major_opcode; /**< */
1634 uint8_t pad0; /**< */
1635 uint16_t length; /**< */
1636 xcb_window_t window; /**< */
1637} xcb_unmap_window_request_t;
1638
1639/** Opcode for xcb_unmap_subwindows. */
1640#define XCB_UNMAP_SUBWINDOWS 11
1641
1642/**
1643 * @brief xcb_unmap_subwindows_request_t
1644 **/
1645typedef struct xcb_unmap_subwindows_request_t {
1646 uint8_t major_opcode; /**< */
1647 uint8_t pad0; /**< */
1648 uint16_t length; /**< */
1649 xcb_window_t window; /**< */
1650} xcb_unmap_subwindows_request_t;
1651
1652typedef enum xcb_config_window_t {
1653 XCB_CONFIG_WINDOW_X = 1,
1654 XCB_CONFIG_WINDOW_Y = 2,
1655 XCB_CONFIG_WINDOW_WIDTH = 4,
1656 XCB_CONFIG_WINDOW_HEIGHT = 8,
1657 XCB_CONFIG_WINDOW_BORDER_WIDTH = 16,
1658 XCB_CONFIG_WINDOW_SIBLING = 32,
1659 XCB_CONFIG_WINDOW_STACK_MODE = 64
1660} xcb_config_window_t;
1661
1662typedef enum xcb_stack_mode_t {
1663 XCB_STACK_MODE_ABOVE = 0,
1664 XCB_STACK_MODE_BELOW = 1,
1665 XCB_STACK_MODE_TOP_IF = 2,
1666 XCB_STACK_MODE_BOTTOM_IF = 3,
1667 XCB_STACK_MODE_OPPOSITE = 4
1668} xcb_stack_mode_t;
1669
1670/** Opcode for xcb_configure_window. */
1671#define XCB_CONFIGURE_WINDOW 12
1672
1673/**
1674 * @brief xcb_configure_window_request_t
1675 **/
1676typedef struct xcb_configure_window_request_t {
1677 uint8_t major_opcode; /**< */
1678 uint8_t pad0; /**< */
1679 uint16_t length; /**< */
1680 xcb_window_t window; /**< */
1681 uint16_t value_mask; /**< */
1682 uint8_t pad1[2]; /**< */
1683} xcb_configure_window_request_t;
1684
1685typedef enum xcb_circulate_t {
1686 XCB_CIRCULATE_RAISE_LOWEST = 0,
1687 XCB_CIRCULATE_LOWER_HIGHEST = 1
1688} xcb_circulate_t;
1689
1690/** Opcode for xcb_circulate_window. */
1691#define XCB_CIRCULATE_WINDOW 13
1692
1693/**
1694 * @brief xcb_circulate_window_request_t
1695 **/
1696typedef struct xcb_circulate_window_request_t {
1697 uint8_t major_opcode; /**< */
1698 uint8_t direction; /**< */
1699 uint16_t length; /**< */
1700 xcb_window_t window; /**< */
1701} xcb_circulate_window_request_t;
1702
1703/**
1704 * @brief xcb_get_geometry_cookie_t
1705 **/
1706typedef struct xcb_get_geometry_cookie_t {
1707 unsigned int sequence; /**< */
1708} xcb_get_geometry_cookie_t;
1709
1710/** Opcode for xcb_get_geometry. */
1711#define XCB_GET_GEOMETRY 14
1712
1713/**
1714 * @brief xcb_get_geometry_request_t
1715 **/
1716typedef struct xcb_get_geometry_request_t {
1717 uint8_t major_opcode; /**< */
1718 uint8_t pad0; /**< */
1719 uint16_t length; /**< */
1720 xcb_drawable_t drawable; /**< */
1721} xcb_get_geometry_request_t;
1722
1723/**
1724 * @brief xcb_get_geometry_reply_t
1725 **/
1726typedef struct xcb_get_geometry_reply_t {
1727 uint8_t response_type; /**< */
1728 uint8_t depth; /**< */
1729 uint16_t sequence; /**< */
1730 uint32_t length; /**< */
1731 xcb_window_t root; /**< */
1732 int16_t x; /**< */
1733 int16_t y; /**< */
1734 uint16_t width; /**< */
1735 uint16_t height; /**< */
1736 uint16_t border_width; /**< */
1737 uint8_t pad0[2]; /**< */
1738} xcb_get_geometry_reply_t;
1739
1740/**
1741 * @brief xcb_query_tree_cookie_t
1742 **/
1743typedef struct xcb_query_tree_cookie_t {
1744 unsigned int sequence; /**< */
1745} xcb_query_tree_cookie_t;
1746
1747/** Opcode for xcb_query_tree. */
1748#define XCB_QUERY_TREE 15
1749
1750/**
1751 * @brief xcb_query_tree_request_t
1752 **/
1753typedef struct xcb_query_tree_request_t {
1754 uint8_t major_opcode; /**< */
1755 uint8_t pad0; /**< */
1756 uint16_t length; /**< */
1757 xcb_window_t window; /**< */
1758} xcb_query_tree_request_t;
1759
1760/**
1761 * @brief xcb_query_tree_reply_t
1762 **/
1763typedef struct xcb_query_tree_reply_t {
1764 uint8_t response_type; /**< */
1765 uint8_t pad0; /**< */
1766 uint16_t sequence; /**< */
1767 uint32_t length; /**< */
1768 xcb_window_t root; /**< */
1769 xcb_window_t parent; /**< */
1770 uint16_t children_len; /**< */
1771 uint8_t pad1[14]; /**< */
1772} xcb_query_tree_reply_t;
1773
1774/**
1775 * @brief xcb_intern_atom_cookie_t
1776 **/
1777typedef struct xcb_intern_atom_cookie_t {
1778 unsigned int sequence; /**< */
1779} xcb_intern_atom_cookie_t;
1780
1781/** Opcode for xcb_intern_atom. */
1782#define XCB_INTERN_ATOM 16
1783
1784/**
1785 * @brief xcb_intern_atom_request_t
1786 **/
1787typedef struct xcb_intern_atom_request_t {
1788 uint8_t major_opcode; /**< */
1789 uint8_t only_if_exists; /**< */
1790 uint16_t length; /**< */
1791 uint16_t name_len; /**< */
1792 uint8_t pad0[2]; /**< */
1793} xcb_intern_atom_request_t;
1794
1795/**
1796 * @brief xcb_intern_atom_reply_t
1797 **/
1798typedef struct xcb_intern_atom_reply_t {
1799 uint8_t response_type; /**< */
1800 uint8_t pad0; /**< */
1801 uint16_t sequence; /**< */
1802 uint32_t length; /**< */
1803 xcb_atom_t atom; /**< */
1804} xcb_intern_atom_reply_t;
1805
1806/**
1807 * @brief xcb_get_atom_name_cookie_t
1808 **/
1809typedef struct xcb_get_atom_name_cookie_t {
1810 unsigned int sequence; /**< */
1811} xcb_get_atom_name_cookie_t;
1812
1813/** Opcode for xcb_get_atom_name. */
1814#define XCB_GET_ATOM_NAME 17
1815
1816/**
1817 * @brief xcb_get_atom_name_request_t
1818 **/
1819typedef struct xcb_get_atom_name_request_t {
1820 uint8_t major_opcode; /**< */
1821 uint8_t pad0; /**< */
1822 uint16_t length; /**< */
1823 xcb_atom_t atom; /**< */
1824} xcb_get_atom_name_request_t;
1825
1826/**
1827 * @brief xcb_get_atom_name_reply_t
1828 **/
1829typedef struct xcb_get_atom_name_reply_t {
1830 uint8_t response_type; /**< */
1831 uint8_t pad0; /**< */
1832 uint16_t sequence; /**< */
1833 uint32_t length; /**< */
1834 uint16_t name_len; /**< */
1835 uint8_t pad1[22]; /**< */
1836} xcb_get_atom_name_reply_t;
1837
1838typedef enum xcb_prop_mode_t {
1839 XCB_PROP_MODE_REPLACE = 0,
1840/**< Discard the previous property value and store the new data. */
1841
1842 XCB_PROP_MODE_PREPEND = 1,
1843/**< Insert the new data before the beginning of existing data. The `format` must
1844match existing property value. If the property is undefined, it is treated as
1845defined with the correct type and format with zero-length data. */
1846
1847 XCB_PROP_MODE_APPEND = 2
1848/**< Insert the new data after the beginning of existing data. The `format` must
1849match existing property value. If the property is undefined, it is treated as
1850defined with the correct type and format with zero-length data. */
1851
1852} xcb_prop_mode_t;
1853
1854/** Opcode for xcb_change_property. */
1855#define XCB_CHANGE_PROPERTY 18
1856
1857/**
1858 * @brief xcb_change_property_request_t
1859 **/
1860typedef struct xcb_change_property_request_t {
1861 uint8_t major_opcode; /**< */
1862 uint8_t mode; /**< */
1863 uint16_t length; /**< */
1864 xcb_window_t window; /**< */
1865 xcb_atom_t property; /**< */
1866 xcb_atom_t type; /**< */
1867 uint8_t format; /**< */
1868 uint8_t pad0[3]; /**< */
1869 uint32_t data_len; /**< */
1870} xcb_change_property_request_t;
1871
1872/** Opcode for xcb_delete_property. */
1873#define XCB_DELETE_PROPERTY 19
1874
1875/**
1876 * @brief xcb_delete_property_request_t
1877 **/
1878typedef struct xcb_delete_property_request_t {
1879 uint8_t major_opcode; /**< */
1880 uint8_t pad0; /**< */
1881 uint16_t length; /**< */
1882 xcb_window_t window; /**< */
1883 xcb_atom_t property; /**< */
1884} xcb_delete_property_request_t;
1885
1886typedef enum xcb_get_property_type_t {
1887 XCB_GET_PROPERTY_TYPE_ANY = 0
1888} xcb_get_property_type_t;
1889
1890/**
1891 * @brief xcb_get_property_cookie_t
1892 **/
1893typedef struct xcb_get_property_cookie_t {
1894 unsigned int sequence; /**< */
1895} xcb_get_property_cookie_t;
1896
1897/** Opcode for xcb_get_property. */
1898#define XCB_GET_PROPERTY 20
1899
1900/**
1901 * @brief xcb_get_property_request_t
1902 **/
1903typedef struct xcb_get_property_request_t {
1904 uint8_t major_opcode; /**< */
1905 uint8_t _delete; /**< */
1906 uint16_t length; /**< */
1907 xcb_window_t window; /**< */
1908 xcb_atom_t property; /**< */
1909 xcb_atom_t type; /**< */
1910 uint32_t long_offset; /**< */
1911 uint32_t long_length; /**< */
1912} xcb_get_property_request_t;
1913
1914/**
1915 * @brief xcb_get_property_reply_t
1916 **/
1917typedef struct xcb_get_property_reply_t {
1918 uint8_t response_type; /**< */
1919 uint8_t format; /**< */
1920 uint16_t sequence; /**< */
1921 uint32_t length; /**< */
1922 xcb_atom_t type; /**< */
1923 uint32_t bytes_after; /**< */
1924 uint32_t value_len; /**< */
1925 uint8_t pad0[12]; /**< */
1926} xcb_get_property_reply_t;
1927
1928/**
1929 * @brief xcb_list_properties_cookie_t
1930 **/
1931typedef struct xcb_list_properties_cookie_t {
1932 unsigned int sequence; /**< */
1933} xcb_list_properties_cookie_t;
1934
1935/** Opcode for xcb_list_properties. */
1936#define XCB_LIST_PROPERTIES 21
1937
1938/**
1939 * @brief xcb_list_properties_request_t
1940 **/
1941typedef struct xcb_list_properties_request_t {
1942 uint8_t major_opcode; /**< */
1943 uint8_t pad0; /**< */
1944 uint16_t length; /**< */
1945 xcb_window_t window; /**< */
1946} xcb_list_properties_request_t;
1947
1948/**
1949 * @brief xcb_list_properties_reply_t
1950 **/
1951typedef struct xcb_list_properties_reply_t {
1952 uint8_t response_type; /**< */
1953 uint8_t pad0; /**< */
1954 uint16_t sequence; /**< */
1955 uint32_t length; /**< */
1956 uint16_t atoms_len; /**< */
1957 uint8_t pad1[22]; /**< */
1958} xcb_list_properties_reply_t;
1959
1960/** Opcode for xcb_set_selection_owner. */
1961#define XCB_SET_SELECTION_OWNER 22
1962
1963/**
1964 * @brief xcb_set_selection_owner_request_t
1965 **/
1966typedef struct xcb_set_selection_owner_request_t {
1967 uint8_t major_opcode; /**< */
1968 uint8_t pad0; /**< */
1969 uint16_t length; /**< */
1970 xcb_window_t owner; /**< */
1971 xcb_atom_t selection; /**< */
1972 xcb_timestamp_t time; /**< */
1973} xcb_set_selection_owner_request_t;
1974
1975/**
1976 * @brief xcb_get_selection_owner_cookie_t
1977 **/
1978typedef struct xcb_get_selection_owner_cookie_t {
1979 unsigned int sequence; /**< */
1980} xcb_get_selection_owner_cookie_t;
1981
1982/** Opcode for xcb_get_selection_owner. */
1983#define XCB_GET_SELECTION_OWNER 23
1984
1985/**
1986 * @brief xcb_get_selection_owner_request_t
1987 **/
1988typedef struct xcb_get_selection_owner_request_t {
1989 uint8_t major_opcode; /**< */
1990 uint8_t pad0; /**< */
1991 uint16_t length; /**< */
1992 xcb_atom_t selection; /**< */
1993} xcb_get_selection_owner_request_t;
1994
1995/**
1996 * @brief xcb_get_selection_owner_reply_t
1997 **/
1998typedef struct xcb_get_selection_owner_reply_t {
1999 uint8_t response_type; /**< */
2000 uint8_t pad0; /**< */
2001 uint16_t sequence; /**< */
2002 uint32_t length; /**< */
2003 xcb_window_t owner; /**< */
2004} xcb_get_selection_owner_reply_t;
2005
2006/** Opcode for xcb_convert_selection. */
2007#define XCB_CONVERT_SELECTION 24
2008
2009/**
2010 * @brief xcb_convert_selection_request_t
2011 **/
2012typedef struct xcb_convert_selection_request_t {
2013 uint8_t major_opcode; /**< */
2014 uint8_t pad0; /**< */
2015 uint16_t length; /**< */
2016 xcb_window_t requestor; /**< */
2017 xcb_atom_t selection; /**< */
2018 xcb_atom_t target; /**< */
2019 xcb_atom_t property; /**< */
2020 xcb_timestamp_t time; /**< */
2021} xcb_convert_selection_request_t;
2022
2023typedef enum xcb_send_event_dest_t {
2024 XCB_SEND_EVENT_DEST_POINTER_WINDOW = 0,
2025 XCB_SEND_EVENT_DEST_ITEM_FOCUS = 1
2026} xcb_send_event_dest_t;
2027
2028/** Opcode for xcb_send_event. */
2029#define XCB_SEND_EVENT 25
2030
2031/**
2032 * @brief xcb_send_event_request_t
2033 **/
2034typedef struct xcb_send_event_request_t {
2035 uint8_t major_opcode; /**< */
2036 uint8_t propagate; /**< */
2037 uint16_t length; /**< */
2038 xcb_window_t destination; /**< */
2039 uint32_t event_mask; /**< */
2040 char event[32]; /**< */
2041} xcb_send_event_request_t;
2042
2043typedef enum xcb_grab_mode_t {
2044 XCB_GRAB_MODE_SYNC = 0,
2045/**< The state of the keyboard appears to freeze: No further keyboard events are
2046generated by the server until the grabbing client issues a releasing
2047`AllowEvents` request or until the keyboard grab is released. */
2048
2049 XCB_GRAB_MODE_ASYNC = 1
2050/**< Keyboard event processing continues normally. */
2051
2052} xcb_grab_mode_t;
2053
2054typedef enum xcb_grab_status_t {
2055 XCB_GRAB_STATUS_SUCCESS = 0,
2056 XCB_GRAB_STATUS_ALREADY_GRABBED = 1,
2057 XCB_GRAB_STATUS_INVALID_TIME = 2,
2058 XCB_GRAB_STATUS_NOT_VIEWABLE = 3,
2059 XCB_GRAB_STATUS_FROZEN = 4
2060} xcb_grab_status_t;
2061
2062typedef enum xcb_cursor_enum_t {
2063 XCB_CURSOR_NONE = 0
2064} xcb_cursor_enum_t;
2065
2066/**
2067 * @brief xcb_grab_pointer_cookie_t
2068 **/
2069typedef struct xcb_grab_pointer_cookie_t {
2070 unsigned int sequence; /**< */
2071} xcb_grab_pointer_cookie_t;
2072
2073/** Opcode for xcb_grab_pointer. */
2074#define XCB_GRAB_POINTER 26
2075
2076/**
2077 * @brief xcb_grab_pointer_request_t
2078 **/
2079typedef struct xcb_grab_pointer_request_t {
2080 uint8_t major_opcode; /**< */
2081 uint8_t owner_events; /**< */
2082 uint16_t length; /**< */
2083 xcb_window_t grab_window; /**< */
2084 uint16_t event_mask; /**< */
2085 uint8_t pointer_mode; /**< */
2086 uint8_t keyboard_mode; /**< */
2087 xcb_window_t confine_to; /**< */
2088 xcb_cursor_t cursor; /**< */
2089 xcb_timestamp_t time; /**< */
2090} xcb_grab_pointer_request_t;
2091
2092/**
2093 * @brief xcb_grab_pointer_reply_t
2094 **/
2095typedef struct xcb_grab_pointer_reply_t {
2096 uint8_t response_type; /**< */
2097 uint8_t status; /**< */
2098 uint16_t sequence; /**< */
2099 uint32_t length; /**< */
2100} xcb_grab_pointer_reply_t;
2101
2102/** Opcode for xcb_ungrab_pointer. */
2103#define XCB_UNGRAB_POINTER 27
2104
2105/**
2106 * @brief xcb_ungrab_pointer_request_t
2107 **/
2108typedef struct xcb_ungrab_pointer_request_t {
2109 uint8_t major_opcode; /**< */
2110 uint8_t pad0; /**< */
2111 uint16_t length; /**< */
2112 xcb_timestamp_t time; /**< */
2113} xcb_ungrab_pointer_request_t;
2114
2115typedef enum xcb_button_index_t {
2116 XCB_BUTTON_INDEX_ANY = 0,
2117/**< Any of the following (or none): */
2118
2119 XCB_BUTTON_INDEX_1 = 1,
2120/**< The left mouse button. */
2121
2122 XCB_BUTTON_INDEX_2 = 2,
2123/**< The right mouse button. */
2124
2125 XCB_BUTTON_INDEX_3 = 3,
2126/**< The middle mouse button. */
2127
2128 XCB_BUTTON_INDEX_4 = 4,
2129/**< Scroll wheel. TODO: direction? */
2130
2131 XCB_BUTTON_INDEX_5 = 5
2132/**< Scroll wheel. TODO: direction? */
2133
2134} xcb_button_index_t;
2135
2136/** Opcode for xcb_grab_button. */
2137#define XCB_GRAB_BUTTON 28
2138
2139/**
2140 * @brief xcb_grab_button_request_t
2141 **/
2142typedef struct xcb_grab_button_request_t {
2143 uint8_t major_opcode; /**< */
2144 uint8_t owner_events; /**< */
2145 uint16_t length; /**< */
2146 xcb_window_t grab_window; /**< */
2147 uint16_t event_mask; /**< */
2148 uint8_t pointer_mode; /**< */
2149 uint8_t keyboard_mode; /**< */
2150 xcb_window_t confine_to; /**< */
2151 xcb_cursor_t cursor; /**< */
2152 uint8_t button; /**< */
2153 uint8_t pad0; /**< */
2154 uint16_t modifiers; /**< */
2155} xcb_grab_button_request_t;
2156
2157/** Opcode for xcb_ungrab_button. */
2158#define XCB_UNGRAB_BUTTON 29
2159
2160/**
2161 * @brief xcb_ungrab_button_request_t
2162 **/
2163typedef struct xcb_ungrab_button_request_t {
2164 uint8_t major_opcode; /**< */
2165 uint8_t button; /**< */
2166 uint16_t length; /**< */
2167 xcb_window_t grab_window; /**< */
2168 uint16_t modifiers; /**< */
2169 uint8_t pad0[2]; /**< */
2170} xcb_ungrab_button_request_t;
2171
2172/** Opcode for xcb_change_active_pointer_grab. */
2173#define XCB_CHANGE_ACTIVE_POINTER_GRAB 30
2174
2175/**
2176 * @brief xcb_change_active_pointer_grab_request_t
2177 **/
2178typedef struct xcb_change_active_pointer_grab_request_t {
2179 uint8_t major_opcode; /**< */
2180 uint8_t pad0; /**< */
2181 uint16_t length; /**< */
2182 xcb_cursor_t cursor; /**< */
2183 xcb_timestamp_t time; /**< */
2184 uint16_t event_mask; /**< */
2185 uint8_t pad1[2]; /**< */
2186} xcb_change_active_pointer_grab_request_t;
2187
2188/**
2189 * @brief xcb_grab_keyboard_cookie_t
2190 **/
2191typedef struct xcb_grab_keyboard_cookie_t {
2192 unsigned int sequence; /**< */
2193} xcb_grab_keyboard_cookie_t;
2194
2195/** Opcode for xcb_grab_keyboard. */
2196#define XCB_GRAB_KEYBOARD 31
2197
2198/**
2199 * @brief xcb_grab_keyboard_request_t
2200 **/
2201typedef struct xcb_grab_keyboard_request_t {
2202 uint8_t major_opcode; /**< */
2203 uint8_t owner_events; /**< */
2204 uint16_t length; /**< */
2205 xcb_window_t grab_window; /**< */
2206 xcb_timestamp_t time; /**< */
2207 uint8_t pointer_mode; /**< */
2208 uint8_t keyboard_mode; /**< */
2209 uint8_t pad0[2]; /**< */
2210} xcb_grab_keyboard_request_t;
2211
2212/**
2213 * @brief xcb_grab_keyboard_reply_t
2214 **/
2215typedef struct xcb_grab_keyboard_reply_t {
2216 uint8_t response_type; /**< */
2217 uint8_t status; /**< */
2218 uint16_t sequence; /**< */
2219 uint32_t length; /**< */
2220} xcb_grab_keyboard_reply_t;
2221
2222/** Opcode for xcb_ungrab_keyboard. */
2223#define XCB_UNGRAB_KEYBOARD 32
2224
2225/**
2226 * @brief xcb_ungrab_keyboard_request_t
2227 **/
2228typedef struct xcb_ungrab_keyboard_request_t {
2229 uint8_t major_opcode; /**< */
2230 uint8_t pad0; /**< */
2231 uint16_t length; /**< */
2232 xcb_timestamp_t time; /**< */
2233} xcb_ungrab_keyboard_request_t;
2234
2235typedef enum xcb_grab_t {
2236 XCB_GRAB_ANY = 0
2237} xcb_grab_t;
2238
2239/** Opcode for xcb_grab_key. */
2240#define XCB_GRAB_KEY 33
2241
2242/**
2243 * @brief xcb_grab_key_request_t
2244 **/
2245typedef struct xcb_grab_key_request_t {
2246 uint8_t major_opcode; /**< */
2247 uint8_t owner_events; /**< */
2248 uint16_t length; /**< */
2249 xcb_window_t grab_window; /**< */
2250 uint16_t modifiers; /**< */
2251 xcb_keycode_t key; /**< */
2252 uint8_t pointer_mode; /**< */
2253 uint8_t keyboard_mode; /**< */
2254 uint8_t pad0[3]; /**< */
2255} xcb_grab_key_request_t;
2256
2257/** Opcode for xcb_ungrab_key. */
2258#define XCB_UNGRAB_KEY 34
2259
2260/**
2261 * @brief xcb_ungrab_key_request_t
2262 **/
2263typedef struct xcb_ungrab_key_request_t {
2264 uint8_t major_opcode; /**< */
2265 xcb_keycode_t key; /**< */
2266 uint16_t length; /**< */
2267 xcb_window_t grab_window; /**< */
2268 uint16_t modifiers; /**< */
2269 uint8_t pad0[2]; /**< */
2270} xcb_ungrab_key_request_t;
2271
2272typedef enum xcb_allow_t {
2273 XCB_ALLOW_ASYNC_POINTER = 0,
2274/**< For AsyncPointer, if the pointer is frozen by the client, pointer event
2275processing continues normally. If the pointer is frozen twice by the client on
2276behalf of two separate grabs, AsyncPointer thaws for both. AsyncPointer has no
2277effect if the pointer is not frozen by the client, but the pointer need not be
2278grabbed by the client.
2279
2280TODO: rewrite this in more understandable terms. */
2281
2282 XCB_ALLOW_SYNC_POINTER = 1,
2283/**< For SyncPointer, if the pointer is frozen and actively grabbed by the client,
2284pointer event processing continues normally until the next ButtonPress or
2285ButtonRelease event is reported to the client, at which time the pointer again
2286appears to freeze. However, if the reported event causes the pointer grab to be
2287released, then the pointer does not freeze. SyncPointer has no effect if the
2288pointer is not frozen by the client or if the pointer is not grabbed by the
2289client. */
2290
2291 XCB_ALLOW_REPLAY_POINTER = 2,
2292/**< For ReplayPointer, if the pointer is actively grabbed by the client and is
2293frozen as the result of an event having been sent to the client (either from
2294the activation of a GrabButton or from a previous AllowEvents with mode
2295SyncPointer but not from a GrabPointer), then the pointer grab is released and
2296that event is completely reprocessed, this time ignoring any passive grabs at
2297or above (towards the root) the grab-window of the grab just released. The
2298request has no effect if the pointer is not grabbed by the client or if the
2299pointer is not frozen as the result of an event. */
2300
2301 XCB_ALLOW_ASYNC_KEYBOARD = 3,
2302/**< For AsyncKeyboard, if the keyboard is frozen by the client, keyboard event
2303processing continues normally. If the keyboard is frozen twice by the client on
2304behalf of two separate grabs, AsyncKeyboard thaws for both. AsyncKeyboard has
2305no effect if the keyboard is not frozen by the client, but the keyboard need
2306not be grabbed by the client. */
2307
2308 XCB_ALLOW_SYNC_KEYBOARD = 4,
2309/**< For SyncKeyboard, if the keyboard is frozen and actively grabbed by the client,
2310keyboard event processing continues normally until the next KeyPress or
2311KeyRelease event is reported to the client, at which time the keyboard again
2312appears to freeze. However, if the reported event causes the keyboard grab to
2313be released, then the keyboard does not freeze. SyncKeyboard has no effect if
2314the keyboard is not frozen by the client or if the keyboard is not grabbed by
2315the client. */
2316
2317 XCB_ALLOW_REPLAY_KEYBOARD = 5,
2318/**< For ReplayKeyboard, if the keyboard is actively grabbed by the client and is
2319frozen as the result of an event having been sent to the client (either from
2320the activation of a GrabKey or from a previous AllowEvents with mode
2321SyncKeyboard but not from a GrabKeyboard), then the keyboard grab is released
2322and that event is completely reprocessed, this time ignoring any passive grabs
2323at or above (towards the root) the grab-window of the grab just released. The
2324request has no effect if the keyboard is not grabbed by the client or if the
2325keyboard is not frozen as the result of an event. */
2326
2327 XCB_ALLOW_ASYNC_BOTH = 6,
2328/**< For AsyncBoth, if the pointer and the keyboard are frozen by the client, event
2329processing for both devices continues normally. If a device is frozen twice by
2330the client on behalf of two separate grabs, AsyncBoth thaws for both. AsyncBoth
2331has no effect unless both pointer and keyboard are frozen by the client. */
2332
2333 XCB_ALLOW_SYNC_BOTH = 7
2334/**< For SyncBoth, if both pointer and keyboard are frozen by the client, event
2335processing (for both devices) continues normally until the next ButtonPress,
2336ButtonRelease, KeyPress, or KeyRelease event is reported to the client for a
2337grabbed device (button event for the pointer, key event for the keyboard), at
2338which time the devices again appear to freeze. However, if the reported event
2339causes the grab to be released, then the devices do not freeze (but if the
2340other device is still grabbed, then a subsequent event for it will still cause
2341both devices to freeze). SyncBoth has no effect unless both pointer and
2342keyboard are frozen by the client. If the pointer or keyboard is frozen twice
2343by the client on behalf of two separate grabs, SyncBoth thaws for both (but a
2344subsequent freeze for SyncBoth will only freeze each device once). */
2345
2346} xcb_allow_t;
2347
2348/** Opcode for xcb_allow_events. */
2349#define XCB_ALLOW_EVENTS 35
2350
2351/**
2352 * @brief xcb_allow_events_request_t
2353 **/
2354typedef struct xcb_allow_events_request_t {
2355 uint8_t major_opcode; /**< */
2356 uint8_t mode; /**< */
2357 uint16_t length; /**< */
2358 xcb_timestamp_t time; /**< */
2359} xcb_allow_events_request_t;
2360
2361/** Opcode for xcb_grab_server. */
2362#define XCB_GRAB_SERVER 36
2363
2364/**
2365 * @brief xcb_grab_server_request_t
2366 **/
2367typedef struct xcb_grab_server_request_t {
2368 uint8_t major_opcode; /**< */
2369 uint8_t pad0; /**< */
2370 uint16_t length; /**< */
2371} xcb_grab_server_request_t;
2372
2373/** Opcode for xcb_ungrab_server. */
2374#define XCB_UNGRAB_SERVER 37
2375
2376/**
2377 * @brief xcb_ungrab_server_request_t
2378 **/
2379typedef struct xcb_ungrab_server_request_t {
2380 uint8_t major_opcode; /**< */
2381 uint8_t pad0; /**< */
2382 uint16_t length; /**< */
2383} xcb_ungrab_server_request_t;
2384
2385/**
2386 * @brief xcb_query_pointer_cookie_t
2387 **/
2388typedef struct xcb_query_pointer_cookie_t {
2389 unsigned int sequence; /**< */
2390} xcb_query_pointer_cookie_t;
2391
2392/** Opcode for xcb_query_pointer. */
2393#define XCB_QUERY_POINTER 38
2394
2395/**
2396 * @brief xcb_query_pointer_request_t
2397 **/
2398typedef struct xcb_query_pointer_request_t {
2399 uint8_t major_opcode; /**< */
2400 uint8_t pad0; /**< */
2401 uint16_t length; /**< */
2402 xcb_window_t window; /**< */
2403} xcb_query_pointer_request_t;
2404
2405/**
2406 * @brief xcb_query_pointer_reply_t
2407 **/
2408typedef struct xcb_query_pointer_reply_t {
2409 uint8_t response_type; /**< */
2410 uint8_t same_screen; /**< */
2411 uint16_t sequence; /**< */
2412 uint32_t length; /**< */
2413 xcb_window_t root; /**< */
2414 xcb_window_t child; /**< */
2415 int16_t root_x; /**< */
2416 int16_t root_y; /**< */
2417 int16_t win_x; /**< */
2418 int16_t win_y; /**< */
2419 uint16_t mask; /**< */
2420 uint8_t pad0[2]; /**< */
2421} xcb_query_pointer_reply_t;
2422
2423/**
2424 * @brief xcb_timecoord_t
2425 **/
2426typedef struct xcb_timecoord_t {
2427 xcb_timestamp_t time; /**< */
2428 int16_t x; /**< */
2429 int16_t y; /**< */
2430} xcb_timecoord_t;
2431
2432/**
2433 * @brief xcb_timecoord_iterator_t
2434 **/
2435typedef struct xcb_timecoord_iterator_t {
2436 xcb_timecoord_t *data; /**< */
2437 int rem; /**< */
2438 int index; /**< */
2439} xcb_timecoord_iterator_t;
2440
2441/**
2442 * @brief xcb_get_motion_events_cookie_t
2443 **/
2444typedef struct xcb_get_motion_events_cookie_t {
2445 unsigned int sequence; /**< */
2446} xcb_get_motion_events_cookie_t;
2447
2448/** Opcode for xcb_get_motion_events. */
2449#define XCB_GET_MOTION_EVENTS 39
2450
2451/**
2452 * @brief xcb_get_motion_events_request_t
2453 **/
2454typedef struct xcb_get_motion_events_request_t {
2455 uint8_t major_opcode; /**< */
2456 uint8_t pad0; /**< */
2457 uint16_t length; /**< */
2458 xcb_window_t window; /**< */
2459 xcb_timestamp_t start; /**< */
2460 xcb_timestamp_t stop; /**< */
2461} xcb_get_motion_events_request_t;
2462
2463/**
2464 * @brief xcb_get_motion_events_reply_t
2465 **/
2466typedef struct xcb_get_motion_events_reply_t {
2467 uint8_t response_type; /**< */
2468 uint8_t pad0; /**< */
2469 uint16_t sequence; /**< */
2470 uint32_t length; /**< */
2471 uint32_t events_len; /**< */
2472 uint8_t pad1[20]; /**< */
2473} xcb_get_motion_events_reply_t;
2474
2475/**
2476 * @brief xcb_translate_coordinates_cookie_t
2477 **/
2478typedef struct xcb_translate_coordinates_cookie_t {
2479 unsigned int sequence; /**< */
2480} xcb_translate_coordinates_cookie_t;
2481
2482/** Opcode for xcb_translate_coordinates. */
2483#define XCB_TRANSLATE_COORDINATES 40
2484
2485/**
2486 * @brief xcb_translate_coordinates_request_t
2487 **/
2488typedef struct xcb_translate_coordinates_request_t {
2489 uint8_t major_opcode; /**< */
2490 uint8_t pad0; /**< */
2491 uint16_t length; /**< */
2492 xcb_window_t src_window; /**< */
2493 xcb_window_t dst_window; /**< */
2494 int16_t src_x; /**< */
2495 int16_t src_y; /**< */
2496} xcb_translate_coordinates_request_t;
2497
2498/**
2499 * @brief xcb_translate_coordinates_reply_t
2500 **/
2501typedef struct xcb_translate_coordinates_reply_t {
2502 uint8_t response_type; /**< */
2503 uint8_t same_screen; /**< */
2504 uint16_t sequence; /**< */
2505 uint32_t length; /**< */
2506 xcb_window_t child; /**< */
2507 int16_t dst_x; /**< */
2508 int16_t dst_y; /**< */
2509} xcb_translate_coordinates_reply_t;
2510
2511/** Opcode for xcb_warp_pointer. */
2512#define XCB_WARP_POINTER 41
2513
2514/**
2515 * @brief xcb_warp_pointer_request_t
2516 **/
2517typedef struct xcb_warp_pointer_request_t {
2518 uint8_t major_opcode; /**< */
2519 uint8_t pad0; /**< */
2520 uint16_t length; /**< */
2521 xcb_window_t src_window; /**< */
2522 xcb_window_t dst_window; /**< */
2523 int16_t src_x; /**< */
2524 int16_t src_y; /**< */
2525 uint16_t src_width; /**< */
2526 uint16_t src_height; /**< */
2527 int16_t dst_x; /**< */
2528 int16_t dst_y; /**< */
2529} xcb_warp_pointer_request_t;
2530
2531typedef enum xcb_input_focus_t {
2532 XCB_INPUT_FOCUS_NONE = 0,
2533/**< The focus reverts to `XCB_NONE`, so no window will have the input focus. */
2534
2535 XCB_INPUT_FOCUS_POINTER_ROOT = 1,
2536/**< The focus reverts to `XCB_POINTER_ROOT` respectively. When the focus reverts,
2537FocusIn and FocusOut events are generated, but the last-focus-change time is
2538not changed. */
2539
2540 XCB_INPUT_FOCUS_PARENT = 2,
2541/**< The focus reverts to the parent (or closest viewable ancestor) and the new
2542revert_to value is `XCB_INPUT_FOCUS_NONE`. */
2543
2544 XCB_INPUT_FOCUS_FOLLOW_KEYBOARD = 3
2545/**< NOT YET DOCUMENTED. Only relevant for the xinput extension. */
2546
2547} xcb_input_focus_t;
2548
2549/** Opcode for xcb_set_input_focus. */
2550#define XCB_SET_INPUT_FOCUS 42
2551
2552/**
2553 * @brief xcb_set_input_focus_request_t
2554 **/
2555typedef struct xcb_set_input_focus_request_t {
2556 uint8_t major_opcode; /**< */
2557 uint8_t revert_to; /**< */
2558 uint16_t length; /**< */
2559 xcb_window_t focus; /**< */
2560 xcb_timestamp_t time; /**< */
2561} xcb_set_input_focus_request_t;
2562
2563/**
2564 * @brief xcb_get_input_focus_cookie_t
2565 **/
2566typedef struct xcb_get_input_focus_cookie_t {
2567 unsigned int sequence; /**< */
2568} xcb_get_input_focus_cookie_t;
2569
2570/** Opcode for xcb_get_input_focus. */
2571#define XCB_GET_INPUT_FOCUS 43
2572
2573/**
2574 * @brief xcb_get_input_focus_request_t
2575 **/
2576typedef struct xcb_get_input_focus_request_t {
2577 uint8_t major_opcode; /**< */
2578 uint8_t pad0; /**< */
2579 uint16_t length; /**< */
2580} xcb_get_input_focus_request_t;
2581
2582/**
2583 * @brief xcb_get_input_focus_reply_t
2584 **/
2585typedef struct xcb_get_input_focus_reply_t {
2586 uint8_t response_type; /**< */
2587 uint8_t revert_to; /**< */
2588 uint16_t sequence; /**< */
2589 uint32_t length; /**< */
2590 xcb_window_t focus; /**< */
2591} xcb_get_input_focus_reply_t;
2592
2593/**
2594 * @brief xcb_query_keymap_cookie_t
2595 **/
2596typedef struct xcb_query_keymap_cookie_t {
2597 unsigned int sequence; /**< */
2598} xcb_query_keymap_cookie_t;
2599
2600/** Opcode for xcb_query_keymap. */
2601#define XCB_QUERY_KEYMAP 44
2602
2603/**
2604 * @brief xcb_query_keymap_request_t
2605 **/
2606typedef struct xcb_query_keymap_request_t {
2607 uint8_t major_opcode; /**< */
2608 uint8_t pad0; /**< */
2609 uint16_t length; /**< */
2610} xcb_query_keymap_request_t;
2611
2612/**
2613 * @brief xcb_query_keymap_reply_t
2614 **/
2615typedef struct xcb_query_keymap_reply_t {
2616 uint8_t response_type; /**< */
2617 uint8_t pad0; /**< */
2618 uint16_t sequence; /**< */
2619 uint32_t length; /**< */
2620 uint8_t keys[32]; /**< */
2621} xcb_query_keymap_reply_t;
2622
2623/** Opcode for xcb_open_font. */
2624#define XCB_OPEN_FONT 45
2625
2626/**
2627 * @brief xcb_open_font_request_t
2628 **/
2629typedef struct xcb_open_font_request_t {
2630 uint8_t major_opcode; /**< */
2631 uint8_t pad0; /**< */
2632 uint16_t length; /**< */
2633 xcb_font_t fid; /**< */
2634 uint16_t name_len; /**< */
2635 uint8_t pad1[2]; /**< */
2636} xcb_open_font_request_t;
2637
2638/** Opcode for xcb_close_font. */
2639#define XCB_CLOSE_FONT 46
2640
2641/**
2642 * @brief xcb_close_font_request_t
2643 **/
2644typedef struct xcb_close_font_request_t {
2645 uint8_t major_opcode; /**< */
2646 uint8_t pad0; /**< */
2647 uint16_t length; /**< */
2648 xcb_font_t font; /**< */
2649} xcb_close_font_request_t;
2650
2651typedef enum xcb_font_draw_t {
2652 XCB_FONT_DRAW_LEFT_TO_RIGHT = 0,
2653 XCB_FONT_DRAW_RIGHT_TO_LEFT = 1
2654} xcb_font_draw_t;
2655
2656/**
2657 * @brief xcb_fontprop_t
2658 **/
2659typedef struct xcb_fontprop_t {
2660 xcb_atom_t name; /**< */
2661 uint32_t value; /**< */
2662} xcb_fontprop_t;
2663
2664/**
2665 * @brief xcb_fontprop_iterator_t
2666 **/
2667typedef struct xcb_fontprop_iterator_t {
2668 xcb_fontprop_t *data; /**< */
2669 int rem; /**< */
2670 int index; /**< */
2671} xcb_fontprop_iterator_t;
2672
2673/**
2674 * @brief xcb_charinfo_t
2675 **/
2676typedef struct xcb_charinfo_t {
2677 int16_t left_side_bearing; /**< */
2678 int16_t right_side_bearing; /**< */
2679 int16_t character_width; /**< */
2680 int16_t ascent; /**< */
2681 int16_t descent; /**< */
2682 uint16_t attributes; /**< */
2683} xcb_charinfo_t;
2684
2685/**
2686 * @brief xcb_charinfo_iterator_t
2687 **/
2688typedef struct xcb_charinfo_iterator_t {
2689 xcb_charinfo_t *data; /**< */
2690 int rem; /**< */
2691 int index; /**< */
2692} xcb_charinfo_iterator_t;
2693
2694/**
2695 * @brief xcb_query_font_cookie_t
2696 **/
2697typedef struct xcb_query_font_cookie_t {
2698 unsigned int sequence; /**< */
2699} xcb_query_font_cookie_t;
2700
2701/** Opcode for xcb_query_font. */
2702#define XCB_QUERY_FONT 47
2703
2704/**
2705 * @brief xcb_query_font_request_t
2706 **/
2707typedef struct xcb_query_font_request_t {
2708 uint8_t major_opcode; /**< */
2709 uint8_t pad0; /**< */
2710 uint16_t length; /**< */
2711 xcb_fontable_t font; /**< */
2712} xcb_query_font_request_t;
2713
2714/**
2715 * @brief xcb_query_font_reply_t
2716 **/
2717typedef struct xcb_query_font_reply_t {
2718 uint8_t response_type; /**< */
2719 uint8_t pad0; /**< */
2720 uint16_t sequence; /**< */
2721 uint32_t length; /**< */
2722 xcb_charinfo_t min_bounds; /**< */
2723 uint8_t pad1[4]; /**< */
2724 xcb_charinfo_t max_bounds; /**< */
2725 uint8_t pad2[4]; /**< */
2726 uint16_t min_char_or_byte2; /**< */
2727 uint16_t max_char_or_byte2; /**< */
2728 uint16_t default_char; /**< */
2729 uint16_t properties_len; /**< */
2730 uint8_t draw_direction; /**< */
2731 uint8_t min_byte1; /**< */
2732 uint8_t max_byte1; /**< */
2733 uint8_t all_chars_exist; /**< */
2734 int16_t font_ascent; /**< */
2735 int16_t font_descent; /**< */
2736 uint32_t char_infos_len; /**< */
2737} xcb_query_font_reply_t;
2738
2739/**
2740 * @brief xcb_query_text_extents_cookie_t
2741 **/
2742typedef struct xcb_query_text_extents_cookie_t {
2743 unsigned int sequence; /**< */
2744} xcb_query_text_extents_cookie_t;
2745
2746/** Opcode for xcb_query_text_extents. */
2747#define XCB_QUERY_TEXT_EXTENTS 48
2748
2749/**
2750 * @brief xcb_query_text_extents_request_t
2751 **/
2752typedef struct xcb_query_text_extents_request_t {
2753 uint8_t major_opcode; /**< */
2754 uint8_t odd_length; /**< */
2755 uint16_t length; /**< */
2756 xcb_fontable_t font; /**< */
2757} xcb_query_text_extents_request_t;
2758
2759/**
2760 * @brief xcb_query_text_extents_reply_t
2761 **/
2762typedef struct xcb_query_text_extents_reply_t {
2763 uint8_t response_type; /**< */
2764 uint8_t draw_direction; /**< */
2765 uint16_t sequence; /**< */
2766 uint32_t length; /**< */
2767 int16_t font_ascent; /**< */
2768 int16_t font_descent; /**< */
2769 int16_t overall_ascent; /**< */
2770 int16_t overall_descent; /**< */
2771 int32_t overall_width; /**< */
2772 int32_t overall_left; /**< */
2773 int32_t overall_right; /**< */
2774} xcb_query_text_extents_reply_t;
2775
2776/**
2777 * @brief xcb_str_t
2778 **/
2779typedef struct xcb_str_t {
2780 uint8_t name_len; /**< */
2781} xcb_str_t;
2782
2783/**
2784 * @brief xcb_str_iterator_t
2785 **/
2786typedef struct xcb_str_iterator_t {
2787 xcb_str_t *data; /**< */
2788 int rem; /**< */
2789 int index; /**< */
2790} xcb_str_iterator_t;
2791
2792/**
2793 * @brief xcb_list_fonts_cookie_t
2794 **/
2795typedef struct xcb_list_fonts_cookie_t {
2796 unsigned int sequence; /**< */
2797} xcb_list_fonts_cookie_t;
2798
2799/** Opcode for xcb_list_fonts. */
2800#define XCB_LIST_FONTS 49
2801
2802/**
2803 * @brief xcb_list_fonts_request_t
2804 **/
2805typedef struct xcb_list_fonts_request_t {
2806 uint8_t major_opcode; /**< */
2807 uint8_t pad0; /**< */
2808 uint16_t length; /**< */
2809 uint16_t max_names; /**< */
2810 uint16_t pattern_len; /**< */
2811} xcb_list_fonts_request_t;
2812
2813/**
2814 * @brief xcb_list_fonts_reply_t
2815 **/
2816typedef struct xcb_list_fonts_reply_t {
2817 uint8_t response_type; /**< */
2818 uint8_t pad0; /**< */
2819 uint16_t sequence; /**< */
2820 uint32_t length; /**< */
2821 uint16_t names_len; /**< */
2822 uint8_t pad1[22]; /**< */
2823} xcb_list_fonts_reply_t;
2824
2825/**
2826 * @brief xcb_list_fonts_with_info_cookie_t
2827 **/
2828typedef struct xcb_list_fonts_with_info_cookie_t {
2829 unsigned int sequence; /**< */
2830} xcb_list_fonts_with_info_cookie_t;
2831
2832/** Opcode for xcb_list_fonts_with_info. */
2833#define XCB_LIST_FONTS_WITH_INFO 50
2834
2835/**
2836 * @brief xcb_list_fonts_with_info_request_t
2837 **/
2838typedef struct xcb_list_fonts_with_info_request_t {
2839 uint8_t major_opcode; /**< */
2840 uint8_t pad0; /**< */
2841 uint16_t length; /**< */
2842 uint16_t max_names; /**< */
2843 uint16_t pattern_len; /**< */
2844} xcb_list_fonts_with_info_request_t;
2845
2846/**
2847 * @brief xcb_list_fonts_with_info_reply_t
2848 **/
2849typedef struct xcb_list_fonts_with_info_reply_t {
2850 uint8_t response_type; /**< */
2851 uint8_t name_len; /**< */
2852 uint16_t sequence; /**< */
2853 uint32_t length; /**< */
2854 xcb_charinfo_t min_bounds; /**< */
2855 uint8_t pad0[4]; /**< */
2856 xcb_charinfo_t max_bounds; /**< */
2857 uint8_t pad1[4]; /**< */
2858 uint16_t min_char_or_byte2; /**< */
2859 uint16_t max_char_or_byte2; /**< */
2860 uint16_t default_char; /**< */
2861 uint16_t properties_len; /**< */
2862 uint8_t draw_direction; /**< */
2863 uint8_t min_byte1; /**< */
2864 uint8_t max_byte1; /**< */
2865 uint8_t all_chars_exist; /**< */
2866 int16_t font_ascent; /**< */
2867 int16_t font_descent; /**< */
2868 uint32_t replies_hint; /**< */
2869} xcb_list_fonts_with_info_reply_t;
2870
2871/** Opcode for xcb_set_font_path. */
2872#define XCB_SET_FONT_PATH 51
2873
2874/**
2875 * @brief xcb_set_font_path_request_t
2876 **/
2877typedef struct xcb_set_font_path_request_t {
2878 uint8_t major_opcode; /**< */
2879 uint8_t pad0; /**< */
2880 uint16_t length; /**< */
2881 uint16_t font_qty; /**< */
2882 uint8_t pad1[2]; /**< */
2883} xcb_set_font_path_request_t;
2884
2885/**
2886 * @brief xcb_get_font_path_cookie_t
2887 **/
2888typedef struct xcb_get_font_path_cookie_t {
2889 unsigned int sequence; /**< */
2890} xcb_get_font_path_cookie_t;
2891
2892/** Opcode for xcb_get_font_path. */
2893#define XCB_GET_FONT_PATH 52
2894
2895/**
2896 * @brief xcb_get_font_path_request_t
2897 **/
2898typedef struct xcb_get_font_path_request_t {
2899 uint8_t major_opcode; /**< */
2900 uint8_t pad0; /**< */
2901 uint16_t length; /**< */
2902} xcb_get_font_path_request_t;
2903
2904/**
2905 * @brief xcb_get_font_path_reply_t
2906 **/
2907typedef struct xcb_get_font_path_reply_t {
2908 uint8_t response_type; /**< */
2909 uint8_t pad0; /**< */
2910 uint16_t sequence; /**< */
2911 uint32_t length; /**< */
2912 uint16_t path_len; /**< */
2913 uint8_t pad1[22]; /**< */
2914} xcb_get_font_path_reply_t;
2915
2916/** Opcode for xcb_create_pixmap. */
2917#define XCB_CREATE_PIXMAP 53
2918
2919/**
2920 * @brief xcb_create_pixmap_request_t
2921 **/
2922typedef struct xcb_create_pixmap_request_t {
2923 uint8_t major_opcode; /**< */
2924 uint8_t depth; /**< */
2925 uint16_t length; /**< */
2926 xcb_pixmap_t pid; /**< */
2927 xcb_drawable_t drawable; /**< */
2928 uint16_t width; /**< */
2929 uint16_t height; /**< */
2930} xcb_create_pixmap_request_t;
2931
2932/** Opcode for xcb_free_pixmap. */
2933#define XCB_FREE_PIXMAP 54
2934
2935/**
2936 * @brief xcb_free_pixmap_request_t
2937 **/
2938typedef struct xcb_free_pixmap_request_t {
2939 uint8_t major_opcode; /**< */
2940 uint8_t pad0; /**< */
2941 uint16_t length; /**< */
2942 xcb_pixmap_t pixmap; /**< */
2943} xcb_free_pixmap_request_t;
2944
2945typedef enum xcb_gc_t {
2946 XCB_GC_FUNCTION = 1,
2947/**< TODO: Refer to GX */
2948
2949 XCB_GC_PLANE_MASK = 2,
2950/**< In graphics operations, given a source and destination pixel, the result is
2951computed bitwise on corresponding bits of the pixels; that is, a Boolean
2952operation is performed in each bit plane. The plane-mask restricts the
2953operation to a subset of planes, so the result is:
2954
2955 ((src FUNC dst) AND plane-mask) OR (dst AND (NOT plane-mask)) */
2956
2957 XCB_GC_FOREGROUND = 4,
2958/**< Foreground colorpixel. */
2959
2960 XCB_GC_BACKGROUND = 8,
2961/**< Background colorpixel. */
2962
2963 XCB_GC_LINE_WIDTH = 16,
2964/**< The line-width is measured in pixels and can be greater than or equal to one, a wide line, or the
2965special value zero, a thin line. */
2966
2967 XCB_GC_LINE_STYLE = 32,
2968/**< The line-style defines which sections of a line are drawn:
2969Solid The full path of the line is drawn.
2970DoubleDash The full path of the line is drawn, but the even dashes are filled differently
2971 than the odd dashes (see fill-style), with Butt cap-style used where even and
2972 odd dashes meet.
2973OnOffDash Only the even dashes are drawn, and cap-style applies to all internal ends of
2974 the individual dashes (except NotLast is treated as Butt). */
2975
2976 XCB_GC_CAP_STYLE = 64,
2977/**< The cap-style defines how the endpoints of a path are drawn:
2978NotLast The result is equivalent to Butt, except that for a line-width of zero the final
2979 endpoint is not drawn.
2980Butt The result is square at the endpoint (perpendicular to the slope of the line)
2981 with no projection beyond.
2982Round The result is a circular arc with its diameter equal to the line-width, centered
2983 on the endpoint; it is equivalent to Butt for line-width zero.
2984Projecting The result is square at the end, but the path continues beyond the endpoint for
2985 a distance equal to half the line-width; it is equivalent to Butt for line-width
2986 zero. */
2987
2988 XCB_GC_JOIN_STYLE = 128,
2989/**< The join-style defines how corners are drawn for wide lines:
2990Miter The outer edges of the two lines extend to meet at an angle. However, if the
2991 angle is less than 11 degrees, a Bevel join-style is used instead.
2992Round The result is a circular arc with a diameter equal to the line-width, centered
2993 on the joinpoint.
2994Bevel The result is Butt endpoint styles, and then the triangular notch is filled. */
2995
2996 XCB_GC_FILL_STYLE = 256,
2997/**< The fill-style defines the contents of the source for line, text, and fill requests. For all text and fill
2998requests (for example, PolyText8, PolyText16, PolyFillRectangle, FillPoly, and PolyFillArc)
2999as well as for line requests with line-style Solid, (for example, PolyLine, PolySegment,
3000PolyRectangle, PolyArc) and for the even dashes for line requests with line-style OnOffDash
3001or DoubleDash:
3002Solid Foreground
3003Tiled Tile
3004OpaqueStippled A tile with the same width and height as stipple but with background
3005 everywhere stipple has a zero and with foreground everywhere stipple
3006 has a one
3007Stippled Foreground masked by stipple
3008For the odd dashes for line requests with line-style DoubleDash:
3009Solid Background
3010Tiled Same as for even dashes
3011OpaqueStippled Same as for even dashes
3012Stippled Background masked by stipple */
3013
3014 XCB_GC_FILL_RULE = 512,
3015/**< */
3016
3017 XCB_GC_TILE = 1024,
3018/**< The tile/stipple represents an infinite two-dimensional plane with the tile/stipple replicated in all
3019dimensions. When that plane is superimposed on the drawable for use in a graphics operation,
3020the upper-left corner of some instance of the tile/stipple is at the coordinates within the drawable
3021specified by the tile/stipple origin. The tile/stipple and clip origins are interpreted relative to the
3022origin of whatever destination drawable is specified in a graphics request.
3023The tile pixmap must have the same root and depth as the gcontext (or a Match error results).
3024The stipple pixmap must have depth one and must have the same root as the gcontext (or a
3025Match error results). For fill-style Stippled (but not fill-style
3026OpaqueStippled), the stipple pattern is tiled in a single plane and acts as an
3027additional clip mask to be ANDed with the clip-mask.
3028Any size pixmap can be used for tiling or stippling, although some sizes may be faster to use than
3029others. */
3030
3031 XCB_GC_STIPPLE = 2048,
3032/**< The tile/stipple represents an infinite two-dimensional plane with the tile/stipple replicated in all
3033dimensions. When that plane is superimposed on the drawable for use in a graphics operation,
3034the upper-left corner of some instance of the tile/stipple is at the coordinates within the drawable
3035specified by the tile/stipple origin. The tile/stipple and clip origins are interpreted relative to the
3036origin of whatever destination drawable is specified in a graphics request.
3037The tile pixmap must have the same root and depth as the gcontext (or a Match error results).
3038The stipple pixmap must have depth one and must have the same root as the gcontext (or a
3039Match error results). For fill-style Stippled (but not fill-style
3040OpaqueStippled), the stipple pattern is tiled in a single plane and acts as an
3041additional clip mask to be ANDed with the clip-mask.
3042Any size pixmap can be used for tiling or stippling, although some sizes may be faster to use than
3043others. */
3044
3045 XCB_GC_TILE_STIPPLE_ORIGIN_X = 4096,
3046/**< TODO */
3047
3048 XCB_GC_TILE_STIPPLE_ORIGIN_Y = 8192,
3049/**< TODO */
3050
3051 XCB_GC_FONT = 16384,
3052/**< Which font to use for the `ImageText8` and `ImageText16` requests. */
3053
3054 XCB_GC_SUBWINDOW_MODE = 32768,
3055/**< For ClipByChildren, both source and destination windows are additionally
3056clipped by all viewable InputOutput children. For IncludeInferiors, neither
3057source nor destination window is
3058clipped by inferiors. This will result in including subwindow contents in the source and drawing
3059through subwindow boundaries of the destination. The use of IncludeInferiors with a source or
3060destination window of one depth with mapped inferiors of differing depth is not illegal, but the
3061semantics is undefined by the core protocol. */
3062
3063 XCB_GC_GRAPHICS_EXPOSURES = 65536,
3064/**< Whether ExposureEvents should be generated (1) or not (0).
3065
3066The default is 1. */
3067
3068 XCB_GC_CLIP_ORIGIN_X = 131072,
3069/**< TODO */
3070
3071 XCB_GC_CLIP_ORIGIN_Y = 262144,
3072/**< TODO */
3073
3074 XCB_GC_CLIP_MASK = 524288,
3075/**< The clip-mask restricts writes to the destination drawable. Only pixels where the clip-mask has
3076bits set to 1 are drawn. Pixels are not drawn outside the area covered by the clip-mask or where
3077the clip-mask has bits set to 0. The clip-mask affects all graphics requests, but it does not clip
3078sources. The clip-mask origin is interpreted relative to the origin of whatever destination drawable is specified in a graphics request. If a pixmap is specified as the clip-mask, it must have
3079depth 1 and have the same root as the gcontext (or a Match error results). If clip-mask is None,
3080then pixels are always drawn, regardless of the clip origin. The clip-mask can also be set with the
3081SetClipRectangles request. */
3082
3083 XCB_GC_DASH_OFFSET = 1048576,
3084/**< TODO */
3085
3086 XCB_GC_DASH_LIST = 2097152,
3087/**< TODO */
3088
3089 XCB_GC_ARC_MODE = 4194304
3090/**< TODO */
3091
3092} xcb_gc_t;
3093
3094typedef enum xcb_gx_t {
3095 XCB_GX_CLEAR = 0,
3096 XCB_GX_AND = 1,
3097 XCB_GX_AND_REVERSE = 2,
3098 XCB_GX_COPY = 3,
3099 XCB_GX_AND_INVERTED = 4,
3100 XCB_GX_NOOP = 5,
3101 XCB_GX_XOR = 6,
3102 XCB_GX_OR = 7,
3103 XCB_GX_NOR = 8,
3104 XCB_GX_EQUIV = 9,
3105 XCB_GX_INVERT = 10,
3106 XCB_GX_OR_REVERSE = 11,
3107 XCB_GX_COPY_INVERTED = 12,
3108 XCB_GX_OR_INVERTED = 13,
3109 XCB_GX_NAND = 14,
3110 XCB_GX_SET = 15
3111} xcb_gx_t;
3112
3113typedef enum xcb_line_style_t {
3114 XCB_LINE_STYLE_SOLID = 0,
3115 XCB_LINE_STYLE_ON_OFF_DASH = 1,
3116 XCB_LINE_STYLE_DOUBLE_DASH = 2
3117} xcb_line_style_t;
3118
3119typedef enum xcb_cap_style_t {
3120 XCB_CAP_STYLE_NOT_LAST = 0,
3121 XCB_CAP_STYLE_BUTT = 1,
3122 XCB_CAP_STYLE_ROUND = 2,
3123 XCB_CAP_STYLE_PROJECTING = 3
3124} xcb_cap_style_t;
3125
3126typedef enum xcb_join_style_t {
3127 XCB_JOIN_STYLE_MITER = 0,
3128 XCB_JOIN_STYLE_ROUND = 1,
3129 XCB_JOIN_STYLE_BEVEL = 2
3130} xcb_join_style_t;
3131
3132typedef enum xcb_fill_style_t {
3133 XCB_FILL_STYLE_SOLID = 0,
3134 XCB_FILL_STYLE_TILED = 1,
3135 XCB_FILL_STYLE_STIPPLED = 2,
3136 XCB_FILL_STYLE_OPAQUE_STIPPLED = 3
3137} xcb_fill_style_t;
3138
3139typedef enum xcb_fill_rule_t {
3140 XCB_FILL_RULE_EVEN_ODD = 0,
3141 XCB_FILL_RULE_WINDING = 1
3142} xcb_fill_rule_t;
3143
3144typedef enum xcb_subwindow_mode_t {
3145 XCB_SUBWINDOW_MODE_CLIP_BY_CHILDREN = 0,
3146 XCB_SUBWINDOW_MODE_INCLUDE_INFERIORS = 1
3147} xcb_subwindow_mode_t;
3148
3149typedef enum xcb_arc_mode_t {
3150 XCB_ARC_MODE_CHORD = 0,
3151 XCB_ARC_MODE_PIE_SLICE = 1
3152} xcb_arc_mode_t;
3153
3154/** Opcode for xcb_create_gc. */
3155#define XCB_CREATE_GC 55
3156
3157/**
3158 * @brief xcb_create_gc_request_t
3159 **/
3160typedef struct xcb_create_gc_request_t {
3161 uint8_t major_opcode; /**< */
3162 uint8_t pad0; /**< */
3163 uint16_t length; /**< */
3164 xcb_gcontext_t cid; /**< */
3165 xcb_drawable_t drawable; /**< */
3166 uint32_t value_mask; /**< */
3167} xcb_create_gc_request_t;
3168
3169/** Opcode for xcb_change_gc. */
3170#define XCB_CHANGE_GC 56
3171
3172/**
3173 * @brief xcb_change_gc_request_t
3174 **/
3175typedef struct xcb_change_gc_request_t {
3176 uint8_t major_opcode; /**< */
3177 uint8_t pad0; /**< */
3178 uint16_t length; /**< */
3179 xcb_gcontext_t gc; /**< */
3180 uint32_t value_mask; /**< */
3181} xcb_change_gc_request_t;
3182
3183/** Opcode for xcb_copy_gc. */
3184#define XCB_COPY_GC 57
3185
3186/**
3187 * @brief xcb_copy_gc_request_t
3188 **/
3189typedef struct xcb_copy_gc_request_t {
3190 uint8_t major_opcode; /**< */
3191 uint8_t pad0; /**< */
3192 uint16_t length; /**< */
3193 xcb_gcontext_t src_gc; /**< */
3194 xcb_gcontext_t dst_gc; /**< */
3195 uint32_t value_mask; /**< */
3196} xcb_copy_gc_request_t;
3197
3198/** Opcode for xcb_set_dashes. */
3199#define XCB_SET_DASHES 58
3200
3201/**
3202 * @brief xcb_set_dashes_request_t
3203 **/
3204typedef struct xcb_set_dashes_request_t {
3205 uint8_t major_opcode; /**< */
3206 uint8_t pad0; /**< */
3207 uint16_t length; /**< */
3208 xcb_gcontext_t gc; /**< */
3209 uint16_t dash_offset; /**< */
3210 uint16_t dashes_len; /**< */
3211} xcb_set_dashes_request_t;
3212
3213typedef enum xcb_clip_ordering_t {
3214 XCB_CLIP_ORDERING_UNSORTED = 0,
3215 XCB_CLIP_ORDERING_Y_SORTED = 1,
3216 XCB_CLIP_ORDERING_YX_SORTED = 2,
3217 XCB_CLIP_ORDERING_YX_BANDED = 3
3218} xcb_clip_ordering_t;
3219
3220/** Opcode for xcb_set_clip_rectangles. */
3221#define XCB_SET_CLIP_RECTANGLES 59
3222
3223/**
3224 * @brief xcb_set_clip_rectangles_request_t
3225 **/
3226typedef struct xcb_set_clip_rectangles_request_t {
3227 uint8_t major_opcode; /**< */
3228 uint8_t ordering; /**< */
3229 uint16_t length; /**< */
3230 xcb_gcontext_t gc; /**< */
3231 int16_t clip_x_origin; /**< */
3232 int16_t clip_y_origin; /**< */
3233} xcb_set_clip_rectangles_request_t;
3234
3235/** Opcode for xcb_free_gc. */
3236#define XCB_FREE_GC 60
3237
3238/**
3239 * @brief xcb_free_gc_request_t
3240 **/
3241typedef struct xcb_free_gc_request_t {
3242 uint8_t major_opcode; /**< */
3243 uint8_t pad0; /**< */
3244 uint16_t length; /**< */
3245 xcb_gcontext_t gc; /**< */
3246} xcb_free_gc_request_t;
3247
3248/** Opcode for xcb_clear_area. */
3249#define XCB_CLEAR_AREA 61
3250
3251/**
3252 * @brief xcb_clear_area_request_t
3253 **/
3254typedef struct xcb_clear_area_request_t {
3255 uint8_t major_opcode; /**< */
3256 uint8_t exposures; /**< */
3257 uint16_t length; /**< */
3258 xcb_window_t window; /**< */
3259 int16_t x; /**< */
3260 int16_t y; /**< */
3261 uint16_t width; /**< */
3262 uint16_t height; /**< */
3263} xcb_clear_area_request_t;
3264
3265/** Opcode for xcb_copy_area. */
3266#define XCB_COPY_AREA 62
3267
3268/**
3269 * @brief xcb_copy_area_request_t
3270 **/
3271typedef struct xcb_copy_area_request_t {
3272 uint8_t major_opcode; /**< */
3273 uint8_t pad0; /**< */
3274 uint16_t length; /**< */
3275 xcb_drawable_t src_drawable; /**< */
3276 xcb_drawable_t dst_drawable; /**< */
3277 xcb_gcontext_t gc; /**< */
3278 int16_t src_x; /**< */
3279 int16_t src_y; /**< */
3280 int16_t dst_x; /**< */
3281 int16_t dst_y; /**< */
3282 uint16_t width; /**< */
3283 uint16_t height; /**< */
3284} xcb_copy_area_request_t;
3285
3286/** Opcode for xcb_copy_plane. */
3287#define XCB_COPY_PLANE 63
3288
3289/**
3290 * @brief xcb_copy_plane_request_t
3291 **/
3292typedef struct xcb_copy_plane_request_t {
3293 uint8_t major_opcode; /**< */
3294 uint8_t pad0; /**< */
3295 uint16_t length; /**< */
3296 xcb_drawable_t src_drawable; /**< */
3297 xcb_drawable_t dst_drawable; /**< */
3298 xcb_gcontext_t gc; /**< */
3299 int16_t src_x; /**< */
3300 int16_t src_y; /**< */
3301 int16_t dst_x; /**< */
3302 int16_t dst_y; /**< */
3303 uint16_t width; /**< */
3304 uint16_t height; /**< */
3305 uint32_t bit_plane; /**< */
3306} xcb_copy_plane_request_t;
3307
3308typedef enum xcb_coord_mode_t {
3309 XCB_COORD_MODE_ORIGIN = 0,
3310/**< Treats all coordinates as relative to the origin. */
3311
3312 XCB_COORD_MODE_PREVIOUS = 1
3313/**< Treats all coordinates after the first as relative to the previous coordinate. */
3314
3315} xcb_coord_mode_t;
3316
3317/** Opcode for xcb_poly_point. */
3318#define XCB_POLY_POINT 64
3319
3320/**
3321 * @brief xcb_poly_point_request_t
3322 **/
3323typedef struct xcb_poly_point_request_t {
3324 uint8_t major_opcode; /**< */
3325 uint8_t coordinate_mode; /**< */
3326 uint16_t length; /**< */
3327 xcb_drawable_t drawable; /**< */
3328 xcb_gcontext_t gc; /**< */
3329} xcb_poly_point_request_t;
3330
3331/** Opcode for xcb_poly_line. */
3332#define XCB_POLY_LINE 65
3333
3334/**
3335 * @brief xcb_poly_line_request_t
3336 **/
3337typedef struct xcb_poly_line_request_t {
3338 uint8_t major_opcode; /**< */
3339 uint8_t coordinate_mode; /**< */
3340 uint16_t length; /**< */
3341 xcb_drawable_t drawable; /**< */
3342 xcb_gcontext_t gc; /**< */
3343} xcb_poly_line_request_t;
3344
3345/**
3346 * @brief xcb_segment_t
3347 **/
3348typedef struct xcb_segment_t {
3349 int16_t x1; /**< */
3350 int16_t y1; /**< */
3351 int16_t x2; /**< */
3352 int16_t y2; /**< */
3353} xcb_segment_t;
3354
3355/**
3356 * @brief xcb_segment_iterator_t
3357 **/
3358typedef struct xcb_segment_iterator_t {
3359 xcb_segment_t *data; /**< */
3360 int rem; /**< */
3361 int index; /**< */
3362} xcb_segment_iterator_t;
3363
3364/** Opcode for xcb_poly_segment. */
3365#define XCB_POLY_SEGMENT 66
3366
3367/**
3368 * @brief xcb_poly_segment_request_t
3369 **/
3370typedef struct xcb_poly_segment_request_t {
3371 uint8_t major_opcode; /**< */
3372 uint8_t pad0; /**< */
3373 uint16_t length; /**< */
3374 xcb_drawable_t drawable; /**< */
3375 xcb_gcontext_t gc; /**< */
3376} xcb_poly_segment_request_t;
3377
3378/** Opcode for xcb_poly_rectangle. */
3379#define XCB_POLY_RECTANGLE 67
3380
3381/**
3382 * @brief xcb_poly_rectangle_request_t
3383 **/
3384typedef struct xcb_poly_rectangle_request_t {
3385 uint8_t major_opcode; /**< */
3386 uint8_t pad0; /**< */
3387 uint16_t length; /**< */
3388 xcb_drawable_t drawable; /**< */
3389 xcb_gcontext_t gc; /**< */
3390} xcb_poly_rectangle_request_t;
3391
3392/** Opcode for xcb_poly_arc. */
3393#define XCB_POLY_ARC 68
3394
3395/**
3396 * @brief xcb_poly_arc_request_t
3397 **/
3398typedef struct xcb_poly_arc_request_t {
3399 uint8_t major_opcode; /**< */
3400 uint8_t pad0; /**< */
3401 uint16_t length; /**< */
3402 xcb_drawable_t drawable; /**< */
3403 xcb_gcontext_t gc; /**< */
3404} xcb_poly_arc_request_t;
3405
3406typedef enum xcb_poly_shape_t {
3407 XCB_POLY_SHAPE_COMPLEX = 0,
3408 XCB_POLY_SHAPE_NONCONVEX = 1,
3409 XCB_POLY_SHAPE_CONVEX = 2
3410} xcb_poly_shape_t;
3411
3412/** Opcode for xcb_fill_poly. */
3413#define XCB_FILL_POLY 69
3414
3415/**
3416 * @brief xcb_fill_poly_request_t
3417 **/
3418typedef struct xcb_fill_poly_request_t {
3419 uint8_t major_opcode; /**< */
3420 uint8_t pad0; /**< */
3421 uint16_t length; /**< */
3422 xcb_drawable_t drawable; /**< */
3423 xcb_gcontext_t gc; /**< */
3424 uint8_t shape; /**< */
3425 uint8_t coordinate_mode; /**< */
3426 uint8_t pad1[2]; /**< */
3427} xcb_fill_poly_request_t;
3428
3429/** Opcode for xcb_poly_fill_rectangle. */
3430#define XCB_POLY_FILL_RECTANGLE 70
3431
3432/**
3433 * @brief xcb_poly_fill_rectangle_request_t
3434 **/
3435typedef struct xcb_poly_fill_rectangle_request_t {
3436 uint8_t major_opcode; /**< */
3437 uint8_t pad0; /**< */
3438 uint16_t length; /**< */
3439 xcb_drawable_t drawable; /**< */
3440 xcb_gcontext_t gc; /**< */
3441} xcb_poly_fill_rectangle_request_t;
3442
3443/** Opcode for xcb_poly_fill_arc. */
3444#define XCB_POLY_FILL_ARC 71
3445
3446/**
3447 * @brief xcb_poly_fill_arc_request_t
3448 **/
3449typedef struct xcb_poly_fill_arc_request_t {
3450 uint8_t major_opcode; /**< */
3451 uint8_t pad0; /**< */
3452 uint16_t length; /**< */
3453 xcb_drawable_t drawable; /**< */
3454 xcb_gcontext_t gc; /**< */
3455} xcb_poly_fill_arc_request_t;
3456
3457typedef enum xcb_image_format_t {
3458 XCB_IMAGE_FORMAT_XY_BITMAP = 0,
3459 XCB_IMAGE_FORMAT_XY_PIXMAP = 1,
3460 XCB_IMAGE_FORMAT_Z_PIXMAP = 2
3461} xcb_image_format_t;
3462
3463/** Opcode for xcb_put_image. */
3464#define XCB_PUT_IMAGE 72
3465
3466/**
3467 * @brief xcb_put_image_request_t
3468 **/
3469typedef struct xcb_put_image_request_t {
3470 uint8_t major_opcode; /**< */
3471 uint8_t format; /**< */
3472 uint16_t length; /**< */
3473 xcb_drawable_t drawable; /**< */
3474 xcb_gcontext_t gc; /**< */
3475 uint16_t width; /**< */
3476 uint16_t height; /**< */
3477 int16_t dst_x; /**< */
3478 int16_t dst_y; /**< */
3479 uint8_t left_pad; /**< */
3480 uint8_t depth; /**< */
3481 uint8_t pad0[2]; /**< */
3482} xcb_put_image_request_t;
3483
3484/**
3485 * @brief xcb_get_image_cookie_t
3486 **/
3487typedef struct xcb_get_image_cookie_t {
3488 unsigned int sequence; /**< */
3489} xcb_get_image_cookie_t;
3490
3491/** Opcode for xcb_get_image. */
3492#define XCB_GET_IMAGE 73
3493
3494/**
3495 * @brief xcb_get_image_request_t
3496 **/
3497typedef struct xcb_get_image_request_t {
3498 uint8_t major_opcode; /**< */
3499 uint8_t format; /**< */
3500 uint16_t length; /**< */
3501 xcb_drawable_t drawable; /**< */
3502 int16_t x; /**< */
3503 int16_t y; /**< */
3504 uint16_t width; /**< */
3505 uint16_t height; /**< */
3506 uint32_t plane_mask; /**< */
3507} xcb_get_image_request_t;
3508
3509/**
3510 * @brief xcb_get_image_reply_t
3511 **/
3512typedef struct xcb_get_image_reply_t {
3513 uint8_t response_type; /**< */
3514 uint8_t depth; /**< */
3515 uint16_t sequence; /**< */
3516 uint32_t length; /**< */
3517 xcb_visualid_t visual; /**< */
3518 uint8_t pad0[20]; /**< */
3519} xcb_get_image_reply_t;
3520
3521/** Opcode for xcb_poly_text_8. */
3522#define XCB_POLY_TEXT_8 74
3523
3524/**
3525 * @brief xcb_poly_text_8_request_t
3526 **/
3527typedef struct xcb_poly_text_8_request_t {
3528 uint8_t major_opcode; /**< */
3529 uint8_t pad0; /**< */
3530 uint16_t length; /**< */
3531 xcb_drawable_t drawable; /**< */
3532 xcb_gcontext_t gc; /**< */
3533 int16_t x; /**< */
3534 int16_t y; /**< */
3535} xcb_poly_text_8_request_t;
3536
3537/** Opcode for xcb_poly_text_16. */
3538#define XCB_POLY_TEXT_16 75
3539
3540/**
3541 * @brief xcb_poly_text_16_request_t
3542 **/
3543typedef struct xcb_poly_text_16_request_t {
3544 uint8_t major_opcode; /**< */
3545 uint8_t pad0; /**< */
3546 uint16_t length; /**< */
3547 xcb_drawable_t drawable; /**< */
3548 xcb_gcontext_t gc; /**< */
3549 int16_t x; /**< */
3550 int16_t y; /**< */
3551} xcb_poly_text_16_request_t;
3552
3553/** Opcode for xcb_image_text_8. */
3554#define XCB_IMAGE_TEXT_8 76
3555
3556/**
3557 * @brief xcb_image_text_8_request_t
3558 **/
3559typedef struct xcb_image_text_8_request_t {
3560 uint8_t major_opcode; /**< */
3561 uint8_t string_len; /**< */
3562 uint16_t length; /**< */
3563 xcb_drawable_t drawable; /**< */
3564 xcb_gcontext_t gc; /**< */
3565 int16_t x; /**< */
3566 int16_t y; /**< */
3567} xcb_image_text_8_request_t;
3568
3569/** Opcode for xcb_image_text_16. */
3570#define XCB_IMAGE_TEXT_16 77
3571
3572/**
3573 * @brief xcb_image_text_16_request_t
3574 **/
3575typedef struct xcb_image_text_16_request_t {
3576 uint8_t major_opcode; /**< */
3577 uint8_t string_len; /**< */
3578 uint16_t length; /**< */
3579 xcb_drawable_t drawable; /**< */
3580 xcb_gcontext_t gc; /**< */
3581 int16_t x; /**< */
3582 int16_t y; /**< */
3583} xcb_image_text_16_request_t;
3584
3585typedef enum xcb_colormap_alloc_t {
3586 XCB_COLORMAP_ALLOC_NONE = 0,
3587 XCB_COLORMAP_ALLOC_ALL = 1
3588} xcb_colormap_alloc_t;
3589
3590/** Opcode for xcb_create_colormap. */
3591#define XCB_CREATE_COLORMAP 78
3592
3593/**
3594 * @brief xcb_create_colormap_request_t
3595 **/
3596typedef struct xcb_create_colormap_request_t {
3597 uint8_t major_opcode; /**< */
3598 uint8_t alloc; /**< */
3599 uint16_t length; /**< */
3600 xcb_colormap_t mid; /**< */
3601 xcb_window_t window; /**< */
3602 xcb_visualid_t visual; /**< */
3603} xcb_create_colormap_request_t;
3604
3605/** Opcode for xcb_free_colormap. */
3606#define XCB_FREE_COLORMAP 79
3607
3608/**
3609 * @brief xcb_free_colormap_request_t
3610 **/
3611typedef struct xcb_free_colormap_request_t {
3612 uint8_t major_opcode; /**< */
3613 uint8_t pad0; /**< */
3614 uint16_t length; /**< */
3615 xcb_colormap_t cmap; /**< */
3616} xcb_free_colormap_request_t;
3617
3618/** Opcode for xcb_copy_colormap_and_free. */
3619#define XCB_COPY_COLORMAP_AND_FREE 80
3620
3621/**
3622 * @brief xcb_copy_colormap_and_free_request_t
3623 **/
3624typedef struct xcb_copy_colormap_and_free_request_t {
3625 uint8_t major_opcode; /**< */
3626 uint8_t pad0; /**< */
3627 uint16_t length; /**< */
3628 xcb_colormap_t mid; /**< */
3629 xcb_colormap_t src_cmap; /**< */
3630} xcb_copy_colormap_and_free_request_t;
3631
3632/** Opcode for xcb_install_colormap. */
3633#define XCB_INSTALL_COLORMAP 81
3634
3635/**
3636 * @brief xcb_install_colormap_request_t
3637 **/
3638typedef struct xcb_install_colormap_request_t {
3639 uint8_t major_opcode; /**< */
3640 uint8_t pad0; /**< */
3641 uint16_t length; /**< */
3642 xcb_colormap_t cmap; /**< */
3643} xcb_install_colormap_request_t;
3644
3645/** Opcode for xcb_uninstall_colormap. */
3646#define XCB_UNINSTALL_COLORMAP 82
3647
3648/**
3649 * @brief xcb_uninstall_colormap_request_t
3650 **/
3651typedef struct xcb_uninstall_colormap_request_t {
3652 uint8_t major_opcode; /**< */
3653 uint8_t pad0; /**< */
3654 uint16_t length; /**< */
3655 xcb_colormap_t cmap; /**< */
3656} xcb_uninstall_colormap_request_t;
3657
3658/**
3659 * @brief xcb_list_installed_colormaps_cookie_t
3660 **/
3661typedef struct xcb_list_installed_colormaps_cookie_t {
3662 unsigned int sequence; /**< */
3663} xcb_list_installed_colormaps_cookie_t;
3664
3665/** Opcode for xcb_list_installed_colormaps. */
3666#define XCB_LIST_INSTALLED_COLORMAPS 83
3667
3668/**
3669 * @brief xcb_list_installed_colormaps_request_t
3670 **/
3671typedef struct xcb_list_installed_colormaps_request_t {
3672 uint8_t major_opcode; /**< */
3673 uint8_t pad0; /**< */
3674 uint16_t length; /**< */
3675 xcb_window_t window; /**< */
3676} xcb_list_installed_colormaps_request_t;
3677
3678/**
3679 * @brief xcb_list_installed_colormaps_reply_t
3680 **/
3681typedef struct xcb_list_installed_colormaps_reply_t {
3682 uint8_t response_type; /**< */
3683 uint8_t pad0; /**< */
3684 uint16_t sequence; /**< */
3685 uint32_t length; /**< */
3686 uint16_t cmaps_len; /**< */
3687 uint8_t pad1[22]; /**< */
3688} xcb_list_installed_colormaps_reply_t;
3689
3690/**
3691 * @brief xcb_alloc_color_cookie_t
3692 **/
3693typedef struct xcb_alloc_color_cookie_t {
3694 unsigned int sequence; /**< */
3695} xcb_alloc_color_cookie_t;
3696
3697/** Opcode for xcb_alloc_color. */
3698#define XCB_ALLOC_COLOR 84
3699
3700/**
3701 * @brief xcb_alloc_color_request_t
3702 **/
3703typedef struct xcb_alloc_color_request_t {
3704 uint8_t major_opcode; /**< */
3705 uint8_t pad0; /**< */
3706 uint16_t length; /**< */
3707 xcb_colormap_t cmap; /**< */
3708 uint16_t red; /**< */
3709 uint16_t green; /**< */
3710 uint16_t blue; /**< */
3711 uint8_t pad1[2]; /**< */
3712} xcb_alloc_color_request_t;
3713
3714/**
3715 * @brief xcb_alloc_color_reply_t
3716 **/
3717typedef struct xcb_alloc_color_reply_t {
3718 uint8_t response_type; /**< */
3719 uint8_t pad0; /**< */
3720 uint16_t sequence; /**< */
3721 uint32_t length; /**< */
3722 uint16_t red; /**< */
3723 uint16_t green; /**< */
3724 uint16_t blue; /**< */
3725 uint8_t pad1[2]; /**< */
3726 uint32_t pixel; /**< */
3727} xcb_alloc_color_reply_t;
3728
3729/**
3730 * @brief xcb_alloc_named_color_cookie_t
3731 **/
3732typedef struct xcb_alloc_named_color_cookie_t {
3733 unsigned int sequence; /**< */
3734} xcb_alloc_named_color_cookie_t;
3735
3736/** Opcode for xcb_alloc_named_color. */
3737#define XCB_ALLOC_NAMED_COLOR 85
3738
3739/**
3740 * @brief xcb_alloc_named_color_request_t
3741 **/
3742typedef struct xcb_alloc_named_color_request_t {
3743 uint8_t major_opcode; /**< */
3744 uint8_t pad0; /**< */
3745 uint16_t length; /**< */
3746 xcb_colormap_t cmap; /**< */
3747 uint16_t name_len; /**< */
3748 uint8_t pad1[2]; /**< */
3749} xcb_alloc_named_color_request_t;
3750
3751/**
3752 * @brief xcb_alloc_named_color_reply_t
3753 **/
3754typedef struct xcb_alloc_named_color_reply_t {
3755 uint8_t response_type; /**< */
3756 uint8_t pad0; /**< */
3757 uint16_t sequence; /**< */
3758 uint32_t length; /**< */
3759 uint32_t pixel; /**< */
3760 uint16_t exact_red; /**< */
3761 uint16_t exact_green; /**< */
3762 uint16_t exact_blue; /**< */
3763 uint16_t visual_red; /**< */
3764 uint16_t visual_green; /**< */
3765 uint16_t visual_blue; /**< */
3766} xcb_alloc_named_color_reply_t;
3767
3768/**
3769 * @brief xcb_alloc_color_cells_cookie_t
3770 **/
3771typedef struct xcb_alloc_color_cells_cookie_t {
3772 unsigned int sequence; /**< */
3773} xcb_alloc_color_cells_cookie_t;
3774
3775/** Opcode for xcb_alloc_color_cells. */
3776#define XCB_ALLOC_COLOR_CELLS 86
3777
3778/**
3779 * @brief xcb_alloc_color_cells_request_t
3780 **/
3781typedef struct xcb_alloc_color_cells_request_t {
3782 uint8_t major_opcode; /**< */
3783 uint8_t contiguous; /**< */
3784 uint16_t length; /**< */
3785 xcb_colormap_t cmap; /**< */
3786 uint16_t colors; /**< */
3787 uint16_t planes; /**< */
3788} xcb_alloc_color_cells_request_t;
3789
3790/**
3791 * @brief xcb_alloc_color_cells_reply_t
3792 **/
3793typedef struct xcb_alloc_color_cells_reply_t {
3794 uint8_t response_type; /**< */
3795 uint8_t pad0; /**< */
3796 uint16_t sequence; /**< */
3797 uint32_t length; /**< */
3798 uint16_t pixels_len; /**< */
3799 uint16_t masks_len; /**< */
3800 uint8_t pad1[20]; /**< */
3801} xcb_alloc_color_cells_reply_t;
3802
3803/**
3804 * @brief xcb_alloc_color_planes_cookie_t
3805 **/
3806typedef struct xcb_alloc_color_planes_cookie_t {
3807 unsigned int sequence; /**< */
3808} xcb_alloc_color_planes_cookie_t;
3809
3810/** Opcode for xcb_alloc_color_planes. */
3811#define XCB_ALLOC_COLOR_PLANES 87
3812
3813/**
3814 * @brief xcb_alloc_color_planes_request_t
3815 **/
3816typedef struct xcb_alloc_color_planes_request_t {
3817 uint8_t major_opcode; /**< */
3818 uint8_t contiguous; /**< */
3819 uint16_t length; /**< */
3820 xcb_colormap_t cmap; /**< */
3821 uint16_t colors; /**< */
3822 uint16_t reds; /**< */
3823 uint16_t greens; /**< */
3824 uint16_t blues; /**< */
3825} xcb_alloc_color_planes_request_t;
3826
3827/**
3828 * @brief xcb_alloc_color_planes_reply_t
3829 **/
3830typedef struct xcb_alloc_color_planes_reply_t {
3831 uint8_t response_type; /**< */
3832 uint8_t pad0; /**< */
3833 uint16_t sequence; /**< */
3834 uint32_t length; /**< */
3835 uint16_t pixels_len; /**< */
3836 uint8_t pad1[2]; /**< */
3837 uint32_t red_mask; /**< */
3838 uint32_t green_mask; /**< */
3839 uint32_t blue_mask; /**< */
3840 uint8_t pad2[8]; /**< */
3841} xcb_alloc_color_planes_reply_t;
3842
3843/** Opcode for xcb_free_colors. */
3844#define XCB_FREE_COLORS 88
3845
3846/**
3847 * @brief xcb_free_colors_request_t
3848 **/
3849typedef struct xcb_free_colors_request_t {
3850 uint8_t major_opcode; /**< */
3851 uint8_t pad0; /**< */
3852 uint16_t length; /**< */
3853 xcb_colormap_t cmap; /**< */
3854 uint32_t plane_mask; /**< */
3855} xcb_free_colors_request_t;
3856
3857typedef enum xcb_color_flag_t {
3858 XCB_COLOR_FLAG_RED = 1,
3859 XCB_COLOR_FLAG_GREEN = 2,
3860 XCB_COLOR_FLAG_BLUE = 4
3861} xcb_color_flag_t;
3862
3863/**
3864 * @brief xcb_coloritem_t
3865 **/
3866typedef struct xcb_coloritem_t {
3867 uint32_t pixel; /**< */
3868 uint16_t red; /**< */
3869 uint16_t green; /**< */
3870 uint16_t blue; /**< */
3871 uint8_t flags; /**< */
3872 uint8_t pad0; /**< */
3873} xcb_coloritem_t;
3874
3875/**
3876 * @brief xcb_coloritem_iterator_t
3877 **/
3878typedef struct xcb_coloritem_iterator_t {
3879 xcb_coloritem_t *data; /**< */
3880 int rem; /**< */
3881 int index; /**< */
3882} xcb_coloritem_iterator_t;
3883
3884/** Opcode for xcb_store_colors. */
3885#define XCB_STORE_COLORS 89
3886
3887/**
3888 * @brief xcb_store_colors_request_t
3889 **/
3890typedef struct xcb_store_colors_request_t {
3891 uint8_t major_opcode; /**< */
3892 uint8_t pad0; /**< */
3893 uint16_t length; /**< */
3894 xcb_colormap_t cmap; /**< */
3895} xcb_store_colors_request_t;
3896
3897/** Opcode for xcb_store_named_color. */
3898#define XCB_STORE_NAMED_COLOR 90
3899
3900/**
3901 * @brief xcb_store_named_color_request_t
3902 **/
3903typedef struct xcb_store_named_color_request_t {
3904 uint8_t major_opcode; /**< */
3905 uint8_t flags; /**< */
3906 uint16_t length; /**< */
3907 xcb_colormap_t cmap; /**< */
3908 uint32_t pixel; /**< */
3909 uint16_t name_len; /**< */
3910 uint8_t pad0[2]; /**< */
3911} xcb_store_named_color_request_t;
3912
3913/**
3914 * @brief xcb_rgb_t
3915 **/
3916typedef struct xcb_rgb_t {
3917 uint16_t red; /**< */
3918 uint16_t green; /**< */
3919 uint16_t blue; /**< */
3920 uint8_t pad0[2]; /**< */
3921} xcb_rgb_t;
3922
3923/**
3924 * @brief xcb_rgb_iterator_t
3925 **/
3926typedef struct xcb_rgb_iterator_t {
3927 xcb_rgb_t *data; /**< */
3928 int rem; /**< */
3929 int index; /**< */
3930} xcb_rgb_iterator_t;
3931
3932/**
3933 * @brief xcb_query_colors_cookie_t
3934 **/
3935typedef struct xcb_query_colors_cookie_t {
3936 unsigned int sequence; /**< */
3937} xcb_query_colors_cookie_t;
3938
3939/** Opcode for xcb_query_colors. */
3940#define XCB_QUERY_COLORS 91
3941
3942/**
3943 * @brief xcb_query_colors_request_t
3944 **/
3945typedef struct xcb_query_colors_request_t {
3946 uint8_t major_opcode; /**< */
3947 uint8_t pad0; /**< */
3948 uint16_t length; /**< */
3949 xcb_colormap_t cmap; /**< */
3950} xcb_query_colors_request_t;
3951
3952/**
3953 * @brief xcb_query_colors_reply_t
3954 **/
3955typedef struct xcb_query_colors_reply_t {
3956 uint8_t response_type; /**< */
3957 uint8_t pad0; /**< */
3958 uint16_t sequence; /**< */
3959 uint32_t length; /**< */
3960 uint16_t colors_len; /**< */
3961 uint8_t pad1[22]; /**< */
3962} xcb_query_colors_reply_t;
3963
3964/**
3965 * @brief xcb_lookup_color_cookie_t
3966 **/
3967typedef struct xcb_lookup_color_cookie_t {
3968 unsigned int sequence; /**< */
3969} xcb_lookup_color_cookie_t;
3970
3971/** Opcode for xcb_lookup_color. */
3972#define XCB_LOOKUP_COLOR 92
3973
3974/**
3975 * @brief xcb_lookup_color_request_t
3976 **/
3977typedef struct xcb_lookup_color_request_t {
3978 uint8_t major_opcode; /**< */
3979 uint8_t pad0; /**< */
3980 uint16_t length; /**< */
3981 xcb_colormap_t cmap; /**< */
3982 uint16_t name_len; /**< */
3983 uint8_t pad1[2]; /**< */
3984} xcb_lookup_color_request_t;
3985
3986/**
3987 * @brief xcb_lookup_color_reply_t
3988 **/
3989typedef struct xcb_lookup_color_reply_t {
3990 uint8_t response_type; /**< */
3991 uint8_t pad0; /**< */
3992 uint16_t sequence; /**< */
3993 uint32_t length; /**< */
3994 uint16_t exact_red; /**< */
3995 uint16_t exact_green; /**< */
3996 uint16_t exact_blue; /**< */
3997 uint16_t visual_red; /**< */
3998 uint16_t visual_green; /**< */
3999 uint16_t visual_blue; /**< */
4000} xcb_lookup_color_reply_t;
4001
4002typedef enum xcb_pixmap_enum_t {
4003 XCB_PIXMAP_NONE = 0
4004} xcb_pixmap_enum_t;
4005
4006/** Opcode for xcb_create_cursor. */
4007#define XCB_CREATE_CURSOR 93
4008
4009/**
4010 * @brief xcb_create_cursor_request_t
4011 **/
4012typedef struct xcb_create_cursor_request_t {
4013 uint8_t major_opcode; /**< */
4014 uint8_t pad0; /**< */
4015 uint16_t length; /**< */
4016 xcb_cursor_t cid; /**< */
4017 xcb_pixmap_t source; /**< */
4018 xcb_pixmap_t mask; /**< */
4019 uint16_t fore_red; /**< */
4020 uint16_t fore_green; /**< */
4021 uint16_t fore_blue; /**< */
4022 uint16_t back_red; /**< */
4023 uint16_t back_green; /**< */
4024 uint16_t back_blue; /**< */
4025 uint16_t x; /**< */
4026 uint16_t y; /**< */
4027} xcb_create_cursor_request_t;
4028
4029typedef enum xcb_font_enum_t {
4030 XCB_FONT_NONE = 0
4031} xcb_font_enum_t;
4032
4033/** Opcode for xcb_create_glyph_cursor. */
4034#define XCB_CREATE_GLYPH_CURSOR 94
4035
4036/**
4037 * @brief xcb_create_glyph_cursor_request_t
4038 **/
4039typedef struct xcb_create_glyph_cursor_request_t {
4040 uint8_t major_opcode; /**< */
4041 uint8_t pad0; /**< */
4042 uint16_t length; /**< */
4043 xcb_cursor_t cid; /**< */
4044 xcb_font_t source_font; /**< */
4045 xcb_font_t mask_font; /**< */
4046 uint16_t source_char; /**< */
4047 uint16_t mask_char; /**< */
4048 uint16_t fore_red; /**< */
4049 uint16_t fore_green; /**< */
4050 uint16_t fore_blue; /**< */
4051 uint16_t back_red; /**< */
4052 uint16_t back_green; /**< */
4053 uint16_t back_blue; /**< */
4054} xcb_create_glyph_cursor_request_t;
4055
4056/** Opcode for xcb_free_cursor. */
4057#define XCB_FREE_CURSOR 95
4058
4059/**
4060 * @brief xcb_free_cursor_request_t
4061 **/
4062typedef struct xcb_free_cursor_request_t {
4063 uint8_t major_opcode; /**< */
4064 uint8_t pad0; /**< */
4065 uint16_t length; /**< */
4066 xcb_cursor_t cursor; /**< */
4067} xcb_free_cursor_request_t;
4068
4069/** Opcode for xcb_recolor_cursor. */
4070#define XCB_RECOLOR_CURSOR 96
4071
4072/**
4073 * @brief xcb_recolor_cursor_request_t
4074 **/
4075typedef struct xcb_recolor_cursor_request_t {
4076 uint8_t major_opcode; /**< */
4077 uint8_t pad0; /**< */
4078 uint16_t length; /**< */
4079 xcb_cursor_t cursor; /**< */
4080 uint16_t fore_red; /**< */
4081 uint16_t fore_green; /**< */
4082 uint16_t fore_blue; /**< */
4083 uint16_t back_red; /**< */
4084 uint16_t back_green; /**< */
4085 uint16_t back_blue; /**< */
4086} xcb_recolor_cursor_request_t;
4087
4088typedef enum xcb_query_shape_of_t {
4089 XCB_QUERY_SHAPE_OF_LARGEST_CURSOR = 0,
4090 XCB_QUERY_SHAPE_OF_FASTEST_TILE = 1,
4091 XCB_QUERY_SHAPE_OF_FASTEST_STIPPLE = 2
4092} xcb_query_shape_of_t;
4093
4094/**
4095 * @brief xcb_query_best_size_cookie_t
4096 **/
4097typedef struct xcb_query_best_size_cookie_t {
4098 unsigned int sequence; /**< */
4099} xcb_query_best_size_cookie_t;
4100
4101/** Opcode for xcb_query_best_size. */
4102#define XCB_QUERY_BEST_SIZE 97
4103
4104/**
4105 * @brief xcb_query_best_size_request_t
4106 **/
4107typedef struct xcb_query_best_size_request_t {
4108 uint8_t major_opcode; /**< */
4109 uint8_t _class; /**< */
4110 uint16_t length; /**< */
4111 xcb_drawable_t drawable; /**< */
4112 uint16_t width; /**< */
4113 uint16_t height; /**< */
4114} xcb_query_best_size_request_t;
4115
4116/**
4117 * @brief xcb_query_best_size_reply_t
4118 **/
4119typedef struct xcb_query_best_size_reply_t {
4120 uint8_t response_type; /**< */
4121 uint8_t pad0; /**< */
4122 uint16_t sequence; /**< */
4123 uint32_t length; /**< */
4124 uint16_t width; /**< */
4125 uint16_t height; /**< */
4126} xcb_query_best_size_reply_t;
4127
4128/**
4129 * @brief xcb_query_extension_cookie_t
4130 **/
4131typedef struct xcb_query_extension_cookie_t {
4132 unsigned int sequence; /**< */
4133} xcb_query_extension_cookie_t;
4134
4135/** Opcode for xcb_query_extension. */
4136#define XCB_QUERY_EXTENSION 98
4137
4138/**
4139 * @brief xcb_query_extension_request_t
4140 **/
4141typedef struct xcb_query_extension_request_t {
4142 uint8_t major_opcode; /**< */
4143 uint8_t pad0; /**< */
4144 uint16_t length; /**< */
4145 uint16_t name_len; /**< */
4146 uint8_t pad1[2]; /**< */
4147} xcb_query_extension_request_t;
4148
4149/**
4150 * @brief xcb_query_extension_reply_t
4151 **/
4152typedef struct xcb_query_extension_reply_t {
4153 uint8_t response_type; /**< */
4154 uint8_t pad0; /**< */
4155 uint16_t sequence; /**< */
4156 uint32_t length; /**< */
4157 uint8_t present; /**< */
4158 uint8_t major_opcode; /**< */
4159 uint8_t first_event; /**< */
4160 uint8_t first_error; /**< */
4161} xcb_query_extension_reply_t;
4162
4163/**
4164 * @brief xcb_list_extensions_cookie_t
4165 **/
4166typedef struct xcb_list_extensions_cookie_t {
4167 unsigned int sequence; /**< */
4168} xcb_list_extensions_cookie_t;
4169
4170/** Opcode for xcb_list_extensions. */
4171#define XCB_LIST_EXTENSIONS 99
4172
4173/**
4174 * @brief xcb_list_extensions_request_t
4175 **/
4176typedef struct xcb_list_extensions_request_t {
4177 uint8_t major_opcode; /**< */
4178 uint8_t pad0; /**< */
4179 uint16_t length; /**< */
4180} xcb_list_extensions_request_t;
4181
4182/**
4183 * @brief xcb_list_extensions_reply_t
4184 **/
4185typedef struct xcb_list_extensions_reply_t {
4186 uint8_t response_type; /**< */
4187 uint8_t names_len; /**< */
4188 uint16_t sequence; /**< */
4189 uint32_t length; /**< */
4190 uint8_t pad0[24]; /**< */
4191} xcb_list_extensions_reply_t;
4192
4193/** Opcode for xcb_change_keyboard_mapping. */
4194#define XCB_CHANGE_KEYBOARD_MAPPING 100
4195
4196/**
4197 * @brief xcb_change_keyboard_mapping_request_t
4198 **/
4199typedef struct xcb_change_keyboard_mapping_request_t {
4200 uint8_t major_opcode; /**< */
4201 uint8_t keycode_count; /**< */
4202 uint16_t length; /**< */
4203 xcb_keycode_t first_keycode; /**< */
4204 uint8_t keysyms_per_keycode; /**< */
4205 uint8_t pad0[2]; /**< */
4206} xcb_change_keyboard_mapping_request_t;
4207
4208/**
4209 * @brief xcb_get_keyboard_mapping_cookie_t
4210 **/
4211typedef struct xcb_get_keyboard_mapping_cookie_t {
4212 unsigned int sequence; /**< */
4213} xcb_get_keyboard_mapping_cookie_t;
4214
4215/** Opcode for xcb_get_keyboard_mapping. */
4216#define XCB_GET_KEYBOARD_MAPPING 101
4217
4218/**
4219 * @brief xcb_get_keyboard_mapping_request_t
4220 **/
4221typedef struct xcb_get_keyboard_mapping_request_t {
4222 uint8_t major_opcode; /**< */
4223 uint8_t pad0; /**< */
4224 uint16_t length; /**< */
4225 xcb_keycode_t first_keycode; /**< */
4226 uint8_t count; /**< */
4227} xcb_get_keyboard_mapping_request_t;
4228
4229/**
4230 * @brief xcb_get_keyboard_mapping_reply_t
4231 **/
4232typedef struct xcb_get_keyboard_mapping_reply_t {
4233 uint8_t response_type; /**< */
4234 uint8_t keysyms_per_keycode; /**< */
4235 uint16_t sequence; /**< */
4236 uint32_t length; /**< */
4237 uint8_t pad0[24]; /**< */
4238} xcb_get_keyboard_mapping_reply_t;
4239
4240typedef enum xcb_kb_t {
4241 XCB_KB_KEY_CLICK_PERCENT = 1,
4242 XCB_KB_BELL_PERCENT = 2,
4243 XCB_KB_BELL_PITCH = 4,
4244 XCB_KB_BELL_DURATION = 8,
4245 XCB_KB_LED = 16,
4246 XCB_KB_LED_MODE = 32,
4247 XCB_KB_KEY = 64,
4248 XCB_KB_AUTO_REPEAT_MODE = 128
4249} xcb_kb_t;
4250
4251typedef enum xcb_led_mode_t {
4252 XCB_LED_MODE_OFF = 0,
4253 XCB_LED_MODE_ON = 1
4254} xcb_led_mode_t;
4255
4256typedef enum xcb_auto_repeat_mode_t {
4257 XCB_AUTO_REPEAT_MODE_OFF = 0,
4258 XCB_AUTO_REPEAT_MODE_ON = 1,
4259 XCB_AUTO_REPEAT_MODE_DEFAULT = 2
4260} xcb_auto_repeat_mode_t;
4261
4262/** Opcode for xcb_change_keyboard_control. */
4263#define XCB_CHANGE_KEYBOARD_CONTROL 102
4264
4265/**
4266 * @brief xcb_change_keyboard_control_request_t
4267 **/
4268typedef struct xcb_change_keyboard_control_request_t {
4269 uint8_t major_opcode; /**< */
4270 uint8_t pad0; /**< */
4271 uint16_t length; /**< */
4272 uint32_t value_mask; /**< */
4273} xcb_change_keyboard_control_request_t;
4274
4275/**
4276 * @brief xcb_get_keyboard_control_cookie_t
4277 **/
4278typedef struct xcb_get_keyboard_control_cookie_t {
4279 unsigned int sequence; /**< */
4280} xcb_get_keyboard_control_cookie_t;
4281
4282/** Opcode for xcb_get_keyboard_control. */
4283#define XCB_GET_KEYBOARD_CONTROL 103
4284
4285/**
4286 * @brief xcb_get_keyboard_control_request_t
4287 **/
4288typedef struct xcb_get_keyboard_control_request_t {
4289 uint8_t major_opcode; /**< */
4290 uint8_t pad0; /**< */
4291 uint16_t length; /**< */
4292} xcb_get_keyboard_control_request_t;
4293
4294/**
4295 * @brief xcb_get_keyboard_control_reply_t
4296 **/
4297typedef struct xcb_get_keyboard_control_reply_t {
4298 uint8_t response_type; /**< */
4299 uint8_t global_auto_repeat; /**< */
4300 uint16_t sequence; /**< */
4301 uint32_t length; /**< */
4302 uint32_t led_mask; /**< */
4303 uint8_t key_click_percent; /**< */
4304 uint8_t bell_percent; /**< */
4305 uint16_t bell_pitch; /**< */
4306 uint16_t bell_duration; /**< */
4307 uint8_t pad0[2]; /**< */
4308 uint8_t auto_repeats[32]; /**< */
4309} xcb_get_keyboard_control_reply_t;
4310
4311/** Opcode for xcb_bell. */
4312#define XCB_BELL 104
4313
4314/**
4315 * @brief xcb_bell_request_t
4316 **/
4317typedef struct xcb_bell_request_t {
4318 uint8_t major_opcode; /**< */
4319 int8_t percent; /**< */
4320 uint16_t length; /**< */
4321} xcb_bell_request_t;
4322
4323/** Opcode for xcb_change_pointer_control. */
4324#define XCB_CHANGE_POINTER_CONTROL 105
4325
4326/**
4327 * @brief xcb_change_pointer_control_request_t
4328 **/
4329typedef struct xcb_change_pointer_control_request_t {
4330 uint8_t major_opcode; /**< */
4331 uint8_t pad0; /**< */
4332 uint16_t length; /**< */
4333 int16_t acceleration_numerator; /**< */
4334 int16_t acceleration_denominator; /**< */
4335 int16_t threshold; /**< */
4336 uint8_t do_acceleration; /**< */
4337 uint8_t do_threshold; /**< */
4338} xcb_change_pointer_control_request_t;
4339
4340/**
4341 * @brief xcb_get_pointer_control_cookie_t
4342 **/
4343typedef struct xcb_get_pointer_control_cookie_t {
4344 unsigned int sequence; /**< */
4345} xcb_get_pointer_control_cookie_t;
4346
4347/** Opcode for xcb_get_pointer_control. */
4348#define XCB_GET_POINTER_CONTROL 106
4349
4350/**
4351 * @brief xcb_get_pointer_control_request_t
4352 **/
4353typedef struct xcb_get_pointer_control_request_t {
4354 uint8_t major_opcode; /**< */
4355 uint8_t pad0; /**< */
4356 uint16_t length; /**< */
4357} xcb_get_pointer_control_request_t;
4358
4359/**
4360 * @brief xcb_get_pointer_control_reply_t
4361 **/
4362typedef struct xcb_get_pointer_control_reply_t {
4363 uint8_t response_type; /**< */
4364 uint8_t pad0; /**< */
4365 uint16_t sequence; /**< */
4366 uint32_t length; /**< */
4367 uint16_t acceleration_numerator; /**< */
4368 uint16_t acceleration_denominator; /**< */
4369 uint16_t threshold; /**< */
4370 uint8_t pad1[18]; /**< */
4371} xcb_get_pointer_control_reply_t;
4372
4373typedef enum xcb_blanking_t {
4374 XCB_BLANKING_NOT_PREFERRED = 0,
4375 XCB_BLANKING_PREFERRED = 1,
4376 XCB_BLANKING_DEFAULT = 2
4377} xcb_blanking_t;
4378
4379typedef enum xcb_exposures_t {
4380 XCB_EXPOSURES_NOT_ALLOWED = 0,
4381 XCB_EXPOSURES_ALLOWED = 1,
4382 XCB_EXPOSURES_DEFAULT = 2
4383} xcb_exposures_t;
4384
4385/** Opcode for xcb_set_screen_saver. */
4386#define XCB_SET_SCREEN_SAVER 107
4387
4388/**
4389 * @brief xcb_set_screen_saver_request_t
4390 **/
4391typedef struct xcb_set_screen_saver_request_t {
4392 uint8_t major_opcode; /**< */
4393 uint8_t pad0; /**< */
4394 uint16_t length; /**< */
4395 int16_t timeout; /**< */
4396 int16_t interval; /**< */
4397 uint8_t prefer_blanking; /**< */
4398 uint8_t allow_exposures; /**< */
4399} xcb_set_screen_saver_request_t;
4400
4401/**
4402 * @brief xcb_get_screen_saver_cookie_t
4403 **/
4404typedef struct xcb_get_screen_saver_cookie_t {
4405 unsigned int sequence; /**< */
4406} xcb_get_screen_saver_cookie_t;
4407
4408/** Opcode for xcb_get_screen_saver. */
4409#define XCB_GET_SCREEN_SAVER 108
4410
4411/**
4412 * @brief xcb_get_screen_saver_request_t
4413 **/
4414typedef struct xcb_get_screen_saver_request_t {
4415 uint8_t major_opcode; /**< */
4416 uint8_t pad0; /**< */
4417 uint16_t length; /**< */
4418} xcb_get_screen_saver_request_t;
4419
4420/**
4421 * @brief xcb_get_screen_saver_reply_t
4422 **/
4423typedef struct xcb_get_screen_saver_reply_t {
4424 uint8_t response_type; /**< */
4425 uint8_t pad0; /**< */
4426 uint16_t sequence; /**< */
4427 uint32_t length; /**< */
4428 uint16_t timeout; /**< */
4429 uint16_t interval; /**< */
4430 uint8_t prefer_blanking; /**< */
4431 uint8_t allow_exposures; /**< */
4432 uint8_t pad1[18]; /**< */
4433} xcb_get_screen_saver_reply_t;
4434
4435typedef enum xcb_host_mode_t {
4436 XCB_HOST_MODE_INSERT = 0,
4437 XCB_HOST_MODE_DELETE = 1
4438} xcb_host_mode_t;
4439
4440typedef enum xcb_family_t {
4441 XCB_FAMILY_INTERNET = 0,
4442 XCB_FAMILY_DECNET = 1,
4443 XCB_FAMILY_CHAOS = 2,
4444 XCB_FAMILY_SERVER_INTERPRETED = 5,
4445 XCB_FAMILY_INTERNET_6 = 6
4446} xcb_family_t;
4447
4448/** Opcode for xcb_change_hosts. */
4449#define XCB_CHANGE_HOSTS 109
4450
4451/**
4452 * @brief xcb_change_hosts_request_t
4453 **/
4454typedef struct xcb_change_hosts_request_t {
4455 uint8_t major_opcode; /**< */
4456 uint8_t mode; /**< */
4457 uint16_t length; /**< */
4458 uint8_t family; /**< */
4459 uint8_t pad0; /**< */
4460 uint16_t address_len; /**< */
4461} xcb_change_hosts_request_t;
4462
4463/**
4464 * @brief xcb_host_t
4465 **/
4466typedef struct xcb_host_t {
4467 uint8_t family; /**< */
4468 uint8_t pad0; /**< */
4469 uint16_t address_len; /**< */
4470} xcb_host_t;
4471
4472/**
4473 * @brief xcb_host_iterator_t
4474 **/
4475typedef struct xcb_host_iterator_t {
4476 xcb_host_t *data; /**< */
4477 int rem; /**< */
4478 int index; /**< */
4479} xcb_host_iterator_t;
4480
4481/**
4482 * @brief xcb_list_hosts_cookie_t
4483 **/
4484typedef struct xcb_list_hosts_cookie_t {
4485 unsigned int sequence; /**< */
4486} xcb_list_hosts_cookie_t;
4487
4488/** Opcode for xcb_list_hosts. */
4489#define XCB_LIST_HOSTS 110
4490
4491/**
4492 * @brief xcb_list_hosts_request_t
4493 **/
4494typedef struct xcb_list_hosts_request_t {
4495 uint8_t major_opcode; /**< */
4496 uint8_t pad0; /**< */
4497 uint16_t length; /**< */
4498} xcb_list_hosts_request_t;
4499
4500/**
4501 * @brief xcb_list_hosts_reply_t
4502 **/
4503typedef struct xcb_list_hosts_reply_t {
4504 uint8_t response_type; /**< */
4505 uint8_t mode; /**< */
4506 uint16_t sequence; /**< */
4507 uint32_t length; /**< */
4508 uint16_t hosts_len; /**< */
4509 uint8_t pad0[22]; /**< */
4510} xcb_list_hosts_reply_t;
4511
4512typedef enum xcb_access_control_t {
4513 XCB_ACCESS_CONTROL_DISABLE = 0,
4514 XCB_ACCESS_CONTROL_ENABLE = 1
4515} xcb_access_control_t;
4516
4517/** Opcode for xcb_set_access_control. */
4518#define XCB_SET_ACCESS_CONTROL 111
4519
4520/**
4521 * @brief xcb_set_access_control_request_t
4522 **/
4523typedef struct xcb_set_access_control_request_t {
4524 uint8_t major_opcode; /**< */
4525 uint8_t mode; /**< */
4526 uint16_t length; /**< */
4527} xcb_set_access_control_request_t;
4528
4529typedef enum xcb_close_down_t {
4530 XCB_CLOSE_DOWN_DESTROY_ALL = 0,
4531 XCB_CLOSE_DOWN_RETAIN_PERMANENT = 1,
4532 XCB_CLOSE_DOWN_RETAIN_TEMPORARY = 2
4533} xcb_close_down_t;
4534
4535/** Opcode for xcb_set_close_down_mode. */
4536#define XCB_SET_CLOSE_DOWN_MODE 112
4537
4538/**
4539 * @brief xcb_set_close_down_mode_request_t
4540 **/
4541typedef struct xcb_set_close_down_mode_request_t {
4542 uint8_t major_opcode; /**< */
4543 uint8_t mode; /**< */
4544 uint16_t length; /**< */
4545} xcb_set_close_down_mode_request_t;
4546
4547typedef enum xcb_kill_t {
4548 XCB_KILL_ALL_TEMPORARY = 0
4549} xcb_kill_t;
4550
4551/** Opcode for xcb_kill_client. */
4552#define XCB_KILL_CLIENT 113
4553
4554/**
4555 * @brief xcb_kill_client_request_t
4556 **/
4557typedef struct xcb_kill_client_request_t {
4558 uint8_t major_opcode; /**< */
4559 uint8_t pad0; /**< */
4560 uint16_t length; /**< */
4561 uint32_t resource; /**< */
4562} xcb_kill_client_request_t;
4563
4564/** Opcode for xcb_rotate_properties. */
4565#define XCB_ROTATE_PROPERTIES 114
4566
4567/**
4568 * @brief xcb_rotate_properties_request_t
4569 **/
4570typedef struct xcb_rotate_properties_request_t {
4571 uint8_t major_opcode; /**< */
4572 uint8_t pad0; /**< */
4573 uint16_t length; /**< */
4574 xcb_window_t window; /**< */
4575 uint16_t atoms_len; /**< */
4576 int16_t delta; /**< */
4577} xcb_rotate_properties_request_t;
4578
4579typedef enum xcb_screen_saver_t {
4580 XCB_SCREEN_SAVER_RESET = 0,
4581 XCB_SCREEN_SAVER_ACTIVE = 1
4582} xcb_screen_saver_t;
4583
4584/** Opcode for xcb_force_screen_saver. */
4585#define XCB_FORCE_SCREEN_SAVER 115
4586
4587/**
4588 * @brief xcb_force_screen_saver_request_t
4589 **/
4590typedef struct xcb_force_screen_saver_request_t {
4591 uint8_t major_opcode; /**< */
4592 uint8_t mode; /**< */
4593 uint16_t length; /**< */
4594} xcb_force_screen_saver_request_t;
4595
4596typedef enum xcb_mapping_status_t {
4597 XCB_MAPPING_STATUS_SUCCESS = 0,
4598 XCB_MAPPING_STATUS_BUSY = 1,
4599 XCB_MAPPING_STATUS_FAILURE = 2
4600} xcb_mapping_status_t;
4601
4602/**
4603 * @brief xcb_set_pointer_mapping_cookie_t
4604 **/
4605typedef struct xcb_set_pointer_mapping_cookie_t {
4606 unsigned int sequence; /**< */
4607} xcb_set_pointer_mapping_cookie_t;
4608
4609/** Opcode for xcb_set_pointer_mapping. */
4610#define XCB_SET_POINTER_MAPPING 116
4611
4612/**
4613 * @brief xcb_set_pointer_mapping_request_t
4614 **/
4615typedef struct xcb_set_pointer_mapping_request_t {
4616 uint8_t major_opcode; /**< */
4617 uint8_t map_len; /**< */
4618 uint16_t length; /**< */
4619} xcb_set_pointer_mapping_request_t;
4620
4621/**
4622 * @brief xcb_set_pointer_mapping_reply_t
4623 **/
4624typedef struct xcb_set_pointer_mapping_reply_t {
4625 uint8_t response_type; /**< */
4626 uint8_t status; /**< */
4627 uint16_t sequence; /**< */
4628 uint32_t length; /**< */
4629} xcb_set_pointer_mapping_reply_t;
4630
4631/**
4632 * @brief xcb_get_pointer_mapping_cookie_t
4633 **/
4634typedef struct xcb_get_pointer_mapping_cookie_t {
4635 unsigned int sequence; /**< */
4636} xcb_get_pointer_mapping_cookie_t;
4637
4638/** Opcode for xcb_get_pointer_mapping. */
4639#define XCB_GET_POINTER_MAPPING 117
4640
4641/**
4642 * @brief xcb_get_pointer_mapping_request_t
4643 **/
4644typedef struct xcb_get_pointer_mapping_request_t {
4645 uint8_t major_opcode; /**< */
4646 uint8_t pad0; /**< */
4647 uint16_t length; /**< */
4648} xcb_get_pointer_mapping_request_t;
4649
4650/**
4651 * @brief xcb_get_pointer_mapping_reply_t
4652 **/
4653typedef struct xcb_get_pointer_mapping_reply_t {
4654 uint8_t response_type; /**< */
4655 uint8_t map_len; /**< */
4656 uint16_t sequence; /**< */
4657 uint32_t length; /**< */
4658 uint8_t pad0[24]; /**< */
4659} xcb_get_pointer_mapping_reply_t;
4660
4661typedef enum xcb_map_index_t {
4662 XCB_MAP_INDEX_SHIFT = 0,
4663 XCB_MAP_INDEX_LOCK = 1,
4664 XCB_MAP_INDEX_CONTROL = 2,
4665 XCB_MAP_INDEX_1 = 3,
4666 XCB_MAP_INDEX_2 = 4,
4667 XCB_MAP_INDEX_3 = 5,
4668 XCB_MAP_INDEX_4 = 6,
4669 XCB_MAP_INDEX_5 = 7
4670} xcb_map_index_t;
4671
4672/**
4673 * @brief xcb_set_modifier_mapping_cookie_t
4674 **/
4675typedef struct xcb_set_modifier_mapping_cookie_t {
4676 unsigned int sequence; /**< */
4677} xcb_set_modifier_mapping_cookie_t;
4678
4679/** Opcode for xcb_set_modifier_mapping. */
4680#define XCB_SET_MODIFIER_MAPPING 118
4681
4682/**
4683 * @brief xcb_set_modifier_mapping_request_t
4684 **/
4685typedef struct xcb_set_modifier_mapping_request_t {
4686 uint8_t major_opcode; /**< */
4687 uint8_t keycodes_per_modifier; /**< */
4688 uint16_t length; /**< */
4689} xcb_set_modifier_mapping_request_t;
4690
4691/**
4692 * @brief xcb_set_modifier_mapping_reply_t
4693 **/
4694typedef struct xcb_set_modifier_mapping_reply_t {
4695 uint8_t response_type; /**< */
4696 uint8_t status; /**< */
4697 uint16_t sequence; /**< */
4698 uint32_t length; /**< */
4699} xcb_set_modifier_mapping_reply_t;
4700
4701/**
4702 * @brief xcb_get_modifier_mapping_cookie_t
4703 **/
4704typedef struct xcb_get_modifier_mapping_cookie_t {
4705 unsigned int sequence; /**< */
4706} xcb_get_modifier_mapping_cookie_t;
4707
4708/** Opcode for xcb_get_modifier_mapping. */
4709#define XCB_GET_MODIFIER_MAPPING 119
4710
4711/**
4712 * @brief xcb_get_modifier_mapping_request_t
4713 **/
4714typedef struct xcb_get_modifier_mapping_request_t {
4715 uint8_t major_opcode; /**< */
4716 uint8_t pad0; /**< */
4717 uint16_t length; /**< */
4718} xcb_get_modifier_mapping_request_t;
4719
4720/**
4721 * @brief xcb_get_modifier_mapping_reply_t
4722 **/
4723typedef struct xcb_get_modifier_mapping_reply_t {
4724 uint8_t response_type; /**< */
4725 uint8_t keycodes_per_modifier; /**< */
4726 uint16_t sequence; /**< */
4727 uint32_t length; /**< */
4728 uint8_t pad0[24]; /**< */
4729} xcb_get_modifier_mapping_reply_t;
4730
4731/** Opcode for xcb_no_operation. */
4732#define XCB_NO_OPERATION 127
4733
4734/**
4735 * @brief xcb_no_operation_request_t
4736 **/
4737typedef struct xcb_no_operation_request_t {
4738 uint8_t major_opcode; /**< */
4739 uint8_t pad0; /**< */
4740 uint16_t length; /**< */
4741} xcb_no_operation_request_t;
4742
4743/**
4744 * Get the next element of the iterator
4745 * @param i Pointer to a xcb_char2b_iterator_t
4746 *
4747 * Get the next element in the iterator. The member rem is
4748 * decreased by one. The member data points to the next
4749 * element. The member index is increased by sizeof(xcb_char2b_t)
4750 */
4751
4752/*****************************************************************************
4753 **
4754 ** void xcb_char2b_next
4755 **
4756 ** @param xcb_char2b_iterator_t *i
4757 ** @returns void
4758 **
4759 *****************************************************************************/
4760
4761void
4762xcb_char2b_next (xcb_char2b_iterator_t *i /**< */);
4763
4764/**
4765 * Return the iterator pointing to the last element
4766 * @param i An xcb_char2b_iterator_t
4767 * @return The iterator pointing to the last element
4768 *
4769 * Set the current element in the iterator to the last element.
4770 * The member rem is set to 0. The member data points to the
4771 * last element.
4772 */
4773
4774/*****************************************************************************
4775 **
4776 ** xcb_generic_iterator_t xcb_char2b_end
4777 **
4778 ** @param xcb_char2b_iterator_t i
4779 ** @returns xcb_generic_iterator_t
4780 **
4781 *****************************************************************************/
4782
4783xcb_generic_iterator_t
4784xcb_char2b_end (xcb_char2b_iterator_t i /**< */);
4785
4786/**
4787 * Get the next element of the iterator
4788 * @param i Pointer to a xcb_window_iterator_t
4789 *
4790 * Get the next element in the iterator. The member rem is
4791 * decreased by one. The member data points to the next
4792 * element. The member index is increased by sizeof(xcb_window_t)
4793 */
4794
4795/*****************************************************************************
4796 **
4797 ** void xcb_window_next
4798 **
4799 ** @param xcb_window_iterator_t *i
4800 ** @returns void
4801 **
4802 *****************************************************************************/
4803
4804void
4805xcb_window_next (xcb_window_iterator_t *i /**< */);
4806
4807/**
4808 * Return the iterator pointing to the last element
4809 * @param i An xcb_window_iterator_t
4810 * @return The iterator pointing to the last element
4811 *
4812 * Set the current element in the iterator to the last element.
4813 * The member rem is set to 0. The member data points to the
4814 * last element.
4815 */
4816
4817/*****************************************************************************
4818 **
4819 ** xcb_generic_iterator_t xcb_window_end
4820 **
4821 ** @param xcb_window_iterator_t i
4822 ** @returns xcb_generic_iterator_t
4823 **
4824 *****************************************************************************/
4825
4826xcb_generic_iterator_t
4827xcb_window_end (xcb_window_iterator_t i /**< */);
4828
4829/**
4830 * Get the next element of the iterator
4831 * @param i Pointer to a xcb_pixmap_iterator_t
4832 *
4833 * Get the next element in the iterator. The member rem is
4834 * decreased by one. The member data points to the next
4835 * element. The member index is increased by sizeof(xcb_pixmap_t)
4836 */
4837
4838/*****************************************************************************
4839 **
4840 ** void xcb_pixmap_next
4841 **
4842 ** @param xcb_pixmap_iterator_t *i
4843 ** @returns void
4844 **
4845 *****************************************************************************/
4846
4847void
4848xcb_pixmap_next (xcb_pixmap_iterator_t *i /**< */);
4849
4850/**
4851 * Return the iterator pointing to the last element
4852 * @param i An xcb_pixmap_iterator_t
4853 * @return The iterator pointing to the last element
4854 *
4855 * Set the current element in the iterator to the last element.
4856 * The member rem is set to 0. The member data points to the
4857 * last element.
4858 */
4859
4860/*****************************************************************************
4861 **
4862 ** xcb_generic_iterator_t xcb_pixmap_end
4863 **
4864 ** @param xcb_pixmap_iterator_t i
4865 ** @returns xcb_generic_iterator_t
4866 **
4867 *****************************************************************************/
4868
4869xcb_generic_iterator_t
4870xcb_pixmap_end (xcb_pixmap_iterator_t i /**< */);
4871
4872/**
4873 * Get the next element of the iterator
4874 * @param i Pointer to a xcb_cursor_iterator_t
4875 *
4876 * Get the next element in the iterator. The member rem is
4877 * decreased by one. The member data points to the next
4878 * element. The member index is increased by sizeof(xcb_cursor_t)
4879 */
4880
4881/*****************************************************************************
4882 **
4883 ** void xcb_cursor_next
4884 **
4885 ** @param xcb_cursor_iterator_t *i
4886 ** @returns void
4887 **
4888 *****************************************************************************/
4889
4890void
4891xcb_cursor_next (xcb_cursor_iterator_t *i /**< */);
4892
4893/**
4894 * Return the iterator pointing to the last element
4895 * @param i An xcb_cursor_iterator_t
4896 * @return The iterator pointing to the last element
4897 *
4898 * Set the current element in the iterator to the last element.
4899 * The member rem is set to 0. The member data points to the
4900 * last element.
4901 */
4902
4903/*****************************************************************************
4904 **
4905 ** xcb_generic_iterator_t xcb_cursor_end
4906 **
4907 ** @param xcb_cursor_iterator_t i
4908 ** @returns xcb_generic_iterator_t
4909 **
4910 *****************************************************************************/
4911
4912xcb_generic_iterator_t
4913xcb_cursor_end (xcb_cursor_iterator_t i /**< */);
4914
4915/**
4916 * Get the next element of the iterator
4917 * @param i Pointer to a xcb_font_iterator_t
4918 *
4919 * Get the next element in the iterator. The member rem is
4920 * decreased by one. The member data points to the next
4921 * element. The member index is increased by sizeof(xcb_font_t)
4922 */
4923
4924/*****************************************************************************
4925 **
4926 ** void xcb_font_next
4927 **
4928 ** @param xcb_font_iterator_t *i
4929 ** @returns void
4930 **
4931 *****************************************************************************/
4932
4933void
4934xcb_font_next (xcb_font_iterator_t *i /**< */);
4935
4936/**
4937 * Return the iterator pointing to the last element
4938 * @param i An xcb_font_iterator_t
4939 * @return The iterator pointing to the last element
4940 *
4941 * Set the current element in the iterator to the last element.
4942 * The member rem is set to 0. The member data points to the
4943 * last element.
4944 */
4945
4946/*****************************************************************************
4947 **
4948 ** xcb_generic_iterator_t xcb_font_end
4949 **
4950 ** @param xcb_font_iterator_t i
4951 ** @returns xcb_generic_iterator_t
4952 **
4953 *****************************************************************************/
4954
4955xcb_generic_iterator_t
4956xcb_font_end (xcb_font_iterator_t i /**< */);
4957
4958/**
4959 * Get the next element of the iterator
4960 * @param i Pointer to a xcb_gcontext_iterator_t
4961 *
4962 * Get the next element in the iterator. The member rem is
4963 * decreased by one. The member data points to the next
4964 * element. The member index is increased by sizeof(xcb_gcontext_t)
4965 */
4966
4967/*****************************************************************************
4968 **
4969 ** void xcb_gcontext_next
4970 **
4971 ** @param xcb_gcontext_iterator_t *i
4972 ** @returns void
4973 **
4974 *****************************************************************************/
4975
4976void
4977xcb_gcontext_next (xcb_gcontext_iterator_t *i /**< */);
4978
4979/**
4980 * Return the iterator pointing to the last element
4981 * @param i An xcb_gcontext_iterator_t
4982 * @return The iterator pointing to the last element
4983 *
4984 * Set the current element in the iterator to the last element.
4985 * The member rem is set to 0. The member data points to the
4986 * last element.
4987 */
4988
4989/*****************************************************************************
4990 **
4991 ** xcb_generic_iterator_t xcb_gcontext_end
4992 **
4993 ** @param xcb_gcontext_iterator_t i
4994 ** @returns xcb_generic_iterator_t
4995 **
4996 *****************************************************************************/
4997
4998xcb_generic_iterator_t
4999xcb_gcontext_end (xcb_gcontext_iterator_t i /**< */);
5000
5001/**
5002 * Get the next element of the iterator
5003 * @param i Pointer to a xcb_colormap_iterator_t
5004 *
5005 * Get the next element in the iterator. The member rem is
5006 * decreased by one. The member data points to the next
5007 * element. The member index is increased by sizeof(xcb_colormap_t)
5008 */
5009
5010/*****************************************************************************
5011 **
5012 ** void xcb_colormap_next
5013 **
5014 ** @param xcb_colormap_iterator_t *i
5015 ** @returns void
5016 **
5017 *****************************************************************************/
5018
5019void
5020xcb_colormap_next (xcb_colormap_iterator_t *i /**< */);
5021
5022/**
5023 * Return the iterator pointing to the last element
5024 * @param i An xcb_colormap_iterator_t
5025 * @return The iterator pointing to the last element
5026 *
5027 * Set the current element in the iterator to the last element.
5028 * The member rem is set to 0. The member data points to the
5029 * last element.
5030 */
5031
5032/*****************************************************************************
5033 **
5034 ** xcb_generic_iterator_t xcb_colormap_end
5035 **
5036 ** @param xcb_colormap_iterator_t i
5037 ** @returns xcb_generic_iterator_t
5038 **
5039 *****************************************************************************/
5040
5041xcb_generic_iterator_t
5042xcb_colormap_end (xcb_colormap_iterator_t i /**< */);
5043
5044/**
5045 * Get the next element of the iterator
5046 * @param i Pointer to a xcb_atom_iterator_t
5047 *
5048 * Get the next element in the iterator. The member rem is
5049 * decreased by one. The member data points to the next
5050 * element. The member index is increased by sizeof(xcb_atom_t)
5051 */
5052
5053/*****************************************************************************
5054 **
5055 ** void xcb_atom_next
5056 **
5057 ** @param xcb_atom_iterator_t *i
5058 ** @returns void
5059 **
5060 *****************************************************************************/
5061
5062void
5063xcb_atom_next (xcb_atom_iterator_t *i /**< */);
5064
5065/**
5066 * Return the iterator pointing to the last element
5067 * @param i An xcb_atom_iterator_t
5068 * @return The iterator pointing to the last element
5069 *
5070 * Set the current element in the iterator to the last element.
5071 * The member rem is set to 0. The member data points to the
5072 * last element.
5073 */
5074
5075/*****************************************************************************
5076 **
5077 ** xcb_generic_iterator_t xcb_atom_end
5078 **
5079 ** @param xcb_atom_iterator_t i
5080 ** @returns xcb_generic_iterator_t
5081 **
5082 *****************************************************************************/
5083
5084xcb_generic_iterator_t
5085xcb_atom_end (xcb_atom_iterator_t i /**< */);
5086
5087/**
5088 * Get the next element of the iterator
5089 * @param i Pointer to a xcb_drawable_iterator_t
5090 *
5091 * Get the next element in the iterator. The member rem is
5092 * decreased by one. The member data points to the next
5093 * element. The member index is increased by sizeof(xcb_drawable_t)
5094 */
5095
5096/*****************************************************************************
5097 **
5098 ** void xcb_drawable_next
5099 **
5100 ** @param xcb_drawable_iterator_t *i
5101 ** @returns void
5102 **
5103 *****************************************************************************/
5104
5105void
5106xcb_drawable_next (xcb_drawable_iterator_t *i /**< */);
5107
5108/**
5109 * Return the iterator pointing to the last element
5110 * @param i An xcb_drawable_iterator_t
5111 * @return The iterator pointing to the last element
5112 *
5113 * Set the current element in the iterator to the last element.
5114 * The member rem is set to 0. The member data points to the
5115 * last element.
5116 */
5117
5118/*****************************************************************************
5119 **
5120 ** xcb_generic_iterator_t xcb_drawable_end
5121 **
5122 ** @param xcb_drawable_iterator_t i
5123 ** @returns xcb_generic_iterator_t
5124 **
5125 *****************************************************************************/
5126
5127xcb_generic_iterator_t
5128xcb_drawable_end (xcb_drawable_iterator_t i /**< */);
5129
5130/**
5131 * Get the next element of the iterator
5132 * @param i Pointer to a xcb_fontable_iterator_t
5133 *
5134 * Get the next element in the iterator. The member rem is
5135 * decreased by one. The member data points to the next
5136 * element. The member index is increased by sizeof(xcb_fontable_t)
5137 */
5138
5139/*****************************************************************************
5140 **
5141 ** void xcb_fontable_next
5142 **
5143 ** @param xcb_fontable_iterator_t *i
5144 ** @returns void
5145 **
5146 *****************************************************************************/
5147
5148void
5149xcb_fontable_next (xcb_fontable_iterator_t *i /**< */);
5150
5151/**
5152 * Return the iterator pointing to the last element
5153 * @param i An xcb_fontable_iterator_t
5154 * @return The iterator pointing to the last element
5155 *
5156 * Set the current element in the iterator to the last element.
5157 * The member rem is set to 0. The member data points to the
5158 * last element.
5159 */
5160
5161/*****************************************************************************
5162 **
5163 ** xcb_generic_iterator_t xcb_fontable_end
5164 **
5165 ** @param xcb_fontable_iterator_t i
5166 ** @returns xcb_generic_iterator_t
5167 **
5168 *****************************************************************************/
5169
5170xcb_generic_iterator_t
5171xcb_fontable_end (xcb_fontable_iterator_t i /**< */);
5172
5173/**
5174 * Get the next element of the iterator
5175 * @param i Pointer to a xcb_visualid_iterator_t
5176 *
5177 * Get the next element in the iterator. The member rem is
5178 * decreased by one. The member data points to the next
5179 * element. The member index is increased by sizeof(xcb_visualid_t)
5180 */
5181
5182/*****************************************************************************
5183 **
5184 ** void xcb_visualid_next
5185 **
5186 ** @param xcb_visualid_iterator_t *i
5187 ** @returns void
5188 **
5189 *****************************************************************************/
5190
5191void
5192xcb_visualid_next (xcb_visualid_iterator_t *i /**< */);
5193
5194/**
5195 * Return the iterator pointing to the last element
5196 * @param i An xcb_visualid_iterator_t
5197 * @return The iterator pointing to the last element
5198 *
5199 * Set the current element in the iterator to the last element.
5200 * The member rem is set to 0. The member data points to the
5201 * last element.
5202 */
5203
5204/*****************************************************************************
5205 **
5206 ** xcb_generic_iterator_t xcb_visualid_end
5207 **
5208 ** @param xcb_visualid_iterator_t i
5209 ** @returns xcb_generic_iterator_t
5210 **
5211 *****************************************************************************/
5212
5213xcb_generic_iterator_t
5214xcb_visualid_end (xcb_visualid_iterator_t i /**< */);
5215
5216/**
5217 * Get the next element of the iterator
5218 * @param i Pointer to a xcb_timestamp_iterator_t
5219 *
5220 * Get the next element in the iterator. The member rem is
5221 * decreased by one. The member data points to the next
5222 * element. The member index is increased by sizeof(xcb_timestamp_t)
5223 */
5224
5225/*****************************************************************************
5226 **
5227 ** void xcb_timestamp_next
5228 **
5229 ** @param xcb_timestamp_iterator_t *i
5230 ** @returns void
5231 **
5232 *****************************************************************************/
5233
5234void
5235xcb_timestamp_next (xcb_timestamp_iterator_t *i /**< */);
5236
5237/**
5238 * Return the iterator pointing to the last element
5239 * @param i An xcb_timestamp_iterator_t
5240 * @return The iterator pointing to the last element
5241 *
5242 * Set the current element in the iterator to the last element.
5243 * The member rem is set to 0. The member data points to the
5244 * last element.
5245 */
5246
5247/*****************************************************************************
5248 **
5249 ** xcb_generic_iterator_t xcb_timestamp_end
5250 **
5251 ** @param xcb_timestamp_iterator_t i
5252 ** @returns xcb_generic_iterator_t
5253 **
5254 *****************************************************************************/
5255
5256xcb_generic_iterator_t
5257xcb_timestamp_end (xcb_timestamp_iterator_t i /**< */);
5258
5259/**
5260 * Get the next element of the iterator
5261 * @param i Pointer to a xcb_keysym_iterator_t
5262 *
5263 * Get the next element in the iterator. The member rem is
5264 * decreased by one. The member data points to the next
5265 * element. The member index is increased by sizeof(xcb_keysym_t)
5266 */
5267
5268/*****************************************************************************
5269 **
5270 ** void xcb_keysym_next
5271 **
5272 ** @param xcb_keysym_iterator_t *i
5273 ** @returns void
5274 **
5275 *****************************************************************************/
5276
5277void
5278xcb_keysym_next (xcb_keysym_iterator_t *i /**< */);
5279
5280/**
5281 * Return the iterator pointing to the last element
5282 * @param i An xcb_keysym_iterator_t
5283 * @return The iterator pointing to the last element
5284 *
5285 * Set the current element in the iterator to the last element.
5286 * The member rem is set to 0. The member data points to the
5287 * last element.
5288 */
5289
5290/*****************************************************************************
5291 **
5292 ** xcb_generic_iterator_t xcb_keysym_end
5293 **
5294 ** @param xcb_keysym_iterator_t i
5295 ** @returns xcb_generic_iterator_t
5296 **
5297 *****************************************************************************/
5298
5299xcb_generic_iterator_t
5300xcb_keysym_end (xcb_keysym_iterator_t i /**< */);
5301
5302/**
5303 * Get the next element of the iterator
5304 * @param i Pointer to a xcb_keycode_iterator_t
5305 *
5306 * Get the next element in the iterator. The member rem is
5307 * decreased by one. The member data points to the next
5308 * element. The member index is increased by sizeof(xcb_keycode_t)
5309 */
5310
5311/*****************************************************************************
5312 **
5313 ** void xcb_keycode_next
5314 **
5315 ** @param xcb_keycode_iterator_t *i
5316 ** @returns void
5317 **
5318 *****************************************************************************/
5319
5320void
5321xcb_keycode_next (xcb_keycode_iterator_t *i /**< */);
5322
5323/**
5324 * Return the iterator pointing to the last element
5325 * @param i An xcb_keycode_iterator_t
5326 * @return The iterator pointing to the last element
5327 *
5328 * Set the current element in the iterator to the last element.
5329 * The member rem is set to 0. The member data points to the
5330 * last element.
5331 */
5332
5333/*****************************************************************************
5334 **
5335 ** xcb_generic_iterator_t xcb_keycode_end
5336 **
5337 ** @param xcb_keycode_iterator_t i
5338 ** @returns xcb_generic_iterator_t
5339 **
5340 *****************************************************************************/
5341
5342xcb_generic_iterator_t
5343xcb_keycode_end (xcb_keycode_iterator_t i /**< */);
5344
5345/**
5346 * Get the next element of the iterator
5347 * @param i Pointer to a xcb_button_iterator_t
5348 *
5349 * Get the next element in the iterator. The member rem is
5350 * decreased by one. The member data points to the next
5351 * element. The member index is increased by sizeof(xcb_button_t)
5352 */
5353
5354/*****************************************************************************
5355 **
5356 ** void xcb_button_next
5357 **
5358 ** @param xcb_button_iterator_t *i
5359 ** @returns void
5360 **
5361 *****************************************************************************/
5362
5363void
5364xcb_button_next (xcb_button_iterator_t *i /**< */);
5365
5366/**
5367 * Return the iterator pointing to the last element
5368 * @param i An xcb_button_iterator_t
5369 * @return The iterator pointing to the last element
5370 *
5371 * Set the current element in the iterator to the last element.
5372 * The member rem is set to 0. The member data points to the
5373 * last element.
5374 */
5375
5376/*****************************************************************************
5377 **
5378 ** xcb_generic_iterator_t xcb_button_end
5379 **
5380 ** @param xcb_button_iterator_t i
5381 ** @returns xcb_generic_iterator_t
5382 **
5383 *****************************************************************************/
5384
5385xcb_generic_iterator_t
5386xcb_button_end (xcb_button_iterator_t i /**< */);
5387
5388/**
5389 * Get the next element of the iterator
5390 * @param i Pointer to a xcb_point_iterator_t
5391 *
5392 * Get the next element in the iterator. The member rem is
5393 * decreased by one. The member data points to the next
5394 * element. The member index is increased by sizeof(xcb_point_t)
5395 */
5396
5397/*****************************************************************************
5398 **
5399 ** void xcb_point_next
5400 **
5401 ** @param xcb_point_iterator_t *i
5402 ** @returns void
5403 **
5404 *****************************************************************************/
5405
5406void
5407xcb_point_next (xcb_point_iterator_t *i /**< */);
5408
5409/**
5410 * Return the iterator pointing to the last element
5411 * @param i An xcb_point_iterator_t
5412 * @return The iterator pointing to the last element
5413 *
5414 * Set the current element in the iterator to the last element.
5415 * The member rem is set to 0. The member data points to the
5416 * last element.
5417 */
5418
5419/*****************************************************************************
5420 **
5421 ** xcb_generic_iterator_t xcb_point_end
5422 **
5423 ** @param xcb_point_iterator_t i
5424 ** @returns xcb_generic_iterator_t
5425 **
5426 *****************************************************************************/
5427
5428xcb_generic_iterator_t
5429xcb_point_end (xcb_point_iterator_t i /**< */);
5430
5431/**
5432 * Get the next element of the iterator
5433 * @param i Pointer to a xcb_rectangle_iterator_t
5434 *
5435 * Get the next element in the iterator. The member rem is
5436 * decreased by one. The member data points to the next
5437 * element. The member index is increased by sizeof(xcb_rectangle_t)
5438 */
5439
5440/*****************************************************************************
5441 **
5442 ** void xcb_rectangle_next
5443 **
5444 ** @param xcb_rectangle_iterator_t *i
5445 ** @returns void
5446 **
5447 *****************************************************************************/
5448
5449void
5450xcb_rectangle_next (xcb_rectangle_iterator_t *i /**< */);
5451
5452/**
5453 * Return the iterator pointing to the last element
5454 * @param i An xcb_rectangle_iterator_t
5455 * @return The iterator pointing to the last element
5456 *
5457 * Set the current element in the iterator to the last element.
5458 * The member rem is set to 0. The member data points to the
5459 * last element.
5460 */
5461
5462/*****************************************************************************
5463 **
5464 ** xcb_generic_iterator_t xcb_rectangle_end
5465 **
5466 ** @param xcb_rectangle_iterator_t i
5467 ** @returns xcb_generic_iterator_t
5468 **
5469 *****************************************************************************/
5470
5471xcb_generic_iterator_t
5472xcb_rectangle_end (xcb_rectangle_iterator_t i /**< */);
5473
5474/**
5475 * Get the next element of the iterator
5476 * @param i Pointer to a xcb_arc_iterator_t
5477 *
5478 * Get the next element in the iterator. The member rem is
5479 * decreased by one. The member data points to the next
5480 * element. The member index is increased by sizeof(xcb_arc_t)
5481 */
5482
5483/*****************************************************************************
5484 **
5485 ** void xcb_arc_next
5486 **
5487 ** @param xcb_arc_iterator_t *i
5488 ** @returns void
5489 **
5490 *****************************************************************************/
5491
5492void
5493xcb_arc_next (xcb_arc_iterator_t *i /**< */);
5494
5495/**
5496 * Return the iterator pointing to the last element
5497 * @param i An xcb_arc_iterator_t
5498 * @return The iterator pointing to the last element
5499 *
5500 * Set the current element in the iterator to the last element.
5501 * The member rem is set to 0. The member data points to the
5502 * last element.
5503 */
5504
5505/*****************************************************************************
5506 **
5507 ** xcb_generic_iterator_t xcb_arc_end
5508 **
5509 ** @param xcb_arc_iterator_t i
5510 ** @returns xcb_generic_iterator_t
5511 **
5512 *****************************************************************************/
5513
5514xcb_generic_iterator_t
5515xcb_arc_end (xcb_arc_iterator_t i /**< */);
5516
5517/**
5518 * Get the next element of the iterator
5519 * @param i Pointer to a xcb_format_iterator_t
5520 *
5521 * Get the next element in the iterator. The member rem is
5522 * decreased by one. The member data points to the next
5523 * element. The member index is increased by sizeof(xcb_format_t)
5524 */
5525
5526/*****************************************************************************
5527 **
5528 ** void xcb_format_next
5529 **
5530 ** @param xcb_format_iterator_t *i
5531 ** @returns void
5532 **
5533 *****************************************************************************/
5534
5535void
5536xcb_format_next (xcb_format_iterator_t *i /**< */);
5537
5538/**
5539 * Return the iterator pointing to the last element
5540 * @param i An xcb_format_iterator_t
5541 * @return The iterator pointing to the last element
5542 *
5543 * Set the current element in the iterator to the last element.
5544 * The member rem is set to 0. The member data points to the
5545 * last element.
5546 */
5547
5548/*****************************************************************************
5549 **
5550 ** xcb_generic_iterator_t xcb_format_end
5551 **
5552 ** @param xcb_format_iterator_t i
5553 ** @returns xcb_generic_iterator_t
5554 **
5555 *****************************************************************************/
5556
5557xcb_generic_iterator_t
5558xcb_format_end (xcb_format_iterator_t i /**< */);
5559
5560/**
5561 * Get the next element of the iterator
5562 * @param i Pointer to a xcb_visualtype_iterator_t
5563 *
5564 * Get the next element in the iterator. The member rem is
5565 * decreased by one. The member data points to the next
5566 * element. The member index is increased by sizeof(xcb_visualtype_t)
5567 */
5568
5569/*****************************************************************************
5570 **
5571 ** void xcb_visualtype_next
5572 **
5573 ** @param xcb_visualtype_iterator_t *i
5574 ** @returns void
5575 **
5576 *****************************************************************************/
5577
5578void
5579xcb_visualtype_next (xcb_visualtype_iterator_t *i /**< */);
5580
5581/**
5582 * Return the iterator pointing to the last element
5583 * @param i An xcb_visualtype_iterator_t
5584 * @return The iterator pointing to the last element
5585 *
5586 * Set the current element in the iterator to the last element.
5587 * The member rem is set to 0. The member data points to the
5588 * last element.
5589 */
5590
5591/*****************************************************************************
5592 **
5593 ** xcb_generic_iterator_t xcb_visualtype_end
5594 **
5595 ** @param xcb_visualtype_iterator_t i
5596 ** @returns xcb_generic_iterator_t
5597 **
5598 *****************************************************************************/
5599
5600xcb_generic_iterator_t
5601xcb_visualtype_end (xcb_visualtype_iterator_t i /**< */);
5602
5603int
5604xcb_depth_sizeof (const void *_buffer /**< */);
5605
5606
5607/*****************************************************************************
5608 **
5609 ** xcb_visualtype_t * xcb_depth_visuals
5610 **
5611 ** @param const xcb_depth_t *R
5612 ** @returns xcb_visualtype_t *
5613 **
5614 *****************************************************************************/
5615
5616xcb_visualtype_t *
5617xcb_depth_visuals (const xcb_depth_t *R /**< */);
5618
5619
5620/*****************************************************************************
5621 **
5622 ** int xcb_depth_visuals_length
5623 **
5624 ** @param const xcb_depth_t *R
5625 ** @returns int
5626 **
5627 *****************************************************************************/
5628
5629int
5630xcb_depth_visuals_length (const xcb_depth_t *R /**< */);
5631
5632
5633/*****************************************************************************
5634 **
5635 ** xcb_visualtype_iterator_t xcb_depth_visuals_iterator
5636 **
5637 ** @param const xcb_depth_t *R
5638 ** @returns xcb_visualtype_iterator_t
5639 **
5640 *****************************************************************************/
5641
5642xcb_visualtype_iterator_t
5643xcb_depth_visuals_iterator (const xcb_depth_t *R /**< */);
5644
5645/**
5646 * Get the next element of the iterator
5647 * @param i Pointer to a xcb_depth_iterator_t
5648 *
5649 * Get the next element in the iterator. The member rem is
5650 * decreased by one. The member data points to the next
5651 * element. The member index is increased by sizeof(xcb_depth_t)
5652 */
5653
5654/*****************************************************************************
5655 **
5656 ** void xcb_depth_next
5657 **
5658 ** @param xcb_depth_iterator_t *i
5659 ** @returns void
5660 **
5661 *****************************************************************************/
5662
5663void
5664xcb_depth_next (xcb_depth_iterator_t *i /**< */);
5665
5666/**
5667 * Return the iterator pointing to the last element
5668 * @param i An xcb_depth_iterator_t
5669 * @return The iterator pointing to the last element
5670 *
5671 * Set the current element in the iterator to the last element.
5672 * The member rem is set to 0. The member data points to the
5673 * last element.
5674 */
5675
5676/*****************************************************************************
5677 **
5678 ** xcb_generic_iterator_t xcb_depth_end
5679 **
5680 ** @param xcb_depth_iterator_t i
5681 ** @returns xcb_generic_iterator_t
5682 **
5683 *****************************************************************************/
5684
5685xcb_generic_iterator_t
5686xcb_depth_end (xcb_depth_iterator_t i /**< */);
5687
5688int
5689xcb_screen_sizeof (const void *_buffer /**< */);
5690
5691
5692/*****************************************************************************
5693 **
5694 ** int xcb_screen_allowed_depths_length
5695 **
5696 ** @param const xcb_screen_t *R
5697 ** @returns int
5698 **
5699 *****************************************************************************/
5700
5701int
5702xcb_screen_allowed_depths_length (const xcb_screen_t *R /**< */);
5703
5704
5705/*****************************************************************************
5706 **
5707 ** xcb_depth_iterator_t xcb_screen_allowed_depths_iterator
5708 **
5709 ** @param const xcb_screen_t *R
5710 ** @returns xcb_depth_iterator_t
5711 **
5712 *****************************************************************************/
5713
5714xcb_depth_iterator_t
5715xcb_screen_allowed_depths_iterator (const xcb_screen_t *R /**< */);
5716
5717/**
5718 * Get the next element of the iterator
5719 * @param i Pointer to a xcb_screen_iterator_t
5720 *
5721 * Get the next element in the iterator. The member rem is
5722 * decreased by one. The member data points to the next
5723 * element. The member index is increased by sizeof(xcb_screen_t)
5724 */
5725
5726/*****************************************************************************
5727 **
5728 ** void xcb_screen_next
5729 **
5730 ** @param xcb_screen_iterator_t *i
5731 ** @returns void
5732 **
5733 *****************************************************************************/
5734
5735void
5736xcb_screen_next (xcb_screen_iterator_t *i /**< */);
5737
5738/**
5739 * Return the iterator pointing to the last element
5740 * @param i An xcb_screen_iterator_t
5741 * @return The iterator pointing to the last element
5742 *
5743 * Set the current element in the iterator to the last element.
5744 * The member rem is set to 0. The member data points to the
5745 * last element.
5746 */
5747
5748/*****************************************************************************
5749 **
5750 ** xcb_generic_iterator_t xcb_screen_end
5751 **
5752 ** @param xcb_screen_iterator_t i
5753 ** @returns xcb_generic_iterator_t
5754 **
5755 *****************************************************************************/
5756
5757xcb_generic_iterator_t
5758xcb_screen_end (xcb_screen_iterator_t i /**< */);
5759
5760int
5761xcb_setup_request_sizeof (const void *_buffer /**< */);
5762
5763
5764/*****************************************************************************
5765 **
5766 ** char * xcb_setup_request_authorization_protocol_name
5767 **
5768 ** @param const xcb_setup_request_t *R
5769 ** @returns char *
5770 **
5771 *****************************************************************************/
5772
5773char *
5774xcb_setup_request_authorization_protocol_name (const xcb_setup_request_t *R /**< */);
5775
5776
5777/*****************************************************************************
5778 **
5779 ** int xcb_setup_request_authorization_protocol_name_length
5780 **
5781 ** @param const xcb_setup_request_t *R
5782 ** @returns int
5783 **
5784 *****************************************************************************/
5785
5786int
5787xcb_setup_request_authorization_protocol_name_length (const xcb_setup_request_t *R /**< */);
5788
5789
5790/*****************************************************************************
5791 **
5792 ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_name_end
5793 **
5794 ** @param const xcb_setup_request_t *R
5795 ** @returns xcb_generic_iterator_t
5796 **
5797 *****************************************************************************/
5798
5799xcb_generic_iterator_t
5800xcb_setup_request_authorization_protocol_name_end (const xcb_setup_request_t *R /**< */);
5801
5802
5803/*****************************************************************************
5804 **
5805 ** char * xcb_setup_request_authorization_protocol_data
5806 **
5807 ** @param const xcb_setup_request_t *R
5808 ** @returns char *
5809 **
5810 *****************************************************************************/
5811
5812char *
5813xcb_setup_request_authorization_protocol_data (const xcb_setup_request_t *R /**< */);
5814
5815
5816/*****************************************************************************
5817 **
5818 ** int xcb_setup_request_authorization_protocol_data_length
5819 **
5820 ** @param const xcb_setup_request_t *R
5821 ** @returns int
5822 **
5823 *****************************************************************************/
5824
5825int
5826xcb_setup_request_authorization_protocol_data_length (const xcb_setup_request_t *R /**< */);
5827
5828
5829/*****************************************************************************
5830 **
5831 ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_data_end
5832 **
5833 ** @param const xcb_setup_request_t *R
5834 ** @returns xcb_generic_iterator_t
5835 **
5836 *****************************************************************************/
5837
5838xcb_generic_iterator_t
5839xcb_setup_request_authorization_protocol_data_end (const xcb_setup_request_t *R /**< */);
5840
5841/**
5842 * Get the next element of the iterator
5843 * @param i Pointer to a xcb_setup_request_iterator_t
5844 *
5845 * Get the next element in the iterator. The member rem is
5846 * decreased by one. The member data points to the next
5847 * element. The member index is increased by sizeof(xcb_setup_request_t)
5848 */
5849
5850/*****************************************************************************
5851 **
5852 ** void xcb_setup_request_next
5853 **
5854 ** @param xcb_setup_request_iterator_t *i
5855 ** @returns void
5856 **
5857 *****************************************************************************/
5858
5859void
5860xcb_setup_request_next (xcb_setup_request_iterator_t *i /**< */);
5861
5862/**
5863 * Return the iterator pointing to the last element
5864 * @param i An xcb_setup_request_iterator_t
5865 * @return The iterator pointing to the last element
5866 *
5867 * Set the current element in the iterator to the last element.
5868 * The member rem is set to 0. The member data points to the
5869 * last element.
5870 */
5871
5872/*****************************************************************************
5873 **
5874 ** xcb_generic_iterator_t xcb_setup_request_end
5875 **
5876 ** @param xcb_setup_request_iterator_t i
5877 ** @returns xcb_generic_iterator_t
5878 **
5879 *****************************************************************************/
5880
5881xcb_generic_iterator_t
5882xcb_setup_request_end (xcb_setup_request_iterator_t i /**< */);
5883
5884int
5885xcb_setup_failed_sizeof (const void *_buffer /**< */);
5886
5887
5888/*****************************************************************************
5889 **
5890 ** char * xcb_setup_failed_reason
5891 **
5892 ** @param const xcb_setup_failed_t *R
5893 ** @returns char *
5894 **
5895 *****************************************************************************/
5896
5897char *
5898xcb_setup_failed_reason (const xcb_setup_failed_t *R /**< */);
5899
5900
5901/*****************************************************************************
5902 **
5903 ** int xcb_setup_failed_reason_length
5904 **
5905 ** @param const xcb_setup_failed_t *R
5906 ** @returns int
5907 **
5908 *****************************************************************************/
5909
5910int
5911xcb_setup_failed_reason_length (const xcb_setup_failed_t *R /**< */);
5912
5913
5914/*****************************************************************************
5915 **
5916 ** xcb_generic_iterator_t xcb_setup_failed_reason_end
5917 **
5918 ** @param const xcb_setup_failed_t *R
5919 ** @returns xcb_generic_iterator_t
5920 **
5921 *****************************************************************************/
5922
5923xcb_generic_iterator_t
5924xcb_setup_failed_reason_end (const xcb_setup_failed_t *R /**< */);
5925
5926/**
5927 * Get the next element of the iterator
5928 * @param i Pointer to a xcb_setup_failed_iterator_t
5929 *
5930 * Get the next element in the iterator. The member rem is
5931 * decreased by one. The member data points to the next
5932 * element. The member index is increased by sizeof(xcb_setup_failed_t)
5933 */
5934
5935/*****************************************************************************
5936 **
5937 ** void xcb_setup_failed_next
5938 **
5939 ** @param xcb_setup_failed_iterator_t *i
5940 ** @returns void
5941 **
5942 *****************************************************************************/
5943
5944void
5945xcb_setup_failed_next (xcb_setup_failed_iterator_t *i /**< */);
5946
5947/**
5948 * Return the iterator pointing to the last element
5949 * @param i An xcb_setup_failed_iterator_t
5950 * @return The iterator pointing to the last element
5951 *
5952 * Set the current element in the iterator to the last element.
5953 * The member rem is set to 0. The member data points to the
5954 * last element.
5955 */
5956
5957/*****************************************************************************
5958 **
5959 ** xcb_generic_iterator_t xcb_setup_failed_end
5960 **
5961 ** @param xcb_setup_failed_iterator_t i
5962 ** @returns xcb_generic_iterator_t
5963 **
5964 *****************************************************************************/
5965
5966xcb_generic_iterator_t
5967xcb_setup_failed_end (xcb_setup_failed_iterator_t i /**< */);
5968
5969int
5970xcb_setup_authenticate_sizeof (const void *_buffer /**< */);
5971
5972
5973/*****************************************************************************
5974 **
5975 ** char * xcb_setup_authenticate_reason
5976 **
5977 ** @param const xcb_setup_authenticate_t *R
5978 ** @returns char *
5979 **
5980 *****************************************************************************/
5981
5982char *
5983xcb_setup_authenticate_reason (const xcb_setup_authenticate_t *R /**< */);
5984
5985
5986/*****************************************************************************
5987 **
5988 ** int xcb_setup_authenticate_reason_length
5989 **
5990 ** @param const xcb_setup_authenticate_t *R
5991 ** @returns int
5992 **
5993 *****************************************************************************/
5994
5995int
5996xcb_setup_authenticate_reason_length (const xcb_setup_authenticate_t *R /**< */);
5997
5998
5999/*****************************************************************************
6000 **
6001 ** xcb_generic_iterator_t xcb_setup_authenticate_reason_end
6002 **
6003 ** @param const xcb_setup_authenticate_t *R
6004 ** @returns xcb_generic_iterator_t
6005 **
6006 *****************************************************************************/
6007
6008xcb_generic_iterator_t
6009xcb_setup_authenticate_reason_end (const xcb_setup_authenticate_t *R /**< */);
6010
6011/**
6012 * Get the next element of the iterator
6013 * @param i Pointer to a xcb_setup_authenticate_iterator_t
6014 *
6015 * Get the next element in the iterator. The member rem is
6016 * decreased by one. The member data points to the next
6017 * element. The member index is increased by sizeof(xcb_setup_authenticate_t)
6018 */
6019
6020/*****************************************************************************
6021 **
6022 ** void xcb_setup_authenticate_next
6023 **
6024 ** @param xcb_setup_authenticate_iterator_t *i
6025 ** @returns void
6026 **
6027 *****************************************************************************/
6028
6029void
6030xcb_setup_authenticate_next (xcb_setup_authenticate_iterator_t *i /**< */);
6031
6032/**
6033 * Return the iterator pointing to the last element
6034 * @param i An xcb_setup_authenticate_iterator_t
6035 * @return The iterator pointing to the last element
6036 *
6037 * Set the current element in the iterator to the last element.
6038 * The member rem is set to 0. The member data points to the
6039 * last element.
6040 */
6041
6042/*****************************************************************************
6043 **
6044 ** xcb_generic_iterator_t xcb_setup_authenticate_end
6045 **
6046 ** @param xcb_setup_authenticate_iterator_t i
6047 ** @returns xcb_generic_iterator_t
6048 **
6049 *****************************************************************************/
6050
6051xcb_generic_iterator_t
6052xcb_setup_authenticate_end (xcb_setup_authenticate_iterator_t i /**< */);
6053
6054int
6055xcb_setup_sizeof (const void *_buffer /**< */);
6056
6057
6058/*****************************************************************************
6059 **
6060 ** char * xcb_setup_vendor
6061 **
6062 ** @param const xcb_setup_t *R
6063 ** @returns char *
6064 **
6065 *****************************************************************************/
6066
6067char *
6068xcb_setup_vendor (const xcb_setup_t *R /**< */);
6069
6070
6071/*****************************************************************************
6072 **
6073 ** int xcb_setup_vendor_length
6074 **
6075 ** @param const xcb_setup_t *R
6076 ** @returns int
6077 **
6078 *****************************************************************************/
6079
6080int
6081xcb_setup_vendor_length (const xcb_setup_t *R /**< */);
6082
6083
6084/*****************************************************************************
6085 **
6086 ** xcb_generic_iterator_t xcb_setup_vendor_end
6087 **
6088 ** @param const xcb_setup_t *R
6089 ** @returns xcb_generic_iterator_t
6090 **
6091 *****************************************************************************/
6092
6093xcb_generic_iterator_t
6094xcb_setup_vendor_end (const xcb_setup_t *R /**< */);
6095
6096
6097/*****************************************************************************
6098 **
6099 ** xcb_format_t * xcb_setup_pixmap_formats
6100 **
6101 ** @param const xcb_setup_t *R
6102 ** @returns xcb_format_t *
6103 **
6104 *****************************************************************************/
6105
6106xcb_format_t *
6107xcb_setup_pixmap_formats (const xcb_setup_t *R /**< */);
6108
6109
6110/*****************************************************************************
6111 **
6112 ** int xcb_setup_pixmap_formats_length
6113 **
6114 ** @param const xcb_setup_t *R
6115 ** @returns int
6116 **
6117 *****************************************************************************/
6118
6119int
6120xcb_setup_pixmap_formats_length (const xcb_setup_t *R /**< */);
6121
6122
6123/*****************************************************************************
6124 **
6125 ** xcb_format_iterator_t xcb_setup_pixmap_formats_iterator
6126 **
6127 ** @param const xcb_setup_t *R
6128 ** @returns xcb_format_iterator_t
6129 **
6130 *****************************************************************************/
6131
6132xcb_format_iterator_t
6133xcb_setup_pixmap_formats_iterator (const xcb_setup_t *R /**< */);
6134
6135
6136/*****************************************************************************
6137 **
6138 ** int xcb_setup_roots_length
6139 **
6140 ** @param const xcb_setup_t *R
6141 ** @returns int
6142 **
6143 *****************************************************************************/
6144
6145int
6146xcb_setup_roots_length (const xcb_setup_t *R /**< */);
6147
6148
6149/*****************************************************************************
6150 **
6151 ** xcb_screen_iterator_t xcb_setup_roots_iterator
6152 **
6153 ** @param const xcb_setup_t *R
6154 ** @returns xcb_screen_iterator_t
6155 **
6156 *****************************************************************************/
6157
6158xcb_screen_iterator_t
6159xcb_setup_roots_iterator (const xcb_setup_t *R /**< */);
6160
6161/**
6162 * Get the next element of the iterator
6163 * @param i Pointer to a xcb_setup_iterator_t
6164 *
6165 * Get the next element in the iterator. The member rem is
6166 * decreased by one. The member data points to the next
6167 * element. The member index is increased by sizeof(xcb_setup_t)
6168 */
6169
6170/*****************************************************************************
6171 **
6172 ** void xcb_setup_next
6173 **
6174 ** @param xcb_setup_iterator_t *i
6175 ** @returns void
6176 **
6177 *****************************************************************************/
6178
6179void
6180xcb_setup_next (xcb_setup_iterator_t *i /**< */);
6181
6182/**
6183 * Return the iterator pointing to the last element
6184 * @param i An xcb_setup_iterator_t
6185 * @return The iterator pointing to the last element
6186 *
6187 * Set the current element in the iterator to the last element.
6188 * The member rem is set to 0. The member data points to the
6189 * last element.
6190 */
6191
6192/*****************************************************************************
6193 **
6194 ** xcb_generic_iterator_t xcb_setup_end
6195 **
6196 ** @param xcb_setup_iterator_t i
6197 ** @returns xcb_generic_iterator_t
6198 **
6199 *****************************************************************************/
6200
6201xcb_generic_iterator_t
6202xcb_setup_end (xcb_setup_iterator_t i /**< */);
6203
6204/**
6205 * Get the next element of the iterator
6206 * @param i Pointer to a xcb_client_message_data_iterator_t
6207 *
6208 * Get the next element in the iterator. The member rem is
6209 * decreased by one. The member data points to the next
6210 * element. The member index is increased by sizeof(xcb_client_message_data_t)
6211 */
6212
6213/*****************************************************************************
6214 **
6215 ** void xcb_client_message_data_next
6216 **
6217 ** @param xcb_client_message_data_iterator_t *i
6218 ** @returns void
6219 **
6220 *****************************************************************************/
6221
6222void
6223xcb_client_message_data_next (xcb_client_message_data_iterator_t *i /**< */);
6224
6225/**
6226 * Return the iterator pointing to the last element
6227 * @param i An xcb_client_message_data_iterator_t
6228 * @return The iterator pointing to the last element
6229 *
6230 * Set the current element in the iterator to the last element.
6231 * The member rem is set to 0. The member data points to the
6232 * last element.
6233 */
6234
6235/*****************************************************************************
6236 **
6237 ** xcb_generic_iterator_t xcb_client_message_data_end
6238 **
6239 ** @param xcb_client_message_data_iterator_t i
6240 ** @returns xcb_generic_iterator_t
6241 **
6242 *****************************************************************************/
6243
6244xcb_generic_iterator_t
6245xcb_client_message_data_end (xcb_client_message_data_iterator_t i /**< */);
6246
6247int
6248xcb_create_window_sizeof (const void *_buffer /**< */);
6249
6250/**
6251 * @brief Creates a window
6252 *
6253 * @param c The connection
6254 * @param depth Specifies the new window's depth (TODO: what unit?).
6255 * \n
6256 * The special value `XCB_COPY_FROM_PARENT` means the depth is taken from the
6257 * \a parent window.
6258 * @param wid The ID with which you will refer to the new window, created by
6259 * `xcb_generate_id`.
6260 * @param parent The parent window of the new window.
6261 * @param x The X coordinate of the new window.
6262 * @param y The Y coordinate of the new window.
6263 * @param width The width of the new window.
6264 * @param height The height of the new window.
6265 * @param border_width TODO:
6266 * \n
6267 * Must be zero if the `class` is `InputOnly` or a `xcb_match_error_t` occurs.
6268 * @param _class A bitmask of #xcb_window_class_t values.
6269 * @param _class \n
6270 * @param visual Specifies the id for the new window's visual.
6271 * \n
6272 * The special value `XCB_COPY_FROM_PARENT` means the visual is taken from the
6273 * \a parent window.
6274 * @param value_mask A bitmask of #xcb_cw_t values.
6275 * @return A cookie
6276 *
6277 * Creates an unmapped window as child of the specified \a parent window. A
6278 * CreateNotify event will be generated. The new window is placed on top in the
6279 * stacking order with respect to siblings.
6280 *
6281 * The coordinate system has the X axis horizontal and the Y axis vertical with
6282 * the origin [0, 0] at the upper-left corner. Coordinates are integral, in terms
6283 * of pixels, and coincide with pixel centers. Each window and pixmap has its own
6284 * coordinate system. For a window, the origin is inside the border at the inside,
6285 * upper-left corner.
6286 *
6287 * The created window is not yet displayed (mapped), call `xcb_map_window` to
6288 * display it.
6289 *
6290 * The created window will initially use the same cursor as its parent.
6291 *
6292 * This form can be used only if the request will not cause
6293 * a reply to be generated. Any returned error will be
6294 * saved for handling by xcb_request_check().
6295 */
6296
6297/*****************************************************************************
6298 **
6299 ** xcb_void_cookie_t xcb_create_window_checked
6300 **
6301 ** @param xcb_connection_t *c
6302 ** @param uint8_t depth
6303 ** @param xcb_window_t wid
6304 ** @param xcb_window_t parent
6305 ** @param int16_t x
6306 ** @param int16_t y
6307 ** @param uint16_t width
6308 ** @param uint16_t height
6309 ** @param uint16_t border_width
6310 ** @param uint16_t _class
6311 ** @param xcb_visualid_t visual
6312 ** @param uint32_t value_mask
6313 ** @param const uint32_t *value_list
6314 ** @returns xcb_void_cookie_t
6315 **
6316 *****************************************************************************/
6317
6318xcb_void_cookie_t
6319xcb_create_window_checked (xcb_connection_t *c /**< */,
6320 uint8_t depth /**< */,
6321 xcb_window_t wid /**< */,
6322 xcb_window_t parent /**< */,
6323 int16_t x /**< */,
6324 int16_t y /**< */,
6325 uint16_t width /**< */,
6326 uint16_t height /**< */,
6327 uint16_t border_width /**< */,
6328 uint16_t _class /**< */,
6329 xcb_visualid_t visual /**< */,
6330 uint32_t value_mask /**< */,
6331 const uint32_t *value_list /**< */);
6332
6333/**
6334 * @brief Creates a window
6335 *
6336 * @param c The connection
6337 * @param depth Specifies the new window's depth (TODO: what unit?).
6338 * \n
6339 * The special value `XCB_COPY_FROM_PARENT` means the depth is taken from the
6340 * \a parent window.
6341 * @param wid The ID with which you will refer to the new window, created by
6342 * `xcb_generate_id`.
6343 * @param parent The parent window of the new window.
6344 * @param x The X coordinate of the new window.
6345 * @param y The Y coordinate of the new window.
6346 * @param width The width of the new window.
6347 * @param height The height of the new window.
6348 * @param border_width TODO:
6349 * \n
6350 * Must be zero if the `class` is `InputOnly` or a `xcb_match_error_t` occurs.
6351 * @param _class A bitmask of #xcb_window_class_t values.
6352 * @param _class \n
6353 * @param visual Specifies the id for the new window's visual.
6354 * \n
6355 * The special value `XCB_COPY_FROM_PARENT` means the visual is taken from the
6356 * \a parent window.
6357 * @param value_mask A bitmask of #xcb_cw_t values.
6358 * @return A cookie
6359 *
6360 * Creates an unmapped window as child of the specified \a parent window. A
6361 * CreateNotify event will be generated. The new window is placed on top in the
6362 * stacking order with respect to siblings.
6363 *
6364 * The coordinate system has the X axis horizontal and the Y axis vertical with
6365 * the origin [0, 0] at the upper-left corner. Coordinates are integral, in terms
6366 * of pixels, and coincide with pixel centers. Each window and pixmap has its own
6367 * coordinate system. For a window, the origin is inside the border at the inside,
6368 * upper-left corner.
6369 *
6370 * The created window is not yet displayed (mapped), call `xcb_map_window` to
6371 * display it.
6372 *
6373 * The created window will initially use the same cursor as its parent.
6374 *
6375 */
6376
6377/*****************************************************************************
6378 **
6379 ** xcb_void_cookie_t xcb_create_window
6380 **
6381 ** @param xcb_connection_t *c
6382 ** @param uint8_t depth
6383 ** @param xcb_window_t wid
6384 ** @param xcb_window_t parent
6385 ** @param int16_t x
6386 ** @param int16_t y
6387 ** @param uint16_t width
6388 ** @param uint16_t height
6389 ** @param uint16_t border_width
6390 ** @param uint16_t _class
6391 ** @param xcb_visualid_t visual
6392 ** @param uint32_t value_mask
6393 ** @param const uint32_t *value_list
6394 ** @returns xcb_void_cookie_t
6395 **
6396 *****************************************************************************/
6397
6398xcb_void_cookie_t
6399xcb_create_window (xcb_connection_t *c /**< */,
6400 uint8_t depth /**< */,
6401 xcb_window_t wid /**< */,
6402 xcb_window_t parent /**< */,
6403 int16_t x /**< */,
6404 int16_t y /**< */,
6405 uint16_t width /**< */,
6406 uint16_t height /**< */,
6407 uint16_t border_width /**< */,
6408 uint16_t _class /**< */,
6409 xcb_visualid_t visual /**< */,
6410 uint32_t value_mask /**< */,
6411 const uint32_t *value_list /**< */);
6412
6413int
6414xcb_change_window_attributes_sizeof (const void *_buffer /**< */);
6415
6416/**
6417 * @brief change window attributes
6418 *
6419 * @param c The connection
6420 * @param window The window to change.
6421 * @param value_mask A bitmask of #xcb_cw_t values.
6422 * @param value_mask \n
6423 * @param value_list Values for each of the attributes specified in the bitmask \a value_mask. The
6424 * order has to correspond to the order of possible \a value_mask bits. See the
6425 * example.
6426 * @return A cookie
6427 *
6428 * Changes the attributes specified by \a value_mask for the specified \a window.
6429 *
6430 * This form can be used only if the request will not cause
6431 * a reply to be generated. Any returned error will be
6432 * saved for handling by xcb_request_check().
6433 */
6434
6435/*****************************************************************************
6436 **
6437 ** xcb_void_cookie_t xcb_change_window_attributes_checked
6438 **
6439 ** @param xcb_connection_t *c
6440 ** @param xcb_window_t window
6441 ** @param uint32_t value_mask
6442 ** @param const uint32_t *value_list
6443 ** @returns xcb_void_cookie_t
6444 **
6445 *****************************************************************************/
6446
6447xcb_void_cookie_t
6448xcb_change_window_attributes_checked (xcb_connection_t *c /**< */,
6449 xcb_window_t window /**< */,
6450 uint32_t value_mask /**< */,
6451 const uint32_t *value_list /**< */);
6452
6453/**
6454 * @brief change window attributes
6455 *
6456 * @param c The connection
6457 * @param window The window to change.
6458 * @param value_mask A bitmask of #xcb_cw_t values.
6459 * @param value_mask \n
6460 * @param value_list Values for each of the attributes specified in the bitmask \a value_mask. The
6461 * order has to correspond to the order of possible \a value_mask bits. See the
6462 * example.
6463 * @return A cookie
6464 *
6465 * Changes the attributes specified by \a value_mask for the specified \a window.
6466 *
6467 */
6468
6469/*****************************************************************************
6470 **
6471 ** xcb_void_cookie_t xcb_change_window_attributes
6472 **
6473 ** @param xcb_connection_t *c
6474 ** @param xcb_window_t window
6475 ** @param uint32_t value_mask
6476 ** @param const uint32_t *value_list
6477 ** @returns xcb_void_cookie_t
6478 **
6479 *****************************************************************************/
6480
6481xcb_void_cookie_t
6482xcb_change_window_attributes (xcb_connection_t *c /**< */,
6483 xcb_window_t window /**< */,
6484 uint32_t value_mask /**< */,
6485 const uint32_t *value_list /**< */);
6486
6487/**
6488 * @brief Gets window attributes
6489 *
6490 * @param c The connection
6491 * @param window The window to get the attributes from.
6492 * @return A cookie
6493 *
6494 * Gets the current attributes for the specified \a window.
6495 *
6496 */
6497
6498/*****************************************************************************
6499 **
6500 ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes
6501 **
6502 ** @param xcb_connection_t *c
6503 ** @param xcb_window_t window
6504 ** @returns xcb_get_window_attributes_cookie_t
6505 **
6506 *****************************************************************************/
6507
6508xcb_get_window_attributes_cookie_t
6509xcb_get_window_attributes (xcb_connection_t *c /**< */,
6510 xcb_window_t window /**< */);
6511
6512/**
6513 * @brief Gets window attributes
6514 *
6515 * @param c The connection
6516 * @param window The window to get the attributes from.
6517 * @return A cookie
6518 *
6519 * Gets the current attributes for the specified \a window.
6520 *
6521 * This form can be used only if the request will cause
6522 * a reply to be generated. Any returned error will be
6523 * placed in the event queue.
6524 */
6525
6526/*****************************************************************************
6527 **
6528 ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes_unchecked
6529 **
6530 ** @param xcb_connection_t *c
6531 ** @param xcb_window_t window
6532 ** @returns xcb_get_window_attributes_cookie_t
6533 **
6534 *****************************************************************************/
6535
6536xcb_get_window_attributes_cookie_t
6537xcb_get_window_attributes_unchecked (xcb_connection_t *c /**< */,
6538 xcb_window_t window /**< */);
6539
6540/**
6541 * Return the reply
6542 * @param c The connection
6543 * @param cookie The cookie
6544 * @param e The xcb_generic_error_t supplied
6545 *
6546 * Returns the reply of the request asked by
6547 *
6548 * The parameter @p e supplied to this function must be NULL if
6549 * xcb_get_window_attributes_unchecked(). is used.
6550 * Otherwise, it stores the error if any.
6551 *
6552 * The returned value must be freed by the caller using free().
6553 */
6554
6555/*****************************************************************************
6556 **
6557 ** xcb_get_window_attributes_reply_t * xcb_get_window_attributes_reply
6558 **
6559 ** @param xcb_connection_t *c
6560 ** @param xcb_get_window_attributes_cookie_t cookie
6561 ** @param xcb_generic_error_t **e
6562 ** @returns xcb_get_window_attributes_reply_t *
6563 **
6564 *****************************************************************************/
6565
6566xcb_get_window_attributes_reply_t *
6567xcb_get_window_attributes_reply (xcb_connection_t *c /**< */,
6568 xcb_get_window_attributes_cookie_t cookie /**< */,
6569 xcb_generic_error_t **e /**< */);
6570
6571/**
6572 * @brief Destroys a window
6573 *
6574 * @param c The connection
6575 * @param window The window to destroy.
6576 * @return A cookie
6577 *
6578 * Destroys the specified window and all of its subwindows. A DestroyNotify event
6579 * is generated for each destroyed window (a DestroyNotify event is first generated
6580 * for any given window's inferiors). If the window was mapped, it will be
6581 * automatically unmapped before destroying.
6582 *
6583 * Calling DestroyWindow on the root window will do nothing.
6584 *
6585 * This form can be used only if the request will not cause
6586 * a reply to be generated. Any returned error will be
6587 * saved for handling by xcb_request_check().
6588 */
6589
6590/*****************************************************************************
6591 **
6592 ** xcb_void_cookie_t xcb_destroy_window_checked
6593 **
6594 ** @param xcb_connection_t *c
6595 ** @param xcb_window_t window
6596 ** @returns xcb_void_cookie_t
6597 **
6598 *****************************************************************************/
6599
6600xcb_void_cookie_t
6601xcb_destroy_window_checked (xcb_connection_t *c /**< */,
6602 xcb_window_t window /**< */);
6603
6604/**
6605 * @brief Destroys a window
6606 *
6607 * @param c The connection
6608 * @param window The window to destroy.
6609 * @return A cookie
6610 *
6611 * Destroys the specified window and all of its subwindows. A DestroyNotify event
6612 * is generated for each destroyed window (a DestroyNotify event is first generated
6613 * for any given window's inferiors). If the window was mapped, it will be
6614 * automatically unmapped before destroying.
6615 *
6616 * Calling DestroyWindow on the root window will do nothing.
6617 *
6618 */
6619
6620/*****************************************************************************
6621 **
6622 ** xcb_void_cookie_t xcb_destroy_window
6623 **
6624 ** @param xcb_connection_t *c
6625 ** @param xcb_window_t window
6626 ** @returns xcb_void_cookie_t
6627 **
6628 *****************************************************************************/
6629
6630xcb_void_cookie_t
6631xcb_destroy_window (xcb_connection_t *c /**< */,
6632 xcb_window_t window /**< */);
6633
6634/**
6635 *
6636 * @param c The connection
6637 * @return A cookie
6638 *
6639 * Delivers a request to the X server.
6640 *
6641 * This form can be used only if the request will not cause
6642 * a reply to be generated. Any returned error will be
6643 * saved for handling by xcb_request_check().
6644 */
6645
6646/*****************************************************************************
6647 **
6648 ** xcb_void_cookie_t xcb_destroy_subwindows_checked
6649 **
6650 ** @param xcb_connection_t *c
6651 ** @param xcb_window_t window
6652 ** @returns xcb_void_cookie_t
6653 **
6654 *****************************************************************************/
6655
6656xcb_void_cookie_t
6657xcb_destroy_subwindows_checked (xcb_connection_t *c /**< */,
6658 xcb_window_t window /**< */);
6659
6660/**
6661 *
6662 * @param c The connection
6663 * @return A cookie
6664 *
6665 * Delivers a request to the X server.
6666 *
6667 */
6668
6669/*****************************************************************************
6670 **
6671 ** xcb_void_cookie_t xcb_destroy_subwindows
6672 **
6673 ** @param xcb_connection_t *c
6674 ** @param xcb_window_t window
6675 ** @returns xcb_void_cookie_t
6676 **
6677 *****************************************************************************/
6678
6679xcb_void_cookie_t
6680xcb_destroy_subwindows (xcb_connection_t *c /**< */,
6681 xcb_window_t window /**< */);
6682
6683/**
6684 * @brief Changes a client's save set
6685 *
6686 * @param c The connection
6687 * @param mode A bitmask of #xcb_set_mode_t values.
6688 * @param mode Insert to add the specified window to the save set or Delete to delete it from the save set.
6689 * @param window The window to add or delete to/from your save set.
6690 * @return A cookie
6691 *
6692 * TODO: explain what the save set is for.
6693 *
6694 * This function either adds or removes the specified window to the client's (your
6695 * application's) save set.
6696 *
6697 * This form can be used only if the request will not cause
6698 * a reply to be generated. Any returned error will be
6699 * saved for handling by xcb_request_check().
6700 */
6701
6702/*****************************************************************************
6703 **
6704 ** xcb_void_cookie_t xcb_change_save_set_checked
6705 **
6706 ** @param xcb_connection_t *c
6707 ** @param uint8_t mode
6708 ** @param xcb_window_t window
6709 ** @returns xcb_void_cookie_t
6710 **
6711 *****************************************************************************/
6712
6713xcb_void_cookie_t
6714xcb_change_save_set_checked (xcb_connection_t *c /**< */,
6715 uint8_t mode /**< */,
6716 xcb_window_t window /**< */);
6717
6718/**
6719 * @brief Changes a client's save set
6720 *
6721 * @param c The connection
6722 * @param mode A bitmask of #xcb_set_mode_t values.
6723 * @param mode Insert to add the specified window to the save set or Delete to delete it from the save set.
6724 * @param window The window to add or delete to/from your save set.
6725 * @return A cookie
6726 *
6727 * TODO: explain what the save set is for.
6728 *
6729 * This function either adds or removes the specified window to the client's (your
6730 * application's) save set.
6731 *
6732 */
6733
6734/*****************************************************************************
6735 **
6736 ** xcb_void_cookie_t xcb_change_save_set
6737 **
6738 ** @param xcb_connection_t *c
6739 ** @param uint8_t mode
6740 ** @param xcb_window_t window
6741 ** @returns xcb_void_cookie_t
6742 **
6743 *****************************************************************************/
6744
6745xcb_void_cookie_t
6746xcb_change_save_set (xcb_connection_t *c /**< */,
6747 uint8_t mode /**< */,
6748 xcb_window_t window /**< */);
6749
6750/**
6751 * @brief Reparents a window
6752 *
6753 * @param c The connection
6754 * @param window The window to reparent.
6755 * @param parent The new parent of the window.
6756 * @param x The X position of the window within its new parent.
6757 * @param y The Y position of the window within its new parent.
6758 * @return A cookie
6759 *
6760 * Makes the specified window a child of the specified parent window. If the
6761 * window is mapped, it will automatically be unmapped before reparenting and
6762 * re-mapped after reparenting. The window is placed in the stacking order on top
6763 * with respect to sibling windows.
6764 *
6765 * After reparenting, a ReparentNotify event is generated.
6766 *
6767 * This form can be used only if the request will not cause
6768 * a reply to be generated. Any returned error will be
6769 * saved for handling by xcb_request_check().
6770 */
6771
6772/*****************************************************************************
6773 **
6774 ** xcb_void_cookie_t xcb_reparent_window_checked
6775 **
6776 ** @param xcb_connection_t *c
6777 ** @param xcb_window_t window
6778 ** @param xcb_window_t parent
6779 ** @param int16_t x
6780 ** @param int16_t y
6781 ** @returns xcb_void_cookie_t
6782 **
6783 *****************************************************************************/
6784
6785xcb_void_cookie_t
6786xcb_reparent_window_checked (xcb_connection_t *c /**< */,
6787 xcb_window_t window /**< */,
6788 xcb_window_t parent /**< */,
6789 int16_t x /**< */,
6790 int16_t y /**< */);
6791
6792/**
6793 * @brief Reparents a window
6794 *
6795 * @param c The connection
6796 * @param window The window to reparent.
6797 * @param parent The new parent of the window.
6798 * @param x The X position of the window within its new parent.
6799 * @param y The Y position of the window within its new parent.
6800 * @return A cookie
6801 *
6802 * Makes the specified window a child of the specified parent window. If the
6803 * window is mapped, it will automatically be unmapped before reparenting and
6804 * re-mapped after reparenting. The window is placed in the stacking order on top
6805 * with respect to sibling windows.
6806 *
6807 * After reparenting, a ReparentNotify event is generated.
6808 *
6809 */
6810
6811/*****************************************************************************
6812 **
6813 ** xcb_void_cookie_t xcb_reparent_window
6814 **
6815 ** @param xcb_connection_t *c
6816 ** @param xcb_window_t window
6817 ** @param xcb_window_t parent
6818 ** @param int16_t x
6819 ** @param int16_t y
6820 ** @returns xcb_void_cookie_t
6821 **
6822 *****************************************************************************/
6823
6824xcb_void_cookie_t
6825xcb_reparent_window (xcb_connection_t *c /**< */,
6826 xcb_window_t window /**< */,
6827 xcb_window_t parent /**< */,
6828 int16_t x /**< */,
6829 int16_t y /**< */);
6830
6831/**
6832 * @brief Makes a window visible
6833 *
6834 * @param c The connection
6835 * @param window The window to make visible.
6836 * @return A cookie
6837 *
6838 * Maps the specified window. This means making the window visible (as long as its
6839 * parent is visible).
6840 *
6841 * This MapWindow request will be translated to a MapRequest request if a window
6842 * manager is running. The window manager then decides to either map the window or
6843 * not. Set the override-redirect window attribute to true if you want to bypass
6844 * this mechanism.
6845 *
6846 * If the window manager decides to map the window (or if no window manager is
6847 * running), a MapNotify event is generated.
6848 *
6849 * If the window becomes viewable and no earlier contents for it are remembered,
6850 * the X server tiles the window with its background. If the window's background
6851 * is undefined, the existing screen contents are not altered, and the X server
6852 * generates zero or more Expose events.
6853 *
6854 * If the window type is InputOutput, an Expose event will be generated when the
6855 * window becomes visible. The normal response to an Expose event should be to
6856 * repaint the window.
6857 *
6858 * This form can be used only if the request will not cause
6859 * a reply to be generated. Any returned error will be
6860 * saved for handling by xcb_request_check().
6861 */
6862
6863/*****************************************************************************
6864 **
6865 ** xcb_void_cookie_t xcb_map_window_checked
6866 **
6867 ** @param xcb_connection_t *c
6868 ** @param xcb_window_t window
6869 ** @returns xcb_void_cookie_t
6870 **
6871 *****************************************************************************/
6872
6873xcb_void_cookie_t
6874xcb_map_window_checked (xcb_connection_t *c /**< */,
6875 xcb_window_t window /**< */);
6876
6877/**
6878 * @brief Makes a window visible
6879 *
6880 * @param c The connection
6881 * @param window The window to make visible.
6882 * @return A cookie
6883 *
6884 * Maps the specified window. This means making the window visible (as long as its
6885 * parent is visible).
6886 *
6887 * This MapWindow request will be translated to a MapRequest request if a window
6888 * manager is running. The window manager then decides to either map the window or
6889 * not. Set the override-redirect window attribute to true if you want to bypass
6890 * this mechanism.
6891 *
6892 * If the window manager decides to map the window (or if no window manager is
6893 * running), a MapNotify event is generated.
6894 *
6895 * If the window becomes viewable and no earlier contents for it are remembered,
6896 * the X server tiles the window with its background. If the window's background
6897 * is undefined, the existing screen contents are not altered, and the X server
6898 * generates zero or more Expose events.
6899 *
6900 * If the window type is InputOutput, an Expose event will be generated when the
6901 * window becomes visible. The normal response to an Expose event should be to
6902 * repaint the window.
6903 *
6904 */
6905
6906/*****************************************************************************
6907 **
6908 ** xcb_void_cookie_t xcb_map_window
6909 **
6910 ** @param xcb_connection_t *c
6911 ** @param xcb_window_t window
6912 ** @returns xcb_void_cookie_t
6913 **
6914 *****************************************************************************/
6915
6916xcb_void_cookie_t
6917xcb_map_window (xcb_connection_t *c /**< */,
6918 xcb_window_t window /**< */);
6919
6920/**
6921 *
6922 * @param c The connection
6923 * @return A cookie
6924 *
6925 * Delivers a request to the X server.
6926 *
6927 * This form can be used only if the request will not cause
6928 * a reply to be generated. Any returned error will be
6929 * saved for handling by xcb_request_check().
6930 */
6931
6932/*****************************************************************************
6933 **
6934 ** xcb_void_cookie_t xcb_map_subwindows_checked
6935 **
6936 ** @param xcb_connection_t *c
6937 ** @param xcb_window_t window
6938 ** @returns xcb_void_cookie_t
6939 **
6940 *****************************************************************************/
6941
6942xcb_void_cookie_t
6943xcb_map_subwindows_checked (xcb_connection_t *c /**< */,
6944 xcb_window_t window /**< */);
6945
6946/**
6947 *
6948 * @param c The connection
6949 * @return A cookie
6950 *
6951 * Delivers a request to the X server.
6952 *
6953 */
6954
6955/*****************************************************************************
6956 **
6957 ** xcb_void_cookie_t xcb_map_subwindows
6958 **
6959 ** @param xcb_connection_t *c
6960 ** @param xcb_window_t window
6961 ** @returns xcb_void_cookie_t
6962 **
6963 *****************************************************************************/
6964
6965xcb_void_cookie_t
6966xcb_map_subwindows (xcb_connection_t *c /**< */,
6967 xcb_window_t window /**< */);
6968
6969/**
6970 * @brief Makes a window invisible
6971 *
6972 * @param c The connection
6973 * @param window The window to make invisible.
6974 * @return A cookie
6975 *
6976 * Unmaps the specified window. This means making the window invisible (and all
6977 * its child windows).
6978 *
6979 * Unmapping a window leads to the `UnmapNotify` event being generated. Also,
6980 * `Expose` events are generated for formerly obscured windows.
6981 *
6982 * This form can be used only if the request will not cause
6983 * a reply to be generated. Any returned error will be
6984 * saved for handling by xcb_request_check().
6985 */
6986
6987/*****************************************************************************
6988 **
6989 ** xcb_void_cookie_t xcb_unmap_window_checked
6990 **
6991 ** @param xcb_connection_t *c
6992 ** @param xcb_window_t window
6993 ** @returns xcb_void_cookie_t
6994 **
6995 *****************************************************************************/
6996
6997xcb_void_cookie_t
6998xcb_unmap_window_checked (xcb_connection_t *c /**< */,
6999 xcb_window_t window /**< */);
7000
7001/**
7002 * @brief Makes a window invisible
7003 *
7004 * @param c The connection
7005 * @param window The window to make invisible.
7006 * @return A cookie
7007 *
7008 * Unmaps the specified window. This means making the window invisible (and all
7009 * its child windows).
7010 *
7011 * Unmapping a window leads to the `UnmapNotify` event being generated. Also,
7012 * `Expose` events are generated for formerly obscured windows.
7013 *
7014 */
7015
7016/*****************************************************************************
7017 **
7018 ** xcb_void_cookie_t xcb_unmap_window
7019 **
7020 ** @param xcb_connection_t *c
7021 ** @param xcb_window_t window
7022 ** @returns xcb_void_cookie_t
7023 **
7024 *****************************************************************************/
7025
7026xcb_void_cookie_t
7027xcb_unmap_window (xcb_connection_t *c /**< */,
7028 xcb_window_t window /**< */);
7029
7030/**
7031 *
7032 * @param c The connection
7033 * @return A cookie
7034 *
7035 * Delivers a request to the X server.
7036 *
7037 * This form can be used only if the request will not cause
7038 * a reply to be generated. Any returned error will be
7039 * saved for handling by xcb_request_check().
7040 */
7041
7042/*****************************************************************************
7043 **
7044 ** xcb_void_cookie_t xcb_unmap_subwindows_checked
7045 **
7046 ** @param xcb_connection_t *c
7047 ** @param xcb_window_t window
7048 ** @returns xcb_void_cookie_t
7049 **
7050 *****************************************************************************/
7051
7052xcb_void_cookie_t
7053xcb_unmap_subwindows_checked (xcb_connection_t *c /**< */,
7054 xcb_window_t window /**< */);
7055
7056/**
7057 *
7058 * @param c The connection
7059 * @return A cookie
7060 *
7061 * Delivers a request to the X server.
7062 *
7063 */
7064
7065/*****************************************************************************
7066 **
7067 ** xcb_void_cookie_t xcb_unmap_subwindows
7068 **
7069 ** @param xcb_connection_t *c
7070 ** @param xcb_window_t window
7071 ** @returns xcb_void_cookie_t
7072 **
7073 *****************************************************************************/
7074
7075xcb_void_cookie_t
7076xcb_unmap_subwindows (xcb_connection_t *c /**< */,
7077 xcb_window_t window /**< */);
7078
7079int
7080xcb_configure_window_sizeof (const void *_buffer /**< */);
7081
7082/**
7083 * @brief Configures window attributes
7084 *
7085 * @param c The connection
7086 * @param window The window to configure.
7087 * @param value_mask Bitmask of attributes to change.
7088 * @param value_list New values, corresponding to the attributes in value_mask. The order has to
7089 * correspond to the order of possible \a value_mask bits. See the example.
7090 * @return A cookie
7091 *
7092 * Configures a window's size, position, border width and stacking order.
7093 *
7094 * This form can be used only if the request will not cause
7095 * a reply to be generated. Any returned error will be
7096 * saved for handling by xcb_request_check().
7097 */
7098
7099/*****************************************************************************
7100 **
7101 ** xcb_void_cookie_t xcb_configure_window_checked
7102 **
7103 ** @param xcb_connection_t *c
7104 ** @param xcb_window_t window
7105 ** @param uint16_t value_mask
7106 ** @param const uint32_t *value_list
7107 ** @returns xcb_void_cookie_t
7108 **
7109 *****************************************************************************/
7110
7111xcb_void_cookie_t
7112xcb_configure_window_checked (xcb_connection_t *c /**< */,
7113 xcb_window_t window /**< */,
7114 uint16_t value_mask /**< */,
7115 const uint32_t *value_list /**< */);
7116
7117/**
7118 * @brief Configures window attributes
7119 *
7120 * @param c The connection
7121 * @param window The window to configure.
7122 * @param value_mask Bitmask of attributes to change.
7123 * @param value_list New values, corresponding to the attributes in value_mask. The order has to
7124 * correspond to the order of possible \a value_mask bits. See the example.
7125 * @return A cookie
7126 *
7127 * Configures a window's size, position, border width and stacking order.
7128 *
7129 */
7130
7131/*****************************************************************************
7132 **
7133 ** xcb_void_cookie_t xcb_configure_window
7134 **
7135 ** @param xcb_connection_t *c
7136 ** @param xcb_window_t window
7137 ** @param uint16_t value_mask
7138 ** @param const uint32_t *value_list
7139 ** @returns xcb_void_cookie_t
7140 **
7141 *****************************************************************************/
7142
7143xcb_void_cookie_t
7144xcb_configure_window (xcb_connection_t *c /**< */,
7145 xcb_window_t window /**< */,
7146 uint16_t value_mask /**< */,
7147 const uint32_t *value_list /**< */);
7148
7149/**
7150 * @brief Change window stacking order
7151 *
7152 * @param c The connection
7153 * @param direction A bitmask of #xcb_circulate_t values.
7154 * @param direction \n
7155 * @param window The window to raise/lower (depending on \a direction).
7156 * @return A cookie
7157 *
7158 * If \a direction is `XCB_CIRCULATE_RAISE_LOWEST`, the lowest mapped child (if
7159 * any) will be raised to the top of the stack.
7160 *
7161 * If \a direction is `XCB_CIRCULATE_LOWER_HIGHEST`, the highest mapped child will
7162 * be lowered to the bottom of the stack.
7163 *
7164 * This form can be used only if the request will not cause
7165 * a reply to be generated. Any returned error will be
7166 * saved for handling by xcb_request_check().
7167 */
7168
7169/*****************************************************************************
7170 **
7171 ** xcb_void_cookie_t xcb_circulate_window_checked
7172 **
7173 ** @param xcb_connection_t *c
7174 ** @param uint8_t direction
7175 ** @param xcb_window_t window
7176 ** @returns xcb_void_cookie_t
7177 **
7178 *****************************************************************************/
7179
7180xcb_void_cookie_t
7181xcb_circulate_window_checked (xcb_connection_t *c /**< */,
7182 uint8_t direction /**< */,
7183 xcb_window_t window /**< */);
7184
7185/**
7186 * @brief Change window stacking order
7187 *
7188 * @param c The connection
7189 * @param direction A bitmask of #xcb_circulate_t values.
7190 * @param direction \n
7191 * @param window The window to raise/lower (depending on \a direction).
7192 * @return A cookie
7193 *
7194 * If \a direction is `XCB_CIRCULATE_RAISE_LOWEST`, the lowest mapped child (if
7195 * any) will be raised to the top of the stack.
7196 *
7197 * If \a direction is `XCB_CIRCULATE_LOWER_HIGHEST`, the highest mapped child will
7198 * be lowered to the bottom of the stack.
7199 *
7200 */
7201
7202/*****************************************************************************
7203 **
7204 ** xcb_void_cookie_t xcb_circulate_window
7205 **
7206 ** @param xcb_connection_t *c
7207 ** @param uint8_t direction
7208 ** @param xcb_window_t window
7209 ** @returns xcb_void_cookie_t
7210 **
7211 *****************************************************************************/
7212
7213xcb_void_cookie_t
7214xcb_circulate_window (xcb_connection_t *c /**< */,
7215 uint8_t direction /**< */,
7216 xcb_window_t window /**< */);
7217
7218/**
7219 * @brief Get current window geometry
7220 *
7221 * @param c The connection
7222 * @param drawable The drawable (`Window` or `Pixmap`) of which the geometry will be received.
7223 * @return A cookie
7224 *
7225 * Gets the current geometry of the specified drawable (either `Window` or `Pixmap`).
7226 *
7227 */
7228
7229/*****************************************************************************
7230 **
7231 ** xcb_get_geometry_cookie_t xcb_get_geometry
7232 **
7233 ** @param xcb_connection_t *c
7234 ** @param xcb_drawable_t drawable
7235 ** @returns xcb_get_geometry_cookie_t
7236 **
7237 *****************************************************************************/
7238
7239xcb_get_geometry_cookie_t
7240xcb_get_geometry (xcb_connection_t *c /**< */,
7241 xcb_drawable_t drawable /**< */);
7242
7243/**
7244 * @brief Get current window geometry
7245 *
7246 * @param c The connection
7247 * @param drawable The drawable (`Window` or `Pixmap`) of which the geometry will be received.
7248 * @return A cookie
7249 *
7250 * Gets the current geometry of the specified drawable (either `Window` or `Pixmap`).
7251 *
7252 * This form can be used only if the request will cause
7253 * a reply to be generated. Any returned error will be
7254 * placed in the event queue.
7255 */
7256
7257/*****************************************************************************
7258 **
7259 ** xcb_get_geometry_cookie_t xcb_get_geometry_unchecked
7260 **
7261 ** @param xcb_connection_t *c
7262 ** @param xcb_drawable_t drawable
7263 ** @returns xcb_get_geometry_cookie_t
7264 **
7265 *****************************************************************************/
7266
7267xcb_get_geometry_cookie_t
7268xcb_get_geometry_unchecked (xcb_connection_t *c /**< */,
7269 xcb_drawable_t drawable /**< */);
7270
7271/**
7272 * Return the reply
7273 * @param c The connection
7274 * @param cookie The cookie
7275 * @param e The xcb_generic_error_t supplied
7276 *
7277 * Returns the reply of the request asked by
7278 *
7279 * The parameter @p e supplied to this function must be NULL if
7280 * xcb_get_geometry_unchecked(). is used.
7281 * Otherwise, it stores the error if any.
7282 *
7283 * The returned value must be freed by the caller using free().
7284 */
7285
7286/*****************************************************************************
7287 **
7288 ** xcb_get_geometry_reply_t * xcb_get_geometry_reply
7289 **
7290 ** @param xcb_connection_t *c
7291 ** @param xcb_get_geometry_cookie_t cookie
7292 ** @param xcb_generic_error_t **e
7293 ** @returns xcb_get_geometry_reply_t *
7294 **
7295 *****************************************************************************/
7296
7297xcb_get_geometry_reply_t *
7298xcb_get_geometry_reply (xcb_connection_t *c /**< */,
7299 xcb_get_geometry_cookie_t cookie /**< */,
7300 xcb_generic_error_t **e /**< */);
7301
7302int
7303xcb_query_tree_sizeof (const void *_buffer /**< */);
7304
7305/**
7306 * @brief query the window tree
7307 *
7308 * @param c The connection
7309 * @param window The \a window to query.
7310 * @return A cookie
7311 *
7312 * Gets the root window ID, parent window ID and list of children windows for the
7313 * specified \a window. The children are listed in bottom-to-top stacking order.
7314 *
7315 */
7316
7317/*****************************************************************************
7318 **
7319 ** xcb_query_tree_cookie_t xcb_query_tree
7320 **
7321 ** @param xcb_connection_t *c
7322 ** @param xcb_window_t window
7323 ** @returns xcb_query_tree_cookie_t
7324 **
7325 *****************************************************************************/
7326
7327xcb_query_tree_cookie_t
7328xcb_query_tree (xcb_connection_t *c /**< */,
7329 xcb_window_t window /**< */);
7330
7331/**
7332 * @brief query the window tree
7333 *
7334 * @param c The connection
7335 * @param window The \a window to query.
7336 * @return A cookie
7337 *
7338 * Gets the root window ID, parent window ID and list of children windows for the
7339 * specified \a window. The children are listed in bottom-to-top stacking order.
7340 *
7341 * This form can be used only if the request will cause
7342 * a reply to be generated. Any returned error will be
7343 * placed in the event queue.
7344 */
7345
7346/*****************************************************************************
7347 **
7348 ** xcb_query_tree_cookie_t xcb_query_tree_unchecked
7349 **
7350 ** @param xcb_connection_t *c
7351 ** @param xcb_window_t window
7352 ** @returns xcb_query_tree_cookie_t
7353 **
7354 *****************************************************************************/
7355
7356xcb_query_tree_cookie_t
7357xcb_query_tree_unchecked (xcb_connection_t *c /**< */,
7358 xcb_window_t window /**< */);
7359
7360
7361/*****************************************************************************
7362 **
7363 ** xcb_window_t * xcb_query_tree_children
7364 **
7365 ** @param const xcb_query_tree_reply_t *R
7366 ** @returns xcb_window_t *
7367 **
7368 *****************************************************************************/
7369
7370xcb_window_t *
7371xcb_query_tree_children (const xcb_query_tree_reply_t *R /**< */);
7372
7373
7374/*****************************************************************************
7375 **
7376 ** int xcb_query_tree_children_length
7377 **
7378 ** @param const xcb_query_tree_reply_t *R
7379 ** @returns int
7380 **
7381 *****************************************************************************/
7382
7383int
7384xcb_query_tree_children_length (const xcb_query_tree_reply_t *R /**< */);
7385
7386
7387/*****************************************************************************
7388 **
7389 ** xcb_generic_iterator_t xcb_query_tree_children_end
7390 **
7391 ** @param const xcb_query_tree_reply_t *R
7392 ** @returns xcb_generic_iterator_t
7393 **
7394 *****************************************************************************/
7395
7396xcb_generic_iterator_t
7397xcb_query_tree_children_end (const xcb_query_tree_reply_t *R /**< */);
7398
7399/**
7400 * Return the reply
7401 * @param c The connection
7402 * @param cookie The cookie
7403 * @param e The xcb_generic_error_t supplied
7404 *
7405 * Returns the reply of the request asked by
7406 *
7407 * The parameter @p e supplied to this function must be NULL if
7408 * xcb_query_tree_unchecked(). is used.
7409 * Otherwise, it stores the error if any.
7410 *
7411 * The returned value must be freed by the caller using free().
7412 */
7413
7414/*****************************************************************************
7415 **
7416 ** xcb_query_tree_reply_t * xcb_query_tree_reply
7417 **
7418 ** @param xcb_connection_t *c
7419 ** @param xcb_query_tree_cookie_t cookie
7420 ** @param xcb_generic_error_t **e
7421 ** @returns xcb_query_tree_reply_t *
7422 **
7423 *****************************************************************************/
7424
7425xcb_query_tree_reply_t *
7426xcb_query_tree_reply (xcb_connection_t *c /**< */,
7427 xcb_query_tree_cookie_t cookie /**< */,
7428 xcb_generic_error_t **e /**< */);
7429
7430int
7431xcb_intern_atom_sizeof (const void *_buffer /**< */);
7432
7433/**
7434 * @brief Get atom identifier by name
7435 *
7436 * @param c The connection
7437 * @param only_if_exists Return a valid atom id only if the atom already exists.
7438 * @param name_len The length of the following \a name.
7439 * @param name The name of the atom.
7440 * @return A cookie
7441 *
7442 * Retrieves the identifier (xcb_atom_t TODO) for the atom with the specified
7443 * name. Atoms are used in protocols like EWMH, for example to store window titles
7444 * (`_NET_WM_NAME` atom) as property of a window.
7445 *
7446 * If \a only_if_exists is 0, the atom will be created if it does not already exist.
7447 * If \a only_if_exists is 1, `XCB_ATOM_NONE` will be returned if the atom does
7448 * not yet exist.
7449 *
7450 */
7451
7452/*****************************************************************************
7453 **
7454 ** xcb_intern_atom_cookie_t xcb_intern_atom
7455 **
7456 ** @param xcb_connection_t *c
7457 ** @param uint8_t only_if_exists
7458 ** @param uint16_t name_len
7459 ** @param const char *name
7460 ** @returns xcb_intern_atom_cookie_t
7461 **
7462 *****************************************************************************/
7463
7464xcb_intern_atom_cookie_t
7465xcb_intern_atom (xcb_connection_t *c /**< */,
7466 uint8_t only_if_exists /**< */,
7467 uint16_t name_len /**< */,
7468 const char *name /**< */);
7469
7470/**
7471 * @brief Get atom identifier by name
7472 *
7473 * @param c The connection
7474 * @param only_if_exists Return a valid atom id only if the atom already exists.
7475 * @param name_len The length of the following \a name.
7476 * @param name The name of the atom.
7477 * @return A cookie
7478 *
7479 * Retrieves the identifier (xcb_atom_t TODO) for the atom with the specified
7480 * name. Atoms are used in protocols like EWMH, for example to store window titles
7481 * (`_NET_WM_NAME` atom) as property of a window.
7482 *
7483 * If \a only_if_exists is 0, the atom will be created if it does not already exist.
7484 * If \a only_if_exists is 1, `XCB_ATOM_NONE` will be returned if the atom does
7485 * not yet exist.
7486 *
7487 * This form can be used only if the request will cause
7488 * a reply to be generated. Any returned error will be
7489 * placed in the event queue.
7490 */
7491
7492/*****************************************************************************
7493 **
7494 ** xcb_intern_atom_cookie_t xcb_intern_atom_unchecked
7495 **
7496 ** @param xcb_connection_t *c
7497 ** @param uint8_t only_if_exists
7498 ** @param uint16_t name_len
7499 ** @param const char *name
7500 ** @returns xcb_intern_atom_cookie_t
7501 **
7502 *****************************************************************************/
7503
7504xcb_intern_atom_cookie_t
7505xcb_intern_atom_unchecked (xcb_connection_t *c /**< */,
7506 uint8_t only_if_exists /**< */,
7507 uint16_t name_len /**< */,
7508 const char *name /**< */);
7509
7510/**
7511 * Return the reply
7512 * @param c The connection
7513 * @param cookie The cookie
7514 * @param e The xcb_generic_error_t supplied
7515 *
7516 * Returns the reply of the request asked by
7517 *
7518 * The parameter @p e supplied to this function must be NULL if
7519 * xcb_intern_atom_unchecked(). is used.
7520 * Otherwise, it stores the error if any.
7521 *
7522 * The returned value must be freed by the caller using free().
7523 */
7524
7525/*****************************************************************************
7526 **
7527 ** xcb_intern_atom_reply_t * xcb_intern_atom_reply
7528 **
7529 ** @param xcb_connection_t *c
7530 ** @param xcb_intern_atom_cookie_t cookie
7531 ** @param xcb_generic_error_t **e
7532 ** @returns xcb_intern_atom_reply_t *
7533 **
7534 *****************************************************************************/
7535
7536xcb_intern_atom_reply_t *
7537xcb_intern_atom_reply (xcb_connection_t *c /**< */,
7538 xcb_intern_atom_cookie_t cookie /**< */,
7539 xcb_generic_error_t **e /**< */);
7540
7541int
7542xcb_get_atom_name_sizeof (const void *_buffer /**< */);
7543
7544/**
7545 *
7546 * @param c The connection
7547 * @return A cookie
7548 *
7549 * Delivers a request to the X server.
7550 *
7551 */
7552
7553/*****************************************************************************
7554 **
7555 ** xcb_get_atom_name_cookie_t xcb_get_atom_name
7556 **
7557 ** @param xcb_connection_t *c
7558 ** @param xcb_atom_t atom
7559 ** @returns xcb_get_atom_name_cookie_t
7560 **
7561 *****************************************************************************/
7562
7563xcb_get_atom_name_cookie_t
7564xcb_get_atom_name (xcb_connection_t *c /**< */,
7565 xcb_atom_t atom /**< */);
7566
7567/**
7568 *
7569 * @param c The connection
7570 * @return A cookie
7571 *
7572 * Delivers a request to the X server.
7573 *
7574 * This form can be used only if the request will cause
7575 * a reply to be generated. Any returned error will be
7576 * placed in the event queue.
7577 */
7578
7579/*****************************************************************************
7580 **
7581 ** xcb_get_atom_name_cookie_t xcb_get_atom_name_unchecked
7582 **
7583 ** @param xcb_connection_t *c
7584 ** @param xcb_atom_t atom
7585 ** @returns xcb_get_atom_name_cookie_t
7586 **
7587 *****************************************************************************/
7588
7589xcb_get_atom_name_cookie_t
7590xcb_get_atom_name_unchecked (xcb_connection_t *c /**< */,
7591 xcb_atom_t atom /**< */);
7592
7593
7594/*****************************************************************************
7595 **
7596 ** char * xcb_get_atom_name_name
7597 **
7598 ** @param const xcb_get_atom_name_reply_t *R
7599 ** @returns char *
7600 **
7601 *****************************************************************************/
7602
7603char *
7604xcb_get_atom_name_name (const xcb_get_atom_name_reply_t *R /**< */);
7605
7606
7607/*****************************************************************************
7608 **
7609 ** int xcb_get_atom_name_name_length
7610 **
7611 ** @param const xcb_get_atom_name_reply_t *R
7612 ** @returns int
7613 **
7614 *****************************************************************************/
7615
7616int
7617xcb_get_atom_name_name_length (const xcb_get_atom_name_reply_t *R /**< */);
7618
7619
7620/*****************************************************************************
7621 **
7622 ** xcb_generic_iterator_t xcb_get_atom_name_name_end
7623 **
7624 ** @param const xcb_get_atom_name_reply_t *R
7625 ** @returns xcb_generic_iterator_t
7626 **
7627 *****************************************************************************/
7628
7629xcb_generic_iterator_t
7630xcb_get_atom_name_name_end (const xcb_get_atom_name_reply_t *R /**< */);
7631
7632/**
7633 * Return the reply
7634 * @param c The connection
7635 * @param cookie The cookie
7636 * @param e The xcb_generic_error_t supplied
7637 *
7638 * Returns the reply of the request asked by
7639 *
7640 * The parameter @p e supplied to this function must be NULL if
7641 * xcb_get_atom_name_unchecked(). is used.
7642 * Otherwise, it stores the error if any.
7643 *
7644 * The returned value must be freed by the caller using free().
7645 */
7646
7647/*****************************************************************************
7648 **
7649 ** xcb_get_atom_name_reply_t * xcb_get_atom_name_reply
7650 **
7651 ** @param xcb_connection_t *c
7652 ** @param xcb_get_atom_name_cookie_t cookie
7653 ** @param xcb_generic_error_t **e
7654 ** @returns xcb_get_atom_name_reply_t *
7655 **
7656 *****************************************************************************/
7657
7658xcb_get_atom_name_reply_t *
7659xcb_get_atom_name_reply (xcb_connection_t *c /**< */,
7660 xcb_get_atom_name_cookie_t cookie /**< */,
7661 xcb_generic_error_t **e /**< */);
7662
7663int
7664xcb_change_property_sizeof (const void *_buffer /**< */);
7665
7666/**
7667 * @brief Changes a window property
7668 *
7669 * @param c The connection
7670 * @param mode A bitmask of #xcb_prop_mode_t values.
7671 * @param mode \n
7672 * @param window The window whose property you want to change.
7673 * @param property The property you want to change (an atom).
7674 * @param type The type of the property you want to change (an atom).
7675 * @param format Specifies whether the data should be viewed as a list of 8-bit, 16-bit or
7676 * 32-bit quantities. Possible values are 8, 16 and 32. This information allows
7677 * the X server to correctly perform byte-swap operations as necessary.
7678 * @param data_len Specifies the number of elements (see \a format).
7679 * @param data The property data.
7680 * @return A cookie
7681 *
7682 * Sets or updates a property on the specified \a window. Properties are for
7683 * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`).
7684 * Protocols such as EWMH also use properties - for example EWMH defines the
7685 * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property.
7686 *
7687 * This form can be used only if the request will not cause
7688 * a reply to be generated. Any returned error will be
7689 * saved for handling by xcb_request_check().
7690 */
7691
7692/*****************************************************************************
7693 **
7694 ** xcb_void_cookie_t xcb_change_property_checked
7695 **
7696 ** @param xcb_connection_t *c
7697 ** @param uint8_t mode
7698 ** @param xcb_window_t window
7699 ** @param xcb_atom_t property
7700 ** @param xcb_atom_t type
7701 ** @param uint8_t format
7702 ** @param uint32_t data_len
7703 ** @param const void *data
7704 ** @returns xcb_void_cookie_t
7705 **
7706 *****************************************************************************/
7707
7708xcb_void_cookie_t
7709xcb_change_property_checked (xcb_connection_t *c /**< */,
7710 uint8_t mode /**< */,
7711 xcb_window_t window /**< */,
7712 xcb_atom_t property /**< */,
7713 xcb_atom_t type /**< */,
7714 uint8_t format /**< */,
7715 uint32_t data_len /**< */,
7716 const void *data /**< */);
7717
7718/**
7719 * @brief Changes a window property
7720 *
7721 * @param c The connection
7722 * @param mode A bitmask of #xcb_prop_mode_t values.
7723 * @param mode \n
7724 * @param window The window whose property you want to change.
7725 * @param property The property you want to change (an atom).
7726 * @param type The type of the property you want to change (an atom).
7727 * @param format Specifies whether the data should be viewed as a list of 8-bit, 16-bit or
7728 * 32-bit quantities. Possible values are 8, 16 and 32. This information allows
7729 * the X server to correctly perform byte-swap operations as necessary.
7730 * @param data_len Specifies the number of elements (see \a format).
7731 * @param data The property data.
7732 * @return A cookie
7733 *
7734 * Sets or updates a property on the specified \a window. Properties are for
7735 * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`).
7736 * Protocols such as EWMH also use properties - for example EWMH defines the
7737 * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property.
7738 *
7739 */
7740
7741/*****************************************************************************
7742 **
7743 ** xcb_void_cookie_t xcb_change_property
7744 **
7745 ** @param xcb_connection_t *c
7746 ** @param uint8_t mode
7747 ** @param xcb_window_t window
7748 ** @param xcb_atom_t property
7749 ** @param xcb_atom_t type
7750 ** @param uint8_t format
7751 ** @param uint32_t data_len
7752 ** @param const void *data
7753 ** @returns xcb_void_cookie_t
7754 **
7755 *****************************************************************************/
7756
7757xcb_void_cookie_t
7758xcb_change_property (xcb_connection_t *c /**< */,
7759 uint8_t mode /**< */,
7760 xcb_window_t window /**< */,
7761 xcb_atom_t property /**< */,
7762 xcb_atom_t type /**< */,
7763 uint8_t format /**< */,
7764 uint32_t data_len /**< */,
7765 const void *data /**< */);
7766
7767/**
7768 *
7769 * @param c The connection
7770 * @return A cookie
7771 *
7772 * Delivers a request to the X server.
7773 *
7774 * This form can be used only if the request will not cause
7775 * a reply to be generated. Any returned error will be
7776 * saved for handling by xcb_request_check().
7777 */
7778
7779/*****************************************************************************
7780 **
7781 ** xcb_void_cookie_t xcb_delete_property_checked
7782 **
7783 ** @param xcb_connection_t *c
7784 ** @param xcb_window_t window
7785 ** @param xcb_atom_t property
7786 ** @returns xcb_void_cookie_t
7787 **
7788 *****************************************************************************/
7789
7790xcb_void_cookie_t
7791xcb_delete_property_checked (xcb_connection_t *c /**< */,
7792 xcb_window_t window /**< */,
7793 xcb_atom_t property /**< */);
7794
7795/**
7796 *
7797 * @param c The connection
7798 * @return A cookie
7799 *
7800 * Delivers a request to the X server.
7801 *
7802 */
7803
7804/*****************************************************************************
7805 **
7806 ** xcb_void_cookie_t xcb_delete_property
7807 **
7808 ** @param xcb_connection_t *c
7809 ** @param xcb_window_t window
7810 ** @param xcb_atom_t property
7811 ** @returns xcb_void_cookie_t
7812 **
7813 *****************************************************************************/
7814
7815xcb_void_cookie_t
7816xcb_delete_property (xcb_connection_t *c /**< */,
7817 xcb_window_t window /**< */,
7818 xcb_atom_t property /**< */);
7819
7820int
7821xcb_get_property_sizeof (const void *_buffer /**< */);
7822
7823/**
7824 * @brief Gets a window property
7825 *
7826 * @param c The connection
7827 * @param _delete Whether the property should actually be deleted. For deleting a property, the
7828 * specified \a type has to match the actual property type.
7829 * @param window The window whose property you want to get.
7830 * @param property The property you want to get (an atom).
7831 * @param type The type of the property you want to get (an atom).
7832 * @param long_offset Specifies the offset (in 32-bit multiples) in the specified property where the
7833 * data is to be retrieved.
7834 * @param long_length Specifies how many 32-bit multiples of data should be retrieved (e.g. if you
7835 * set \a long_length to 4, you will receive 16 bytes of data).
7836 * @return A cookie
7837 *
7838 * Gets the specified \a property from the specified \a window. Properties are for
7839 * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`).
7840 * Protocols such as EWMH also use properties - for example EWMH defines the
7841 * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property.
7842 *
7843 * TODO: talk about \a type
7844 *
7845 * TODO: talk about `delete`
7846 *
7847 * TODO: talk about the offset/length thing. what's a valid use case?
7848 *
7849 */
7850
7851/*****************************************************************************
7852 **
7853 ** xcb_get_property_cookie_t xcb_get_property
7854 **
7855 ** @param xcb_connection_t *c
7856 ** @param uint8_t _delete
7857 ** @param xcb_window_t window
7858 ** @param xcb_atom_t property
7859 ** @param xcb_atom_t type
7860 ** @param uint32_t long_offset
7861 ** @param uint32_t long_length
7862 ** @returns xcb_get_property_cookie_t
7863 **
7864 *****************************************************************************/
7865
7866xcb_get_property_cookie_t
7867xcb_get_property (xcb_connection_t *c /**< */,
7868 uint8_t _delete /**< */,
7869 xcb_window_t window /**< */,
7870 xcb_atom_t property /**< */,
7871 xcb_atom_t type /**< */,
7872 uint32_t long_offset /**< */,
7873 uint32_t long_length /**< */);
7874
7875/**
7876 * @brief Gets a window property
7877 *
7878 * @param c The connection
7879 * @param _delete Whether the property should actually be deleted. For deleting a property, the
7880 * specified \a type has to match the actual property type.
7881 * @param window The window whose property you want to get.
7882 * @param property The property you want to get (an atom).
7883 * @param type The type of the property you want to get (an atom).
7884 * @param long_offset Specifies the offset (in 32-bit multiples) in the specified property where the
7885 * data is to be retrieved.
7886 * @param long_length Specifies how many 32-bit multiples of data should be retrieved (e.g. if you
7887 * set \a long_length to 4, you will receive 16 bytes of data).
7888 * @return A cookie
7889 *
7890 * Gets the specified \a property from the specified \a window. Properties are for
7891 * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`).
7892 * Protocols such as EWMH also use properties - for example EWMH defines the
7893 * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property.
7894 *
7895 * TODO: talk about \a type
7896 *
7897 * TODO: talk about `delete`
7898 *
7899 * TODO: talk about the offset/length thing. what's a valid use case?
7900 *
7901 * This form can be used only if the request will cause
7902 * a reply to be generated. Any returned error will be
7903 * placed in the event queue.
7904 */
7905
7906/*****************************************************************************
7907 **
7908 ** xcb_get_property_cookie_t xcb_get_property_unchecked
7909 **
7910 ** @param xcb_connection_t *c
7911 ** @param uint8_t _delete
7912 ** @param xcb_window_t window
7913 ** @param xcb_atom_t property
7914 ** @param xcb_atom_t type
7915 ** @param uint32_t long_offset
7916 ** @param uint32_t long_length
7917 ** @returns xcb_get_property_cookie_t
7918 **
7919 *****************************************************************************/
7920
7921xcb_get_property_cookie_t
7922xcb_get_property_unchecked (xcb_connection_t *c /**< */,
7923 uint8_t _delete /**< */,
7924 xcb_window_t window /**< */,
7925 xcb_atom_t property /**< */,
7926 xcb_atom_t type /**< */,
7927 uint32_t long_offset /**< */,
7928 uint32_t long_length /**< */);
7929
7930
7931/*****************************************************************************
7932 **
7933 ** void * xcb_get_property_value
7934 **
7935 ** @param const xcb_get_property_reply_t *R
7936 ** @returns void *
7937 **
7938 *****************************************************************************/
7939
7940void *
7941xcb_get_property_value (const xcb_get_property_reply_t *R /**< */);
7942
7943
7944/*****************************************************************************
7945 **
7946 ** int xcb_get_property_value_length
7947 **
7948 ** @param const xcb_get_property_reply_t *R
7949 ** @returns int
7950 **
7951 *****************************************************************************/
7952
7953int
7954xcb_get_property_value_length (const xcb_get_property_reply_t *R /**< */);
7955
7956
7957/*****************************************************************************
7958 **
7959 ** xcb_generic_iterator_t xcb_get_property_value_end
7960 **
7961 ** @param const xcb_get_property_reply_t *R
7962 ** @returns xcb_generic_iterator_t
7963 **
7964 *****************************************************************************/
7965
7966xcb_generic_iterator_t
7967xcb_get_property_value_end (const xcb_get_property_reply_t *R /**< */);
7968
7969/**
7970 * Return the reply
7971 * @param c The connection
7972 * @param cookie The cookie
7973 * @param e The xcb_generic_error_t supplied
7974 *
7975 * Returns the reply of the request asked by
7976 *
7977 * The parameter @p e supplied to this function must be NULL if
7978 * xcb_get_property_unchecked(). is used.
7979 * Otherwise, it stores the error if any.
7980 *
7981 * The returned value must be freed by the caller using free().
7982 */
7983
7984/*****************************************************************************
7985 **
7986 ** xcb_get_property_reply_t * xcb_get_property_reply
7987 **
7988 ** @param xcb_connection_t *c
7989 ** @param xcb_get_property_cookie_t cookie
7990 ** @param xcb_generic_error_t **e
7991 ** @returns xcb_get_property_reply_t *
7992 **
7993 *****************************************************************************/
7994
7995xcb_get_property_reply_t *
7996xcb_get_property_reply (xcb_connection_t *c /**< */,
7997 xcb_get_property_cookie_t cookie /**< */,
7998 xcb_generic_error_t **e /**< */);
7999
8000int
8001xcb_list_properties_sizeof (const void *_buffer /**< */);
8002
8003/**
8004 *
8005 * @param c The connection
8006 * @return A cookie
8007 *
8008 * Delivers a request to the X server.
8009 *
8010 */
8011
8012/*****************************************************************************
8013 **
8014 ** xcb_list_properties_cookie_t xcb_list_properties
8015 **
8016 ** @param xcb_connection_t *c
8017 ** @param xcb_window_t window
8018 ** @returns xcb_list_properties_cookie_t
8019 **
8020 *****************************************************************************/
8021
8022xcb_list_properties_cookie_t
8023xcb_list_properties (xcb_connection_t *c /**< */,
8024 xcb_window_t window /**< */);
8025
8026/**
8027 *
8028 * @param c The connection
8029 * @return A cookie
8030 *
8031 * Delivers a request to the X server.
8032 *
8033 * This form can be used only if the request will cause
8034 * a reply to be generated. Any returned error will be
8035 * placed in the event queue.
8036 */
8037
8038/*****************************************************************************
8039 **
8040 ** xcb_list_properties_cookie_t xcb_list_properties_unchecked
8041 **
8042 ** @param xcb_connection_t *c
8043 ** @param xcb_window_t window
8044 ** @returns xcb_list_properties_cookie_t
8045 **
8046 *****************************************************************************/
8047
8048xcb_list_properties_cookie_t
8049xcb_list_properties_unchecked (xcb_connection_t *c /**< */,
8050 xcb_window_t window /**< */);
8051
8052
8053/*****************************************************************************
8054 **
8055 ** xcb_atom_t * xcb_list_properties_atoms
8056 **
8057 ** @param const xcb_list_properties_reply_t *R
8058 ** @returns xcb_atom_t *
8059 **
8060 *****************************************************************************/
8061
8062xcb_atom_t *
8063xcb_list_properties_atoms (const xcb_list_properties_reply_t *R /**< */);
8064
8065
8066/*****************************************************************************
8067 **
8068 ** int xcb_list_properties_atoms_length
8069 **
8070 ** @param const xcb_list_properties_reply_t *R
8071 ** @returns int
8072 **
8073 *****************************************************************************/
8074
8075int
8076xcb_list_properties_atoms_length (const xcb_list_properties_reply_t *R /**< */);
8077
8078
8079/*****************************************************************************
8080 **
8081 ** xcb_generic_iterator_t xcb_list_properties_atoms_end
8082 **
8083 ** @param const xcb_list_properties_reply_t *R
8084 ** @returns xcb_generic_iterator_t
8085 **
8086 *****************************************************************************/
8087
8088xcb_generic_iterator_t
8089xcb_list_properties_atoms_end (const xcb_list_properties_reply_t *R /**< */);
8090
8091/**
8092 * Return the reply
8093 * @param c The connection
8094 * @param cookie The cookie
8095 * @param e The xcb_generic_error_t supplied
8096 *
8097 * Returns the reply of the request asked by
8098 *
8099 * The parameter @p e supplied to this function must be NULL if
8100 * xcb_list_properties_unchecked(). is used.
8101 * Otherwise, it stores the error if any.
8102 *
8103 * The returned value must be freed by the caller using free().
8104 */
8105
8106/*****************************************************************************
8107 **
8108 ** xcb_list_properties_reply_t * xcb_list_properties_reply
8109 **
8110 ** @param xcb_connection_t *c
8111 ** @param xcb_list_properties_cookie_t cookie
8112 ** @param xcb_generic_error_t **e
8113 ** @returns xcb_list_properties_reply_t *
8114 **
8115 *****************************************************************************/
8116
8117xcb_list_properties_reply_t *
8118xcb_list_properties_reply (xcb_connection_t *c /**< */,
8119 xcb_list_properties_cookie_t cookie /**< */,
8120 xcb_generic_error_t **e /**< */);
8121
8122/**
8123 * @brief Sets the owner of a selection
8124 *
8125 * @param c The connection
8126 * @param owner The new owner of the selection.
8127 * \n
8128 * The special value `XCB_NONE` means that the selection will have no owner.
8129 * @param selection The selection.
8130 * @param time Timestamp to avoid race conditions when running X over the network.
8131 * \n
8132 * The selection will not be changed if \a time is earlier than the current
8133 * last-change time of the \a selection or is later than the current X server time.
8134 * Otherwise, the last-change time is set to the specified time.
8135 * \n
8136 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
8137 * time.
8138 * @return A cookie
8139 *
8140 * Makes `window` the owner of the selection \a selection and updates the
8141 * last-change time of the specified selection.
8142 *
8143 * TODO: briefly explain what a selection is.
8144 *
8145 * This form can be used only if the request will not cause
8146 * a reply to be generated. Any returned error will be
8147 * saved for handling by xcb_request_check().
8148 */
8149
8150/*****************************************************************************
8151 **
8152 ** xcb_void_cookie_t xcb_set_selection_owner_checked
8153 **
8154 ** @param xcb_connection_t *c
8155 ** @param xcb_window_t owner
8156 ** @param xcb_atom_t selection
8157 ** @param xcb_timestamp_t time
8158 ** @returns xcb_void_cookie_t
8159 **
8160 *****************************************************************************/
8161
8162xcb_void_cookie_t
8163xcb_set_selection_owner_checked (xcb_connection_t *c /**< */,
8164 xcb_window_t owner /**< */,
8165 xcb_atom_t selection /**< */,
8166 xcb_timestamp_t time /**< */);
8167
8168/**
8169 * @brief Sets the owner of a selection
8170 *
8171 * @param c The connection
8172 * @param owner The new owner of the selection.
8173 * \n
8174 * The special value `XCB_NONE` means that the selection will have no owner.
8175 * @param selection The selection.
8176 * @param time Timestamp to avoid race conditions when running X over the network.
8177 * \n
8178 * The selection will not be changed if \a time is earlier than the current
8179 * last-change time of the \a selection or is later than the current X server time.
8180 * Otherwise, the last-change time is set to the specified time.
8181 * \n
8182 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
8183 * time.
8184 * @return A cookie
8185 *
8186 * Makes `window` the owner of the selection \a selection and updates the
8187 * last-change time of the specified selection.
8188 *
8189 * TODO: briefly explain what a selection is.
8190 *
8191 */
8192
8193/*****************************************************************************
8194 **
8195 ** xcb_void_cookie_t xcb_set_selection_owner
8196 **
8197 ** @param xcb_connection_t *c
8198 ** @param xcb_window_t owner
8199 ** @param xcb_atom_t selection
8200 ** @param xcb_timestamp_t time
8201 ** @returns xcb_void_cookie_t
8202 **
8203 *****************************************************************************/
8204
8205xcb_void_cookie_t
8206xcb_set_selection_owner (xcb_connection_t *c /**< */,
8207 xcb_window_t owner /**< */,
8208 xcb_atom_t selection /**< */,
8209 xcb_timestamp_t time /**< */);
8210
8211/**
8212 * @brief Gets the owner of a selection
8213 *
8214 * @param c The connection
8215 * @param selection The selection.
8216 * @return A cookie
8217 *
8218 * Gets the owner of the specified selection.
8219 *
8220 * TODO: briefly explain what a selection is.
8221 *
8222 */
8223
8224/*****************************************************************************
8225 **
8226 ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner
8227 **
8228 ** @param xcb_connection_t *c
8229 ** @param xcb_atom_t selection
8230 ** @returns xcb_get_selection_owner_cookie_t
8231 **
8232 *****************************************************************************/
8233
8234xcb_get_selection_owner_cookie_t
8235xcb_get_selection_owner (xcb_connection_t *c /**< */,
8236 xcb_atom_t selection /**< */);
8237
8238/**
8239 * @brief Gets the owner of a selection
8240 *
8241 * @param c The connection
8242 * @param selection The selection.
8243 * @return A cookie
8244 *
8245 * Gets the owner of the specified selection.
8246 *
8247 * TODO: briefly explain what a selection is.
8248 *
8249 * This form can be used only if the request will cause
8250 * a reply to be generated. Any returned error will be
8251 * placed in the event queue.
8252 */
8253
8254/*****************************************************************************
8255 **
8256 ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner_unchecked
8257 **
8258 ** @param xcb_connection_t *c
8259 ** @param xcb_atom_t selection
8260 ** @returns xcb_get_selection_owner_cookie_t
8261 **
8262 *****************************************************************************/
8263
8264xcb_get_selection_owner_cookie_t
8265xcb_get_selection_owner_unchecked (xcb_connection_t *c /**< */,
8266 xcb_atom_t selection /**< */);
8267
8268/**
8269 * Return the reply
8270 * @param c The connection
8271 * @param cookie The cookie
8272 * @param e The xcb_generic_error_t supplied
8273 *
8274 * Returns the reply of the request asked by
8275 *
8276 * The parameter @p e supplied to this function must be NULL if
8277 * xcb_get_selection_owner_unchecked(). is used.
8278 * Otherwise, it stores the error if any.
8279 *
8280 * The returned value must be freed by the caller using free().
8281 */
8282
8283/*****************************************************************************
8284 **
8285 ** xcb_get_selection_owner_reply_t * xcb_get_selection_owner_reply
8286 **
8287 ** @param xcb_connection_t *c
8288 ** @param xcb_get_selection_owner_cookie_t cookie
8289 ** @param xcb_generic_error_t **e
8290 ** @returns xcb_get_selection_owner_reply_t *
8291 **
8292 *****************************************************************************/
8293
8294xcb_get_selection_owner_reply_t *
8295xcb_get_selection_owner_reply (xcb_connection_t *c /**< */,
8296 xcb_get_selection_owner_cookie_t cookie /**< */,
8297 xcb_generic_error_t **e /**< */);
8298
8299/**
8300 *
8301 * @param c The connection
8302 * @return A cookie
8303 *
8304 * Delivers a request to the X server.
8305 *
8306 * This form can be used only if the request will not cause
8307 * a reply to be generated. Any returned error will be
8308 * saved for handling by xcb_request_check().
8309 */
8310
8311/*****************************************************************************
8312 **
8313 ** xcb_void_cookie_t xcb_convert_selection_checked
8314 **
8315 ** @param xcb_connection_t *c
8316 ** @param xcb_window_t requestor
8317 ** @param xcb_atom_t selection
8318 ** @param xcb_atom_t target
8319 ** @param xcb_atom_t property
8320 ** @param xcb_timestamp_t time
8321 ** @returns xcb_void_cookie_t
8322 **
8323 *****************************************************************************/
8324
8325xcb_void_cookie_t
8326xcb_convert_selection_checked (xcb_connection_t *c /**< */,
8327 xcb_window_t requestor /**< */,
8328 xcb_atom_t selection /**< */,
8329 xcb_atom_t target /**< */,
8330 xcb_atom_t property /**< */,
8331 xcb_timestamp_t time /**< */);
8332
8333/**
8334 *
8335 * @param c The connection
8336 * @return A cookie
8337 *
8338 * Delivers a request to the X server.
8339 *
8340 */
8341
8342/*****************************************************************************
8343 **
8344 ** xcb_void_cookie_t xcb_convert_selection
8345 **
8346 ** @param xcb_connection_t *c
8347 ** @param xcb_window_t requestor
8348 ** @param xcb_atom_t selection
8349 ** @param xcb_atom_t target
8350 ** @param xcb_atom_t property
8351 ** @param xcb_timestamp_t time
8352 ** @returns xcb_void_cookie_t
8353 **
8354 *****************************************************************************/
8355
8356xcb_void_cookie_t
8357xcb_convert_selection (xcb_connection_t *c /**< */,
8358 xcb_window_t requestor /**< */,
8359 xcb_atom_t selection /**< */,
8360 xcb_atom_t target /**< */,
8361 xcb_atom_t property /**< */,
8362 xcb_timestamp_t time /**< */);
8363
8364/**
8365 * @brief send an event
8366 *
8367 * @param c The connection
8368 * @param propagate If \a propagate is true and no clients have selected any event on \a destination,
8369 * the destination is replaced with the closest ancestor of \a destination for
8370 * which some client has selected a type in \a event_mask and for which no
8371 * intervening window has that type in its do-not-propagate-mask. If no such
8372 * window exists or if the window is an ancestor of the focus window and
8373 * `InputFocus` was originally specified as the destination, the event is not sent
8374 * to any clients. Otherwise, the event is reported to every client selecting on
8375 * the final destination any of the types specified in \a event_mask.
8376 * @param destination The window to send this event to. Every client which selects any event within
8377 * \a event_mask on \a destination will get the event.
8378 * \n
8379 * The special value `XCB_SEND_EVENT_DEST_POINTER_WINDOW` refers to the window
8380 * that contains the mouse pointer.
8381 * \n
8382 * The special value `XCB_SEND_EVENT_DEST_ITEM_FOCUS` refers to the window which
8383 * has the keyboard focus.
8384 * @param event_mask Event_mask for determining which clients should receive the specified event.
8385 * See \a destination and \a propagate.
8386 * @param event The event to send to the specified \a destination.
8387 * @return A cookie
8388 *
8389 * Identifies the \a destination window, determines which clients should receive
8390 * the specified event and ignores any active grabs.
8391 *
8392 * The \a event must be one of the core events or an event defined by an extension,
8393 * so that the X server can correctly byte-swap the contents as necessary. The
8394 * contents of \a event are otherwise unaltered and unchecked except for the
8395 * `send_event` field which is forced to 'true'.
8396 *
8397 * This form can be used only if the request will not cause
8398 * a reply to be generated. Any returned error will be
8399 * saved for handling by xcb_request_check().
8400 */
8401
8402/*****************************************************************************
8403 **
8404 ** xcb_void_cookie_t xcb_send_event_checked
8405 **
8406 ** @param xcb_connection_t *c
8407 ** @param uint8_t propagate
8408 ** @param xcb_window_t destination
8409 ** @param uint32_t event_mask
8410 ** @param const char *event
8411 ** @returns xcb_void_cookie_t
8412 **
8413 *****************************************************************************/
8414
8415xcb_void_cookie_t
8416xcb_send_event_checked (xcb_connection_t *c /**< */,
8417 uint8_t propagate /**< */,
8418 xcb_window_t destination /**< */,
8419 uint32_t event_mask /**< */,
8420 const char *event /**< */);
8421
8422/**
8423 * @brief send an event
8424 *
8425 * @param c The connection
8426 * @param propagate If \a propagate is true and no clients have selected any event on \a destination,
8427 * the destination is replaced with the closest ancestor of \a destination for
8428 * which some client has selected a type in \a event_mask and for which no
8429 * intervening window has that type in its do-not-propagate-mask. If no such
8430 * window exists or if the window is an ancestor of the focus window and
8431 * `InputFocus` was originally specified as the destination, the event is not sent
8432 * to any clients. Otherwise, the event is reported to every client selecting on
8433 * the final destination any of the types specified in \a event_mask.
8434 * @param destination The window to send this event to. Every client which selects any event within
8435 * \a event_mask on \a destination will get the event.
8436 * \n
8437 * The special value `XCB_SEND_EVENT_DEST_POINTER_WINDOW` refers to the window
8438 * that contains the mouse pointer.
8439 * \n
8440 * The special value `XCB_SEND_EVENT_DEST_ITEM_FOCUS` refers to the window which
8441 * has the keyboard focus.
8442 * @param event_mask Event_mask for determining which clients should receive the specified event.
8443 * See \a destination and \a propagate.
8444 * @param event The event to send to the specified \a destination.
8445 * @return A cookie
8446 *
8447 * Identifies the \a destination window, determines which clients should receive
8448 * the specified event and ignores any active grabs.
8449 *
8450 * The \a event must be one of the core events or an event defined by an extension,
8451 * so that the X server can correctly byte-swap the contents as necessary. The
8452 * contents of \a event are otherwise unaltered and unchecked except for the
8453 * `send_event` field which is forced to 'true'.
8454 *
8455 */
8456
8457/*****************************************************************************
8458 **
8459 ** xcb_void_cookie_t xcb_send_event
8460 **
8461 ** @param xcb_connection_t *c
8462 ** @param uint8_t propagate
8463 ** @param xcb_window_t destination
8464 ** @param uint32_t event_mask
8465 ** @param const char *event
8466 ** @returns xcb_void_cookie_t
8467 **
8468 *****************************************************************************/
8469
8470xcb_void_cookie_t
8471xcb_send_event (xcb_connection_t *c /**< */,
8472 uint8_t propagate /**< */,
8473 xcb_window_t destination /**< */,
8474 uint32_t event_mask /**< */,
8475 const char *event /**< */);
8476
8477/**
8478 * @brief Grab the pointer
8479 *
8480 * @param c The connection
8481 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
8482 * reported to the \a grab_window.
8483 * @param grab_window Specifies the window on which the pointer should be grabbed.
8484 * @param event_mask Specifies which pointer events are reported to the client.
8485 * \n
8486 * TODO: which values?
8487 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
8488 * @param pointer_mode \n
8489 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
8490 * @param keyboard_mode \n
8491 * @param confine_to Specifies the window to confine the pointer in (the user will not be able to
8492 * move the pointer out of that window).
8493 * \n
8494 * The special value `XCB_NONE` means don't confine the pointer.
8495 * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the
8496 * cursor.
8497 * @param time The time argument allows you to avoid certain circumstances that come up if
8498 * applications take a long time to respond or if there are long network delays.
8499 * Consider a situation where you have two applications, both of which normally
8500 * grab the pointer when clicked on. If both applications specify the timestamp
8501 * from the event, the second application may wake up faster and successfully grab
8502 * the pointer before the first application. The first application then will get
8503 * an indication that the other application grabbed the pointer before its request
8504 * was processed.
8505 * \n
8506 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
8507 * time.
8508 * @return A cookie
8509 *
8510 * Actively grabs control of the pointer. Further pointer events are reported only to the grabbing client. Overrides any active pointer grab by this client.
8511 *
8512 */
8513
8514/*****************************************************************************
8515 **
8516 ** xcb_grab_pointer_cookie_t xcb_grab_pointer
8517 **
8518 ** @param xcb_connection_t *c
8519 ** @param uint8_t owner_events
8520 ** @param xcb_window_t grab_window
8521 ** @param uint16_t event_mask
8522 ** @param uint8_t pointer_mode
8523 ** @param uint8_t keyboard_mode
8524 ** @param xcb_window_t confine_to
8525 ** @param xcb_cursor_t cursor
8526 ** @param xcb_timestamp_t time
8527 ** @returns xcb_grab_pointer_cookie_t
8528 **
8529 *****************************************************************************/
8530
8531xcb_grab_pointer_cookie_t
8532xcb_grab_pointer (xcb_connection_t *c /**< */,
8533 uint8_t owner_events /**< */,
8534 xcb_window_t grab_window /**< */,
8535 uint16_t event_mask /**< */,
8536 uint8_t pointer_mode /**< */,
8537 uint8_t keyboard_mode /**< */,
8538 xcb_window_t confine_to /**< */,
8539 xcb_cursor_t cursor /**< */,
8540 xcb_timestamp_t time /**< */);
8541
8542/**
8543 * @brief Grab the pointer
8544 *
8545 * @param c The connection
8546 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
8547 * reported to the \a grab_window.
8548 * @param grab_window Specifies the window on which the pointer should be grabbed.
8549 * @param event_mask Specifies which pointer events are reported to the client.
8550 * \n
8551 * TODO: which values?
8552 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
8553 * @param pointer_mode \n
8554 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
8555 * @param keyboard_mode \n
8556 * @param confine_to Specifies the window to confine the pointer in (the user will not be able to
8557 * move the pointer out of that window).
8558 * \n
8559 * The special value `XCB_NONE` means don't confine the pointer.
8560 * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the
8561 * cursor.
8562 * @param time The time argument allows you to avoid certain circumstances that come up if
8563 * applications take a long time to respond or if there are long network delays.
8564 * Consider a situation where you have two applications, both of which normally
8565 * grab the pointer when clicked on. If both applications specify the timestamp
8566 * from the event, the second application may wake up faster and successfully grab
8567 * the pointer before the first application. The first application then will get
8568 * an indication that the other application grabbed the pointer before its request
8569 * was processed.
8570 * \n
8571 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
8572 * time.
8573 * @return A cookie
8574 *
8575 * Actively grabs control of the pointer. Further pointer events are reported only to the grabbing client. Overrides any active pointer grab by this client.
8576 *
8577 * This form can be used only if the request will cause
8578 * a reply to be generated. Any returned error will be
8579 * placed in the event queue.
8580 */
8581
8582/*****************************************************************************
8583 **
8584 ** xcb_grab_pointer_cookie_t xcb_grab_pointer_unchecked
8585 **
8586 ** @param xcb_connection_t *c
8587 ** @param uint8_t owner_events
8588 ** @param xcb_window_t grab_window
8589 ** @param uint16_t event_mask
8590 ** @param uint8_t pointer_mode
8591 ** @param uint8_t keyboard_mode
8592 ** @param xcb_window_t confine_to
8593 ** @param xcb_cursor_t cursor
8594 ** @param xcb_timestamp_t time
8595 ** @returns xcb_grab_pointer_cookie_t
8596 **
8597 *****************************************************************************/
8598
8599xcb_grab_pointer_cookie_t
8600xcb_grab_pointer_unchecked (xcb_connection_t *c /**< */,
8601 uint8_t owner_events /**< */,
8602 xcb_window_t grab_window /**< */,
8603 uint16_t event_mask /**< */,
8604 uint8_t pointer_mode /**< */,
8605 uint8_t keyboard_mode /**< */,
8606 xcb_window_t confine_to /**< */,
8607 xcb_cursor_t cursor /**< */,
8608 xcb_timestamp_t time /**< */);
8609
8610/**
8611 * Return the reply
8612 * @param c The connection
8613 * @param cookie The cookie
8614 * @param e The xcb_generic_error_t supplied
8615 *
8616 * Returns the reply of the request asked by
8617 *
8618 * The parameter @p e supplied to this function must be NULL if
8619 * xcb_grab_pointer_unchecked(). is used.
8620 * Otherwise, it stores the error if any.
8621 *
8622 * The returned value must be freed by the caller using free().
8623 */
8624
8625/*****************************************************************************
8626 **
8627 ** xcb_grab_pointer_reply_t * xcb_grab_pointer_reply
8628 **
8629 ** @param xcb_connection_t *c
8630 ** @param xcb_grab_pointer_cookie_t cookie
8631 ** @param xcb_generic_error_t **e
8632 ** @returns xcb_grab_pointer_reply_t *
8633 **
8634 *****************************************************************************/
8635
8636xcb_grab_pointer_reply_t *
8637xcb_grab_pointer_reply (xcb_connection_t *c /**< */,
8638 xcb_grab_pointer_cookie_t cookie /**< */,
8639 xcb_generic_error_t **e /**< */);
8640
8641/**
8642 * @brief release the pointer
8643 *
8644 * @param c The connection
8645 * @param time Timestamp to avoid race conditions when running X over the network.
8646 * \n
8647 * The pointer will not be released if \a time is earlier than the
8648 * last-pointer-grab time or later than the current X server time.
8649 * @return A cookie
8650 *
8651 * Releases the pointer and any queued events if you actively grabbed the pointer
8652 * before using `xcb_grab_pointer`, `xcb_grab_button` or within a normal button
8653 * press.
8654 *
8655 * EnterNotify and LeaveNotify events are generated.
8656 *
8657 * This form can be used only if the request will not cause
8658 * a reply to be generated. Any returned error will be
8659 * saved for handling by xcb_request_check().
8660 */
8661
8662/*****************************************************************************
8663 **
8664 ** xcb_void_cookie_t xcb_ungrab_pointer_checked
8665 **
8666 ** @param xcb_connection_t *c
8667 ** @param xcb_timestamp_t time
8668 ** @returns xcb_void_cookie_t
8669 **
8670 *****************************************************************************/
8671
8672xcb_void_cookie_t
8673xcb_ungrab_pointer_checked (xcb_connection_t *c /**< */,
8674 xcb_timestamp_t time /**< */);
8675
8676/**
8677 * @brief release the pointer
8678 *
8679 * @param c The connection
8680 * @param time Timestamp to avoid race conditions when running X over the network.
8681 * \n
8682 * The pointer will not be released if \a time is earlier than the
8683 * last-pointer-grab time or later than the current X server time.
8684 * @return A cookie
8685 *
8686 * Releases the pointer and any queued events if you actively grabbed the pointer
8687 * before using `xcb_grab_pointer`, `xcb_grab_button` or within a normal button
8688 * press.
8689 *
8690 * EnterNotify and LeaveNotify events are generated.
8691 *
8692 */
8693
8694/*****************************************************************************
8695 **
8696 ** xcb_void_cookie_t xcb_ungrab_pointer
8697 **
8698 ** @param xcb_connection_t *c
8699 ** @param xcb_timestamp_t time
8700 ** @returns xcb_void_cookie_t
8701 **
8702 *****************************************************************************/
8703
8704xcb_void_cookie_t
8705xcb_ungrab_pointer (xcb_connection_t *c /**< */,
8706 xcb_timestamp_t time /**< */);
8707
8708/**
8709 * @brief Grab pointer button(s)
8710 *
8711 * @param c The connection
8712 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
8713 * reported to the \a grab_window.
8714 * @param grab_window Specifies the window on which the pointer should be grabbed.
8715 * @param event_mask Specifies which pointer events are reported to the client.
8716 * \n
8717 * TODO: which values?
8718 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
8719 * @param pointer_mode \n
8720 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
8721 * @param keyboard_mode \n
8722 * @param confine_to Specifies the window to confine the pointer in (the user will not be able to
8723 * move the pointer out of that window).
8724 * \n
8725 * The special value `XCB_NONE` means don't confine the pointer.
8726 * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the
8727 * cursor.
8728 * @param button A bitmask of #xcb_button_index_t values.
8729 * @param button \n
8730 * @param modifiers The modifiers to grab.
8731 * \n
8732 * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all
8733 * possible modifier combinations.
8734 * @return A cookie
8735 *
8736 * This request establishes a passive grab. The pointer is actively grabbed as
8737 * described in GrabPointer, the last-pointer-grab time is set to the time at
8738 * which the button was pressed (as transmitted in the ButtonPress event), and the
8739 * ButtonPress event is reported if all of the following conditions are true:
8740 *
8741 * The pointer is not grabbed and the specified button is logically pressed when
8742 * the specified modifier keys are logically down, and no other buttons or
8743 * modifier keys are logically down.
8744 *
8745 * The grab-window contains the pointer.
8746 *
8747 * The confine-to window (if any) is viewable.
8748 *
8749 * A passive grab on the same button/key combination does not exist on any
8750 * ancestor of grab-window.
8751 *
8752 * The interpretation of the remaining arguments is the same as for GrabPointer.
8753 * The active grab is terminated automatically when the logical state of the
8754 * pointer has all buttons released, independent of the logical state of modifier
8755 * keys. Note that the logical state of a device (as seen by means of the
8756 * protocol) may lag the physical state if device event processing is frozen. This
8757 * request overrides all previous passive grabs by the same client on the same
8758 * button/key combinations on the same window. A modifier of AnyModifier is
8759 * equivalent to issuing the request for all possible modifier combinations
8760 * (including the combination of no modifiers). It is not required that all
8761 * specified modifiers have currently assigned keycodes. A button of AnyButton is
8762 * equivalent to issuing the request for all possible buttons. Otherwise, it is
8763 * not required that the button specified currently be assigned to a physical
8764 * button.
8765 *
8766 * An Access error is generated if some other client has already issued a
8767 * GrabButton request with the same button/key combination on the same window.
8768 * When using AnyModifier or AnyButton, the request fails completely (no grabs are
8769 * established), and an Access error is generated if there is a conflicting grab
8770 * for any combination. The request has no effect on an active grab.
8771 *
8772 * This form can be used only if the request will not cause
8773 * a reply to be generated. Any returned error will be
8774 * saved for handling by xcb_request_check().
8775 */
8776
8777/*****************************************************************************
8778 **
8779 ** xcb_void_cookie_t xcb_grab_button_checked
8780 **
8781 ** @param xcb_connection_t *c
8782 ** @param uint8_t owner_events
8783 ** @param xcb_window_t grab_window
8784 ** @param uint16_t event_mask
8785 ** @param uint8_t pointer_mode
8786 ** @param uint8_t keyboard_mode
8787 ** @param xcb_window_t confine_to
8788 ** @param xcb_cursor_t cursor
8789 ** @param uint8_t button
8790 ** @param uint16_t modifiers
8791 ** @returns xcb_void_cookie_t
8792 **
8793 *****************************************************************************/
8794
8795xcb_void_cookie_t
8796xcb_grab_button_checked (xcb_connection_t *c /**< */,
8797 uint8_t owner_events /**< */,
8798 xcb_window_t grab_window /**< */,
8799 uint16_t event_mask /**< */,
8800 uint8_t pointer_mode /**< */,
8801 uint8_t keyboard_mode /**< */,
8802 xcb_window_t confine_to /**< */,
8803 xcb_cursor_t cursor /**< */,
8804 uint8_t button /**< */,
8805 uint16_t modifiers /**< */);
8806
8807/**
8808 * @brief Grab pointer button(s)
8809 *
8810 * @param c The connection
8811 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
8812 * reported to the \a grab_window.
8813 * @param grab_window Specifies the window on which the pointer should be grabbed.
8814 * @param event_mask Specifies which pointer events are reported to the client.
8815 * \n
8816 * TODO: which values?
8817 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
8818 * @param pointer_mode \n
8819 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
8820 * @param keyboard_mode \n
8821 * @param confine_to Specifies the window to confine the pointer in (the user will not be able to
8822 * move the pointer out of that window).
8823 * \n
8824 * The special value `XCB_NONE` means don't confine the pointer.
8825 * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the
8826 * cursor.
8827 * @param button A bitmask of #xcb_button_index_t values.
8828 * @param button \n
8829 * @param modifiers The modifiers to grab.
8830 * \n
8831 * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all
8832 * possible modifier combinations.
8833 * @return A cookie
8834 *
8835 * This request establishes a passive grab. The pointer is actively grabbed as
8836 * described in GrabPointer, the last-pointer-grab time is set to the time at
8837 * which the button was pressed (as transmitted in the ButtonPress event), and the
8838 * ButtonPress event is reported if all of the following conditions are true:
8839 *
8840 * The pointer is not grabbed and the specified button is logically pressed when
8841 * the specified modifier keys are logically down, and no other buttons or
8842 * modifier keys are logically down.
8843 *
8844 * The grab-window contains the pointer.
8845 *
8846 * The confine-to window (if any) is viewable.
8847 *
8848 * A passive grab on the same button/key combination does not exist on any
8849 * ancestor of grab-window.
8850 *
8851 * The interpretation of the remaining arguments is the same as for GrabPointer.
8852 * The active grab is terminated automatically when the logical state of the
8853 * pointer has all buttons released, independent of the logical state of modifier
8854 * keys. Note that the logical state of a device (as seen by means of the
8855 * protocol) may lag the physical state if device event processing is frozen. This
8856 * request overrides all previous passive grabs by the same client on the same
8857 * button/key combinations on the same window. A modifier of AnyModifier is
8858 * equivalent to issuing the request for all possible modifier combinations
8859 * (including the combination of no modifiers). It is not required that all
8860 * specified modifiers have currently assigned keycodes. A button of AnyButton is
8861 * equivalent to issuing the request for all possible buttons. Otherwise, it is
8862 * not required that the button specified currently be assigned to a physical
8863 * button.
8864 *
8865 * An Access error is generated if some other client has already issued a
8866 * GrabButton request with the same button/key combination on the same window.
8867 * When using AnyModifier or AnyButton, the request fails completely (no grabs are
8868 * established), and an Access error is generated if there is a conflicting grab
8869 * for any combination. The request has no effect on an active grab.
8870 *
8871 */
8872
8873/*****************************************************************************
8874 **
8875 ** xcb_void_cookie_t xcb_grab_button
8876 **
8877 ** @param xcb_connection_t *c
8878 ** @param uint8_t owner_events
8879 ** @param xcb_window_t grab_window
8880 ** @param uint16_t event_mask
8881 ** @param uint8_t pointer_mode
8882 ** @param uint8_t keyboard_mode
8883 ** @param xcb_window_t confine_to
8884 ** @param xcb_cursor_t cursor
8885 ** @param uint8_t button
8886 ** @param uint16_t modifiers
8887 ** @returns xcb_void_cookie_t
8888 **
8889 *****************************************************************************/
8890
8891xcb_void_cookie_t
8892xcb_grab_button (xcb_connection_t *c /**< */,
8893 uint8_t owner_events /**< */,
8894 xcb_window_t grab_window /**< */,
8895 uint16_t event_mask /**< */,
8896 uint8_t pointer_mode /**< */,
8897 uint8_t keyboard_mode /**< */,
8898 xcb_window_t confine_to /**< */,
8899 xcb_cursor_t cursor /**< */,
8900 uint8_t button /**< */,
8901 uint16_t modifiers /**< */);
8902
8903/**
8904 *
8905 * @param c The connection
8906 * @return A cookie
8907 *
8908 * Delivers a request to the X server.
8909 *
8910 * This form can be used only if the request will not cause
8911 * a reply to be generated. Any returned error will be
8912 * saved for handling by xcb_request_check().
8913 */
8914
8915/*****************************************************************************
8916 **
8917 ** xcb_void_cookie_t xcb_ungrab_button_checked
8918 **
8919 ** @param xcb_connection_t *c
8920 ** @param uint8_t button
8921 ** @param xcb_window_t grab_window
8922 ** @param uint16_t modifiers
8923 ** @returns xcb_void_cookie_t
8924 **
8925 *****************************************************************************/
8926
8927xcb_void_cookie_t
8928xcb_ungrab_button_checked (xcb_connection_t *c /**< */,
8929 uint8_t button /**< */,
8930 xcb_window_t grab_window /**< */,
8931 uint16_t modifiers /**< */);
8932
8933/**
8934 *
8935 * @param c The connection
8936 * @return A cookie
8937 *
8938 * Delivers a request to the X server.
8939 *
8940 */
8941
8942/*****************************************************************************
8943 **
8944 ** xcb_void_cookie_t xcb_ungrab_button
8945 **
8946 ** @param xcb_connection_t *c
8947 ** @param uint8_t button
8948 ** @param xcb_window_t grab_window
8949 ** @param uint16_t modifiers
8950 ** @returns xcb_void_cookie_t
8951 **
8952 *****************************************************************************/
8953
8954xcb_void_cookie_t
8955xcb_ungrab_button (xcb_connection_t *c /**< */,
8956 uint8_t button /**< */,
8957 xcb_window_t grab_window /**< */,
8958 uint16_t modifiers /**< */);
8959
8960/**
8961 *
8962 * @param c The connection
8963 * @return A cookie
8964 *
8965 * Delivers a request to the X server.
8966 *
8967 * This form can be used only if the request will not cause
8968 * a reply to be generated. Any returned error will be
8969 * saved for handling by xcb_request_check().
8970 */
8971
8972/*****************************************************************************
8973 **
8974 ** xcb_void_cookie_t xcb_change_active_pointer_grab_checked
8975 **
8976 ** @param xcb_connection_t *c
8977 ** @param xcb_cursor_t cursor
8978 ** @param xcb_timestamp_t time
8979 ** @param uint16_t event_mask
8980 ** @returns xcb_void_cookie_t
8981 **
8982 *****************************************************************************/
8983
8984xcb_void_cookie_t
8985xcb_change_active_pointer_grab_checked (xcb_connection_t *c /**< */,
8986 xcb_cursor_t cursor /**< */,
8987 xcb_timestamp_t time /**< */,
8988 uint16_t event_mask /**< */);
8989
8990/**
8991 *
8992 * @param c The connection
8993 * @return A cookie
8994 *
8995 * Delivers a request to the X server.
8996 *
8997 */
8998
8999/*****************************************************************************
9000 **
9001 ** xcb_void_cookie_t xcb_change_active_pointer_grab
9002 **
9003 ** @param xcb_connection_t *c
9004 ** @param xcb_cursor_t cursor
9005 ** @param xcb_timestamp_t time
9006 ** @param uint16_t event_mask
9007 ** @returns xcb_void_cookie_t
9008 **
9009 *****************************************************************************/
9010
9011xcb_void_cookie_t
9012xcb_change_active_pointer_grab (xcb_connection_t *c /**< */,
9013 xcb_cursor_t cursor /**< */,
9014 xcb_timestamp_t time /**< */,
9015 uint16_t event_mask /**< */);
9016
9017/**
9018 * @brief Grab the keyboard
9019 *
9020 * @param c The connection
9021 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
9022 * reported to the \a grab_window.
9023 * @param grab_window Specifies the window on which the pointer should be grabbed.
9024 * @param time Timestamp to avoid race conditions when running X over the network.
9025 * \n
9026 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
9027 * time.
9028 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
9029 * @param pointer_mode \n
9030 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
9031 * @param keyboard_mode \n
9032 * @return A cookie
9033 *
9034 * Actively grabs control of the keyboard and generates FocusIn and FocusOut
9035 * events. Further key events are reported only to the grabbing client.
9036 *
9037 * Any active keyboard grab by this client is overridden. If the keyboard is
9038 * actively grabbed by some other client, `AlreadyGrabbed` is returned. If
9039 * \a grab_window is not viewable, `GrabNotViewable` is returned. If the keyboard
9040 * is frozen by an active grab of another client, `GrabFrozen` is returned. If the
9041 * specified \a time is earlier than the last-keyboard-grab time or later than the
9042 * current X server time, `GrabInvalidTime` is returned. Otherwise, the
9043 * last-keyboard-grab time is set to the specified time.
9044 *
9045 */
9046
9047/*****************************************************************************
9048 **
9049 ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard
9050 **
9051 ** @param xcb_connection_t *c
9052 ** @param uint8_t owner_events
9053 ** @param xcb_window_t grab_window
9054 ** @param xcb_timestamp_t time
9055 ** @param uint8_t pointer_mode
9056 ** @param uint8_t keyboard_mode
9057 ** @returns xcb_grab_keyboard_cookie_t
9058 **
9059 *****************************************************************************/
9060
9061xcb_grab_keyboard_cookie_t
9062xcb_grab_keyboard (xcb_connection_t *c /**< */,
9063 uint8_t owner_events /**< */,
9064 xcb_window_t grab_window /**< */,
9065 xcb_timestamp_t time /**< */,
9066 uint8_t pointer_mode /**< */,
9067 uint8_t keyboard_mode /**< */);
9068
9069/**
9070 * @brief Grab the keyboard
9071 *
9072 * @param c The connection
9073 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
9074 * reported to the \a grab_window.
9075 * @param grab_window Specifies the window on which the pointer should be grabbed.
9076 * @param time Timestamp to avoid race conditions when running X over the network.
9077 * \n
9078 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
9079 * time.
9080 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
9081 * @param pointer_mode \n
9082 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
9083 * @param keyboard_mode \n
9084 * @return A cookie
9085 *
9086 * Actively grabs control of the keyboard and generates FocusIn and FocusOut
9087 * events. Further key events are reported only to the grabbing client.
9088 *
9089 * Any active keyboard grab by this client is overridden. If the keyboard is
9090 * actively grabbed by some other client, `AlreadyGrabbed` is returned. If
9091 * \a grab_window is not viewable, `GrabNotViewable` is returned. If the keyboard
9092 * is frozen by an active grab of another client, `GrabFrozen` is returned. If the
9093 * specified \a time is earlier than the last-keyboard-grab time or later than the
9094 * current X server time, `GrabInvalidTime` is returned. Otherwise, the
9095 * last-keyboard-grab time is set to the specified time.
9096 *
9097 * This form can be used only if the request will cause
9098 * a reply to be generated. Any returned error will be
9099 * placed in the event queue.
9100 */
9101
9102/*****************************************************************************
9103 **
9104 ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard_unchecked
9105 **
9106 ** @param xcb_connection_t *c
9107 ** @param uint8_t owner_events
9108 ** @param xcb_window_t grab_window
9109 ** @param xcb_timestamp_t time
9110 ** @param uint8_t pointer_mode
9111 ** @param uint8_t keyboard_mode
9112 ** @returns xcb_grab_keyboard_cookie_t
9113 **
9114 *****************************************************************************/
9115
9116xcb_grab_keyboard_cookie_t
9117xcb_grab_keyboard_unchecked (xcb_connection_t *c /**< */,
9118 uint8_t owner_events /**< */,
9119 xcb_window_t grab_window /**< */,
9120 xcb_timestamp_t time /**< */,
9121 uint8_t pointer_mode /**< */,
9122 uint8_t keyboard_mode /**< */);
9123
9124/**
9125 * Return the reply
9126 * @param c The connection
9127 * @param cookie The cookie
9128 * @param e The xcb_generic_error_t supplied
9129 *
9130 * Returns the reply of the request asked by
9131 *
9132 * The parameter @p e supplied to this function must be NULL if
9133 * xcb_grab_keyboard_unchecked(). is used.
9134 * Otherwise, it stores the error if any.
9135 *
9136 * The returned value must be freed by the caller using free().
9137 */
9138
9139/*****************************************************************************
9140 **
9141 ** xcb_grab_keyboard_reply_t * xcb_grab_keyboard_reply
9142 **
9143 ** @param xcb_connection_t *c
9144 ** @param xcb_grab_keyboard_cookie_t cookie
9145 ** @param xcb_generic_error_t **e
9146 ** @returns xcb_grab_keyboard_reply_t *
9147 **
9148 *****************************************************************************/
9149
9150xcb_grab_keyboard_reply_t *
9151xcb_grab_keyboard_reply (xcb_connection_t *c /**< */,
9152 xcb_grab_keyboard_cookie_t cookie /**< */,
9153 xcb_generic_error_t **e /**< */);
9154
9155/**
9156 *
9157 * @param c The connection
9158 * @return A cookie
9159 *
9160 * Delivers a request to the X server.
9161 *
9162 * This form can be used only if the request will not cause
9163 * a reply to be generated. Any returned error will be
9164 * saved for handling by xcb_request_check().
9165 */
9166
9167/*****************************************************************************
9168 **
9169 ** xcb_void_cookie_t xcb_ungrab_keyboard_checked
9170 **
9171 ** @param xcb_connection_t *c
9172 ** @param xcb_timestamp_t time
9173 ** @returns xcb_void_cookie_t
9174 **
9175 *****************************************************************************/
9176
9177xcb_void_cookie_t
9178xcb_ungrab_keyboard_checked (xcb_connection_t *c /**< */,
9179 xcb_timestamp_t time /**< */);
9180
9181/**
9182 *
9183 * @param c The connection
9184 * @return A cookie
9185 *
9186 * Delivers a request to the X server.
9187 *
9188 */
9189
9190/*****************************************************************************
9191 **
9192 ** xcb_void_cookie_t xcb_ungrab_keyboard
9193 **
9194 ** @param xcb_connection_t *c
9195 ** @param xcb_timestamp_t time
9196 ** @returns xcb_void_cookie_t
9197 **
9198 *****************************************************************************/
9199
9200xcb_void_cookie_t
9201xcb_ungrab_keyboard (xcb_connection_t *c /**< */,
9202 xcb_timestamp_t time /**< */);
9203
9204/**
9205 * @brief Grab keyboard key(s)
9206 *
9207 * @param c The connection
9208 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
9209 * reported to the \a grab_window.
9210 * @param grab_window Specifies the window on which the pointer should be grabbed.
9211 * @param modifiers The modifiers to grab.
9212 * \n
9213 * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all
9214 * possible modifier combinations.
9215 * @param key The keycode of the key to grab.
9216 * \n
9217 * The special value `XCB_GRAB_ANY` means grab any key.
9218 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
9219 * @param pointer_mode \n
9220 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
9221 * @param keyboard_mode \n
9222 * @return A cookie
9223 *
9224 * Establishes a passive grab on the keyboard. In the future, the keyboard is
9225 * actively grabbed (as for `GrabKeyboard`), the last-keyboard-grab time is set to
9226 * the time at which the key was pressed (as transmitted in the KeyPress event),
9227 * and the KeyPress event is reported if all of the following conditions are true:
9228 *
9229 * The keyboard is not grabbed and the specified key (which can itself be a
9230 * modifier key) is logically pressed when the specified modifier keys are
9231 * logically down, and no other modifier keys are logically down.
9232 *
9233 * Either the grab_window is an ancestor of (or is) the focus window, or the
9234 * grab_window is a descendant of the focus window and contains the pointer.
9235 *
9236 * A passive grab on the same key combination does not exist on any ancestor of
9237 * grab_window.
9238 *
9239 * The interpretation of the remaining arguments is as for XGrabKeyboard. The active grab is terminated
9240 * automatically when the logical state of the keyboard has the specified key released (independent of the
9241 * logical state of the modifier keys), at which point a KeyRelease event is reported to the grabbing window.
9242 *
9243 * Note that the logical state of a device (as seen by client applications) may lag the physical state if
9244 * device event processing is frozen.
9245 *
9246 * A modifiers argument of AnyModifier is equivalent to issuing the request for all possible modifier combinations (including the combination of no modifiers). It is not required that all modifiers specified
9247 * have currently assigned KeyCodes. A keycode argument of AnyKey is equivalent to issuing the request for
9248 * all possible KeyCodes. Otherwise, the specified keycode must be in the range specified by min_keycode
9249 * and max_keycode in the connection setup, or a BadValue error results.
9250 *
9251 * If some other client has issued a XGrabKey with the same key combination on the same window, a BadAccess
9252 * error results. When using AnyModifier or AnyKey, the request fails completely, and a BadAccess error
9253 * results (no grabs are established) if there is a conflicting grab for any combination.
9254 *
9255 * This form can be used only if the request will not cause
9256 * a reply to be generated. Any returned error will be
9257 * saved for handling by xcb_request_check().
9258 */
9259
9260/*****************************************************************************
9261 **
9262 ** xcb_void_cookie_t xcb_grab_key_checked
9263 **
9264 ** @param xcb_connection_t *c
9265 ** @param uint8_t owner_events
9266 ** @param xcb_window_t grab_window
9267 ** @param uint16_t modifiers
9268 ** @param xcb_keycode_t key
9269 ** @param uint8_t pointer_mode
9270 ** @param uint8_t keyboard_mode
9271 ** @returns xcb_void_cookie_t
9272 **
9273 *****************************************************************************/
9274
9275xcb_void_cookie_t
9276xcb_grab_key_checked (xcb_connection_t *c /**< */,
9277 uint8_t owner_events /**< */,
9278 xcb_window_t grab_window /**< */,
9279 uint16_t modifiers /**< */,
9280 xcb_keycode_t key /**< */,
9281 uint8_t pointer_mode /**< */,
9282 uint8_t keyboard_mode /**< */);
9283
9284/**
9285 * @brief Grab keyboard key(s)
9286 *
9287 * @param c The connection
9288 * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not
9289 * reported to the \a grab_window.
9290 * @param grab_window Specifies the window on which the pointer should be grabbed.
9291 * @param modifiers The modifiers to grab.
9292 * \n
9293 * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all
9294 * possible modifier combinations.
9295 * @param key The keycode of the key to grab.
9296 * \n
9297 * The special value `XCB_GRAB_ANY` means grab any key.
9298 * @param pointer_mode A bitmask of #xcb_grab_mode_t values.
9299 * @param pointer_mode \n
9300 * @param keyboard_mode A bitmask of #xcb_grab_mode_t values.
9301 * @param keyboard_mode \n
9302 * @return A cookie
9303 *
9304 * Establishes a passive grab on the keyboard. In the future, the keyboard is
9305 * actively grabbed (as for `GrabKeyboard`), the last-keyboard-grab time is set to
9306 * the time at which the key was pressed (as transmitted in the KeyPress event),
9307 * and the KeyPress event is reported if all of the following conditions are true:
9308 *
9309 * The keyboard is not grabbed and the specified key (which can itself be a
9310 * modifier key) is logically pressed when the specified modifier keys are
9311 * logically down, and no other modifier keys are logically down.
9312 *
9313 * Either the grab_window is an ancestor of (or is) the focus window, or the
9314 * grab_window is a descendant of the focus window and contains the pointer.
9315 *
9316 * A passive grab on the same key combination does not exist on any ancestor of
9317 * grab_window.
9318 *
9319 * The interpretation of the remaining arguments is as for XGrabKeyboard. The active grab is terminated
9320 * automatically when the logical state of the keyboard has the specified key released (independent of the
9321 * logical state of the modifier keys), at which point a KeyRelease event is reported to the grabbing window.
9322 *
9323 * Note that the logical state of a device (as seen by client applications) may lag the physical state if
9324 * device event processing is frozen.
9325 *
9326 * A modifiers argument of AnyModifier is equivalent to issuing the request for all possible modifier combinations (including the combination of no modifiers). It is not required that all modifiers specified
9327 * have currently assigned KeyCodes. A keycode argument of AnyKey is equivalent to issuing the request for
9328 * all possible KeyCodes. Otherwise, the specified keycode must be in the range specified by min_keycode
9329 * and max_keycode in the connection setup, or a BadValue error results.
9330 *
9331 * If some other client has issued a XGrabKey with the same key combination on the same window, a BadAccess
9332 * error results. When using AnyModifier or AnyKey, the request fails completely, and a BadAccess error
9333 * results (no grabs are established) if there is a conflicting grab for any combination.
9334 *
9335 */
9336
9337/*****************************************************************************
9338 **
9339 ** xcb_void_cookie_t xcb_grab_key
9340 **
9341 ** @param xcb_connection_t *c
9342 ** @param uint8_t owner_events
9343 ** @param xcb_window_t grab_window
9344 ** @param uint16_t modifiers
9345 ** @param xcb_keycode_t key
9346 ** @param uint8_t pointer_mode
9347 ** @param uint8_t keyboard_mode
9348 ** @returns xcb_void_cookie_t
9349 **
9350 *****************************************************************************/
9351
9352xcb_void_cookie_t
9353xcb_grab_key (xcb_connection_t *c /**< */,
9354 uint8_t owner_events /**< */,
9355 xcb_window_t grab_window /**< */,
9356 uint16_t modifiers /**< */,
9357 xcb_keycode_t key /**< */,
9358 uint8_t pointer_mode /**< */,
9359 uint8_t keyboard_mode /**< */);
9360
9361/**
9362 * @brief release a key combination
9363 *
9364 * @param c The connection
9365 * @param key The keycode of the specified key combination.
9366 * \n
9367 * Using the special value `XCB_GRAB_ANY` means releasing all possible key codes.
9368 * @param grab_window The window on which the grabbed key combination will be released.
9369 * @param modifiers The modifiers of the specified key combination.
9370 * \n
9371 * Using the special value `XCB_MOD_MASK_ANY` means releasing the key combination
9372 * with every possible modifier combination.
9373 * @return A cookie
9374 *
9375 * Releases the key combination on \a grab_window if you grabbed it using
9376 * `xcb_grab_key` before.
9377 *
9378 * This form can be used only if the request will not cause
9379 * a reply to be generated. Any returned error will be
9380 * saved for handling by xcb_request_check().
9381 */
9382
9383/*****************************************************************************
9384 **
9385 ** xcb_void_cookie_t xcb_ungrab_key_checked
9386 **
9387 ** @param xcb_connection_t *c
9388 ** @param xcb_keycode_t key
9389 ** @param xcb_window_t grab_window
9390 ** @param uint16_t modifiers
9391 ** @returns xcb_void_cookie_t
9392 **
9393 *****************************************************************************/
9394
9395xcb_void_cookie_t
9396xcb_ungrab_key_checked (xcb_connection_t *c /**< */,
9397 xcb_keycode_t key /**< */,
9398 xcb_window_t grab_window /**< */,
9399 uint16_t modifiers /**< */);
9400
9401/**
9402 * @brief release a key combination
9403 *
9404 * @param c The connection
9405 * @param key The keycode of the specified key combination.
9406 * \n
9407 * Using the special value `XCB_GRAB_ANY` means releasing all possible key codes.
9408 * @param grab_window The window on which the grabbed key combination will be released.
9409 * @param modifiers The modifiers of the specified key combination.
9410 * \n
9411 * Using the special value `XCB_MOD_MASK_ANY` means releasing the key combination
9412 * with every possible modifier combination.
9413 * @return A cookie
9414 *
9415 * Releases the key combination on \a grab_window if you grabbed it using
9416 * `xcb_grab_key` before.
9417 *
9418 */
9419
9420/*****************************************************************************
9421 **
9422 ** xcb_void_cookie_t xcb_ungrab_key
9423 **
9424 ** @param xcb_connection_t *c
9425 ** @param xcb_keycode_t key
9426 ** @param xcb_window_t grab_window
9427 ** @param uint16_t modifiers
9428 ** @returns xcb_void_cookie_t
9429 **
9430 *****************************************************************************/
9431
9432xcb_void_cookie_t
9433xcb_ungrab_key (xcb_connection_t *c /**< */,
9434 xcb_keycode_t key /**< */,
9435 xcb_window_t grab_window /**< */,
9436 uint16_t modifiers /**< */);
9437
9438/**
9439 * @brief release queued events
9440 *
9441 * @param c The connection
9442 * @param mode A bitmask of #xcb_allow_t values.
9443 * @param mode \n
9444 * @param time Timestamp to avoid race conditions when running X over the network.
9445 * \n
9446 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
9447 * time.
9448 * @return A cookie
9449 *
9450 * Releases queued events if the client has caused a device (pointer/keyboard) to
9451 * freeze due to grabbing it actively. This request has no effect if \a time is
9452 * earlier than the last-grab time of the most recent active grab for this client
9453 * or if \a time is later than the current X server time.
9454 *
9455 * This form can be used only if the request will not cause
9456 * a reply to be generated. Any returned error will be
9457 * saved for handling by xcb_request_check().
9458 */
9459
9460/*****************************************************************************
9461 **
9462 ** xcb_void_cookie_t xcb_allow_events_checked
9463 **
9464 ** @param xcb_connection_t *c
9465 ** @param uint8_t mode
9466 ** @param xcb_timestamp_t time
9467 ** @returns xcb_void_cookie_t
9468 **
9469 *****************************************************************************/
9470
9471xcb_void_cookie_t
9472xcb_allow_events_checked (xcb_connection_t *c /**< */,
9473 uint8_t mode /**< */,
9474 xcb_timestamp_t time /**< */);
9475
9476/**
9477 * @brief release queued events
9478 *
9479 * @param c The connection
9480 * @param mode A bitmask of #xcb_allow_t values.
9481 * @param mode \n
9482 * @param time Timestamp to avoid race conditions when running X over the network.
9483 * \n
9484 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
9485 * time.
9486 * @return A cookie
9487 *
9488 * Releases queued events if the client has caused a device (pointer/keyboard) to
9489 * freeze due to grabbing it actively. This request has no effect if \a time is
9490 * earlier than the last-grab time of the most recent active grab for this client
9491 * or if \a time is later than the current X server time.
9492 *
9493 */
9494
9495/*****************************************************************************
9496 **
9497 ** xcb_void_cookie_t xcb_allow_events
9498 **
9499 ** @param xcb_connection_t *c
9500 ** @param uint8_t mode
9501 ** @param xcb_timestamp_t time
9502 ** @returns xcb_void_cookie_t
9503 **
9504 *****************************************************************************/
9505
9506xcb_void_cookie_t
9507xcb_allow_events (xcb_connection_t *c /**< */,
9508 uint8_t mode /**< */,
9509 xcb_timestamp_t time /**< */);
9510
9511/**
9512 *
9513 * @param c The connection
9514 * @return A cookie
9515 *
9516 * Delivers a request to the X server.
9517 *
9518 * This form can be used only if the request will not cause
9519 * a reply to be generated. Any returned error will be
9520 * saved for handling by xcb_request_check().
9521 */
9522
9523/*****************************************************************************
9524 **
9525 ** xcb_void_cookie_t xcb_grab_server_checked
9526 **
9527 ** @param xcb_connection_t *c
9528 ** @returns xcb_void_cookie_t
9529 **
9530 *****************************************************************************/
9531
9532xcb_void_cookie_t
9533xcb_grab_server_checked (xcb_connection_t *c /**< */);
9534
9535/**
9536 *
9537 * @param c The connection
9538 * @return A cookie
9539 *
9540 * Delivers a request to the X server.
9541 *
9542 */
9543
9544/*****************************************************************************
9545 **
9546 ** xcb_void_cookie_t xcb_grab_server
9547 **
9548 ** @param xcb_connection_t *c
9549 ** @returns xcb_void_cookie_t
9550 **
9551 *****************************************************************************/
9552
9553xcb_void_cookie_t
9554xcb_grab_server (xcb_connection_t *c /**< */);
9555
9556/**
9557 *
9558 * @param c The connection
9559 * @return A cookie
9560 *
9561 * Delivers a request to the X server.
9562 *
9563 * This form can be used only if the request will not cause
9564 * a reply to be generated. Any returned error will be
9565 * saved for handling by xcb_request_check().
9566 */
9567
9568/*****************************************************************************
9569 **
9570 ** xcb_void_cookie_t xcb_ungrab_server_checked
9571 **
9572 ** @param xcb_connection_t *c
9573 ** @returns xcb_void_cookie_t
9574 **
9575 *****************************************************************************/
9576
9577xcb_void_cookie_t
9578xcb_ungrab_server_checked (xcb_connection_t *c /**< */);
9579
9580/**
9581 *
9582 * @param c The connection
9583 * @return A cookie
9584 *
9585 * Delivers a request to the X server.
9586 *
9587 */
9588
9589/*****************************************************************************
9590 **
9591 ** xcb_void_cookie_t xcb_ungrab_server
9592 **
9593 ** @param xcb_connection_t *c
9594 ** @returns xcb_void_cookie_t
9595 **
9596 *****************************************************************************/
9597
9598xcb_void_cookie_t
9599xcb_ungrab_server (xcb_connection_t *c /**< */);
9600
9601/**
9602 * @brief get pointer coordinates
9603 *
9604 * @param c The connection
9605 * @param window A window to check if the pointer is on the same screen as \a window (see the
9606 * `same_screen` field in the reply).
9607 * @return A cookie
9608 *
9609 * Gets the root window the pointer is logically on and the pointer coordinates
9610 * relative to the root window's origin.
9611 *
9612 */
9613
9614/*****************************************************************************
9615 **
9616 ** xcb_query_pointer_cookie_t xcb_query_pointer
9617 **
9618 ** @param xcb_connection_t *c
9619 ** @param xcb_window_t window
9620 ** @returns xcb_query_pointer_cookie_t
9621 **
9622 *****************************************************************************/
9623
9624xcb_query_pointer_cookie_t
9625xcb_query_pointer (xcb_connection_t *c /**< */,
9626 xcb_window_t window /**< */);
9627
9628/**
9629 * @brief get pointer coordinates
9630 *
9631 * @param c The connection
9632 * @param window A window to check if the pointer is on the same screen as \a window (see the
9633 * `same_screen` field in the reply).
9634 * @return A cookie
9635 *
9636 * Gets the root window the pointer is logically on and the pointer coordinates
9637 * relative to the root window's origin.
9638 *
9639 * This form can be used only if the request will cause
9640 * a reply to be generated. Any returned error will be
9641 * placed in the event queue.
9642 */
9643
9644/*****************************************************************************
9645 **
9646 ** xcb_query_pointer_cookie_t xcb_query_pointer_unchecked
9647 **
9648 ** @param xcb_connection_t *c
9649 ** @param xcb_window_t window
9650 ** @returns xcb_query_pointer_cookie_t
9651 **
9652 *****************************************************************************/
9653
9654xcb_query_pointer_cookie_t
9655xcb_query_pointer_unchecked (xcb_connection_t *c /**< */,
9656 xcb_window_t window /**< */);
9657
9658/**
9659 * Return the reply
9660 * @param c The connection
9661 * @param cookie The cookie
9662 * @param e The xcb_generic_error_t supplied
9663 *
9664 * Returns the reply of the request asked by
9665 *
9666 * The parameter @p e supplied to this function must be NULL if
9667 * xcb_query_pointer_unchecked(). is used.
9668 * Otherwise, it stores the error if any.
9669 *
9670 * The returned value must be freed by the caller using free().
9671 */
9672
9673/*****************************************************************************
9674 **
9675 ** xcb_query_pointer_reply_t * xcb_query_pointer_reply
9676 **
9677 ** @param xcb_connection_t *c
9678 ** @param xcb_query_pointer_cookie_t cookie
9679 ** @param xcb_generic_error_t **e
9680 ** @returns xcb_query_pointer_reply_t *
9681 **
9682 *****************************************************************************/
9683
9684xcb_query_pointer_reply_t *
9685xcb_query_pointer_reply (xcb_connection_t *c /**< */,
9686 xcb_query_pointer_cookie_t cookie /**< */,
9687 xcb_generic_error_t **e /**< */);
9688
9689/**
9690 * Get the next element of the iterator
9691 * @param i Pointer to a xcb_timecoord_iterator_t
9692 *
9693 * Get the next element in the iterator. The member rem is
9694 * decreased by one. The member data points to the next
9695 * element. The member index is increased by sizeof(xcb_timecoord_t)
9696 */
9697
9698/*****************************************************************************
9699 **
9700 ** void xcb_timecoord_next
9701 **
9702 ** @param xcb_timecoord_iterator_t *i
9703 ** @returns void
9704 **
9705 *****************************************************************************/
9706
9707void
9708xcb_timecoord_next (xcb_timecoord_iterator_t *i /**< */);
9709
9710/**
9711 * Return the iterator pointing to the last element
9712 * @param i An xcb_timecoord_iterator_t
9713 * @return The iterator pointing to the last element
9714 *
9715 * Set the current element in the iterator to the last element.
9716 * The member rem is set to 0. The member data points to the
9717 * last element.
9718 */
9719
9720/*****************************************************************************
9721 **
9722 ** xcb_generic_iterator_t xcb_timecoord_end
9723 **
9724 ** @param xcb_timecoord_iterator_t i
9725 ** @returns xcb_generic_iterator_t
9726 **
9727 *****************************************************************************/
9728
9729xcb_generic_iterator_t
9730xcb_timecoord_end (xcb_timecoord_iterator_t i /**< */);
9731
9732int
9733xcb_get_motion_events_sizeof (const void *_buffer /**< */);
9734
9735/**
9736 *
9737 * @param c The connection
9738 * @return A cookie
9739 *
9740 * Delivers a request to the X server.
9741 *
9742 */
9743
9744/*****************************************************************************
9745 **
9746 ** xcb_get_motion_events_cookie_t xcb_get_motion_events
9747 **
9748 ** @param xcb_connection_t *c
9749 ** @param xcb_window_t window
9750 ** @param xcb_timestamp_t start
9751 ** @param xcb_timestamp_t stop
9752 ** @returns xcb_get_motion_events_cookie_t
9753 **
9754 *****************************************************************************/
9755
9756xcb_get_motion_events_cookie_t
9757xcb_get_motion_events (xcb_connection_t *c /**< */,
9758 xcb_window_t window /**< */,
9759 xcb_timestamp_t start /**< */,
9760 xcb_timestamp_t stop /**< */);
9761
9762/**
9763 *
9764 * @param c The connection
9765 * @return A cookie
9766 *
9767 * Delivers a request to the X server.
9768 *
9769 * This form can be used only if the request will cause
9770 * a reply to be generated. Any returned error will be
9771 * placed in the event queue.
9772 */
9773
9774/*****************************************************************************
9775 **
9776 ** xcb_get_motion_events_cookie_t xcb_get_motion_events_unchecked
9777 **
9778 ** @param xcb_connection_t *c
9779 ** @param xcb_window_t window
9780 ** @param xcb_timestamp_t start
9781 ** @param xcb_timestamp_t stop
9782 ** @returns xcb_get_motion_events_cookie_t
9783 **
9784 *****************************************************************************/
9785
9786xcb_get_motion_events_cookie_t
9787xcb_get_motion_events_unchecked (xcb_connection_t *c /**< */,
9788 xcb_window_t window /**< */,
9789 xcb_timestamp_t start /**< */,
9790 xcb_timestamp_t stop /**< */);
9791
9792
9793/*****************************************************************************
9794 **
9795 ** xcb_timecoord_t * xcb_get_motion_events_events
9796 **
9797 ** @param const xcb_get_motion_events_reply_t *R
9798 ** @returns xcb_timecoord_t *
9799 **
9800 *****************************************************************************/
9801
9802xcb_timecoord_t *
9803xcb_get_motion_events_events (const xcb_get_motion_events_reply_t *R /**< */);
9804
9805
9806/*****************************************************************************
9807 **
9808 ** int xcb_get_motion_events_events_length
9809 **
9810 ** @param const xcb_get_motion_events_reply_t *R
9811 ** @returns int
9812 **
9813 *****************************************************************************/
9814
9815int
9816xcb_get_motion_events_events_length (const xcb_get_motion_events_reply_t *R /**< */);
9817
9818
9819/*****************************************************************************
9820 **
9821 ** xcb_timecoord_iterator_t xcb_get_motion_events_events_iterator
9822 **
9823 ** @param const xcb_get_motion_events_reply_t *R
9824 ** @returns xcb_timecoord_iterator_t
9825 **
9826 *****************************************************************************/
9827
9828xcb_timecoord_iterator_t
9829xcb_get_motion_events_events_iterator (const xcb_get_motion_events_reply_t *R /**< */);
9830
9831/**
9832 * Return the reply
9833 * @param c The connection
9834 * @param cookie The cookie
9835 * @param e The xcb_generic_error_t supplied
9836 *
9837 * Returns the reply of the request asked by
9838 *
9839 * The parameter @p e supplied to this function must be NULL if
9840 * xcb_get_motion_events_unchecked(). is used.
9841 * Otherwise, it stores the error if any.
9842 *
9843 * The returned value must be freed by the caller using free().
9844 */
9845
9846/*****************************************************************************
9847 **
9848 ** xcb_get_motion_events_reply_t * xcb_get_motion_events_reply
9849 **
9850 ** @param xcb_connection_t *c
9851 ** @param xcb_get_motion_events_cookie_t cookie
9852 ** @param xcb_generic_error_t **e
9853 ** @returns xcb_get_motion_events_reply_t *
9854 **
9855 *****************************************************************************/
9856
9857xcb_get_motion_events_reply_t *
9858xcb_get_motion_events_reply (xcb_connection_t *c /**< */,
9859 xcb_get_motion_events_cookie_t cookie /**< */,
9860 xcb_generic_error_t **e /**< */);
9861
9862/**
9863 *
9864 * @param c The connection
9865 * @return A cookie
9866 *
9867 * Delivers a request to the X server.
9868 *
9869 */
9870
9871/*****************************************************************************
9872 **
9873 ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates
9874 **
9875 ** @param xcb_connection_t *c
9876 ** @param xcb_window_t src_window
9877 ** @param xcb_window_t dst_window
9878 ** @param int16_t src_x
9879 ** @param int16_t src_y
9880 ** @returns xcb_translate_coordinates_cookie_t
9881 **
9882 *****************************************************************************/
9883
9884xcb_translate_coordinates_cookie_t
9885xcb_translate_coordinates (xcb_connection_t *c /**< */,
9886 xcb_window_t src_window /**< */,
9887 xcb_window_t dst_window /**< */,
9888 int16_t src_x /**< */,
9889 int16_t src_y /**< */);
9890
9891/**
9892 *
9893 * @param c The connection
9894 * @return A cookie
9895 *
9896 * Delivers a request to the X server.
9897 *
9898 * This form can be used only if the request will cause
9899 * a reply to be generated. Any returned error will be
9900 * placed in the event queue.
9901 */
9902
9903/*****************************************************************************
9904 **
9905 ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates_unchecked
9906 **
9907 ** @param xcb_connection_t *c
9908 ** @param xcb_window_t src_window
9909 ** @param xcb_window_t dst_window
9910 ** @param int16_t src_x
9911 ** @param int16_t src_y
9912 ** @returns xcb_translate_coordinates_cookie_t
9913 **
9914 *****************************************************************************/
9915
9916xcb_translate_coordinates_cookie_t
9917xcb_translate_coordinates_unchecked (xcb_connection_t *c /**< */,
9918 xcb_window_t src_window /**< */,
9919 xcb_window_t dst_window /**< */,
9920 int16_t src_x /**< */,
9921 int16_t src_y /**< */);
9922
9923/**
9924 * Return the reply
9925 * @param c The connection
9926 * @param cookie The cookie
9927 * @param e The xcb_generic_error_t supplied
9928 *
9929 * Returns the reply of the request asked by
9930 *
9931 * The parameter @p e supplied to this function must be NULL if
9932 * xcb_translate_coordinates_unchecked(). is used.
9933 * Otherwise, it stores the error if any.
9934 *
9935 * The returned value must be freed by the caller using free().
9936 */
9937
9938/*****************************************************************************
9939 **
9940 ** xcb_translate_coordinates_reply_t * xcb_translate_coordinates_reply
9941 **
9942 ** @param xcb_connection_t *c
9943 ** @param xcb_translate_coordinates_cookie_t cookie
9944 ** @param xcb_generic_error_t **e
9945 ** @returns xcb_translate_coordinates_reply_t *
9946 **
9947 *****************************************************************************/
9948
9949xcb_translate_coordinates_reply_t *
9950xcb_translate_coordinates_reply (xcb_connection_t *c /**< */,
9951 xcb_translate_coordinates_cookie_t cookie /**< */,
9952 xcb_generic_error_t **e /**< */);
9953
9954/**
9955 * @brief move mouse pointer
9956 *
9957 * @param c The connection
9958 * @param src_window If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the
9959 * pointer is inside \a src_window and within the rectangle specified by (\a src_x,
9960 * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to
9961 * \a src_window.
9962 * @param dst_window If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the
9963 * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is
9964 * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y)
9965 * relative to the current position of the pointer.
9966 * @return A cookie
9967 *
9968 * Moves the mouse pointer to the specified position.
9969 *
9970 * If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the
9971 * pointer is inside \a src_window and within the rectangle specified by (\a src_x,
9972 * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to
9973 * \a src_window.
9974 *
9975 * If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the
9976 * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is
9977 * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y)
9978 * relative to the current position of the pointer.
9979 *
9980 * This form can be used only if the request will not cause
9981 * a reply to be generated. Any returned error will be
9982 * saved for handling by xcb_request_check().
9983 */
9984
9985/*****************************************************************************
9986 **
9987 ** xcb_void_cookie_t xcb_warp_pointer_checked
9988 **
9989 ** @param xcb_connection_t *c
9990 ** @param xcb_window_t src_window
9991 ** @param xcb_window_t dst_window
9992 ** @param int16_t src_x
9993 ** @param int16_t src_y
9994 ** @param uint16_t src_width
9995 ** @param uint16_t src_height
9996 ** @param int16_t dst_x
9997 ** @param int16_t dst_y
9998 ** @returns xcb_void_cookie_t
9999 **
10000 *****************************************************************************/
10001
10002xcb_void_cookie_t
10003xcb_warp_pointer_checked (xcb_connection_t *c /**< */,
10004 xcb_window_t src_window /**< */,
10005 xcb_window_t dst_window /**< */,
10006 int16_t src_x /**< */,
10007 int16_t src_y /**< */,
10008 uint16_t src_width /**< */,
10009 uint16_t src_height /**< */,
10010 int16_t dst_x /**< */,
10011 int16_t dst_y /**< */);
10012
10013/**
10014 * @brief move mouse pointer
10015 *
10016 * @param c The connection
10017 * @param src_window If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the
10018 * pointer is inside \a src_window and within the rectangle specified by (\a src_x,
10019 * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to
10020 * \a src_window.
10021 * @param dst_window If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the
10022 * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is
10023 * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y)
10024 * relative to the current position of the pointer.
10025 * @return A cookie
10026 *
10027 * Moves the mouse pointer to the specified position.
10028 *
10029 * If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the
10030 * pointer is inside \a src_window and within the rectangle specified by (\a src_x,
10031 * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to
10032 * \a src_window.
10033 *
10034 * If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the
10035 * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is
10036 * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y)
10037 * relative to the current position of the pointer.
10038 *
10039 */
10040
10041/*****************************************************************************
10042 **
10043 ** xcb_void_cookie_t xcb_warp_pointer
10044 **
10045 ** @param xcb_connection_t *c
10046 ** @param xcb_window_t src_window
10047 ** @param xcb_window_t dst_window
10048 ** @param int16_t src_x
10049 ** @param int16_t src_y
10050 ** @param uint16_t src_width
10051 ** @param uint16_t src_height
10052 ** @param int16_t dst_x
10053 ** @param int16_t dst_y
10054 ** @returns xcb_void_cookie_t
10055 **
10056 *****************************************************************************/
10057
10058xcb_void_cookie_t
10059xcb_warp_pointer (xcb_connection_t *c /**< */,
10060 xcb_window_t src_window /**< */,
10061 xcb_window_t dst_window /**< */,
10062 int16_t src_x /**< */,
10063 int16_t src_y /**< */,
10064 uint16_t src_width /**< */,
10065 uint16_t src_height /**< */,
10066 int16_t dst_x /**< */,
10067 int16_t dst_y /**< */);
10068
10069/**
10070 * @brief Sets input focus
10071 *
10072 * @param c The connection
10073 * @param revert_to A bitmask of #xcb_input_focus_t values.
10074 * @param revert_to Specifies what happens when the \a focus window becomes unviewable (if \a focus
10075 * is neither `XCB_NONE` nor `XCB_POINTER_ROOT`).
10076 * @param focus The window to focus. All keyboard events will be reported to this window. The
10077 * window must be viewable (TODO), or a `xcb_match_error_t` occurs (TODO).
10078 * \n
10079 * If \a focus is `XCB_NONE` (TODO), all keyboard events are
10080 * discarded until a new focus window is set.
10081 * \n
10082 * If \a focus is `XCB_POINTER_ROOT` (TODO), focus is on the root window of the
10083 * screen on which the pointer is on currently.
10084 * @param time Timestamp to avoid race conditions when running X over the network.
10085 * \n
10086 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
10087 * time.
10088 * @return A cookie
10089 *
10090 * Changes the input focus and the last-focus-change time. If the specified \a time
10091 * is earlier than the current last-focus-change time, the request is ignored (to
10092 * avoid race conditions when running X over the network).
10093 *
10094 * A FocusIn and FocusOut event is generated when focus is changed.
10095 *
10096 * This form can be used only if the request will not cause
10097 * a reply to be generated. Any returned error will be
10098 * saved for handling by xcb_request_check().
10099 */
10100
10101/*****************************************************************************
10102 **
10103 ** xcb_void_cookie_t xcb_set_input_focus_checked
10104 **
10105 ** @param xcb_connection_t *c
10106 ** @param uint8_t revert_to
10107 ** @param xcb_window_t focus
10108 ** @param xcb_timestamp_t time
10109 ** @returns xcb_void_cookie_t
10110 **
10111 *****************************************************************************/
10112
10113xcb_void_cookie_t
10114xcb_set_input_focus_checked (xcb_connection_t *c /**< */,
10115 uint8_t revert_to /**< */,
10116 xcb_window_t focus /**< */,
10117 xcb_timestamp_t time /**< */);
10118
10119/**
10120 * @brief Sets input focus
10121 *
10122 * @param c The connection
10123 * @param revert_to A bitmask of #xcb_input_focus_t values.
10124 * @param revert_to Specifies what happens when the \a focus window becomes unviewable (if \a focus
10125 * is neither `XCB_NONE` nor `XCB_POINTER_ROOT`).
10126 * @param focus The window to focus. All keyboard events will be reported to this window. The
10127 * window must be viewable (TODO), or a `xcb_match_error_t` occurs (TODO).
10128 * \n
10129 * If \a focus is `XCB_NONE` (TODO), all keyboard events are
10130 * discarded until a new focus window is set.
10131 * \n
10132 * If \a focus is `XCB_POINTER_ROOT` (TODO), focus is on the root window of the
10133 * screen on which the pointer is on currently.
10134 * @param time Timestamp to avoid race conditions when running X over the network.
10135 * \n
10136 * The special value `XCB_CURRENT_TIME` will be replaced with the current server
10137 * time.
10138 * @return A cookie
10139 *
10140 * Changes the input focus and the last-focus-change time. If the specified \a time
10141 * is earlier than the current last-focus-change time, the request is ignored (to
10142 * avoid race conditions when running X over the network).
10143 *
10144 * A FocusIn and FocusOut event is generated when focus is changed.
10145 *
10146 */
10147
10148/*****************************************************************************
10149 **
10150 ** xcb_void_cookie_t xcb_set_input_focus
10151 **
10152 ** @param xcb_connection_t *c
10153 ** @param uint8_t revert_to
10154 ** @param xcb_window_t focus
10155 ** @param xcb_timestamp_t time
10156 ** @returns xcb_void_cookie_t
10157 **
10158 *****************************************************************************/
10159
10160xcb_void_cookie_t
10161xcb_set_input_focus (xcb_connection_t *c /**< */,
10162 uint8_t revert_to /**< */,
10163 xcb_window_t focus /**< */,
10164 xcb_timestamp_t time /**< */);
10165
10166/**
10167 *
10168 * @param c The connection
10169 * @return A cookie
10170 *
10171 * Delivers a request to the X server.
10172 *
10173 */
10174
10175/*****************************************************************************
10176 **
10177 ** xcb_get_input_focus_cookie_t xcb_get_input_focus
10178 **
10179 ** @param xcb_connection_t *c
10180 ** @returns xcb_get_input_focus_cookie_t
10181 **
10182 *****************************************************************************/
10183
10184xcb_get_input_focus_cookie_t
10185xcb_get_input_focus (xcb_connection_t *c /**< */);
10186
10187/**
10188 *
10189 * @param c The connection
10190 * @return A cookie
10191 *
10192 * Delivers a request to the X server.
10193 *
10194 * This form can be used only if the request will cause
10195 * a reply to be generated. Any returned error will be
10196 * placed in the event queue.
10197 */
10198
10199/*****************************************************************************
10200 **
10201 ** xcb_get_input_focus_cookie_t xcb_get_input_focus_unchecked
10202 **
10203 ** @param xcb_connection_t *c
10204 ** @returns xcb_get_input_focus_cookie_t
10205 **
10206 *****************************************************************************/
10207
10208xcb_get_input_focus_cookie_t
10209xcb_get_input_focus_unchecked (xcb_connection_t *c /**< */);
10210
10211/**
10212 * Return the reply
10213 * @param c The connection
10214 * @param cookie The cookie
10215 * @param e The xcb_generic_error_t supplied
10216 *
10217 * Returns the reply of the request asked by
10218 *
10219 * The parameter @p e supplied to this function must be NULL if
10220 * xcb_get_input_focus_unchecked(). is used.
10221 * Otherwise, it stores the error if any.
10222 *
10223 * The returned value must be freed by the caller using free().
10224 */
10225
10226/*****************************************************************************
10227 **
10228 ** xcb_get_input_focus_reply_t * xcb_get_input_focus_reply
10229 **
10230 ** @param xcb_connection_t *c
10231 ** @param xcb_get_input_focus_cookie_t cookie
10232 ** @param xcb_generic_error_t **e
10233 ** @returns xcb_get_input_focus_reply_t *
10234 **
10235 *****************************************************************************/
10236
10237xcb_get_input_focus_reply_t *
10238xcb_get_input_focus_reply (xcb_connection_t *c /**< */,
10239 xcb_get_input_focus_cookie_t cookie /**< */,
10240 xcb_generic_error_t **e /**< */);
10241
10242/**
10243 *
10244 * @param c The connection
10245 * @return A cookie
10246 *
10247 * Delivers a request to the X server.
10248 *
10249 */
10250
10251/*****************************************************************************
10252 **
10253 ** xcb_query_keymap_cookie_t xcb_query_keymap
10254 **
10255 ** @param xcb_connection_t *c
10256 ** @returns xcb_query_keymap_cookie_t
10257 **
10258 *****************************************************************************/
10259
10260xcb_query_keymap_cookie_t
10261xcb_query_keymap (xcb_connection_t *c /**< */);
10262
10263/**
10264 *
10265 * @param c The connection
10266 * @return A cookie
10267 *
10268 * Delivers a request to the X server.
10269 *
10270 * This form can be used only if the request will cause
10271 * a reply to be generated. Any returned error will be
10272 * placed in the event queue.
10273 */
10274
10275/*****************************************************************************
10276 **
10277 ** xcb_query_keymap_cookie_t xcb_query_keymap_unchecked
10278 **
10279 ** @param xcb_connection_t *c
10280 ** @returns xcb_query_keymap_cookie_t
10281 **
10282 *****************************************************************************/
10283
10284xcb_query_keymap_cookie_t
10285xcb_query_keymap_unchecked (xcb_connection_t *c /**< */);
10286
10287/**
10288 * Return the reply
10289 * @param c The connection
10290 * @param cookie The cookie
10291 * @param e The xcb_generic_error_t supplied
10292 *
10293 * Returns the reply of the request asked by
10294 *
10295 * The parameter @p e supplied to this function must be NULL if
10296 * xcb_query_keymap_unchecked(). is used.
10297 * Otherwise, it stores the error if any.
10298 *
10299 * The returned value must be freed by the caller using free().
10300 */
10301
10302/*****************************************************************************
10303 **
10304 ** xcb_query_keymap_reply_t * xcb_query_keymap_reply
10305 **
10306 ** @param xcb_connection_t *c
10307 ** @param xcb_query_keymap_cookie_t cookie
10308 ** @param xcb_generic_error_t **e
10309 ** @returns xcb_query_keymap_reply_t *
10310 **
10311 *****************************************************************************/
10312
10313xcb_query_keymap_reply_t *
10314xcb_query_keymap_reply (xcb_connection_t *c /**< */,
10315 xcb_query_keymap_cookie_t cookie /**< */,
10316 xcb_generic_error_t **e /**< */);
10317
10318int
10319xcb_open_font_sizeof (const void *_buffer /**< */);
10320
10321/**
10322 * @brief opens a font
10323 *
10324 * @param c The connection
10325 * @param fid The ID with which you will refer to the font, created by `xcb_generate_id`.
10326 * @param name_len Length (in bytes) of \a name.
10327 * @param name A pattern describing an X core font.
10328 * @return A cookie
10329 *
10330 * Opens any X core font matching the given \a name (for example "-misc-fixed-*").
10331 *
10332 * Note that X core fonts are deprecated (but still supported) in favor of
10333 * client-side rendering using Xft.
10334 *
10335 * This form can be used only if the request will not cause
10336 * a reply to be generated. Any returned error will be
10337 * saved for handling by xcb_request_check().
10338 */
10339
10340/*****************************************************************************
10341 **
10342 ** xcb_void_cookie_t xcb_open_font_checked
10343 **
10344 ** @param xcb_connection_t *c
10345 ** @param xcb_font_t fid
10346 ** @param uint16_t name_len
10347 ** @param const char *name
10348 ** @returns xcb_void_cookie_t
10349 **
10350 *****************************************************************************/
10351
10352xcb_void_cookie_t
10353xcb_open_font_checked (xcb_connection_t *c /**< */,
10354 xcb_font_t fid /**< */,
10355 uint16_t name_len /**< */,
10356 const char *name /**< */);
10357
10358/**
10359 * @brief opens a font
10360 *
10361 * @param c The connection
10362 * @param fid The ID with which you will refer to the font, created by `xcb_generate_id`.
10363 * @param name_len Length (in bytes) of \a name.
10364 * @param name A pattern describing an X core font.
10365 * @return A cookie
10366 *
10367 * Opens any X core font matching the given \a name (for example "-misc-fixed-*").
10368 *
10369 * Note that X core fonts are deprecated (but still supported) in favor of
10370 * client-side rendering using Xft.
10371 *
10372 */
10373
10374/*****************************************************************************
10375 **
10376 ** xcb_void_cookie_t xcb_open_font
10377 **
10378 ** @param xcb_connection_t *c
10379 ** @param xcb_font_t fid
10380 ** @param uint16_t name_len
10381 ** @param const char *name
10382 ** @returns xcb_void_cookie_t
10383 **
10384 *****************************************************************************/
10385
10386xcb_void_cookie_t
10387xcb_open_font (xcb_connection_t *c /**< */,
10388 xcb_font_t fid /**< */,
10389 uint16_t name_len /**< */,
10390 const char *name /**< */);
10391
10392/**
10393 *
10394 * @param c The connection
10395 * @return A cookie
10396 *
10397 * Delivers a request to the X server.
10398 *
10399 * This form can be used only if the request will not cause
10400 * a reply to be generated. Any returned error will be
10401 * saved for handling by xcb_request_check().
10402 */
10403
10404/*****************************************************************************
10405 **
10406 ** xcb_void_cookie_t xcb_close_font_checked
10407 **
10408 ** @param xcb_connection_t *c
10409 ** @param xcb_font_t font
10410 ** @returns xcb_void_cookie_t
10411 **
10412 *****************************************************************************/
10413
10414xcb_void_cookie_t
10415xcb_close_font_checked (xcb_connection_t *c /**< */,
10416 xcb_font_t font /**< */);
10417
10418/**
10419 *
10420 * @param c The connection
10421 * @return A cookie
10422 *
10423 * Delivers a request to the X server.
10424 *
10425 */
10426
10427/*****************************************************************************
10428 **
10429 ** xcb_void_cookie_t xcb_close_font
10430 **
10431 ** @param xcb_connection_t *c
10432 ** @param xcb_font_t font
10433 ** @returns xcb_void_cookie_t
10434 **
10435 *****************************************************************************/
10436
10437xcb_void_cookie_t
10438xcb_close_font (xcb_connection_t *c /**< */,
10439 xcb_font_t font /**< */);
10440
10441/**
10442 * Get the next element of the iterator
10443 * @param i Pointer to a xcb_fontprop_iterator_t
10444 *
10445 * Get the next element in the iterator. The member rem is
10446 * decreased by one. The member data points to the next
10447 * element. The member index is increased by sizeof(xcb_fontprop_t)
10448 */
10449
10450/*****************************************************************************
10451 **
10452 ** void xcb_fontprop_next
10453 **
10454 ** @param xcb_fontprop_iterator_t *i
10455 ** @returns void
10456 **
10457 *****************************************************************************/
10458
10459void
10460xcb_fontprop_next (xcb_fontprop_iterator_t *i /**< */);
10461
10462/**
10463 * Return the iterator pointing to the last element
10464 * @param i An xcb_fontprop_iterator_t
10465 * @return The iterator pointing to the last element
10466 *
10467 * Set the current element in the iterator to the last element.
10468 * The member rem is set to 0. The member data points to the
10469 * last element.
10470 */
10471
10472/*****************************************************************************
10473 **
10474 ** xcb_generic_iterator_t xcb_fontprop_end
10475 **
10476 ** @param xcb_fontprop_iterator_t i
10477 ** @returns xcb_generic_iterator_t
10478 **
10479 *****************************************************************************/
10480
10481xcb_generic_iterator_t
10482xcb_fontprop_end (xcb_fontprop_iterator_t i /**< */);
10483
10484/**
10485 * Get the next element of the iterator
10486 * @param i Pointer to a xcb_charinfo_iterator_t
10487 *
10488 * Get the next element in the iterator. The member rem is
10489 * decreased by one. The member data points to the next
10490 * element. The member index is increased by sizeof(xcb_charinfo_t)
10491 */
10492
10493/*****************************************************************************
10494 **
10495 ** void xcb_charinfo_next
10496 **
10497 ** @param xcb_charinfo_iterator_t *i
10498 ** @returns void
10499 **
10500 *****************************************************************************/
10501
10502void
10503xcb_charinfo_next (xcb_charinfo_iterator_t *i /**< */);
10504
10505/**
10506 * Return the iterator pointing to the last element
10507 * @param i An xcb_charinfo_iterator_t
10508 * @return The iterator pointing to the last element
10509 *
10510 * Set the current element in the iterator to the last element.
10511 * The member rem is set to 0. The member data points to the
10512 * last element.
10513 */
10514
10515/*****************************************************************************
10516 **
10517 ** xcb_generic_iterator_t xcb_charinfo_end
10518 **
10519 ** @param xcb_charinfo_iterator_t i
10520 ** @returns xcb_generic_iterator_t
10521 **
10522 *****************************************************************************/
10523
10524xcb_generic_iterator_t
10525xcb_charinfo_end (xcb_charinfo_iterator_t i /**< */);
10526
10527int
10528xcb_query_font_sizeof (const void *_buffer /**< */);
10529
10530/**
10531 * @brief query font metrics
10532 *
10533 * @param c The connection
10534 * @param font The fontable (Font or Graphics Context) to query.
10535 * @return A cookie
10536 *
10537 * Queries information associated with the font.
10538 *
10539 */
10540
10541/*****************************************************************************
10542 **
10543 ** xcb_query_font_cookie_t xcb_query_font
10544 **
10545 ** @param xcb_connection_t *c
10546 ** @param xcb_fontable_t font
10547 ** @returns xcb_query_font_cookie_t
10548 **
10549 *****************************************************************************/
10550
10551xcb_query_font_cookie_t
10552xcb_query_font (xcb_connection_t *c /**< */,
10553 xcb_fontable_t font /**< */);
10554
10555/**
10556 * @brief query font metrics
10557 *
10558 * @param c The connection
10559 * @param font The fontable (Font or Graphics Context) to query.
10560 * @return A cookie
10561 *
10562 * Queries information associated with the font.
10563 *
10564 * This form can be used only if the request will cause
10565 * a reply to be generated. Any returned error will be
10566 * placed in the event queue.
10567 */
10568
10569/*****************************************************************************
10570 **
10571 ** xcb_query_font_cookie_t xcb_query_font_unchecked
10572 **
10573 ** @param xcb_connection_t *c
10574 ** @param xcb_fontable_t font
10575 ** @returns xcb_query_font_cookie_t
10576 **
10577 *****************************************************************************/
10578
10579xcb_query_font_cookie_t
10580xcb_query_font_unchecked (xcb_connection_t *c /**< */,
10581 xcb_fontable_t font /**< */);
10582
10583
10584/*****************************************************************************
10585 **
10586 ** xcb_fontprop_t * xcb_query_font_properties
10587 **
10588 ** @param const xcb_query_font_reply_t *R
10589 ** @returns xcb_fontprop_t *
10590 **
10591 *****************************************************************************/
10592
10593xcb_fontprop_t *
10594xcb_query_font_properties (const xcb_query_font_reply_t *R /**< */);
10595
10596
10597/*****************************************************************************
10598 **
10599 ** int xcb_query_font_properties_length
10600 **
10601 ** @param const xcb_query_font_reply_t *R
10602 ** @returns int
10603 **
10604 *****************************************************************************/
10605
10606int
10607xcb_query_font_properties_length (const xcb_query_font_reply_t *R /**< */);
10608
10609
10610/*****************************************************************************
10611 **
10612 ** xcb_fontprop_iterator_t xcb_query_font_properties_iterator
10613 **
10614 ** @param const xcb_query_font_reply_t *R
10615 ** @returns xcb_fontprop_iterator_t
10616 **
10617 *****************************************************************************/
10618
10619xcb_fontprop_iterator_t
10620xcb_query_font_properties_iterator (const xcb_query_font_reply_t *R /**< */);
10621
10622
10623/*****************************************************************************
10624 **
10625 ** xcb_charinfo_t * xcb_query_font_char_infos
10626 **
10627 ** @param const xcb_query_font_reply_t *R
10628 ** @returns xcb_charinfo_t *
10629 **
10630 *****************************************************************************/
10631
10632xcb_charinfo_t *
10633xcb_query_font_char_infos (const xcb_query_font_reply_t *R /**< */);
10634
10635
10636/*****************************************************************************
10637 **
10638 ** int xcb_query_font_char_infos_length
10639 **
10640 ** @param const xcb_query_font_reply_t *R
10641 ** @returns int
10642 **
10643 *****************************************************************************/
10644
10645int
10646xcb_query_font_char_infos_length (const xcb_query_font_reply_t *R /**< */);
10647
10648
10649/*****************************************************************************
10650 **
10651 ** xcb_charinfo_iterator_t xcb_query_font_char_infos_iterator
10652 **
10653 ** @param const xcb_query_font_reply_t *R
10654 ** @returns xcb_charinfo_iterator_t
10655 **
10656 *****************************************************************************/
10657
10658xcb_charinfo_iterator_t
10659xcb_query_font_char_infos_iterator (const xcb_query_font_reply_t *R /**< */);
10660
10661/**
10662 * Return the reply
10663 * @param c The connection
10664 * @param cookie The cookie
10665 * @param e The xcb_generic_error_t supplied
10666 *
10667 * Returns the reply of the request asked by
10668 *
10669 * The parameter @p e supplied to this function must be NULL if
10670 * xcb_query_font_unchecked(). is used.
10671 * Otherwise, it stores the error if any.
10672 *
10673 * The returned value must be freed by the caller using free().
10674 */
10675
10676/*****************************************************************************
10677 **
10678 ** xcb_query_font_reply_t * xcb_query_font_reply
10679 **
10680 ** @param xcb_connection_t *c
10681 ** @param xcb_query_font_cookie_t cookie
10682 ** @param xcb_generic_error_t **e
10683 ** @returns xcb_query_font_reply_t *
10684 **
10685 *****************************************************************************/
10686
10687xcb_query_font_reply_t *
10688xcb_query_font_reply (xcb_connection_t *c /**< */,
10689 xcb_query_font_cookie_t cookie /**< */,
10690 xcb_generic_error_t **e /**< */);
10691
10692int
10693xcb_query_text_extents_sizeof (const void *_buffer /**< */,
10694 uint32_t string_len /**< */);
10695
10696/**
10697 * @brief get text extents
10698 *
10699 * @param c The connection
10700 * @param font The \a font to calculate text extents in. You can also pass a graphics context.
10701 * @param string_len The number of characters in \a string.
10702 * @param string The text to get text extents for.
10703 * @return A cookie
10704 *
10705 * Query text extents from the X11 server. This request returns the bounding box
10706 * of the specified 16-bit character string in the specified \a font or the font
10707 * contained in the specified graphics context.
10708 *
10709 * `font_ascent` is set to the maximum of the ascent metrics of all characters in
10710 * the string. `font_descent` is set to the maximum of the descent metrics.
10711 * `overall_width` is set to the sum of the character-width metrics of all
10712 * characters in the string. For each character in the string, let W be the sum of
10713 * the character-width metrics of all characters preceding it in the string. Let L
10714 * be the left-side-bearing metric of the character plus W. Let R be the
10715 * right-side-bearing metric of the character plus W. The lbearing member is set
10716 * to the minimum L of all characters in the string. The rbearing member is set to
10717 * the maximum R.
10718 *
10719 * For fonts defined with linear indexing rather than 2-byte matrix indexing, each
10720 * `xcb_char2b_t` structure is interpreted as a 16-bit number with byte1 as the
10721 * most significant byte. If the font has no defined default character, undefined
10722 * characters in the string are taken to have all zero metrics.
10723 *
10724 * Characters with all zero metrics are ignored. If the font has no defined
10725 * default_char, the undefined characters in the string are also ignored.
10726 *
10727 */
10728
10729/*****************************************************************************
10730 **
10731 ** xcb_query_text_extents_cookie_t xcb_query_text_extents
10732 **
10733 ** @param xcb_connection_t *c
10734 ** @param xcb_fontable_t font
10735 ** @param uint32_t string_len
10736 ** @param const xcb_char2b_t *string
10737 ** @returns xcb_query_text_extents_cookie_t
10738 **
10739 *****************************************************************************/
10740
10741xcb_query_text_extents_cookie_t
10742xcb_query_text_extents (xcb_connection_t *c /**< */,
10743 xcb_fontable_t font /**< */,
10744 uint32_t string_len /**< */,
10745 const xcb_char2b_t *string /**< */);
10746
10747/**
10748 * @brief get text extents
10749 *
10750 * @param c The connection
10751 * @param font The \a font to calculate text extents in. You can also pass a graphics context.
10752 * @param string_len The number of characters in \a string.
10753 * @param string The text to get text extents for.
10754 * @return A cookie
10755 *
10756 * Query text extents from the X11 server. This request returns the bounding box
10757 * of the specified 16-bit character string in the specified \a font or the font
10758 * contained in the specified graphics context.
10759 *
10760 * `font_ascent` is set to the maximum of the ascent metrics of all characters in
10761 * the string. `font_descent` is set to the maximum of the descent metrics.
10762 * `overall_width` is set to the sum of the character-width metrics of all
10763 * characters in the string. For each character in the string, let W be the sum of
10764 * the character-width metrics of all characters preceding it in the string. Let L
10765 * be the left-side-bearing metric of the character plus W. Let R be the
10766 * right-side-bearing metric of the character plus W. The lbearing member is set
10767 * to the minimum L of all characters in the string. The rbearing member is set to
10768 * the maximum R.
10769 *
10770 * For fonts defined with linear indexing rather than 2-byte matrix indexing, each
10771 * `xcb_char2b_t` structure is interpreted as a 16-bit number with byte1 as the
10772 * most significant byte. If the font has no defined default character, undefined
10773 * characters in the string are taken to have all zero metrics.
10774 *
10775 * Characters with all zero metrics are ignored. If the font has no defined
10776 * default_char, the undefined characters in the string are also ignored.
10777 *
10778 * This form can be used only if the request will cause
10779 * a reply to be generated. Any returned error will be
10780 * placed in the event queue.
10781 */
10782
10783/*****************************************************************************
10784 **
10785 ** xcb_query_text_extents_cookie_t xcb_query_text_extents_unchecked
10786 **
10787 ** @param xcb_connection_t *c
10788 ** @param xcb_fontable_t font
10789 ** @param uint32_t string_len
10790 ** @param const xcb_char2b_t *string
10791 ** @returns xcb_query_text_extents_cookie_t
10792 **
10793 *****************************************************************************/
10794
10795xcb_query_text_extents_cookie_t
10796xcb_query_text_extents_unchecked (xcb_connection_t *c /**< */,
10797 xcb_fontable_t font /**< */,
10798 uint32_t string_len /**< */,
10799 const xcb_char2b_t *string /**< */);
10800
10801/**
10802 * Return the reply
10803 * @param c The connection
10804 * @param cookie The cookie
10805 * @param e The xcb_generic_error_t supplied
10806 *
10807 * Returns the reply of the request asked by
10808 *
10809 * The parameter @p e supplied to this function must be NULL if
10810 * xcb_query_text_extents_unchecked(). is used.
10811 * Otherwise, it stores the error if any.
10812 *
10813 * The returned value must be freed by the caller using free().
10814 */
10815
10816/*****************************************************************************
10817 **
10818 ** xcb_query_text_extents_reply_t * xcb_query_text_extents_reply
10819 **
10820 ** @param xcb_connection_t *c
10821 ** @param xcb_query_text_extents_cookie_t cookie
10822 ** @param xcb_generic_error_t **e
10823 ** @returns xcb_query_text_extents_reply_t *
10824 **
10825 *****************************************************************************/
10826
10827xcb_query_text_extents_reply_t *
10828xcb_query_text_extents_reply (xcb_connection_t *c /**< */,
10829 xcb_query_text_extents_cookie_t cookie /**< */,
10830 xcb_generic_error_t **e /**< */);
10831
10832int
10833xcb_str_sizeof (const void *_buffer /**< */);
10834
10835
10836/*****************************************************************************
10837 **
10838 ** char * xcb_str_name
10839 **
10840 ** @param const xcb_str_t *R
10841 ** @returns char *
10842 **
10843 *****************************************************************************/
10844
10845char *
10846xcb_str_name (const xcb_str_t *R /**< */);
10847
10848
10849/*****************************************************************************
10850 **
10851 ** int xcb_str_name_length
10852 **
10853 ** @param const xcb_str_t *R
10854 ** @returns int
10855 **
10856 *****************************************************************************/
10857
10858int
10859xcb_str_name_length (const xcb_str_t *R /**< */);
10860
10861
10862/*****************************************************************************
10863 **
10864 ** xcb_generic_iterator_t xcb_str_name_end
10865 **
10866 ** @param const xcb_str_t *R
10867 ** @returns xcb_generic_iterator_t
10868 **
10869 *****************************************************************************/
10870
10871xcb_generic_iterator_t
10872xcb_str_name_end (const xcb_str_t *R /**< */);
10873
10874/**
10875 * Get the next element of the iterator
10876 * @param i Pointer to a xcb_str_iterator_t
10877 *
10878 * Get the next element in the iterator. The member rem is
10879 * decreased by one. The member data points to the next
10880 * element. The member index is increased by sizeof(xcb_str_t)
10881 */
10882
10883/*****************************************************************************
10884 **
10885 ** void xcb_str_next
10886 **
10887 ** @param xcb_str_iterator_t *i
10888 ** @returns void
10889 **
10890 *****************************************************************************/
10891
10892void
10893xcb_str_next (xcb_str_iterator_t *i /**< */);
10894
10895/**
10896 * Return the iterator pointing to the last element
10897 * @param i An xcb_str_iterator_t
10898 * @return The iterator pointing to the last element
10899 *
10900 * Set the current element in the iterator to the last element.
10901 * The member rem is set to 0. The member data points to the
10902 * last element.
10903 */
10904
10905/*****************************************************************************
10906 **
10907 ** xcb_generic_iterator_t xcb_str_end
10908 **
10909 ** @param xcb_str_iterator_t i
10910 ** @returns xcb_generic_iterator_t
10911 **
10912 *****************************************************************************/
10913
10914xcb_generic_iterator_t
10915xcb_str_end (xcb_str_iterator_t i /**< */);
10916
10917int
10918xcb_list_fonts_sizeof (const void *_buffer /**< */);
10919
10920/**
10921 * @brief get matching font names
10922 *
10923 * @param c The connection
10924 * @param max_names The maximum number of fonts to be returned.
10925 * @param pattern_len The length (in bytes) of \a pattern.
10926 * @param pattern A font pattern, for example "-misc-fixed-*".
10927 * \n
10928 * The asterisk (*) is a wildcard for any number of characters. The question mark
10929 * (?) is a wildcard for a single character. Use of uppercase or lowercase does
10930 * not matter.
10931 * @return A cookie
10932 *
10933 * Gets a list of available font names which match the given \a pattern.
10934 *
10935 */
10936
10937/*****************************************************************************
10938 **
10939 ** xcb_list_fonts_cookie_t xcb_list_fonts
10940 **
10941 ** @param xcb_connection_t *c
10942 ** @param uint16_t max_names
10943 ** @param uint16_t pattern_len
10944 ** @param const char *pattern
10945 ** @returns xcb_list_fonts_cookie_t
10946 **
10947 *****************************************************************************/
10948
10949xcb_list_fonts_cookie_t
10950xcb_list_fonts (xcb_connection_t *c /**< */,
10951 uint16_t max_names /**< */,
10952 uint16_t pattern_len /**< */,
10953 const char *pattern /**< */);
10954
10955/**
10956 * @brief get matching font names
10957 *
10958 * @param c The connection
10959 * @param max_names The maximum number of fonts to be returned.
10960 * @param pattern_len The length (in bytes) of \a pattern.
10961 * @param pattern A font pattern, for example "-misc-fixed-*".
10962 * \n
10963 * The asterisk (*) is a wildcard for any number of characters. The question mark
10964 * (?) is a wildcard for a single character. Use of uppercase or lowercase does
10965 * not matter.
10966 * @return A cookie
10967 *
10968 * Gets a list of available font names which match the given \a pattern.
10969 *
10970 * This form can be used only if the request will cause
10971 * a reply to be generated. Any returned error will be
10972 * placed in the event queue.
10973 */
10974
10975/*****************************************************************************
10976 **
10977 ** xcb_list_fonts_cookie_t xcb_list_fonts_unchecked
10978 **
10979 ** @param xcb_connection_t *c
10980 ** @param uint16_t max_names
10981 ** @param uint16_t pattern_len
10982 ** @param const char *pattern
10983 ** @returns xcb_list_fonts_cookie_t
10984 **
10985 *****************************************************************************/
10986
10987xcb_list_fonts_cookie_t
10988xcb_list_fonts_unchecked (xcb_connection_t *c /**< */,
10989 uint16_t max_names /**< */,
10990 uint16_t pattern_len /**< */,
10991 const char *pattern /**< */);
10992
10993
10994/*****************************************************************************
10995 **
10996 ** int xcb_list_fonts_names_length
10997 **
10998 ** @param const xcb_list_fonts_reply_t *R
10999 ** @returns int
11000 **
11001 *****************************************************************************/
11002
11003int
11004xcb_list_fonts_names_length (const xcb_list_fonts_reply_t *R /**< */);
11005
11006
11007/*****************************************************************************
11008 **
11009 ** xcb_str_iterator_t xcb_list_fonts_names_iterator
11010 **
11011 ** @param const xcb_list_fonts_reply_t *R
11012 ** @returns xcb_str_iterator_t
11013 **
11014 *****************************************************************************/
11015
11016xcb_str_iterator_t
11017xcb_list_fonts_names_iterator (const xcb_list_fonts_reply_t *R /**< */);
11018
11019/**
11020 * Return the reply
11021 * @param c The connection
11022 * @param cookie The cookie
11023 * @param e The xcb_generic_error_t supplied
11024 *
11025 * Returns the reply of the request asked by
11026 *
11027 * The parameter @p e supplied to this function must be NULL if
11028 * xcb_list_fonts_unchecked(). is used.
11029 * Otherwise, it stores the error if any.
11030 *
11031 * The returned value must be freed by the caller using free().
11032 */
11033
11034/*****************************************************************************
11035 **
11036 ** xcb_list_fonts_reply_t * xcb_list_fonts_reply
11037 **
11038 ** @param xcb_connection_t *c
11039 ** @param xcb_list_fonts_cookie_t cookie
11040 ** @param xcb_generic_error_t **e
11041 ** @returns xcb_list_fonts_reply_t *
11042 **
11043 *****************************************************************************/
11044
11045xcb_list_fonts_reply_t *
11046xcb_list_fonts_reply (xcb_connection_t *c /**< */,
11047 xcb_list_fonts_cookie_t cookie /**< */,
11048 xcb_generic_error_t **e /**< */);
11049
11050int
11051xcb_list_fonts_with_info_sizeof (const void *_buffer /**< */);
11052
11053/**
11054 * @brief get matching font names and information
11055 *
11056 * @param c The connection
11057 * @param max_names The maximum number of fonts to be returned.
11058 * @param pattern_len The length (in bytes) of \a pattern.
11059 * @param pattern A font pattern, for example "-misc-fixed-*".
11060 * \n
11061 * The asterisk (*) is a wildcard for any number of characters. The question mark
11062 * (?) is a wildcard for a single character. Use of uppercase or lowercase does
11063 * not matter.
11064 * @return A cookie
11065 *
11066 * Gets a list of available font names which match the given \a pattern.
11067 *
11068 */
11069
11070/*****************************************************************************
11071 **
11072 ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info
11073 **
11074 ** @param xcb_connection_t *c
11075 ** @param uint16_t max_names
11076 ** @param uint16_t pattern_len
11077 ** @param const char *pattern
11078 ** @returns xcb_list_fonts_with_info_cookie_t
11079 **
11080 *****************************************************************************/
11081
11082xcb_list_fonts_with_info_cookie_t
11083xcb_list_fonts_with_info (xcb_connection_t *c /**< */,
11084 uint16_t max_names /**< */,
11085 uint16_t pattern_len /**< */,
11086 const char *pattern /**< */);
11087
11088/**
11089 * @brief get matching font names and information
11090 *
11091 * @param c The connection
11092 * @param max_names The maximum number of fonts to be returned.
11093 * @param pattern_len The length (in bytes) of \a pattern.
11094 * @param pattern A font pattern, for example "-misc-fixed-*".
11095 * \n
11096 * The asterisk (*) is a wildcard for any number of characters. The question mark
11097 * (?) is a wildcard for a single character. Use of uppercase or lowercase does
11098 * not matter.
11099 * @return A cookie
11100 *
11101 * Gets a list of available font names which match the given \a pattern.
11102 *
11103 * This form can be used only if the request will cause
11104 * a reply to be generated. Any returned error will be
11105 * placed in the event queue.
11106 */
11107
11108/*****************************************************************************
11109 **
11110 ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info_unchecked
11111 **
11112 ** @param xcb_connection_t *c
11113 ** @param uint16_t max_names
11114 ** @param uint16_t pattern_len
11115 ** @param const char *pattern
11116 ** @returns xcb_list_fonts_with_info_cookie_t
11117 **
11118 *****************************************************************************/
11119
11120xcb_list_fonts_with_info_cookie_t
11121xcb_list_fonts_with_info_unchecked (xcb_connection_t *c /**< */,
11122 uint16_t max_names /**< */,
11123 uint16_t pattern_len /**< */,
11124 const char *pattern /**< */);
11125
11126
11127/*****************************************************************************
11128 **
11129 ** xcb_fontprop_t * xcb_list_fonts_with_info_properties
11130 **
11131 ** @param const xcb_list_fonts_with_info_reply_t *R
11132 ** @returns xcb_fontprop_t *
11133 **
11134 *****************************************************************************/
11135
11136xcb_fontprop_t *
11137xcb_list_fonts_with_info_properties (const xcb_list_fonts_with_info_reply_t *R /**< */);
11138
11139
11140/*****************************************************************************
11141 **
11142 ** int xcb_list_fonts_with_info_properties_length
11143 **
11144 ** @param const xcb_list_fonts_with_info_reply_t *R
11145 ** @returns int
11146 **
11147 *****************************************************************************/
11148
11149int
11150xcb_list_fonts_with_info_properties_length (const xcb_list_fonts_with_info_reply_t *R /**< */);
11151
11152
11153/*****************************************************************************
11154 **
11155 ** xcb_fontprop_iterator_t xcb_list_fonts_with_info_properties_iterator
11156 **
11157 ** @param const xcb_list_fonts_with_info_reply_t *R
11158 ** @returns xcb_fontprop_iterator_t
11159 **
11160 *****************************************************************************/
11161
11162xcb_fontprop_iterator_t
11163xcb_list_fonts_with_info_properties_iterator (const xcb_list_fonts_with_info_reply_t *R /**< */);
11164
11165
11166/*****************************************************************************
11167 **
11168 ** char * xcb_list_fonts_with_info_name
11169 **
11170 ** @param const xcb_list_fonts_with_info_reply_t *R
11171 ** @returns char *
11172 **
11173 *****************************************************************************/
11174
11175char *
11176xcb_list_fonts_with_info_name (const xcb_list_fonts_with_info_reply_t *R /**< */);
11177
11178
11179/*****************************************************************************
11180 **
11181 ** int xcb_list_fonts_with_info_name_length
11182 **
11183 ** @param const xcb_list_fonts_with_info_reply_t *R
11184 ** @returns int
11185 **
11186 *****************************************************************************/
11187
11188int
11189xcb_list_fonts_with_info_name_length (const xcb_list_fonts_with_info_reply_t *R /**< */);
11190
11191
11192/*****************************************************************************
11193 **
11194 ** xcb_generic_iterator_t xcb_list_fonts_with_info_name_end
11195 **
11196 ** @param const xcb_list_fonts_with_info_reply_t *R
11197 ** @returns xcb_generic_iterator_t
11198 **
11199 *****************************************************************************/
11200
11201xcb_generic_iterator_t
11202xcb_list_fonts_with_info_name_end (const xcb_list_fonts_with_info_reply_t *R /**< */);
11203
11204/**
11205 * Return the reply
11206 * @param c The connection
11207 * @param cookie The cookie
11208 * @param e The xcb_generic_error_t supplied
11209 *
11210 * Returns the reply of the request asked by
11211 *
11212 * The parameter @p e supplied to this function must be NULL if
11213 * xcb_list_fonts_with_info_unchecked(). is used.
11214 * Otherwise, it stores the error if any.
11215 *
11216 * The returned value must be freed by the caller using free().
11217 */
11218
11219/*****************************************************************************
11220 **
11221 ** xcb_list_fonts_with_info_reply_t * xcb_list_fonts_with_info_reply
11222 **
11223 ** @param xcb_connection_t *c
11224 ** @param xcb_list_fonts_with_info_cookie_t cookie
11225 ** @param xcb_generic_error_t **e
11226 ** @returns xcb_list_fonts_with_info_reply_t *
11227 **
11228 *****************************************************************************/
11229
11230xcb_list_fonts_with_info_reply_t *
11231xcb_list_fonts_with_info_reply (xcb_connection_t *c /**< */,
11232 xcb_list_fonts_with_info_cookie_t cookie /**< */,
11233 xcb_generic_error_t **e /**< */);
11234
11235int
11236xcb_set_font_path_sizeof (const void *_buffer /**< */);
11237
11238/**
11239 *
11240 * @param c The connection
11241 * @return A cookie
11242 *
11243 * Delivers a request to the X server.
11244 *
11245 * This form can be used only if the request will not cause
11246 * a reply to be generated. Any returned error will be
11247 * saved for handling by xcb_request_check().
11248 */
11249
11250/*****************************************************************************
11251 **
11252 ** xcb_void_cookie_t xcb_set_font_path_checked
11253 **
11254 ** @param xcb_connection_t *c
11255 ** @param uint16_t font_qty
11256 ** @param const xcb_str_t *font
11257 ** @returns xcb_void_cookie_t
11258 **
11259 *****************************************************************************/
11260
11261xcb_void_cookie_t
11262xcb_set_font_path_checked (xcb_connection_t *c /**< */,
11263 uint16_t font_qty /**< */,
11264 const xcb_str_t *font /**< */);
11265
11266/**
11267 *
11268 * @param c The connection
11269 * @return A cookie
11270 *
11271 * Delivers a request to the X server.
11272 *
11273 */
11274
11275/*****************************************************************************
11276 **
11277 ** xcb_void_cookie_t xcb_set_font_path
11278 **
11279 ** @param xcb_connection_t *c
11280 ** @param uint16_t font_qty
11281 ** @param const xcb_str_t *font
11282 ** @returns xcb_void_cookie_t
11283 **
11284 *****************************************************************************/
11285
11286xcb_void_cookie_t
11287xcb_set_font_path (xcb_connection_t *c /**< */,
11288 uint16_t font_qty /**< */,
11289 const xcb_str_t *font /**< */);
11290
11291int
11292xcb_get_font_path_sizeof (const void *_buffer /**< */);
11293
11294/**
11295 *
11296 * @param c The connection
11297 * @return A cookie
11298 *
11299 * Delivers a request to the X server.
11300 *
11301 */
11302
11303/*****************************************************************************
11304 **
11305 ** xcb_get_font_path_cookie_t xcb_get_font_path
11306 **
11307 ** @param xcb_connection_t *c
11308 ** @returns xcb_get_font_path_cookie_t
11309 **
11310 *****************************************************************************/
11311
11312xcb_get_font_path_cookie_t
11313xcb_get_font_path (xcb_connection_t *c /**< */);
11314
11315/**
11316 *
11317 * @param c The connection
11318 * @return A cookie
11319 *
11320 * Delivers a request to the X server.
11321 *
11322 * This form can be used only if the request will cause
11323 * a reply to be generated. Any returned error will be
11324 * placed in the event queue.
11325 */
11326
11327/*****************************************************************************
11328 **
11329 ** xcb_get_font_path_cookie_t xcb_get_font_path_unchecked
11330 **
11331 ** @param xcb_connection_t *c
11332 ** @returns xcb_get_font_path_cookie_t
11333 **
11334 *****************************************************************************/
11335
11336xcb_get_font_path_cookie_t
11337xcb_get_font_path_unchecked (xcb_connection_t *c /**< */);
11338
11339
11340/*****************************************************************************
11341 **
11342 ** int xcb_get_font_path_path_length
11343 **
11344 ** @param const xcb_get_font_path_reply_t *R
11345 ** @returns int
11346 **
11347 *****************************************************************************/
11348
11349int
11350xcb_get_font_path_path_length (const xcb_get_font_path_reply_t *R /**< */);
11351
11352
11353/*****************************************************************************
11354 **
11355 ** xcb_str_iterator_t xcb_get_font_path_path_iterator
11356 **
11357 ** @param const xcb_get_font_path_reply_t *R
11358 ** @returns xcb_str_iterator_t
11359 **
11360 *****************************************************************************/
11361
11362xcb_str_iterator_t
11363xcb_get_font_path_path_iterator (const xcb_get_font_path_reply_t *R /**< */);
11364
11365/**
11366 * Return the reply
11367 * @param c The connection
11368 * @param cookie The cookie
11369 * @param e The xcb_generic_error_t supplied
11370 *
11371 * Returns the reply of the request asked by
11372 *
11373 * The parameter @p e supplied to this function must be NULL if
11374 * xcb_get_font_path_unchecked(). is used.
11375 * Otherwise, it stores the error if any.
11376 *
11377 * The returned value must be freed by the caller using free().
11378 */
11379
11380/*****************************************************************************
11381 **
11382 ** xcb_get_font_path_reply_t * xcb_get_font_path_reply
11383 **
11384 ** @param xcb_connection_t *c
11385 ** @param xcb_get_font_path_cookie_t cookie
11386 ** @param xcb_generic_error_t **e
11387 ** @returns xcb_get_font_path_reply_t *
11388 **
11389 *****************************************************************************/
11390
11391xcb_get_font_path_reply_t *
11392xcb_get_font_path_reply (xcb_connection_t *c /**< */,
11393 xcb_get_font_path_cookie_t cookie /**< */,
11394 xcb_generic_error_t **e /**< */);
11395
11396/**
11397 * @brief Creates a pixmap
11398 *
11399 * @param c The connection
11400 * @param depth TODO
11401 * @param pid The ID with which you will refer to the new pixmap, created by
11402 * `xcb_generate_id`.
11403 * @param drawable Drawable to get the screen from.
11404 * @param width The width of the new pixmap.
11405 * @param height The height of the new pixmap.
11406 * @return A cookie
11407 *
11408 * Creates a pixmap. The pixmap can only be used on the same screen as \a drawable
11409 * is on and only with drawables of the same \a depth.
11410 *
11411 * This form can be used only if the request will not cause
11412 * a reply to be generated. Any returned error will be
11413 * saved for handling by xcb_request_check().
11414 */
11415
11416/*****************************************************************************
11417 **
11418 ** xcb_void_cookie_t xcb_create_pixmap_checked
11419 **
11420 ** @param xcb_connection_t *c
11421 ** @param uint8_t depth
11422 ** @param xcb_pixmap_t pid
11423 ** @param xcb_drawable_t drawable
11424 ** @param uint16_t width
11425 ** @param uint16_t height
11426 ** @returns xcb_void_cookie_t
11427 **
11428 *****************************************************************************/
11429
11430xcb_void_cookie_t
11431xcb_create_pixmap_checked (xcb_connection_t *c /**< */,
11432 uint8_t depth /**< */,
11433 xcb_pixmap_t pid /**< */,
11434 xcb_drawable_t drawable /**< */,
11435 uint16_t width /**< */,
11436 uint16_t height /**< */);
11437
11438/**
11439 * @brief Creates a pixmap
11440 *
11441 * @param c The connection
11442 * @param depth TODO
11443 * @param pid The ID with which you will refer to the new pixmap, created by
11444 * `xcb_generate_id`.
11445 * @param drawable Drawable to get the screen from.
11446 * @param width The width of the new pixmap.
11447 * @param height The height of the new pixmap.
11448 * @return A cookie
11449 *
11450 * Creates a pixmap. The pixmap can only be used on the same screen as \a drawable
11451 * is on and only with drawables of the same \a depth.
11452 *
11453 */
11454
11455/*****************************************************************************
11456 **
11457 ** xcb_void_cookie_t xcb_create_pixmap
11458 **
11459 ** @param xcb_connection_t *c
11460 ** @param uint8_t depth
11461 ** @param xcb_pixmap_t pid
11462 ** @param xcb_drawable_t drawable
11463 ** @param uint16_t width
11464 ** @param uint16_t height
11465 ** @returns xcb_void_cookie_t
11466 **
11467 *****************************************************************************/
11468
11469xcb_void_cookie_t
11470xcb_create_pixmap (xcb_connection_t *c /**< */,
11471 uint8_t depth /**< */,
11472 xcb_pixmap_t pid /**< */,
11473 xcb_drawable_t drawable /**< */,
11474 uint16_t width /**< */,
11475 uint16_t height /**< */);
11476
11477/**
11478 * @brief Destroys a pixmap
11479 *
11480 * @param c The connection
11481 * @param pixmap The pixmap to destroy.
11482 * @return A cookie
11483 *
11484 * Deletes the association between the pixmap ID and the pixmap. The pixmap
11485 * storage will be freed when there are no more references to it.
11486 *
11487 * This form can be used only if the request will not cause
11488 * a reply to be generated. Any returned error will be
11489 * saved for handling by xcb_request_check().
11490 */
11491
11492/*****************************************************************************
11493 **
11494 ** xcb_void_cookie_t xcb_free_pixmap_checked
11495 **
11496 ** @param xcb_connection_t *c
11497 ** @param xcb_pixmap_t pixmap
11498 ** @returns xcb_void_cookie_t
11499 **
11500 *****************************************************************************/
11501
11502xcb_void_cookie_t
11503xcb_free_pixmap_checked (xcb_connection_t *c /**< */,
11504 xcb_pixmap_t pixmap /**< */);
11505
11506/**
11507 * @brief Destroys a pixmap
11508 *
11509 * @param c The connection
11510 * @param pixmap The pixmap to destroy.
11511 * @return A cookie
11512 *
11513 * Deletes the association between the pixmap ID and the pixmap. The pixmap
11514 * storage will be freed when there are no more references to it.
11515 *
11516 */
11517
11518/*****************************************************************************
11519 **
11520 ** xcb_void_cookie_t xcb_free_pixmap
11521 **
11522 ** @param xcb_connection_t *c
11523 ** @param xcb_pixmap_t pixmap
11524 ** @returns xcb_void_cookie_t
11525 **
11526 *****************************************************************************/
11527
11528xcb_void_cookie_t
11529xcb_free_pixmap (xcb_connection_t *c /**< */,
11530 xcb_pixmap_t pixmap /**< */);
11531
11532int
11533xcb_create_gc_sizeof (const void *_buffer /**< */);
11534
11535/**
11536 * @brief Creates a graphics context
11537 *
11538 * @param c The connection
11539 * @param cid The ID with which you will refer to the graphics context, created by
11540 * `xcb_generate_id`.
11541 * @param drawable Drawable to get the root/depth from.
11542 * @return A cookie
11543 *
11544 * Creates a graphics context. The graphics context can be used with any drawable
11545 * that has the same root and depth as the specified drawable.
11546 *
11547 * This form can be used only if the request will not cause
11548 * a reply to be generated. Any returned error will be
11549 * saved for handling by xcb_request_check().
11550 */
11551
11552/*****************************************************************************
11553 **
11554 ** xcb_void_cookie_t xcb_create_gc_checked
11555 **
11556 ** @param xcb_connection_t *c
11557 ** @param xcb_gcontext_t cid
11558 ** @param xcb_drawable_t drawable
11559 ** @param uint32_t value_mask
11560 ** @param const uint32_t *value_list
11561 ** @returns xcb_void_cookie_t
11562 **
11563 *****************************************************************************/
11564
11565xcb_void_cookie_t
11566xcb_create_gc_checked (xcb_connection_t *c /**< */,
11567 xcb_gcontext_t cid /**< */,
11568 xcb_drawable_t drawable /**< */,
11569 uint32_t value_mask /**< */,
11570 const uint32_t *value_list /**< */);
11571
11572/**
11573 * @brief Creates a graphics context
11574 *
11575 * @param c The connection
11576 * @param cid The ID with which you will refer to the graphics context, created by
11577 * `xcb_generate_id`.
11578 * @param drawable Drawable to get the root/depth from.
11579 * @return A cookie
11580 *
11581 * Creates a graphics context. The graphics context can be used with any drawable
11582 * that has the same root and depth as the specified drawable.
11583 *
11584 */
11585
11586/*****************************************************************************
11587 **
11588 ** xcb_void_cookie_t xcb_create_gc
11589 **
11590 ** @param xcb_connection_t *c
11591 ** @param xcb_gcontext_t cid
11592 ** @param xcb_drawable_t drawable
11593 ** @param uint32_t value_mask
11594 ** @param const uint32_t *value_list
11595 ** @returns xcb_void_cookie_t
11596 **
11597 *****************************************************************************/
11598
11599xcb_void_cookie_t
11600xcb_create_gc (xcb_connection_t *c /**< */,
11601 xcb_gcontext_t cid /**< */,
11602 xcb_drawable_t drawable /**< */,
11603 uint32_t value_mask /**< */,
11604 const uint32_t *value_list /**< */);
11605
11606int
11607xcb_change_gc_sizeof (const void *_buffer /**< */);
11608
11609/**
11610 * @brief change graphics context components
11611 *
11612 * @param c The connection
11613 * @param gc The graphics context to change.
11614 * @param value_mask A bitmask of #xcb_gc_t values.
11615 * @param value_mask \n
11616 * @param value_list Values for each of the components specified in the bitmask \a value_mask. The
11617 * order has to correspond to the order of possible \a value_mask bits. See the
11618 * example.
11619 * @return A cookie
11620 *
11621 * Changes the components specified by \a value_mask for the specified graphics context.
11622 *
11623 * This form can be used only if the request will not cause
11624 * a reply to be generated. Any returned error will be
11625 * saved for handling by xcb_request_check().
11626 */
11627
11628/*****************************************************************************
11629 **
11630 ** xcb_void_cookie_t xcb_change_gc_checked
11631 **
11632 ** @param xcb_connection_t *c
11633 ** @param xcb_gcontext_t gc
11634 ** @param uint32_t value_mask
11635 ** @param const uint32_t *value_list
11636 ** @returns xcb_void_cookie_t
11637 **
11638 *****************************************************************************/
11639
11640xcb_void_cookie_t
11641xcb_change_gc_checked (xcb_connection_t *c /**< */,
11642 xcb_gcontext_t gc /**< */,
11643 uint32_t value_mask /**< */,
11644 const uint32_t *value_list /**< */);
11645
11646/**
11647 * @brief change graphics context components
11648 *
11649 * @param c The connection
11650 * @param gc The graphics context to change.
11651 * @param value_mask A bitmask of #xcb_gc_t values.
11652 * @param value_mask \n
11653 * @param value_list Values for each of the components specified in the bitmask \a value_mask. The
11654 * order has to correspond to the order of possible \a value_mask bits. See the
11655 * example.
11656 * @return A cookie
11657 *
11658 * Changes the components specified by \a value_mask for the specified graphics context.
11659 *
11660 */
11661
11662/*****************************************************************************
11663 **
11664 ** xcb_void_cookie_t xcb_change_gc
11665 **
11666 ** @param xcb_connection_t *c
11667 ** @param xcb_gcontext_t gc
11668 ** @param uint32_t value_mask
11669 ** @param const uint32_t *value_list
11670 ** @returns xcb_void_cookie_t
11671 **
11672 *****************************************************************************/
11673
11674xcb_void_cookie_t
11675xcb_change_gc (xcb_connection_t *c /**< */,
11676 xcb_gcontext_t gc /**< */,
11677 uint32_t value_mask /**< */,
11678 const uint32_t *value_list /**< */);
11679
11680/**
11681 *
11682 * @param c The connection
11683 * @return A cookie
11684 *
11685 * Delivers a request to the X server.
11686 *
11687 * This form can be used only if the request will not cause
11688 * a reply to be generated. Any returned error will be
11689 * saved for handling by xcb_request_check().
11690 */
11691
11692/*****************************************************************************
11693 **
11694 ** xcb_void_cookie_t xcb_copy_gc_checked
11695 **
11696 ** @param xcb_connection_t *c
11697 ** @param xcb_gcontext_t src_gc
11698 ** @param xcb_gcontext_t dst_gc
11699 ** @param uint32_t value_mask
11700 ** @returns xcb_void_cookie_t
11701 **
11702 *****************************************************************************/
11703
11704xcb_void_cookie_t
11705xcb_copy_gc_checked (xcb_connection_t *c /**< */,
11706 xcb_gcontext_t src_gc /**< */,
11707 xcb_gcontext_t dst_gc /**< */,
11708 uint32_t value_mask /**< */);
11709
11710/**
11711 *
11712 * @param c The connection
11713 * @return A cookie
11714 *
11715 * Delivers a request to the X server.
11716 *
11717 */
11718
11719/*****************************************************************************
11720 **
11721 ** xcb_void_cookie_t xcb_copy_gc
11722 **
11723 ** @param xcb_connection_t *c
11724 ** @param xcb_gcontext_t src_gc
11725 ** @param xcb_gcontext_t dst_gc
11726 ** @param uint32_t value_mask
11727 ** @returns xcb_void_cookie_t
11728 **
11729 *****************************************************************************/
11730
11731xcb_void_cookie_t
11732xcb_copy_gc (xcb_connection_t *c /**< */,
11733 xcb_gcontext_t src_gc /**< */,
11734 xcb_gcontext_t dst_gc /**< */,
11735 uint32_t value_mask /**< */);
11736
11737int
11738xcb_set_dashes_sizeof (const void *_buffer /**< */);
11739
11740/**
11741 *
11742 * @param c The connection
11743 * @return A cookie
11744 *
11745 * Delivers a request to the X server.
11746 *
11747 * This form can be used only if the request will not cause
11748 * a reply to be generated. Any returned error will be
11749 * saved for handling by xcb_request_check().
11750 */
11751
11752/*****************************************************************************
11753 **
11754 ** xcb_void_cookie_t xcb_set_dashes_checked
11755 **
11756 ** @param xcb_connection_t *c
11757 ** @param xcb_gcontext_t gc
11758 ** @param uint16_t dash_offset
11759 ** @param uint16_t dashes_len
11760 ** @param const uint8_t *dashes
11761 ** @returns xcb_void_cookie_t
11762 **
11763 *****************************************************************************/
11764
11765xcb_void_cookie_t
11766xcb_set_dashes_checked (xcb_connection_t *c /**< */,
11767 xcb_gcontext_t gc /**< */,
11768 uint16_t dash_offset /**< */,
11769 uint16_t dashes_len /**< */,
11770 const uint8_t *dashes /**< */);
11771
11772/**
11773 *
11774 * @param c The connection
11775 * @return A cookie
11776 *
11777 * Delivers a request to the X server.
11778 *
11779 */
11780
11781/*****************************************************************************
11782 **
11783 ** xcb_void_cookie_t xcb_set_dashes
11784 **
11785 ** @param xcb_connection_t *c
11786 ** @param xcb_gcontext_t gc
11787 ** @param uint16_t dash_offset
11788 ** @param uint16_t dashes_len
11789 ** @param const uint8_t *dashes
11790 ** @returns xcb_void_cookie_t
11791 **
11792 *****************************************************************************/
11793
11794xcb_void_cookie_t
11795xcb_set_dashes (xcb_connection_t *c /**< */,
11796 xcb_gcontext_t gc /**< */,
11797 uint16_t dash_offset /**< */,
11798 uint16_t dashes_len /**< */,
11799 const uint8_t *dashes /**< */);
11800
11801int
11802xcb_set_clip_rectangles_sizeof (const void *_buffer /**< */,
11803 uint32_t rectangles_len /**< */);
11804
11805/**
11806 *
11807 * @param c The connection
11808 * @return A cookie
11809 *
11810 * Delivers a request to the X server.
11811 *
11812 * This form can be used only if the request will not cause
11813 * a reply to be generated. Any returned error will be
11814 * saved for handling by xcb_request_check().
11815 */
11816
11817/*****************************************************************************
11818 **
11819 ** xcb_void_cookie_t xcb_set_clip_rectangles_checked
11820 **
11821 ** @param xcb_connection_t *c
11822 ** @param uint8_t ordering
11823 ** @param xcb_gcontext_t gc
11824 ** @param int16_t clip_x_origin
11825 ** @param int16_t clip_y_origin
11826 ** @param uint32_t rectangles_len
11827 ** @param const xcb_rectangle_t *rectangles
11828 ** @returns xcb_void_cookie_t
11829 **
11830 *****************************************************************************/
11831
11832xcb_void_cookie_t
11833xcb_set_clip_rectangles_checked (xcb_connection_t *c /**< */,
11834 uint8_t ordering /**< */,
11835 xcb_gcontext_t gc /**< */,
11836 int16_t clip_x_origin /**< */,
11837 int16_t clip_y_origin /**< */,
11838 uint32_t rectangles_len /**< */,
11839 const xcb_rectangle_t *rectangles /**< */);
11840
11841/**
11842 *
11843 * @param c The connection
11844 * @return A cookie
11845 *
11846 * Delivers a request to the X server.
11847 *
11848 */
11849
11850/*****************************************************************************
11851 **
11852 ** xcb_void_cookie_t xcb_set_clip_rectangles
11853 **
11854 ** @param xcb_connection_t *c
11855 ** @param uint8_t ordering
11856 ** @param xcb_gcontext_t gc
11857 ** @param int16_t clip_x_origin
11858 ** @param int16_t clip_y_origin
11859 ** @param uint32_t rectangles_len
11860 ** @param const xcb_rectangle_t *rectangles
11861 ** @returns xcb_void_cookie_t
11862 **
11863 *****************************************************************************/
11864
11865xcb_void_cookie_t
11866xcb_set_clip_rectangles (xcb_connection_t *c /**< */,
11867 uint8_t ordering /**< */,
11868 xcb_gcontext_t gc /**< */,
11869 int16_t clip_x_origin /**< */,
11870 int16_t clip_y_origin /**< */,
11871 uint32_t rectangles_len /**< */,
11872 const xcb_rectangle_t *rectangles /**< */);
11873
11874/**
11875 * @brief Destroys a graphics context
11876 *
11877 * @param c The connection
11878 * @param gc The graphics context to destroy.
11879 * @return A cookie
11880 *
11881 * Destroys the specified \a gc and all associated storage.
11882 *
11883 * This form can be used only if the request will not cause
11884 * a reply to be generated. Any returned error will be
11885 * saved for handling by xcb_request_check().
11886 */
11887
11888/*****************************************************************************
11889 **
11890 ** xcb_void_cookie_t xcb_free_gc_checked
11891 **
11892 ** @param xcb_connection_t *c
11893 ** @param xcb_gcontext_t gc
11894 ** @returns xcb_void_cookie_t
11895 **
11896 *****************************************************************************/
11897
11898xcb_void_cookie_t
11899xcb_free_gc_checked (xcb_connection_t *c /**< */,
11900 xcb_gcontext_t gc /**< */);
11901
11902/**
11903 * @brief Destroys a graphics context
11904 *
11905 * @param c The connection
11906 * @param gc The graphics context to destroy.
11907 * @return A cookie
11908 *
11909 * Destroys the specified \a gc and all associated storage.
11910 *
11911 */
11912
11913/*****************************************************************************
11914 **
11915 ** xcb_void_cookie_t xcb_free_gc
11916 **
11917 ** @param xcb_connection_t *c
11918 ** @param xcb_gcontext_t gc
11919 ** @returns xcb_void_cookie_t
11920 **
11921 *****************************************************************************/
11922
11923xcb_void_cookie_t
11924xcb_free_gc (xcb_connection_t *c /**< */,
11925 xcb_gcontext_t gc /**< */);
11926
11927/**
11928 *
11929 * @param c The connection
11930 * @return A cookie
11931 *
11932 * Delivers a request to the X server.
11933 *
11934 * This form can be used only if the request will not cause
11935 * a reply to be generated. Any returned error will be
11936 * saved for handling by xcb_request_check().
11937 */
11938
11939/*****************************************************************************
11940 **
11941 ** xcb_void_cookie_t xcb_clear_area_checked
11942 **
11943 ** @param xcb_connection_t *c
11944 ** @param uint8_t exposures
11945 ** @param xcb_window_t window
11946 ** @param int16_t x
11947 ** @param int16_t y
11948 ** @param uint16_t width
11949 ** @param uint16_t height
11950 ** @returns xcb_void_cookie_t
11951 **
11952 *****************************************************************************/
11953
11954xcb_void_cookie_t
11955xcb_clear_area_checked (xcb_connection_t *c /**< */,
11956 uint8_t exposures /**< */,
11957 xcb_window_t window /**< */,
11958 int16_t x /**< */,
11959 int16_t y /**< */,
11960 uint16_t width /**< */,
11961 uint16_t height /**< */);
11962
11963/**
11964 *
11965 * @param c The connection
11966 * @return A cookie
11967 *
11968 * Delivers a request to the X server.
11969 *
11970 */
11971
11972/*****************************************************************************
11973 **
11974 ** xcb_void_cookie_t xcb_clear_area
11975 **
11976 ** @param xcb_connection_t *c
11977 ** @param uint8_t exposures
11978 ** @param xcb_window_t window
11979 ** @param int16_t x
11980 ** @param int16_t y
11981 ** @param uint16_t width
11982 ** @param uint16_t height
11983 ** @returns xcb_void_cookie_t
11984 **
11985 *****************************************************************************/
11986
11987xcb_void_cookie_t
11988xcb_clear_area (xcb_connection_t *c /**< */,
11989 uint8_t exposures /**< */,
11990 xcb_window_t window /**< */,
11991 int16_t x /**< */,
11992 int16_t y /**< */,
11993 uint16_t width /**< */,
11994 uint16_t height /**< */);
11995
11996/**
11997 * @brief copy areas
11998 *
11999 * @param c The connection
12000 * @param src_drawable The source drawable (Window or Pixmap).
12001 * @param dst_drawable The destination drawable (Window or Pixmap).
12002 * @param gc The graphics context to use.
12003 * @param src_x The source X coordinate.
12004 * @param src_y The source Y coordinate.
12005 * @param dst_x The destination X coordinate.
12006 * @param dst_y The destination Y coordinate.
12007 * @param width The width of the area to copy (in pixels).
12008 * @param height The height of the area to copy (in pixels).
12009 * @return A cookie
12010 *
12011 * Copies the specified rectangle from \a src_drawable to \a dst_drawable.
12012 *
12013 * This form can be used only if the request will not cause
12014 * a reply to be generated. Any returned error will be
12015 * saved for handling by xcb_request_check().
12016 */
12017
12018/*****************************************************************************
12019 **
12020 ** xcb_void_cookie_t xcb_copy_area_checked
12021 **
12022 ** @param xcb_connection_t *c
12023 ** @param xcb_drawable_t src_drawable
12024 ** @param xcb_drawable_t dst_drawable
12025 ** @param xcb_gcontext_t gc
12026 ** @param int16_t src_x
12027 ** @param int16_t src_y
12028 ** @param int16_t dst_x
12029 ** @param int16_t dst_y
12030 ** @param uint16_t width
12031 ** @param uint16_t height
12032 ** @returns xcb_void_cookie_t
12033 **
12034 *****************************************************************************/
12035
12036xcb_void_cookie_t
12037xcb_copy_area_checked (xcb_connection_t *c /**< */,
12038 xcb_drawable_t src_drawable /**< */,
12039 xcb_drawable_t dst_drawable /**< */,
12040 xcb_gcontext_t gc /**< */,
12041 int16_t src_x /**< */,
12042 int16_t src_y /**< */,
12043 int16_t dst_x /**< */,
12044 int16_t dst_y /**< */,
12045 uint16_t width /**< */,
12046 uint16_t height /**< */);
12047
12048/**
12049 * @brief copy areas
12050 *
12051 * @param c The connection
12052 * @param src_drawable The source drawable (Window or Pixmap).
12053 * @param dst_drawable The destination drawable (Window or Pixmap).
12054 * @param gc The graphics context to use.
12055 * @param src_x The source X coordinate.
12056 * @param src_y The source Y coordinate.
12057 * @param dst_x The destination X coordinate.
12058 * @param dst_y The destination Y coordinate.
12059 * @param width The width of the area to copy (in pixels).
12060 * @param height The height of the area to copy (in pixels).
12061 * @return A cookie
12062 *
12063 * Copies the specified rectangle from \a src_drawable to \a dst_drawable.
12064 *
12065 */
12066
12067/*****************************************************************************
12068 **
12069 ** xcb_void_cookie_t xcb_copy_area
12070 **
12071 ** @param xcb_connection_t *c
12072 ** @param xcb_drawable_t src_drawable
12073 ** @param xcb_drawable_t dst_drawable
12074 ** @param xcb_gcontext_t gc
12075 ** @param int16_t src_x
12076 ** @param int16_t src_y
12077 ** @param int16_t dst_x
12078 ** @param int16_t dst_y
12079 ** @param uint16_t width
12080 ** @param uint16_t height
12081 ** @returns xcb_void_cookie_t
12082 **
12083 *****************************************************************************/
12084
12085xcb_void_cookie_t
12086xcb_copy_area (xcb_connection_t *c /**< */,
12087 xcb_drawable_t src_drawable /**< */,
12088 xcb_drawable_t dst_drawable /**< */,
12089 xcb_gcontext_t gc /**< */,
12090 int16_t src_x /**< */,
12091 int16_t src_y /**< */,
12092 int16_t dst_x /**< */,
12093 int16_t dst_y /**< */,
12094 uint16_t width /**< */,
12095 uint16_t height /**< */);
12096
12097/**
12098 *
12099 * @param c The connection
12100 * @return A cookie
12101 *
12102 * Delivers a request to the X server.
12103 *
12104 * This form can be used only if the request will not cause
12105 * a reply to be generated. Any returned error will be
12106 * saved for handling by xcb_request_check().
12107 */
12108
12109/*****************************************************************************
12110 **
12111 ** xcb_void_cookie_t xcb_copy_plane_checked
12112 **
12113 ** @param xcb_connection_t *c
12114 ** @param xcb_drawable_t src_drawable
12115 ** @param xcb_drawable_t dst_drawable
12116 ** @param xcb_gcontext_t gc
12117 ** @param int16_t src_x
12118 ** @param int16_t src_y
12119 ** @param int16_t dst_x
12120 ** @param int16_t dst_y
12121 ** @param uint16_t width
12122 ** @param uint16_t height
12123 ** @param uint32_t bit_plane
12124 ** @returns xcb_void_cookie_t
12125 **
12126 *****************************************************************************/
12127
12128xcb_void_cookie_t
12129xcb_copy_plane_checked (xcb_connection_t *c /**< */,
12130 xcb_drawable_t src_drawable /**< */,
12131 xcb_drawable_t dst_drawable /**< */,
12132 xcb_gcontext_t gc /**< */,
12133 int16_t src_x /**< */,
12134 int16_t src_y /**< */,
12135 int16_t dst_x /**< */,
12136 int16_t dst_y /**< */,
12137 uint16_t width /**< */,
12138 uint16_t height /**< */,
12139 uint32_t bit_plane /**< */);
12140
12141/**
12142 *
12143 * @param c The connection
12144 * @return A cookie
12145 *
12146 * Delivers a request to the X server.
12147 *
12148 */
12149
12150/*****************************************************************************
12151 **
12152 ** xcb_void_cookie_t xcb_copy_plane
12153 **
12154 ** @param xcb_connection_t *c
12155 ** @param xcb_drawable_t src_drawable
12156 ** @param xcb_drawable_t dst_drawable
12157 ** @param xcb_gcontext_t gc
12158 ** @param int16_t src_x
12159 ** @param int16_t src_y
12160 ** @param int16_t dst_x
12161 ** @param int16_t dst_y
12162 ** @param uint16_t width
12163 ** @param uint16_t height
12164 ** @param uint32_t bit_plane
12165 ** @returns xcb_void_cookie_t
12166 **
12167 *****************************************************************************/
12168
12169xcb_void_cookie_t
12170xcb_copy_plane (xcb_connection_t *c /**< */,
12171 xcb_drawable_t src_drawable /**< */,
12172 xcb_drawable_t dst_drawable /**< */,
12173 xcb_gcontext_t gc /**< */,
12174 int16_t src_x /**< */,
12175 int16_t src_y /**< */,
12176 int16_t dst_x /**< */,
12177 int16_t dst_y /**< */,
12178 uint16_t width /**< */,
12179 uint16_t height /**< */,
12180 uint32_t bit_plane /**< */);
12181
12182int
12183xcb_poly_point_sizeof (const void *_buffer /**< */,
12184 uint32_t points_len /**< */);
12185
12186/**
12187 *
12188 * @param c The connection
12189 * @return A cookie
12190 *
12191 * Delivers a request to the X server.
12192 *
12193 * This form can be used only if the request will not cause
12194 * a reply to be generated. Any returned error will be
12195 * saved for handling by xcb_request_check().
12196 */
12197
12198/*****************************************************************************
12199 **
12200 ** xcb_void_cookie_t xcb_poly_point_checked
12201 **
12202 ** @param xcb_connection_t *c
12203 ** @param uint8_t coordinate_mode
12204 ** @param xcb_drawable_t drawable
12205 ** @param xcb_gcontext_t gc
12206 ** @param uint32_t points_len
12207 ** @param const xcb_point_t *points
12208 ** @returns xcb_void_cookie_t
12209 **
12210 *****************************************************************************/
12211
12212xcb_void_cookie_t
12213xcb_poly_point_checked (xcb_connection_t *c /**< */,
12214 uint8_t coordinate_mode /**< */,
12215 xcb_drawable_t drawable /**< */,
12216 xcb_gcontext_t gc /**< */,
12217 uint32_t points_len /**< */,
12218 const xcb_point_t *points /**< */);
12219
12220/**
12221 *
12222 * @param c The connection
12223 * @return A cookie
12224 *
12225 * Delivers a request to the X server.
12226 *
12227 */
12228
12229/*****************************************************************************
12230 **
12231 ** xcb_void_cookie_t xcb_poly_point
12232 **
12233 ** @param xcb_connection_t *c
12234 ** @param uint8_t coordinate_mode
12235 ** @param xcb_drawable_t drawable
12236 ** @param xcb_gcontext_t gc
12237 ** @param uint32_t points_len
12238 ** @param const xcb_point_t *points
12239 ** @returns xcb_void_cookie_t
12240 **
12241 *****************************************************************************/
12242
12243xcb_void_cookie_t
12244xcb_poly_point (xcb_connection_t *c /**< */,
12245 uint8_t coordinate_mode /**< */,
12246 xcb_drawable_t drawable /**< */,
12247 xcb_gcontext_t gc /**< */,
12248 uint32_t points_len /**< */,
12249 const xcb_point_t *points /**< */);
12250
12251int
12252xcb_poly_line_sizeof (const void *_buffer /**< */,
12253 uint32_t points_len /**< */);
12254
12255/**
12256 * @brief draw lines
12257 *
12258 * @param c The connection
12259 * @param coordinate_mode A bitmask of #xcb_coord_mode_t values.
12260 * @param coordinate_mode \n
12261 * @param drawable The drawable to draw the line(s) on.
12262 * @param gc The graphics context to use.
12263 * @param points_len The number of `xcb_point_t` structures in \a points.
12264 * @param points An array of points.
12265 * @return A cookie
12266 *
12267 * Draws \a points_len-1 lines between each pair of points (point[i], point[i+1])
12268 * in the \a points array. The lines are drawn in the order listed in the array.
12269 * They join correctly at all intermediate points, and if the first and last
12270 * points coincide, the first and last lines also join correctly. For any given
12271 * line, a pixel is not drawn more than once. If thin (zero line-width) lines
12272 * intersect, the intersecting pixels are drawn multiple times. If wide lines
12273 * intersect, the intersecting pixels are drawn only once, as though the entire
12274 * request were a single, filled shape.
12275 *
12276 * This form can be used only if the request will not cause
12277 * a reply to be generated. Any returned error will be
12278 * saved for handling by xcb_request_check().
12279 */
12280
12281/*****************************************************************************
12282 **
12283 ** xcb_void_cookie_t xcb_poly_line_checked
12284 **
12285 ** @param xcb_connection_t *c
12286 ** @param uint8_t coordinate_mode
12287 ** @param xcb_drawable_t drawable
12288 ** @param xcb_gcontext_t gc
12289 ** @param uint32_t points_len
12290 ** @param const xcb_point_t *points
12291 ** @returns xcb_void_cookie_t
12292 **
12293 *****************************************************************************/
12294
12295xcb_void_cookie_t
12296xcb_poly_line_checked (xcb_connection_t *c /**< */,
12297 uint8_t coordinate_mode /**< */,
12298 xcb_drawable_t drawable /**< */,
12299 xcb_gcontext_t gc /**< */,
12300 uint32_t points_len /**< */,
12301 const xcb_point_t *points /**< */);
12302
12303/**
12304 * @brief draw lines
12305 *
12306 * @param c The connection
12307 * @param coordinate_mode A bitmask of #xcb_coord_mode_t values.
12308 * @param coordinate_mode \n
12309 * @param drawable The drawable to draw the line(s) on.
12310 * @param gc The graphics context to use.
12311 * @param points_len The number of `xcb_point_t` structures in \a points.
12312 * @param points An array of points.
12313 * @return A cookie
12314 *
12315 * Draws \a points_len-1 lines between each pair of points (point[i], point[i+1])
12316 * in the \a points array. The lines are drawn in the order listed in the array.
12317 * They join correctly at all intermediate points, and if the first and last
12318 * points coincide, the first and last lines also join correctly. For any given
12319 * line, a pixel is not drawn more than once. If thin (zero line-width) lines
12320 * intersect, the intersecting pixels are drawn multiple times. If wide lines
12321 * intersect, the intersecting pixels are drawn only once, as though the entire
12322 * request were a single, filled shape.
12323 *
12324 */
12325
12326/*****************************************************************************
12327 **
12328 ** xcb_void_cookie_t xcb_poly_line
12329 **
12330 ** @param xcb_connection_t *c
12331 ** @param uint8_t coordinate_mode
12332 ** @param xcb_drawable_t drawable
12333 ** @param xcb_gcontext_t gc
12334 ** @param uint32_t points_len
12335 ** @param const xcb_point_t *points
12336 ** @returns xcb_void_cookie_t
12337 **
12338 *****************************************************************************/
12339
12340xcb_void_cookie_t
12341xcb_poly_line (xcb_connection_t *c /**< */,
12342 uint8_t coordinate_mode /**< */,
12343 xcb_drawable_t drawable /**< */,
12344 xcb_gcontext_t gc /**< */,
12345 uint32_t points_len /**< */,
12346 const xcb_point_t *points /**< */);
12347
12348/**
12349 * Get the next element of the iterator
12350 * @param i Pointer to a xcb_segment_iterator_t
12351 *
12352 * Get the next element in the iterator. The member rem is
12353 * decreased by one. The member data points to the next
12354 * element. The member index is increased by sizeof(xcb_segment_t)
12355 */
12356
12357/*****************************************************************************
12358 **
12359 ** void xcb_segment_next
12360 **
12361 ** @param xcb_segment_iterator_t *i
12362 ** @returns void
12363 **
12364 *****************************************************************************/
12365
12366void
12367xcb_segment_next (xcb_segment_iterator_t *i /**< */);
12368
12369/**
12370 * Return the iterator pointing to the last element
12371 * @param i An xcb_segment_iterator_t
12372 * @return The iterator pointing to the last element
12373 *
12374 * Set the current element in the iterator to the last element.
12375 * The member rem is set to 0. The member data points to the
12376 * last element.
12377 */
12378
12379/*****************************************************************************
12380 **
12381 ** xcb_generic_iterator_t xcb_segment_end
12382 **
12383 ** @param xcb_segment_iterator_t i
12384 ** @returns xcb_generic_iterator_t
12385 **
12386 *****************************************************************************/
12387
12388xcb_generic_iterator_t
12389xcb_segment_end (xcb_segment_iterator_t i /**< */);
12390
12391int
12392xcb_poly_segment_sizeof (const void *_buffer /**< */,
12393 uint32_t segments_len /**< */);
12394
12395/**
12396 * @brief draw lines
12397 *
12398 * @param c The connection
12399 * @param drawable A drawable (Window or Pixmap) to draw on.
12400 * @param gc The graphics context to use.
12401 * \n
12402 * TODO: document which attributes of a gc are used
12403 * @param segments_len The number of `xcb_segment_t` structures in \a segments.
12404 * @param segments An array of `xcb_segment_t` structures.
12405 * @return A cookie
12406 *
12407 * Draws multiple, unconnected lines. For each segment, a line is drawn between
12408 * (x1, y1) and (x2, y2). The lines are drawn in the order listed in the array of
12409 * `xcb_segment_t` structures and does not perform joining at coincident
12410 * endpoints. For any given line, a pixel is not drawn more than once. If lines
12411 * intersect, the intersecting pixels are drawn multiple times.
12412 *
12413 * TODO: include the xcb_segment_t data structure
12414 *
12415 * TODO: an example
12416 *
12417 * This form can be used only if the request will not cause
12418 * a reply to be generated. Any returned error will be
12419 * saved for handling by xcb_request_check().
12420 */
12421
12422/*****************************************************************************
12423 **
12424 ** xcb_void_cookie_t xcb_poly_segment_checked
12425 **
12426 ** @param xcb_connection_t *c
12427 ** @param xcb_drawable_t drawable
12428 ** @param xcb_gcontext_t gc
12429 ** @param uint32_t segments_len
12430 ** @param const xcb_segment_t *segments
12431 ** @returns xcb_void_cookie_t
12432 **
12433 *****************************************************************************/
12434
12435xcb_void_cookie_t
12436xcb_poly_segment_checked (xcb_connection_t *c /**< */,
12437 xcb_drawable_t drawable /**< */,
12438 xcb_gcontext_t gc /**< */,
12439 uint32_t segments_len /**< */,
12440 const xcb_segment_t *segments /**< */);
12441
12442/**
12443 * @brief draw lines
12444 *
12445 * @param c The connection
12446 * @param drawable A drawable (Window or Pixmap) to draw on.
12447 * @param gc The graphics context to use.
12448 * \n
12449 * TODO: document which attributes of a gc are used
12450 * @param segments_len The number of `xcb_segment_t` structures in \a segments.
12451 * @param segments An array of `xcb_segment_t` structures.
12452 * @return A cookie
12453 *
12454 * Draws multiple, unconnected lines. For each segment, a line is drawn between
12455 * (x1, y1) and (x2, y2). The lines are drawn in the order listed in the array of
12456 * `xcb_segment_t` structures and does not perform joining at coincident
12457 * endpoints. For any given line, a pixel is not drawn more than once. If lines
12458 * intersect, the intersecting pixels are drawn multiple times.
12459 *
12460 * TODO: include the xcb_segment_t data structure
12461 *
12462 * TODO: an example
12463 *
12464 */
12465
12466/*****************************************************************************
12467 **
12468 ** xcb_void_cookie_t xcb_poly_segment
12469 **
12470 ** @param xcb_connection_t *c
12471 ** @param xcb_drawable_t drawable
12472 ** @param xcb_gcontext_t gc
12473 ** @param uint32_t segments_len
12474 ** @param const xcb_segment_t *segments
12475 ** @returns xcb_void_cookie_t
12476 **
12477 *****************************************************************************/
12478
12479xcb_void_cookie_t
12480xcb_poly_segment (xcb_connection_t *c /**< */,
12481 xcb_drawable_t drawable /**< */,
12482 xcb_gcontext_t gc /**< */,
12483 uint32_t segments_len /**< */,
12484 const xcb_segment_t *segments /**< */);
12485
12486int
12487xcb_poly_rectangle_sizeof (const void *_buffer /**< */,
12488 uint32_t rectangles_len /**< */);
12489
12490/**
12491 *
12492 * @param c The connection
12493 * @return A cookie
12494 *
12495 * Delivers a request to the X server.
12496 *
12497 * This form can be used only if the request will not cause
12498 * a reply to be generated. Any returned error will be
12499 * saved for handling by xcb_request_check().
12500 */
12501
12502/*****************************************************************************
12503 **
12504 ** xcb_void_cookie_t xcb_poly_rectangle_checked
12505 **
12506 ** @param xcb_connection_t *c
12507 ** @param xcb_drawable_t drawable
12508 ** @param xcb_gcontext_t gc
12509 ** @param uint32_t rectangles_len
12510 ** @param const xcb_rectangle_t *rectangles
12511 ** @returns xcb_void_cookie_t
12512 **
12513 *****************************************************************************/
12514
12515xcb_void_cookie_t
12516xcb_poly_rectangle_checked (xcb_connection_t *c /**< */,
12517 xcb_drawable_t drawable /**< */,
12518 xcb_gcontext_t gc /**< */,
12519 uint32_t rectangles_len /**< */,
12520 const xcb_rectangle_t *rectangles /**< */);
12521
12522/**
12523 *
12524 * @param c The connection
12525 * @return A cookie
12526 *
12527 * Delivers a request to the X server.
12528 *
12529 */
12530
12531/*****************************************************************************
12532 **
12533 ** xcb_void_cookie_t xcb_poly_rectangle
12534 **
12535 ** @param xcb_connection_t *c
12536 ** @param xcb_drawable_t drawable
12537 ** @param xcb_gcontext_t gc
12538 ** @param uint32_t rectangles_len
12539 ** @param const xcb_rectangle_t *rectangles
12540 ** @returns xcb_void_cookie_t
12541 **
12542 *****************************************************************************/
12543
12544xcb_void_cookie_t
12545xcb_poly_rectangle (xcb_connection_t *c /**< */,
12546 xcb_drawable_t drawable /**< */,
12547 xcb_gcontext_t gc /**< */,
12548 uint32_t rectangles_len /**< */,
12549 const xcb_rectangle_t *rectangles /**< */);
12550
12551int
12552xcb_poly_arc_sizeof (const void *_buffer /**< */,
12553 uint32_t arcs_len /**< */);
12554
12555/**
12556 *
12557 * @param c The connection
12558 * @return A cookie
12559 *
12560 * Delivers a request to the X server.
12561 *
12562 * This form can be used only if the request will not cause
12563 * a reply to be generated. Any returned error will be
12564 * saved for handling by xcb_request_check().
12565 */
12566
12567/*****************************************************************************
12568 **
12569 ** xcb_void_cookie_t xcb_poly_arc_checked
12570 **
12571 ** @param xcb_connection_t *c
12572 ** @param xcb_drawable_t drawable
12573 ** @param xcb_gcontext_t gc
12574 ** @param uint32_t arcs_len
12575 ** @param const xcb_arc_t *arcs
12576 ** @returns xcb_void_cookie_t
12577 **
12578 *****************************************************************************/
12579
12580xcb_void_cookie_t
12581xcb_poly_arc_checked (xcb_connection_t *c /**< */,
12582 xcb_drawable_t drawable /**< */,
12583 xcb_gcontext_t gc /**< */,
12584 uint32_t arcs_len /**< */,
12585 const xcb_arc_t *arcs /**< */);
12586
12587/**
12588 *
12589 * @param c The connection
12590 * @return A cookie
12591 *
12592 * Delivers a request to the X server.
12593 *
12594 */
12595
12596/*****************************************************************************
12597 **
12598 ** xcb_void_cookie_t xcb_poly_arc
12599 **
12600 ** @param xcb_connection_t *c
12601 ** @param xcb_drawable_t drawable
12602 ** @param xcb_gcontext_t gc
12603 ** @param uint32_t arcs_len
12604 ** @param const xcb_arc_t *arcs
12605 ** @returns xcb_void_cookie_t
12606 **
12607 *****************************************************************************/
12608
12609xcb_void_cookie_t
12610xcb_poly_arc (xcb_connection_t *c /**< */,
12611 xcb_drawable_t drawable /**< */,
12612 xcb_gcontext_t gc /**< */,
12613 uint32_t arcs_len /**< */,
12614 const xcb_arc_t *arcs /**< */);
12615
12616int
12617xcb_fill_poly_sizeof (const void *_buffer /**< */,
12618 uint32_t points_len /**< */);
12619
12620/**
12621 *
12622 * @param c The connection
12623 * @return A cookie
12624 *
12625 * Delivers a request to the X server.
12626 *
12627 * This form can be used only if the request will not cause
12628 * a reply to be generated. Any returned error will be
12629 * saved for handling by xcb_request_check().
12630 */
12631
12632/*****************************************************************************
12633 **
12634 ** xcb_void_cookie_t xcb_fill_poly_checked
12635 **
12636 ** @param xcb_connection_t *c
12637 ** @param xcb_drawable_t drawable
12638 ** @param xcb_gcontext_t gc
12639 ** @param uint8_t shape
12640 ** @param uint8_t coordinate_mode
12641 ** @param uint32_t points_len
12642 ** @param const xcb_point_t *points
12643 ** @returns xcb_void_cookie_t
12644 **
12645 *****************************************************************************/
12646
12647xcb_void_cookie_t
12648xcb_fill_poly_checked (xcb_connection_t *c /**< */,
12649 xcb_drawable_t drawable /**< */,
12650 xcb_gcontext_t gc /**< */,
12651 uint8_t shape /**< */,
12652 uint8_t coordinate_mode /**< */,
12653 uint32_t points_len /**< */,
12654 const xcb_point_t *points /**< */);
12655
12656/**
12657 *
12658 * @param c The connection
12659 * @return A cookie
12660 *
12661 * Delivers a request to the X server.
12662 *
12663 */
12664
12665/*****************************************************************************
12666 **
12667 ** xcb_void_cookie_t xcb_fill_poly
12668 **
12669 ** @param xcb_connection_t *c
12670 ** @param xcb_drawable_t drawable
12671 ** @param xcb_gcontext_t gc
12672 ** @param uint8_t shape
12673 ** @param uint8_t coordinate_mode
12674 ** @param uint32_t points_len
12675 ** @param const xcb_point_t *points
12676 ** @returns xcb_void_cookie_t
12677 **
12678 *****************************************************************************/
12679
12680xcb_void_cookie_t
12681xcb_fill_poly (xcb_connection_t *c /**< */,
12682 xcb_drawable_t drawable /**< */,
12683 xcb_gcontext_t gc /**< */,
12684 uint8_t shape /**< */,
12685 uint8_t coordinate_mode /**< */,
12686 uint32_t points_len /**< */,
12687 const xcb_point_t *points /**< */);
12688
12689int
12690xcb_poly_fill_rectangle_sizeof (const void *_buffer /**< */,
12691 uint32_t rectangles_len /**< */);
12692
12693/**
12694 * @brief Fills rectangles
12695 *
12696 * @param c The connection
12697 * @param drawable The drawable (Window or Pixmap) to draw on.
12698 * @param gc The graphics context to use.
12699 * \n
12700 * The following graphics context components are used: function, plane-mask,
12701 * fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
12702 * \n
12703 * The following graphics context mode-dependent components are used:
12704 * foreground, background, tile, stipple, tile-stipple-x-origin, and
12705 * tile-stipple-y-origin.
12706 * @param rectangles_len The number of `xcb_rectangle_t` structures in \a rectangles.
12707 * @param rectangles The rectangles to fill.
12708 * @return A cookie
12709 *
12710 * Fills the specified rectangle(s) in the order listed in the array. For any
12711 * given rectangle, each pixel is not drawn more than once. If rectangles
12712 * intersect, the intersecting pixels are drawn multiple times.
12713 *
12714 * This form can be used only if the request will not cause
12715 * a reply to be generated. Any returned error will be
12716 * saved for handling by xcb_request_check().
12717 */
12718
12719/*****************************************************************************
12720 **
12721 ** xcb_void_cookie_t xcb_poly_fill_rectangle_checked
12722 **
12723 ** @param xcb_connection_t *c
12724 ** @param xcb_drawable_t drawable
12725 ** @param xcb_gcontext_t gc
12726 ** @param uint32_t rectangles_len
12727 ** @param const xcb_rectangle_t *rectangles
12728 ** @returns xcb_void_cookie_t
12729 **
12730 *****************************************************************************/
12731
12732xcb_void_cookie_t
12733xcb_poly_fill_rectangle_checked (xcb_connection_t *c /**< */,
12734 xcb_drawable_t drawable /**< */,
12735 xcb_gcontext_t gc /**< */,
12736 uint32_t rectangles_len /**< */,
12737 const xcb_rectangle_t *rectangles /**< */);
12738
12739/**
12740 * @brief Fills rectangles
12741 *
12742 * @param c The connection
12743 * @param drawable The drawable (Window or Pixmap) to draw on.
12744 * @param gc The graphics context to use.
12745 * \n
12746 * The following graphics context components are used: function, plane-mask,
12747 * fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
12748 * \n
12749 * The following graphics context mode-dependent components are used:
12750 * foreground, background, tile, stipple, tile-stipple-x-origin, and
12751 * tile-stipple-y-origin.
12752 * @param rectangles_len The number of `xcb_rectangle_t` structures in \a rectangles.
12753 * @param rectangles The rectangles to fill.
12754 * @return A cookie
12755 *
12756 * Fills the specified rectangle(s) in the order listed in the array. For any
12757 * given rectangle, each pixel is not drawn more than once. If rectangles
12758 * intersect, the intersecting pixels are drawn multiple times.
12759 *
12760 */
12761
12762/*****************************************************************************
12763 **
12764 ** xcb_void_cookie_t xcb_poly_fill_rectangle
12765 **
12766 ** @param xcb_connection_t *c
12767 ** @param xcb_drawable_t drawable
12768 ** @param xcb_gcontext_t gc
12769 ** @param uint32_t rectangles_len
12770 ** @param const xcb_rectangle_t *rectangles
12771 ** @returns xcb_void_cookie_t
12772 **
12773 *****************************************************************************/
12774
12775xcb_void_cookie_t
12776xcb_poly_fill_rectangle (xcb_connection_t *c /**< */,
12777 xcb_drawable_t drawable /**< */,
12778 xcb_gcontext_t gc /**< */,
12779 uint32_t rectangles_len /**< */,
12780 const xcb_rectangle_t *rectangles /**< */);
12781
12782int
12783xcb_poly_fill_arc_sizeof (const void *_buffer /**< */,
12784 uint32_t arcs_len /**< */);
12785
12786/**
12787 *
12788 * @param c The connection
12789 * @return A cookie
12790 *
12791 * Delivers a request to the X server.
12792 *
12793 * This form can be used only if the request will not cause
12794 * a reply to be generated. Any returned error will be
12795 * saved for handling by xcb_request_check().
12796 */
12797
12798/*****************************************************************************
12799 **
12800 ** xcb_void_cookie_t xcb_poly_fill_arc_checked
12801 **
12802 ** @param xcb_connection_t *c
12803 ** @param xcb_drawable_t drawable
12804 ** @param xcb_gcontext_t gc
12805 ** @param uint32_t arcs_len
12806 ** @param const xcb_arc_t *arcs
12807 ** @returns xcb_void_cookie_t
12808 **
12809 *****************************************************************************/
12810
12811xcb_void_cookie_t
12812xcb_poly_fill_arc_checked (xcb_connection_t *c /**< */,
12813 xcb_drawable_t drawable /**< */,
12814 xcb_gcontext_t gc /**< */,
12815 uint32_t arcs_len /**< */,
12816 const xcb_arc_t *arcs /**< */);
12817
12818/**
12819 *
12820 * @param c The connection
12821 * @return A cookie
12822 *
12823 * Delivers a request to the X server.
12824 *
12825 */
12826
12827/*****************************************************************************
12828 **
12829 ** xcb_void_cookie_t xcb_poly_fill_arc
12830 **
12831 ** @param xcb_connection_t *c
12832 ** @param xcb_drawable_t drawable
12833 ** @param xcb_gcontext_t gc
12834 ** @param uint32_t arcs_len
12835 ** @param const xcb_arc_t *arcs
12836 ** @returns xcb_void_cookie_t
12837 **
12838 *****************************************************************************/
12839
12840xcb_void_cookie_t
12841xcb_poly_fill_arc (xcb_connection_t *c /**< */,
12842 xcb_drawable_t drawable /**< */,
12843 xcb_gcontext_t gc /**< */,
12844 uint32_t arcs_len /**< */,
12845 const xcb_arc_t *arcs /**< */);
12846
12847int
12848xcb_put_image_sizeof (const void *_buffer /**< */,
12849 uint32_t data_len /**< */);
12850
12851/**
12852 *
12853 * @param c The connection
12854 * @return A cookie
12855 *
12856 * Delivers a request to the X server.
12857 *
12858 * This form can be used only if the request will not cause
12859 * a reply to be generated. Any returned error will be
12860 * saved for handling by xcb_request_check().
12861 */
12862
12863/*****************************************************************************
12864 **
12865 ** xcb_void_cookie_t xcb_put_image_checked
12866 **
12867 ** @param xcb_connection_t *c
12868 ** @param uint8_t format
12869 ** @param xcb_drawable_t drawable
12870 ** @param xcb_gcontext_t gc
12871 ** @param uint16_t width
12872 ** @param uint16_t height
12873 ** @param int16_t dst_x
12874 ** @param int16_t dst_y
12875 ** @param uint8_t left_pad
12876 ** @param uint8_t depth
12877 ** @param uint32_t data_len
12878 ** @param const uint8_t *data
12879 ** @returns xcb_void_cookie_t
12880 **
12881 *****************************************************************************/
12882
12883xcb_void_cookie_t
12884xcb_put_image_checked (xcb_connection_t *c /**< */,
12885 uint8_t format /**< */,
12886 xcb_drawable_t drawable /**< */,
12887 xcb_gcontext_t gc /**< */,
12888 uint16_t width /**< */,
12889 uint16_t height /**< */,
12890 int16_t dst_x /**< */,
12891 int16_t dst_y /**< */,
12892 uint8_t left_pad /**< */,
12893 uint8_t depth /**< */,
12894 uint32_t data_len /**< */,
12895 const uint8_t *data /**< */);
12896
12897/**
12898 *
12899 * @param c The connection
12900 * @return A cookie
12901 *
12902 * Delivers a request to the X server.
12903 *
12904 */
12905
12906/*****************************************************************************
12907 **
12908 ** xcb_void_cookie_t xcb_put_image
12909 **
12910 ** @param xcb_connection_t *c
12911 ** @param uint8_t format
12912 ** @param xcb_drawable_t drawable
12913 ** @param xcb_gcontext_t gc
12914 ** @param uint16_t width
12915 ** @param uint16_t height
12916 ** @param int16_t dst_x
12917 ** @param int16_t dst_y
12918 ** @param uint8_t left_pad
12919 ** @param uint8_t depth
12920 ** @param uint32_t data_len
12921 ** @param const uint8_t *data
12922 ** @returns xcb_void_cookie_t
12923 **
12924 *****************************************************************************/
12925
12926xcb_void_cookie_t
12927xcb_put_image (xcb_connection_t *c /**< */,
12928 uint8_t format /**< */,
12929 xcb_drawable_t drawable /**< */,
12930 xcb_gcontext_t gc /**< */,
12931 uint16_t width /**< */,
12932 uint16_t height /**< */,
12933 int16_t dst_x /**< */,
12934 int16_t dst_y /**< */,
12935 uint8_t left_pad /**< */,
12936 uint8_t depth /**< */,
12937 uint32_t data_len /**< */,
12938 const uint8_t *data /**< */);
12939
12940int
12941xcb_get_image_sizeof (const void *_buffer /**< */);
12942
12943/**
12944 *
12945 * @param c The connection
12946 * @return A cookie
12947 *
12948 * Delivers a request to the X server.
12949 *
12950 */
12951
12952/*****************************************************************************
12953 **
12954 ** xcb_get_image_cookie_t xcb_get_image
12955 **
12956 ** @param xcb_connection_t *c
12957 ** @param uint8_t format
12958 ** @param xcb_drawable_t drawable
12959 ** @param int16_t x
12960 ** @param int16_t y
12961 ** @param uint16_t width
12962 ** @param uint16_t height
12963 ** @param uint32_t plane_mask
12964 ** @returns xcb_get_image_cookie_t
12965 **
12966 *****************************************************************************/
12967
12968xcb_get_image_cookie_t
12969xcb_get_image (xcb_connection_t *c /**< */,
12970 uint8_t format /**< */,
12971 xcb_drawable_t drawable /**< */,
12972 int16_t x /**< */,
12973 int16_t y /**< */,
12974 uint16_t width /**< */,
12975 uint16_t height /**< */,
12976 uint32_t plane_mask /**< */);
12977
12978/**
12979 *
12980 * @param c The connection
12981 * @return A cookie
12982 *
12983 * Delivers a request to the X server.
12984 *
12985 * This form can be used only if the request will cause
12986 * a reply to be generated. Any returned error will be
12987 * placed in the event queue.
12988 */
12989
12990/*****************************************************************************
12991 **
12992 ** xcb_get_image_cookie_t xcb_get_image_unchecked
12993 **
12994 ** @param xcb_connection_t *c
12995 ** @param uint8_t format
12996 ** @param xcb_drawable_t drawable
12997 ** @param int16_t x
12998 ** @param int16_t y
12999 ** @param uint16_t width
13000 ** @param uint16_t height
13001 ** @param uint32_t plane_mask
13002 ** @returns xcb_get_image_cookie_t
13003 **
13004 *****************************************************************************/
13005
13006xcb_get_image_cookie_t
13007xcb_get_image_unchecked (xcb_connection_t *c /**< */,
13008 uint8_t format /**< */,
13009 xcb_drawable_t drawable /**< */,
13010 int16_t x /**< */,
13011 int16_t y /**< */,
13012 uint16_t width /**< */,
13013 uint16_t height /**< */,
13014 uint32_t plane_mask /**< */);
13015
13016
13017/*****************************************************************************
13018 **
13019 ** uint8_t * xcb_get_image_data
13020 **
13021 ** @param const xcb_get_image_reply_t *R
13022 ** @returns uint8_t *
13023 **
13024 *****************************************************************************/
13025
13026uint8_t *
13027xcb_get_image_data (const xcb_get_image_reply_t *R /**< */);
13028
13029
13030/*****************************************************************************
13031 **
13032 ** int xcb_get_image_data_length
13033 **
13034 ** @param const xcb_get_image_reply_t *R
13035 ** @returns int
13036 **
13037 *****************************************************************************/
13038
13039int
13040xcb_get_image_data_length (const xcb_get_image_reply_t *R /**< */);
13041
13042
13043/*****************************************************************************
13044 **
13045 ** xcb_generic_iterator_t xcb_get_image_data_end
13046 **
13047 ** @param const xcb_get_image_reply_t *R
13048 ** @returns xcb_generic_iterator_t
13049 **
13050 *****************************************************************************/
13051
13052xcb_generic_iterator_t
13053xcb_get_image_data_end (const xcb_get_image_reply_t *R /**< */);
13054
13055/**
13056 * Return the reply
13057 * @param c The connection
13058 * @param cookie The cookie
13059 * @param e The xcb_generic_error_t supplied
13060 *
13061 * Returns the reply of the request asked by
13062 *
13063 * The parameter @p e supplied to this function must be NULL if
13064 * xcb_get_image_unchecked(). is used.
13065 * Otherwise, it stores the error if any.
13066 *
13067 * The returned value must be freed by the caller using free().
13068 */
13069
13070/*****************************************************************************
13071 **
13072 ** xcb_get_image_reply_t * xcb_get_image_reply
13073 **
13074 ** @param xcb_connection_t *c
13075 ** @param xcb_get_image_cookie_t cookie
13076 ** @param xcb_generic_error_t **e
13077 ** @returns xcb_get_image_reply_t *
13078 **
13079 *****************************************************************************/
13080
13081xcb_get_image_reply_t *
13082xcb_get_image_reply (xcb_connection_t *c /**< */,
13083 xcb_get_image_cookie_t cookie /**< */,
13084 xcb_generic_error_t **e /**< */);
13085
13086int
13087xcb_poly_text_8_sizeof (const void *_buffer /**< */,
13088 uint32_t items_len /**< */);
13089
13090/**
13091 *
13092 * @param c The connection
13093 * @return A cookie
13094 *
13095 * Delivers a request to the X server.
13096 *
13097 * This form can be used only if the request will not cause
13098 * a reply to be generated. Any returned error will be
13099 * saved for handling by xcb_request_check().
13100 */
13101
13102/*****************************************************************************
13103 **
13104 ** xcb_void_cookie_t xcb_poly_text_8_checked
13105 **
13106 ** @param xcb_connection_t *c
13107 ** @param xcb_drawable_t drawable
13108 ** @param xcb_gcontext_t gc
13109 ** @param int16_t x
13110 ** @param int16_t y
13111 ** @param uint32_t items_len
13112 ** @param const uint8_t *items
13113 ** @returns xcb_void_cookie_t
13114 **
13115 *****************************************************************************/
13116
13117xcb_void_cookie_t
13118xcb_poly_text_8_checked (xcb_connection_t *c /**< */,
13119 xcb_drawable_t drawable /**< */,
13120 xcb_gcontext_t gc /**< */,
13121 int16_t x /**< */,
13122 int16_t y /**< */,
13123 uint32_t items_len /**< */,
13124 const uint8_t *items /**< */);
13125
13126/**
13127 *
13128 * @param c The connection
13129 * @return A cookie
13130 *
13131 * Delivers a request to the X server.
13132 *
13133 */
13134
13135/*****************************************************************************
13136 **
13137 ** xcb_void_cookie_t xcb_poly_text_8
13138 **
13139 ** @param xcb_connection_t *c
13140 ** @param xcb_drawable_t drawable
13141 ** @param xcb_gcontext_t gc
13142 ** @param int16_t x
13143 ** @param int16_t y
13144 ** @param uint32_t items_len
13145 ** @param const uint8_t *items
13146 ** @returns xcb_void_cookie_t
13147 **
13148 *****************************************************************************/
13149
13150xcb_void_cookie_t
13151xcb_poly_text_8 (xcb_connection_t *c /**< */,
13152 xcb_drawable_t drawable /**< */,
13153 xcb_gcontext_t gc /**< */,
13154 int16_t x /**< */,
13155 int16_t y /**< */,
13156 uint32_t items_len /**< */,
13157 const uint8_t *items /**< */);
13158
13159int
13160xcb_poly_text_16_sizeof (const void *_buffer /**< */,
13161 uint32_t items_len /**< */);
13162
13163/**
13164 *
13165 * @param c The connection
13166 * @return A cookie
13167 *
13168 * Delivers a request to the X server.
13169 *
13170 * This form can be used only if the request will not cause
13171 * a reply to be generated. Any returned error will be
13172 * saved for handling by xcb_request_check().
13173 */
13174
13175/*****************************************************************************
13176 **
13177 ** xcb_void_cookie_t xcb_poly_text_16_checked
13178 **
13179 ** @param xcb_connection_t *c
13180 ** @param xcb_drawable_t drawable
13181 ** @param xcb_gcontext_t gc
13182 ** @param int16_t x
13183 ** @param int16_t y
13184 ** @param uint32_t items_len
13185 ** @param const uint8_t *items
13186 ** @returns xcb_void_cookie_t
13187 **
13188 *****************************************************************************/
13189
13190xcb_void_cookie_t
13191xcb_poly_text_16_checked (xcb_connection_t *c /**< */,
13192 xcb_drawable_t drawable /**< */,
13193 xcb_gcontext_t gc /**< */,
13194 int16_t x /**< */,
13195 int16_t y /**< */,
13196 uint32_t items_len /**< */,
13197 const uint8_t *items /**< */);
13198
13199/**
13200 *
13201 * @param c The connection
13202 * @return A cookie
13203 *
13204 * Delivers a request to the X server.
13205 *
13206 */
13207
13208/*****************************************************************************
13209 **
13210 ** xcb_void_cookie_t xcb_poly_text_16
13211 **
13212 ** @param xcb_connection_t *c
13213 ** @param xcb_drawable_t drawable
13214 ** @param xcb_gcontext_t gc
13215 ** @param int16_t x
13216 ** @param int16_t y
13217 ** @param uint32_t items_len
13218 ** @param const uint8_t *items
13219 ** @returns xcb_void_cookie_t
13220 **
13221 *****************************************************************************/
13222
13223xcb_void_cookie_t
13224xcb_poly_text_16 (xcb_connection_t *c /**< */,
13225 xcb_drawable_t drawable /**< */,
13226 xcb_gcontext_t gc /**< */,
13227 int16_t x /**< */,
13228 int16_t y /**< */,
13229 uint32_t items_len /**< */,
13230 const uint8_t *items /**< */);
13231
13232int
13233xcb_image_text_8_sizeof (const void *_buffer /**< */);
13234
13235/**
13236 * @brief Draws text
13237 *
13238 * @param c The connection
13239 * @param string_len The length of the \a string. Note that this parameter limited by 255 due to
13240 * using 8 bits!
13241 * @param drawable The drawable (Window or Pixmap) to draw text on.
13242 * @param gc The graphics context to use.
13243 * \n
13244 * The following graphics context components are used: plane-mask, foreground,
13245 * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
13246 * @param x The x coordinate of the first character, relative to the origin of \a drawable.
13247 * @param y The y coordinate of the first character, relative to the origin of \a drawable.
13248 * @param string The string to draw. Only the first 255 characters are relevant due to the data
13249 * type of \a string_len.
13250 * @return A cookie
13251 *
13252 * Fills the destination rectangle with the background pixel from \a gc, then
13253 * paints the text with the foreground pixel from \a gc. The upper-left corner of
13254 * the filled rectangle is at [x, y - font-ascent]. The width is overall-width,
13255 * the height is font-ascent + font-descent. The overall-width, font-ascent and
13256 * font-descent are as returned by `xcb_query_text_extents` (TODO).
13257 *
13258 * Note that using X core fonts is deprecated (but still supported) in favor of
13259 * client-side rendering using Xft.
13260 *
13261 * This form can be used only if the request will not cause
13262 * a reply to be generated. Any returned error will be
13263 * saved for handling by xcb_request_check().
13264 */
13265
13266/*****************************************************************************
13267 **
13268 ** xcb_void_cookie_t xcb_image_text_8_checked
13269 **
13270 ** @param xcb_connection_t *c
13271 ** @param uint8_t string_len
13272 ** @param xcb_drawable_t drawable
13273 ** @param xcb_gcontext_t gc
13274 ** @param int16_t x
13275 ** @param int16_t y
13276 ** @param const char *string
13277 ** @returns xcb_void_cookie_t
13278 **
13279 *****************************************************************************/
13280
13281xcb_void_cookie_t
13282xcb_image_text_8_checked (xcb_connection_t *c /**< */,
13283 uint8_t string_len /**< */,
13284 xcb_drawable_t drawable /**< */,
13285 xcb_gcontext_t gc /**< */,
13286 int16_t x /**< */,
13287 int16_t y /**< */,
13288 const char *string /**< */);
13289
13290/**
13291 * @brief Draws text
13292 *
13293 * @param c The connection
13294 * @param string_len The length of the \a string. Note that this parameter limited by 255 due to
13295 * using 8 bits!
13296 * @param drawable The drawable (Window or Pixmap) to draw text on.
13297 * @param gc The graphics context to use.
13298 * \n
13299 * The following graphics context components are used: plane-mask, foreground,
13300 * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
13301 * @param x The x coordinate of the first character, relative to the origin of \a drawable.
13302 * @param y The y coordinate of the first character, relative to the origin of \a drawable.
13303 * @param string The string to draw. Only the first 255 characters are relevant due to the data
13304 * type of \a string_len.
13305 * @return A cookie
13306 *
13307 * Fills the destination rectangle with the background pixel from \a gc, then
13308 * paints the text with the foreground pixel from \a gc. The upper-left corner of
13309 * the filled rectangle is at [x, y - font-ascent]. The width is overall-width,
13310 * the height is font-ascent + font-descent. The overall-width, font-ascent and
13311 * font-descent are as returned by `xcb_query_text_extents` (TODO).
13312 *
13313 * Note that using X core fonts is deprecated (but still supported) in favor of
13314 * client-side rendering using Xft.
13315 *
13316 */
13317
13318/*****************************************************************************
13319 **
13320 ** xcb_void_cookie_t xcb_image_text_8
13321 **
13322 ** @param xcb_connection_t *c
13323 ** @param uint8_t string_len
13324 ** @param xcb_drawable_t drawable
13325 ** @param xcb_gcontext_t gc
13326 ** @param int16_t x
13327 ** @param int16_t y
13328 ** @param const char *string
13329 ** @returns xcb_void_cookie_t
13330 **
13331 *****************************************************************************/
13332
13333xcb_void_cookie_t
13334xcb_image_text_8 (xcb_connection_t *c /**< */,
13335 uint8_t string_len /**< */,
13336 xcb_drawable_t drawable /**< */,
13337 xcb_gcontext_t gc /**< */,
13338 int16_t x /**< */,
13339 int16_t y /**< */,
13340 const char *string /**< */);
13341
13342int
13343xcb_image_text_16_sizeof (const void *_buffer /**< */);
13344
13345/**
13346 * @brief Draws text
13347 *
13348 * @param c The connection
13349 * @param string_len The length of the \a string in characters. Note that this parameter limited by
13350 * 255 due to using 8 bits!
13351 * @param drawable The drawable (Window or Pixmap) to draw text on.
13352 * @param gc The graphics context to use.
13353 * \n
13354 * The following graphics context components are used: plane-mask, foreground,
13355 * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
13356 * @param x The x coordinate of the first character, relative to the origin of \a drawable.
13357 * @param y The y coordinate of the first character, relative to the origin of \a drawable.
13358 * @param string The string to draw. Only the first 255 characters are relevant due to the data
13359 * type of \a string_len. Every character uses 2 bytes (hence the 16 in this
13360 * request's name).
13361 * @return A cookie
13362 *
13363 * Fills the destination rectangle with the background pixel from \a gc, then
13364 * paints the text with the foreground pixel from \a gc. The upper-left corner of
13365 * the filled rectangle is at [x, y - font-ascent]. The width is overall-width,
13366 * the height is font-ascent + font-descent. The overall-width, font-ascent and
13367 * font-descent are as returned by `xcb_query_text_extents` (TODO).
13368 *
13369 * Note that using X core fonts is deprecated (but still supported) in favor of
13370 * client-side rendering using Xft.
13371 *
13372 * This form can be used only if the request will not cause
13373 * a reply to be generated. Any returned error will be
13374 * saved for handling by xcb_request_check().
13375 */
13376
13377/*****************************************************************************
13378 **
13379 ** xcb_void_cookie_t xcb_image_text_16_checked
13380 **
13381 ** @param xcb_connection_t *c
13382 ** @param uint8_t string_len
13383 ** @param xcb_drawable_t drawable
13384 ** @param xcb_gcontext_t gc
13385 ** @param int16_t x
13386 ** @param int16_t y
13387 ** @param const xcb_char2b_t *string
13388 ** @returns xcb_void_cookie_t
13389 **
13390 *****************************************************************************/
13391
13392xcb_void_cookie_t
13393xcb_image_text_16_checked (xcb_connection_t *c /**< */,
13394 uint8_t string_len /**< */,
13395 xcb_drawable_t drawable /**< */,
13396 xcb_gcontext_t gc /**< */,
13397 int16_t x /**< */,
13398 int16_t y /**< */,
13399 const xcb_char2b_t *string /**< */);
13400
13401/**
13402 * @brief Draws text
13403 *
13404 * @param c The connection
13405 * @param string_len The length of the \a string in characters. Note that this parameter limited by
13406 * 255 due to using 8 bits!
13407 * @param drawable The drawable (Window or Pixmap) to draw text on.
13408 * @param gc The graphics context to use.
13409 * \n
13410 * The following graphics context components are used: plane-mask, foreground,
13411 * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
13412 * @param x The x coordinate of the first character, relative to the origin of \a drawable.
13413 * @param y The y coordinate of the first character, relative to the origin of \a drawable.
13414 * @param string The string to draw. Only the first 255 characters are relevant due to the data
13415 * type of \a string_len. Every character uses 2 bytes (hence the 16 in this
13416 * request's name).
13417 * @return A cookie
13418 *
13419 * Fills the destination rectangle with the background pixel from \a gc, then
13420 * paints the text with the foreground pixel from \a gc. The upper-left corner of
13421 * the filled rectangle is at [x, y - font-ascent]. The width is overall-width,
13422 * the height is font-ascent + font-descent. The overall-width, font-ascent and
13423 * font-descent are as returned by `xcb_query_text_extents` (TODO).
13424 *
13425 * Note that using X core fonts is deprecated (but still supported) in favor of
13426 * client-side rendering using Xft.
13427 *
13428 */
13429
13430/*****************************************************************************
13431 **
13432 ** xcb_void_cookie_t xcb_image_text_16
13433 **
13434 ** @param xcb_connection_t *c
13435 ** @param uint8_t string_len
13436 ** @param xcb_drawable_t drawable
13437 ** @param xcb_gcontext_t gc
13438 ** @param int16_t x
13439 ** @param int16_t y
13440 ** @param const xcb_char2b_t *string
13441 ** @returns xcb_void_cookie_t
13442 **
13443 *****************************************************************************/
13444
13445xcb_void_cookie_t
13446xcb_image_text_16 (xcb_connection_t *c /**< */,
13447 uint8_t string_len /**< */,
13448 xcb_drawable_t drawable /**< */,
13449 xcb_gcontext_t gc /**< */,
13450 int16_t x /**< */,
13451 int16_t y /**< */,
13452 const xcb_char2b_t *string /**< */);
13453
13454/**
13455 *
13456 * @param c The connection
13457 * @return A cookie
13458 *
13459 * Delivers a request to the X server.
13460 *
13461 * This form can be used only if the request will not cause
13462 * a reply to be generated. Any returned error will be
13463 * saved for handling by xcb_request_check().
13464 */
13465
13466/*****************************************************************************
13467 **
13468 ** xcb_void_cookie_t xcb_create_colormap_checked
13469 **
13470 ** @param xcb_connection_t *c
13471 ** @param uint8_t alloc
13472 ** @param xcb_colormap_t mid
13473 ** @param xcb_window_t window
13474 ** @param xcb_visualid_t visual
13475 ** @returns xcb_void_cookie_t
13476 **
13477 *****************************************************************************/
13478
13479xcb_void_cookie_t
13480xcb_create_colormap_checked (xcb_connection_t *c /**< */,
13481 uint8_t alloc /**< */,
13482 xcb_colormap_t mid /**< */,
13483 xcb_window_t window /**< */,
13484 xcb_visualid_t visual /**< */);
13485
13486/**
13487 *
13488 * @param c The connection
13489 * @return A cookie
13490 *
13491 * Delivers a request to the X server.
13492 *
13493 */
13494
13495/*****************************************************************************
13496 **
13497 ** xcb_void_cookie_t xcb_create_colormap
13498 **
13499 ** @param xcb_connection_t *c
13500 ** @param uint8_t alloc
13501 ** @param xcb_colormap_t mid
13502 ** @param xcb_window_t window
13503 ** @param xcb_visualid_t visual
13504 ** @returns xcb_void_cookie_t
13505 **
13506 *****************************************************************************/
13507
13508xcb_void_cookie_t
13509xcb_create_colormap (xcb_connection_t *c /**< */,
13510 uint8_t alloc /**< */,
13511 xcb_colormap_t mid /**< */,
13512 xcb_window_t window /**< */,
13513 xcb_visualid_t visual /**< */);
13514
13515/**
13516 *
13517 * @param c The connection
13518 * @return A cookie
13519 *
13520 * Delivers a request to the X server.
13521 *
13522 * This form can be used only if the request will not cause
13523 * a reply to be generated. Any returned error will be
13524 * saved for handling by xcb_request_check().
13525 */
13526
13527/*****************************************************************************
13528 **
13529 ** xcb_void_cookie_t xcb_free_colormap_checked
13530 **
13531 ** @param xcb_connection_t *c
13532 ** @param xcb_colormap_t cmap
13533 ** @returns xcb_void_cookie_t
13534 **
13535 *****************************************************************************/
13536
13537xcb_void_cookie_t
13538xcb_free_colormap_checked (xcb_connection_t *c /**< */,
13539 xcb_colormap_t cmap /**< */);
13540
13541/**
13542 *
13543 * @param c The connection
13544 * @return A cookie
13545 *
13546 * Delivers a request to the X server.
13547 *
13548 */
13549
13550/*****************************************************************************
13551 **
13552 ** xcb_void_cookie_t xcb_free_colormap
13553 **
13554 ** @param xcb_connection_t *c
13555 ** @param xcb_colormap_t cmap
13556 ** @returns xcb_void_cookie_t
13557 **
13558 *****************************************************************************/
13559
13560xcb_void_cookie_t
13561xcb_free_colormap (xcb_connection_t *c /**< */,
13562 xcb_colormap_t cmap /**< */);
13563
13564/**
13565 *
13566 * @param c The connection
13567 * @return A cookie
13568 *
13569 * Delivers a request to the X server.
13570 *
13571 * This form can be used only if the request will not cause
13572 * a reply to be generated. Any returned error will be
13573 * saved for handling by xcb_request_check().
13574 */
13575
13576/*****************************************************************************
13577 **
13578 ** xcb_void_cookie_t xcb_copy_colormap_and_free_checked
13579 **
13580 ** @param xcb_connection_t *c
13581 ** @param xcb_colormap_t mid
13582 ** @param xcb_colormap_t src_cmap
13583 ** @returns xcb_void_cookie_t
13584 **
13585 *****************************************************************************/
13586
13587xcb_void_cookie_t
13588xcb_copy_colormap_and_free_checked (xcb_connection_t *c /**< */,
13589 xcb_colormap_t mid /**< */,
13590 xcb_colormap_t src_cmap /**< */);
13591
13592/**
13593 *
13594 * @param c The connection
13595 * @return A cookie
13596 *
13597 * Delivers a request to the X server.
13598 *
13599 */
13600
13601/*****************************************************************************
13602 **
13603 ** xcb_void_cookie_t xcb_copy_colormap_and_free
13604 **
13605 ** @param xcb_connection_t *c
13606 ** @param xcb_colormap_t mid
13607 ** @param xcb_colormap_t src_cmap
13608 ** @returns xcb_void_cookie_t
13609 **
13610 *****************************************************************************/
13611
13612xcb_void_cookie_t
13613xcb_copy_colormap_and_free (xcb_connection_t *c /**< */,
13614 xcb_colormap_t mid /**< */,
13615 xcb_colormap_t src_cmap /**< */);
13616
13617/**
13618 *
13619 * @param c The connection
13620 * @return A cookie
13621 *
13622 * Delivers a request to the X server.
13623 *
13624 * This form can be used only if the request will not cause
13625 * a reply to be generated. Any returned error will be
13626 * saved for handling by xcb_request_check().
13627 */
13628
13629/*****************************************************************************
13630 **
13631 ** xcb_void_cookie_t xcb_install_colormap_checked
13632 **
13633 ** @param xcb_connection_t *c
13634 ** @param xcb_colormap_t cmap
13635 ** @returns xcb_void_cookie_t
13636 **
13637 *****************************************************************************/
13638
13639xcb_void_cookie_t
13640xcb_install_colormap_checked (xcb_connection_t *c /**< */,
13641 xcb_colormap_t cmap /**< */);
13642
13643/**
13644 *
13645 * @param c The connection
13646 * @return A cookie
13647 *
13648 * Delivers a request to the X server.
13649 *
13650 */
13651
13652/*****************************************************************************
13653 **
13654 ** xcb_void_cookie_t xcb_install_colormap
13655 **
13656 ** @param xcb_connection_t *c
13657 ** @param xcb_colormap_t cmap
13658 ** @returns xcb_void_cookie_t
13659 **
13660 *****************************************************************************/
13661
13662xcb_void_cookie_t
13663xcb_install_colormap (xcb_connection_t *c /**< */,
13664 xcb_colormap_t cmap /**< */);
13665
13666/**
13667 *
13668 * @param c The connection
13669 * @return A cookie
13670 *
13671 * Delivers a request to the X server.
13672 *
13673 * This form can be used only if the request will not cause
13674 * a reply to be generated. Any returned error will be
13675 * saved for handling by xcb_request_check().
13676 */
13677
13678/*****************************************************************************
13679 **
13680 ** xcb_void_cookie_t xcb_uninstall_colormap_checked
13681 **
13682 ** @param xcb_connection_t *c
13683 ** @param xcb_colormap_t cmap
13684 ** @returns xcb_void_cookie_t
13685 **
13686 *****************************************************************************/
13687
13688xcb_void_cookie_t
13689xcb_uninstall_colormap_checked (xcb_connection_t *c /**< */,
13690 xcb_colormap_t cmap /**< */);
13691
13692/**
13693 *
13694 * @param c The connection
13695 * @return A cookie
13696 *
13697 * Delivers a request to the X server.
13698 *
13699 */
13700
13701/*****************************************************************************
13702 **
13703 ** xcb_void_cookie_t xcb_uninstall_colormap
13704 **
13705 ** @param xcb_connection_t *c
13706 ** @param xcb_colormap_t cmap
13707 ** @returns xcb_void_cookie_t
13708 **
13709 *****************************************************************************/
13710
13711xcb_void_cookie_t
13712xcb_uninstall_colormap (xcb_connection_t *c /**< */,
13713 xcb_colormap_t cmap /**< */);
13714
13715int
13716xcb_list_installed_colormaps_sizeof (const void *_buffer /**< */);
13717
13718/**
13719 *
13720 * @param c The connection
13721 * @return A cookie
13722 *
13723 * Delivers a request to the X server.
13724 *
13725 */
13726
13727/*****************************************************************************
13728 **
13729 ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps
13730 **
13731 ** @param xcb_connection_t *c
13732 ** @param xcb_window_t window
13733 ** @returns xcb_list_installed_colormaps_cookie_t
13734 **
13735 *****************************************************************************/
13736
13737xcb_list_installed_colormaps_cookie_t
13738xcb_list_installed_colormaps (xcb_connection_t *c /**< */,
13739 xcb_window_t window /**< */);
13740
13741/**
13742 *
13743 * @param c The connection
13744 * @return A cookie
13745 *
13746 * Delivers a request to the X server.
13747 *
13748 * This form can be used only if the request will cause
13749 * a reply to be generated. Any returned error will be
13750 * placed in the event queue.
13751 */
13752
13753/*****************************************************************************
13754 **
13755 ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps_unchecked
13756 **
13757 ** @param xcb_connection_t *c
13758 ** @param xcb_window_t window
13759 ** @returns xcb_list_installed_colormaps_cookie_t
13760 **
13761 *****************************************************************************/
13762
13763xcb_list_installed_colormaps_cookie_t
13764xcb_list_installed_colormaps_unchecked (xcb_connection_t *c /**< */,
13765 xcb_window_t window /**< */);
13766
13767
13768/*****************************************************************************
13769 **
13770 ** xcb_colormap_t * xcb_list_installed_colormaps_cmaps
13771 **
13772 ** @param const xcb_list_installed_colormaps_reply_t *R
13773 ** @returns xcb_colormap_t *
13774 **
13775 *****************************************************************************/
13776
13777xcb_colormap_t *
13778xcb_list_installed_colormaps_cmaps (const xcb_list_installed_colormaps_reply_t *R /**< */);
13779
13780
13781/*****************************************************************************
13782 **
13783 ** int xcb_list_installed_colormaps_cmaps_length
13784 **
13785 ** @param const xcb_list_installed_colormaps_reply_t *R
13786 ** @returns int
13787 **
13788 *****************************************************************************/
13789
13790int
13791xcb_list_installed_colormaps_cmaps_length (const xcb_list_installed_colormaps_reply_t *R /**< */);
13792
13793
13794/*****************************************************************************
13795 **
13796 ** xcb_generic_iterator_t xcb_list_installed_colormaps_cmaps_end
13797 **
13798 ** @param const xcb_list_installed_colormaps_reply_t *R
13799 ** @returns xcb_generic_iterator_t
13800 **
13801 *****************************************************************************/
13802
13803xcb_generic_iterator_t
13804xcb_list_installed_colormaps_cmaps_end (const xcb_list_installed_colormaps_reply_t *R /**< */);
13805
13806/**
13807 * Return the reply
13808 * @param c The connection
13809 * @param cookie The cookie
13810 * @param e The xcb_generic_error_t supplied
13811 *
13812 * Returns the reply of the request asked by
13813 *
13814 * The parameter @p e supplied to this function must be NULL if
13815 * xcb_list_installed_colormaps_unchecked(). is used.
13816 * Otherwise, it stores the error if any.
13817 *
13818 * The returned value must be freed by the caller using free().
13819 */
13820
13821/*****************************************************************************
13822 **
13823 ** xcb_list_installed_colormaps_reply_t * xcb_list_installed_colormaps_reply
13824 **
13825 ** @param xcb_connection_t *c
13826 ** @param xcb_list_installed_colormaps_cookie_t cookie
13827 ** @param xcb_generic_error_t **e
13828 ** @returns xcb_list_installed_colormaps_reply_t *
13829 **
13830 *****************************************************************************/
13831
13832xcb_list_installed_colormaps_reply_t *
13833xcb_list_installed_colormaps_reply (xcb_connection_t *c /**< */,
13834 xcb_list_installed_colormaps_cookie_t cookie /**< */,
13835 xcb_generic_error_t **e /**< */);
13836
13837/**
13838 * @brief Allocate a color
13839 *
13840 * @param c The connection
13841 * @param cmap TODO
13842 * @param red The red value of your color.
13843 * @param green The green value of your color.
13844 * @param blue The blue value of your color.
13845 * @return A cookie
13846 *
13847 * Allocates a read-only colormap entry corresponding to the closest RGB value
13848 * supported by the hardware. If you are using TrueColor, you can take a shortcut
13849 * and directly calculate the color pixel value to avoid the round trip. But, for
13850 * example, on 16-bit color setups (VNC), you can easily get the closest supported
13851 * RGB value to the RGB value you are specifying.
13852 *
13853 */
13854
13855/*****************************************************************************
13856 **
13857 ** xcb_alloc_color_cookie_t xcb_alloc_color
13858 **
13859 ** @param xcb_connection_t *c
13860 ** @param xcb_colormap_t cmap
13861 ** @param uint16_t red
13862 ** @param uint16_t green
13863 ** @param uint16_t blue
13864 ** @returns xcb_alloc_color_cookie_t
13865 **
13866 *****************************************************************************/
13867
13868xcb_alloc_color_cookie_t
13869xcb_alloc_color (xcb_connection_t *c /**< */,
13870 xcb_colormap_t cmap /**< */,
13871 uint16_t red /**< */,
13872 uint16_t green /**< */,
13873 uint16_t blue /**< */);
13874
13875/**
13876 * @brief Allocate a color
13877 *
13878 * @param c The connection
13879 * @param cmap TODO
13880 * @param red The red value of your color.
13881 * @param green The green value of your color.
13882 * @param blue The blue value of your color.
13883 * @return A cookie
13884 *
13885 * Allocates a read-only colormap entry corresponding to the closest RGB value
13886 * supported by the hardware. If you are using TrueColor, you can take a shortcut
13887 * and directly calculate the color pixel value to avoid the round trip. But, for
13888 * example, on 16-bit color setups (VNC), you can easily get the closest supported
13889 * RGB value to the RGB value you are specifying.
13890 *
13891 * This form can be used only if the request will cause
13892 * a reply to be generated. Any returned error will be
13893 * placed in the event queue.
13894 */
13895
13896/*****************************************************************************
13897 **
13898 ** xcb_alloc_color_cookie_t xcb_alloc_color_unchecked
13899 **
13900 ** @param xcb_connection_t *c
13901 ** @param xcb_colormap_t cmap
13902 ** @param uint16_t red
13903 ** @param uint16_t green
13904 ** @param uint16_t blue
13905 ** @returns xcb_alloc_color_cookie_t
13906 **
13907 *****************************************************************************/
13908
13909xcb_alloc_color_cookie_t
13910xcb_alloc_color_unchecked (xcb_connection_t *c /**< */,
13911 xcb_colormap_t cmap /**< */,
13912 uint16_t red /**< */,
13913 uint16_t green /**< */,
13914 uint16_t blue /**< */);
13915
13916/**
13917 * Return the reply
13918 * @param c The connection
13919 * @param cookie The cookie
13920 * @param e The xcb_generic_error_t supplied
13921 *
13922 * Returns the reply of the request asked by
13923 *
13924 * The parameter @p e supplied to this function must be NULL if
13925 * xcb_alloc_color_unchecked(). is used.
13926 * Otherwise, it stores the error if any.
13927 *
13928 * The returned value must be freed by the caller using free().
13929 */
13930
13931/*****************************************************************************
13932 **
13933 ** xcb_alloc_color_reply_t * xcb_alloc_color_reply
13934 **
13935 ** @param xcb_connection_t *c
13936 ** @param xcb_alloc_color_cookie_t cookie
13937 ** @param xcb_generic_error_t **e
13938 ** @returns xcb_alloc_color_reply_t *
13939 **
13940 *****************************************************************************/
13941
13942xcb_alloc_color_reply_t *
13943xcb_alloc_color_reply (xcb_connection_t *c /**< */,
13944 xcb_alloc_color_cookie_t cookie /**< */,
13945 xcb_generic_error_t **e /**< */);
13946
13947int
13948xcb_alloc_named_color_sizeof (const void *_buffer /**< */);
13949
13950/**
13951 *
13952 * @param c The connection
13953 * @return A cookie
13954 *
13955 * Delivers a request to the X server.
13956 *
13957 */
13958
13959/*****************************************************************************
13960 **
13961 ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color
13962 **
13963 ** @param xcb_connection_t *c
13964 ** @param xcb_colormap_t cmap
13965 ** @param uint16_t name_len
13966 ** @param const char *name
13967 ** @returns xcb_alloc_named_color_cookie_t
13968 **
13969 *****************************************************************************/
13970
13971xcb_alloc_named_color_cookie_t
13972xcb_alloc_named_color (xcb_connection_t *c /**< */,
13973 xcb_colormap_t cmap /**< */,
13974 uint16_t name_len /**< */,
13975 const char *name /**< */);
13976
13977/**
13978 *
13979 * @param c The connection
13980 * @return A cookie
13981 *
13982 * Delivers a request to the X server.
13983 *
13984 * This form can be used only if the request will cause
13985 * a reply to be generated. Any returned error will be
13986 * placed in the event queue.
13987 */
13988
13989/*****************************************************************************
13990 **
13991 ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color_unchecked
13992 **
13993 ** @param xcb_connection_t *c
13994 ** @param xcb_colormap_t cmap
13995 ** @param uint16_t name_len
13996 ** @param const char *name
13997 ** @returns xcb_alloc_named_color_cookie_t
13998 **
13999 *****************************************************************************/
14000
14001xcb_alloc_named_color_cookie_t
14002xcb_alloc_named_color_unchecked (xcb_connection_t *c /**< */,
14003 xcb_colormap_t cmap /**< */,
14004 uint16_t name_len /**< */,
14005 const char *name /**< */);
14006
14007/**
14008 * Return the reply
14009 * @param c The connection
14010 * @param cookie The cookie
14011 * @param e The xcb_generic_error_t supplied
14012 *
14013 * Returns the reply of the request asked by
14014 *
14015 * The parameter @p e supplied to this function must be NULL if
14016 * xcb_alloc_named_color_unchecked(). is used.
14017 * Otherwise, it stores the error if any.
14018 *
14019 * The returned value must be freed by the caller using free().
14020 */
14021
14022/*****************************************************************************
14023 **
14024 ** xcb_alloc_named_color_reply_t * xcb_alloc_named_color_reply
14025 **
14026 ** @param xcb_connection_t *c
14027 ** @param xcb_alloc_named_color_cookie_t cookie
14028 ** @param xcb_generic_error_t **e
14029 ** @returns xcb_alloc_named_color_reply_t *
14030 **
14031 *****************************************************************************/
14032
14033xcb_alloc_named_color_reply_t *
14034xcb_alloc_named_color_reply (xcb_connection_t *c /**< */,
14035 xcb_alloc_named_color_cookie_t cookie /**< */,
14036 xcb_generic_error_t **e /**< */);
14037
14038int
14039xcb_alloc_color_cells_sizeof (const void *_buffer /**< */);
14040
14041/**
14042 *
14043 * @param c The connection
14044 * @return A cookie
14045 *
14046 * Delivers a request to the X server.
14047 *
14048 */
14049
14050/*****************************************************************************
14051 **
14052 ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells
14053 **
14054 ** @param xcb_connection_t *c
14055 ** @param uint8_t contiguous
14056 ** @param xcb_colormap_t cmap
14057 ** @param uint16_t colors
14058 ** @param uint16_t planes
14059 ** @returns xcb_alloc_color_cells_cookie_t
14060 **
14061 *****************************************************************************/
14062
14063xcb_alloc_color_cells_cookie_t
14064xcb_alloc_color_cells (xcb_connection_t *c /**< */,
14065 uint8_t contiguous /**< */,
14066 xcb_colormap_t cmap /**< */,
14067 uint16_t colors /**< */,
14068 uint16_t planes /**< */);
14069
14070/**
14071 *
14072 * @param c The connection
14073 * @return A cookie
14074 *
14075 * Delivers a request to the X server.
14076 *
14077 * This form can be used only if the request will cause
14078 * a reply to be generated. Any returned error will be
14079 * placed in the event queue.
14080 */
14081
14082/*****************************************************************************
14083 **
14084 ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells_unchecked
14085 **
14086 ** @param xcb_connection_t *c
14087 ** @param uint8_t contiguous
14088 ** @param xcb_colormap_t cmap
14089 ** @param uint16_t colors
14090 ** @param uint16_t planes
14091 ** @returns xcb_alloc_color_cells_cookie_t
14092 **
14093 *****************************************************************************/
14094
14095xcb_alloc_color_cells_cookie_t
14096xcb_alloc_color_cells_unchecked (xcb_connection_t *c /**< */,
14097 uint8_t contiguous /**< */,
14098 xcb_colormap_t cmap /**< */,
14099 uint16_t colors /**< */,
14100 uint16_t planes /**< */);
14101
14102
14103/*****************************************************************************
14104 **
14105 ** uint32_t * xcb_alloc_color_cells_pixels
14106 **
14107 ** @param const xcb_alloc_color_cells_reply_t *R
14108 ** @returns uint32_t *
14109 **
14110 *****************************************************************************/
14111
14112uint32_t *
14113xcb_alloc_color_cells_pixels (const xcb_alloc_color_cells_reply_t *R /**< */);
14114
14115
14116/*****************************************************************************
14117 **
14118 ** int xcb_alloc_color_cells_pixels_length
14119 **
14120 ** @param const xcb_alloc_color_cells_reply_t *R
14121 ** @returns int
14122 **
14123 *****************************************************************************/
14124
14125int
14126xcb_alloc_color_cells_pixels_length (const xcb_alloc_color_cells_reply_t *R /**< */);
14127
14128
14129/*****************************************************************************
14130 **
14131 ** xcb_generic_iterator_t xcb_alloc_color_cells_pixels_end
14132 **
14133 ** @param const xcb_alloc_color_cells_reply_t *R
14134 ** @returns xcb_generic_iterator_t
14135 **
14136 *****************************************************************************/
14137
14138xcb_generic_iterator_t
14139xcb_alloc_color_cells_pixels_end (const xcb_alloc_color_cells_reply_t *R /**< */);
14140
14141
14142/*****************************************************************************
14143 **
14144 ** uint32_t * xcb_alloc_color_cells_masks
14145 **
14146 ** @param const xcb_alloc_color_cells_reply_t *R
14147 ** @returns uint32_t *
14148 **
14149 *****************************************************************************/
14150
14151uint32_t *
14152xcb_alloc_color_cells_masks (const xcb_alloc_color_cells_reply_t *R /**< */);
14153
14154
14155/*****************************************************************************
14156 **
14157 ** int xcb_alloc_color_cells_masks_length
14158 **
14159 ** @param const xcb_alloc_color_cells_reply_t *R
14160 ** @returns int
14161 **
14162 *****************************************************************************/
14163
14164int
14165xcb_alloc_color_cells_masks_length (const xcb_alloc_color_cells_reply_t *R /**< */);
14166
14167
14168/*****************************************************************************
14169 **
14170 ** xcb_generic_iterator_t xcb_alloc_color_cells_masks_end
14171 **
14172 ** @param const xcb_alloc_color_cells_reply_t *R
14173 ** @returns xcb_generic_iterator_t
14174 **
14175 *****************************************************************************/
14176
14177xcb_generic_iterator_t
14178xcb_alloc_color_cells_masks_end (const xcb_alloc_color_cells_reply_t *R /**< */);
14179
14180/**
14181 * Return the reply
14182 * @param c The connection
14183 * @param cookie The cookie
14184 * @param e The xcb_generic_error_t supplied
14185 *
14186 * Returns the reply of the request asked by
14187 *
14188 * The parameter @p e supplied to this function must be NULL if
14189 * xcb_alloc_color_cells_unchecked(). is used.
14190 * Otherwise, it stores the error if any.
14191 *
14192 * The returned value must be freed by the caller using free().
14193 */
14194
14195/*****************************************************************************
14196 **
14197 ** xcb_alloc_color_cells_reply_t * xcb_alloc_color_cells_reply
14198 **
14199 ** @param xcb_connection_t *c
14200 ** @param xcb_alloc_color_cells_cookie_t cookie
14201 ** @param xcb_generic_error_t **e
14202 ** @returns xcb_alloc_color_cells_reply_t *
14203 **
14204 *****************************************************************************/
14205
14206xcb_alloc_color_cells_reply_t *
14207xcb_alloc_color_cells_reply (xcb_connection_t *c /**< */,
14208 xcb_alloc_color_cells_cookie_t cookie /**< */,
14209 xcb_generic_error_t **e /**< */);
14210
14211int
14212xcb_alloc_color_planes_sizeof (const void *_buffer /**< */);
14213
14214/**
14215 *
14216 * @param c The connection
14217 * @return A cookie
14218 *
14219 * Delivers a request to the X server.
14220 *
14221 */
14222
14223/*****************************************************************************
14224 **
14225 ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes
14226 **
14227 ** @param xcb_connection_t *c
14228 ** @param uint8_t contiguous
14229 ** @param xcb_colormap_t cmap
14230 ** @param uint16_t colors
14231 ** @param uint16_t reds
14232 ** @param uint16_t greens
14233 ** @param uint16_t blues
14234 ** @returns xcb_alloc_color_planes_cookie_t
14235 **
14236 *****************************************************************************/
14237
14238xcb_alloc_color_planes_cookie_t
14239xcb_alloc_color_planes (xcb_connection_t *c /**< */,
14240 uint8_t contiguous /**< */,
14241 xcb_colormap_t cmap /**< */,
14242 uint16_t colors /**< */,
14243 uint16_t reds /**< */,
14244 uint16_t greens /**< */,
14245 uint16_t blues /**< */);
14246
14247/**
14248 *
14249 * @param c The connection
14250 * @return A cookie
14251 *
14252 * Delivers a request to the X server.
14253 *
14254 * This form can be used only if the request will cause
14255 * a reply to be generated. Any returned error will be
14256 * placed in the event queue.
14257 */
14258
14259/*****************************************************************************
14260 **
14261 ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes_unchecked
14262 **
14263 ** @param xcb_connection_t *c
14264 ** @param uint8_t contiguous
14265 ** @param xcb_colormap_t cmap
14266 ** @param uint16_t colors
14267 ** @param uint16_t reds
14268 ** @param uint16_t greens
14269 ** @param uint16_t blues
14270 ** @returns xcb_alloc_color_planes_cookie_t
14271 **
14272 *****************************************************************************/
14273
14274xcb_alloc_color_planes_cookie_t
14275xcb_alloc_color_planes_unchecked (xcb_connection_t *c /**< */,
14276 uint8_t contiguous /**< */,
14277 xcb_colormap_t cmap /**< */,
14278 uint16_t colors /**< */,
14279 uint16_t reds /**< */,
14280 uint16_t greens /**< */,
14281 uint16_t blues /**< */);
14282
14283
14284/*****************************************************************************
14285 **
14286 ** uint32_t * xcb_alloc_color_planes_pixels
14287 **
14288 ** @param const xcb_alloc_color_planes_reply_t *R
14289 ** @returns uint32_t *
14290 **
14291 *****************************************************************************/
14292
14293uint32_t *
14294xcb_alloc_color_planes_pixels (const xcb_alloc_color_planes_reply_t *R /**< */);
14295
14296
14297/*****************************************************************************
14298 **
14299 ** int xcb_alloc_color_planes_pixels_length
14300 **
14301 ** @param const xcb_alloc_color_planes_reply_t *R
14302 ** @returns int
14303 **
14304 *****************************************************************************/
14305
14306int
14307xcb_alloc_color_planes_pixels_length (const xcb_alloc_color_planes_reply_t *R /**< */);
14308
14309
14310/*****************************************************************************
14311 **
14312 ** xcb_generic_iterator_t xcb_alloc_color_planes_pixels_end
14313 **
14314 ** @param const xcb_alloc_color_planes_reply_t *R
14315 ** @returns xcb_generic_iterator_t
14316 **
14317 *****************************************************************************/
14318
14319xcb_generic_iterator_t
14320xcb_alloc_color_planes_pixels_end (const xcb_alloc_color_planes_reply_t *R /**< */);
14321
14322/**
14323 * Return the reply
14324 * @param c The connection
14325 * @param cookie The cookie
14326 * @param e The xcb_generic_error_t supplied
14327 *
14328 * Returns the reply of the request asked by
14329 *
14330 * The parameter @p e supplied to this function must be NULL if
14331 * xcb_alloc_color_planes_unchecked(). is used.
14332 * Otherwise, it stores the error if any.
14333 *
14334 * The returned value must be freed by the caller using free().
14335 */
14336
14337/*****************************************************************************
14338 **
14339 ** xcb_alloc_color_planes_reply_t * xcb_alloc_color_planes_reply
14340 **
14341 ** @param xcb_connection_t *c
14342 ** @param xcb_alloc_color_planes_cookie_t cookie
14343 ** @param xcb_generic_error_t **e
14344 ** @returns xcb_alloc_color_planes_reply_t *
14345 **
14346 *****************************************************************************/
14347
14348xcb_alloc_color_planes_reply_t *
14349xcb_alloc_color_planes_reply (xcb_connection_t *c /**< */,
14350 xcb_alloc_color_planes_cookie_t cookie /**< */,
14351 xcb_generic_error_t **e /**< */);
14352
14353int
14354xcb_free_colors_sizeof (const void *_buffer /**< */,
14355 uint32_t pixels_len /**< */);
14356
14357/**
14358 *
14359 * @param c The connection
14360 * @return A cookie
14361 *
14362 * Delivers a request to the X server.
14363 *
14364 * This form can be used only if the request will not cause
14365 * a reply to be generated. Any returned error will be
14366 * saved for handling by xcb_request_check().
14367 */
14368
14369/*****************************************************************************
14370 **
14371 ** xcb_void_cookie_t xcb_free_colors_checked
14372 **
14373 ** @param xcb_connection_t *c
14374 ** @param xcb_colormap_t cmap
14375 ** @param uint32_t plane_mask
14376 ** @param uint32_t pixels_len
14377 ** @param const uint32_t *pixels
14378 ** @returns xcb_void_cookie_t
14379 **
14380 *****************************************************************************/
14381
14382xcb_void_cookie_t
14383xcb_free_colors_checked (xcb_connection_t *c /**< */,
14384 xcb_colormap_t cmap /**< */,
14385 uint32_t plane_mask /**< */,
14386 uint32_t pixels_len /**< */,
14387 const uint32_t *pixels /**< */);
14388
14389/**
14390 *
14391 * @param c The connection
14392 * @return A cookie
14393 *
14394 * Delivers a request to the X server.
14395 *
14396 */
14397
14398/*****************************************************************************
14399 **
14400 ** xcb_void_cookie_t xcb_free_colors
14401 **
14402 ** @param xcb_connection_t *c
14403 ** @param xcb_colormap_t cmap
14404 ** @param uint32_t plane_mask
14405 ** @param uint32_t pixels_len
14406 ** @param const uint32_t *pixels
14407 ** @returns xcb_void_cookie_t
14408 **
14409 *****************************************************************************/
14410
14411xcb_void_cookie_t
14412xcb_free_colors (xcb_connection_t *c /**< */,
14413 xcb_colormap_t cmap /**< */,
14414 uint32_t plane_mask /**< */,
14415 uint32_t pixels_len /**< */,
14416 const uint32_t *pixels /**< */);
14417
14418/**
14419 * Get the next element of the iterator
14420 * @param i Pointer to a xcb_coloritem_iterator_t
14421 *
14422 * Get the next element in the iterator. The member rem is
14423 * decreased by one. The member data points to the next
14424 * element. The member index is increased by sizeof(xcb_coloritem_t)
14425 */
14426
14427/*****************************************************************************
14428 **
14429 ** void xcb_coloritem_next
14430 **
14431 ** @param xcb_coloritem_iterator_t *i
14432 ** @returns void
14433 **
14434 *****************************************************************************/
14435
14436void
14437xcb_coloritem_next (xcb_coloritem_iterator_t *i /**< */);
14438
14439/**
14440 * Return the iterator pointing to the last element
14441 * @param i An xcb_coloritem_iterator_t
14442 * @return The iterator pointing to the last element
14443 *
14444 * Set the current element in the iterator to the last element.
14445 * The member rem is set to 0. The member data points to the
14446 * last element.
14447 */
14448
14449/*****************************************************************************
14450 **
14451 ** xcb_generic_iterator_t xcb_coloritem_end
14452 **
14453 ** @param xcb_coloritem_iterator_t i
14454 ** @returns xcb_generic_iterator_t
14455 **
14456 *****************************************************************************/
14457
14458xcb_generic_iterator_t
14459xcb_coloritem_end (xcb_coloritem_iterator_t i /**< */);
14460
14461int
14462xcb_store_colors_sizeof (const void *_buffer /**< */,
14463 uint32_t items_len /**< */);
14464
14465/**
14466 *
14467 * @param c The connection
14468 * @return A cookie
14469 *
14470 * Delivers a request to the X server.
14471 *
14472 * This form can be used only if the request will not cause
14473 * a reply to be generated. Any returned error will be
14474 * saved for handling by xcb_request_check().
14475 */
14476
14477/*****************************************************************************
14478 **
14479 ** xcb_void_cookie_t xcb_store_colors_checked
14480 **
14481 ** @param xcb_connection_t *c
14482 ** @param xcb_colormap_t cmap
14483 ** @param uint32_t items_len
14484 ** @param const xcb_coloritem_t *items
14485 ** @returns xcb_void_cookie_t
14486 **
14487 *****************************************************************************/
14488
14489xcb_void_cookie_t
14490xcb_store_colors_checked (xcb_connection_t *c /**< */,
14491 xcb_colormap_t cmap /**< */,
14492 uint32_t items_len /**< */,
14493 const xcb_coloritem_t *items /**< */);
14494
14495/**
14496 *
14497 * @param c The connection
14498 * @return A cookie
14499 *
14500 * Delivers a request to the X server.
14501 *
14502 */
14503
14504/*****************************************************************************
14505 **
14506 ** xcb_void_cookie_t xcb_store_colors
14507 **
14508 ** @param xcb_connection_t *c
14509 ** @param xcb_colormap_t cmap
14510 ** @param uint32_t items_len
14511 ** @param const xcb_coloritem_t *items
14512 ** @returns xcb_void_cookie_t
14513 **
14514 *****************************************************************************/
14515
14516xcb_void_cookie_t
14517xcb_store_colors (xcb_connection_t *c /**< */,
14518 xcb_colormap_t cmap /**< */,
14519 uint32_t items_len /**< */,
14520 const xcb_coloritem_t *items /**< */);
14521
14522int
14523xcb_store_named_color_sizeof (const void *_buffer /**< */);
14524
14525/**
14526 *
14527 * @param c The connection
14528 * @return A cookie
14529 *
14530 * Delivers a request to the X server.
14531 *
14532 * This form can be used only if the request will not cause
14533 * a reply to be generated. Any returned error will be
14534 * saved for handling by xcb_request_check().
14535 */
14536
14537/*****************************************************************************
14538 **
14539 ** xcb_void_cookie_t xcb_store_named_color_checked
14540 **
14541 ** @param xcb_connection_t *c
14542 ** @param uint8_t flags
14543 ** @param xcb_colormap_t cmap
14544 ** @param uint32_t pixel
14545 ** @param uint16_t name_len
14546 ** @param const char *name
14547 ** @returns xcb_void_cookie_t
14548 **
14549 *****************************************************************************/
14550
14551xcb_void_cookie_t
14552xcb_store_named_color_checked (xcb_connection_t *c /**< */,
14553 uint8_t flags /**< */,
14554 xcb_colormap_t cmap /**< */,
14555 uint32_t pixel /**< */,
14556 uint16_t name_len /**< */,
14557 const char *name /**< */);
14558
14559/**
14560 *
14561 * @param c The connection
14562 * @return A cookie
14563 *
14564 * Delivers a request to the X server.
14565 *
14566 */
14567
14568/*****************************************************************************
14569 **
14570 ** xcb_void_cookie_t xcb_store_named_color
14571 **
14572 ** @param xcb_connection_t *c
14573 ** @param uint8_t flags
14574 ** @param xcb_colormap_t cmap
14575 ** @param uint32_t pixel
14576 ** @param uint16_t name_len
14577 ** @param const char *name
14578 ** @returns xcb_void_cookie_t
14579 **
14580 *****************************************************************************/
14581
14582xcb_void_cookie_t
14583xcb_store_named_color (xcb_connection_t *c /**< */,
14584 uint8_t flags /**< */,
14585 xcb_colormap_t cmap /**< */,
14586 uint32_t pixel /**< */,
14587 uint16_t name_len /**< */,
14588 const char *name /**< */);
14589
14590/**
14591 * Get the next element of the iterator
14592 * @param i Pointer to a xcb_rgb_iterator_t
14593 *
14594 * Get the next element in the iterator. The member rem is
14595 * decreased by one. The member data points to the next
14596 * element. The member index is increased by sizeof(xcb_rgb_t)
14597 */
14598
14599/*****************************************************************************
14600 **
14601 ** void xcb_rgb_next
14602 **
14603 ** @param xcb_rgb_iterator_t *i
14604 ** @returns void
14605 **
14606 *****************************************************************************/
14607
14608void
14609xcb_rgb_next (xcb_rgb_iterator_t *i /**< */);
14610
14611/**
14612 * Return the iterator pointing to the last element
14613 * @param i An xcb_rgb_iterator_t
14614 * @return The iterator pointing to the last element
14615 *
14616 * Set the current element in the iterator to the last element.
14617 * The member rem is set to 0. The member data points to the
14618 * last element.
14619 */
14620
14621/*****************************************************************************
14622 **
14623 ** xcb_generic_iterator_t xcb_rgb_end
14624 **
14625 ** @param xcb_rgb_iterator_t i
14626 ** @returns xcb_generic_iterator_t
14627 **
14628 *****************************************************************************/
14629
14630xcb_generic_iterator_t
14631xcb_rgb_end (xcb_rgb_iterator_t i /**< */);
14632
14633int
14634xcb_query_colors_sizeof (const void *_buffer /**< */,
14635 uint32_t pixels_len /**< */);
14636
14637/**
14638 *
14639 * @param c The connection
14640 * @return A cookie
14641 *
14642 * Delivers a request to the X server.
14643 *
14644 */
14645
14646/*****************************************************************************
14647 **
14648 ** xcb_query_colors_cookie_t xcb_query_colors
14649 **
14650 ** @param xcb_connection_t *c
14651 ** @param xcb_colormap_t cmap
14652 ** @param uint32_t pixels_len
14653 ** @param const uint32_t *pixels
14654 ** @returns xcb_query_colors_cookie_t
14655 **
14656 *****************************************************************************/
14657
14658xcb_query_colors_cookie_t
14659xcb_query_colors (xcb_connection_t *c /**< */,
14660 xcb_colormap_t cmap /**< */,
14661 uint32_t pixels_len /**< */,
14662 const uint32_t *pixels /**< */);
14663
14664/**
14665 *
14666 * @param c The connection
14667 * @return A cookie
14668 *
14669 * Delivers a request to the X server.
14670 *
14671 * This form can be used only if the request will cause
14672 * a reply to be generated. Any returned error will be
14673 * placed in the event queue.
14674 */
14675
14676/*****************************************************************************
14677 **
14678 ** xcb_query_colors_cookie_t xcb_query_colors_unchecked
14679 **
14680 ** @param xcb_connection_t *c
14681 ** @param xcb_colormap_t cmap
14682 ** @param uint32_t pixels_len
14683 ** @param const uint32_t *pixels
14684 ** @returns xcb_query_colors_cookie_t
14685 **
14686 *****************************************************************************/
14687
14688xcb_query_colors_cookie_t
14689xcb_query_colors_unchecked (xcb_connection_t *c /**< */,
14690 xcb_colormap_t cmap /**< */,
14691 uint32_t pixels_len /**< */,
14692 const uint32_t *pixels /**< */);
14693
14694
14695/*****************************************************************************
14696 **
14697 ** xcb_rgb_t * xcb_query_colors_colors
14698 **
14699 ** @param const xcb_query_colors_reply_t *R
14700 ** @returns xcb_rgb_t *
14701 **
14702 *****************************************************************************/
14703
14704xcb_rgb_t *
14705xcb_query_colors_colors (const xcb_query_colors_reply_t *R /**< */);
14706
14707
14708/*****************************************************************************
14709 **
14710 ** int xcb_query_colors_colors_length
14711 **
14712 ** @param const xcb_query_colors_reply_t *R
14713 ** @returns int
14714 **
14715 *****************************************************************************/
14716
14717int
14718xcb_query_colors_colors_length (const xcb_query_colors_reply_t *R /**< */);
14719
14720
14721/*****************************************************************************
14722 **
14723 ** xcb_rgb_iterator_t xcb_query_colors_colors_iterator
14724 **
14725 ** @param const xcb_query_colors_reply_t *R
14726 ** @returns xcb_rgb_iterator_t
14727 **
14728 *****************************************************************************/
14729
14730xcb_rgb_iterator_t
14731xcb_query_colors_colors_iterator (const xcb_query_colors_reply_t *R /**< */);
14732
14733/**
14734 * Return the reply
14735 * @param c The connection
14736 * @param cookie The cookie
14737 * @param e The xcb_generic_error_t supplied
14738 *
14739 * Returns the reply of the request asked by
14740 *
14741 * The parameter @p e supplied to this function must be NULL if
14742 * xcb_query_colors_unchecked(). is used.
14743 * Otherwise, it stores the error if any.
14744 *
14745 * The returned value must be freed by the caller using free().
14746 */
14747
14748/*****************************************************************************
14749 **
14750 ** xcb_query_colors_reply_t * xcb_query_colors_reply
14751 **
14752 ** @param xcb_connection_t *c
14753 ** @param xcb_query_colors_cookie_t cookie
14754 ** @param xcb_generic_error_t **e
14755 ** @returns xcb_query_colors_reply_t *
14756 **
14757 *****************************************************************************/
14758
14759xcb_query_colors_reply_t *
14760xcb_query_colors_reply (xcb_connection_t *c /**< */,
14761 xcb_query_colors_cookie_t cookie /**< */,
14762 xcb_generic_error_t **e /**< */);
14763
14764int
14765xcb_lookup_color_sizeof (const void *_buffer /**< */);
14766
14767/**
14768 *
14769 * @param c The connection
14770 * @return A cookie
14771 *
14772 * Delivers a request to the X server.
14773 *
14774 */
14775
14776/*****************************************************************************
14777 **
14778 ** xcb_lookup_color_cookie_t xcb_lookup_color
14779 **
14780 ** @param xcb_connection_t *c
14781 ** @param xcb_colormap_t cmap
14782 ** @param uint16_t name_len
14783 ** @param const char *name
14784 ** @returns xcb_lookup_color_cookie_t
14785 **
14786 *****************************************************************************/
14787
14788xcb_lookup_color_cookie_t
14789xcb_lookup_color (xcb_connection_t *c /**< */,
14790 xcb_colormap_t cmap /**< */,
14791 uint16_t name_len /**< */,
14792 const char *name /**< */);
14793
14794/**
14795 *
14796 * @param c The connection
14797 * @return A cookie
14798 *
14799 * Delivers a request to the X server.
14800 *
14801 * This form can be used only if the request will cause
14802 * a reply to be generated. Any returned error will be
14803 * placed in the event queue.
14804 */
14805
14806/*****************************************************************************
14807 **
14808 ** xcb_lookup_color_cookie_t xcb_lookup_color_unchecked
14809 **
14810 ** @param xcb_connection_t *c
14811 ** @param xcb_colormap_t cmap
14812 ** @param uint16_t name_len
14813 ** @param const char *name
14814 ** @returns xcb_lookup_color_cookie_t
14815 **
14816 *****************************************************************************/
14817
14818xcb_lookup_color_cookie_t
14819xcb_lookup_color_unchecked (xcb_connection_t *c /**< */,
14820 xcb_colormap_t cmap /**< */,
14821 uint16_t name_len /**< */,
14822 const char *name /**< */);
14823
14824/**
14825 * Return the reply
14826 * @param c The connection
14827 * @param cookie The cookie
14828 * @param e The xcb_generic_error_t supplied
14829 *
14830 * Returns the reply of the request asked by
14831 *
14832 * The parameter @p e supplied to this function must be NULL if
14833 * xcb_lookup_color_unchecked(). is used.
14834 * Otherwise, it stores the error if any.
14835 *
14836 * The returned value must be freed by the caller using free().
14837 */
14838
14839/*****************************************************************************
14840 **
14841 ** xcb_lookup_color_reply_t * xcb_lookup_color_reply
14842 **
14843 ** @param xcb_connection_t *c
14844 ** @param xcb_lookup_color_cookie_t cookie
14845 ** @param xcb_generic_error_t **e
14846 ** @returns xcb_lookup_color_reply_t *
14847 **
14848 *****************************************************************************/
14849
14850xcb_lookup_color_reply_t *
14851xcb_lookup_color_reply (xcb_connection_t *c /**< */,
14852 xcb_lookup_color_cookie_t cookie /**< */,
14853 xcb_generic_error_t **e /**< */);
14854
14855/**
14856 *
14857 * @param c The connection
14858 * @return A cookie
14859 *
14860 * Delivers a request to the X server.
14861 *
14862 * This form can be used only if the request will not cause
14863 * a reply to be generated. Any returned error will be
14864 * saved for handling by xcb_request_check().
14865 */
14866
14867/*****************************************************************************
14868 **
14869 ** xcb_void_cookie_t xcb_create_cursor_checked
14870 **
14871 ** @param xcb_connection_t *c
14872 ** @param xcb_cursor_t cid
14873 ** @param xcb_pixmap_t source
14874 ** @param xcb_pixmap_t mask
14875 ** @param uint16_t fore_red
14876 ** @param uint16_t fore_green
14877 ** @param uint16_t fore_blue
14878 ** @param uint16_t back_red
14879 ** @param uint16_t back_green
14880 ** @param uint16_t back_blue
14881 ** @param uint16_t x
14882 ** @param uint16_t y
14883 ** @returns xcb_void_cookie_t
14884 **
14885 *****************************************************************************/
14886
14887xcb_void_cookie_t
14888xcb_create_cursor_checked (xcb_connection_t *c /**< */,
14889 xcb_cursor_t cid /**< */,
14890 xcb_pixmap_t source /**< */,
14891 xcb_pixmap_t mask /**< */,
14892 uint16_t fore_red /**< */,
14893 uint16_t fore_green /**< */,
14894 uint16_t fore_blue /**< */,
14895 uint16_t back_red /**< */,
14896 uint16_t back_green /**< */,
14897 uint16_t back_blue /**< */,
14898 uint16_t x /**< */,
14899 uint16_t y /**< */);
14900
14901/**
14902 *
14903 * @param c The connection
14904 * @return A cookie
14905 *
14906 * Delivers a request to the X server.
14907 *
14908 */
14909
14910/*****************************************************************************
14911 **
14912 ** xcb_void_cookie_t xcb_create_cursor
14913 **
14914 ** @param xcb_connection_t *c
14915 ** @param xcb_cursor_t cid
14916 ** @param xcb_pixmap_t source
14917 ** @param xcb_pixmap_t mask
14918 ** @param uint16_t fore_red
14919 ** @param uint16_t fore_green
14920 ** @param uint16_t fore_blue
14921 ** @param uint16_t back_red
14922 ** @param uint16_t back_green
14923 ** @param uint16_t back_blue
14924 ** @param uint16_t x
14925 ** @param uint16_t y
14926 ** @returns xcb_void_cookie_t
14927 **
14928 *****************************************************************************/
14929
14930xcb_void_cookie_t
14931xcb_create_cursor (xcb_connection_t *c /**< */,
14932 xcb_cursor_t cid /**< */,
14933 xcb_pixmap_t source /**< */,
14934 xcb_pixmap_t mask /**< */,
14935 uint16_t fore_red /**< */,
14936 uint16_t fore_green /**< */,
14937 uint16_t fore_blue /**< */,
14938 uint16_t back_red /**< */,
14939 uint16_t back_green /**< */,
14940 uint16_t back_blue /**< */,
14941 uint16_t x /**< */,
14942 uint16_t y /**< */);
14943
14944/**
14945 * @brief create cursor
14946 *
14947 * @param c The connection
14948 * @param cid The ID with which you will refer to the cursor, created by `xcb_generate_id`.
14949 * @param source_font In which font to look for the cursor glyph.
14950 * @param mask_font In which font to look for the mask glyph.
14951 * @param source_char The glyph of \a source_font to use.
14952 * @param mask_char The glyph of \a mask_font to use as a mask: Pixels which are set to 1 define
14953 * which source pixels are displayed. All pixels which are set to 0 are not
14954 * displayed.
14955 * @param fore_red The red value of the foreground color.
14956 * @param fore_green The green value of the foreground color.
14957 * @param fore_blue The blue value of the foreground color.
14958 * @param back_red The red value of the background color.
14959 * @param back_green The green value of the background color.
14960 * @param back_blue The blue value of the background color.
14961 * @return A cookie
14962 *
14963 * Creates a cursor from a font glyph. X provides a set of standard cursor shapes
14964 * in a special font named cursor. Applications are encouraged to use this
14965 * interface for their cursors because the font can be customized for the
14966 * individual display type.
14967 *
14968 * All pixels which are set to 1 in the source will use the foreground color (as
14969 * specified by \a fore_red, \a fore_green and \a fore_blue). All pixels set to 0
14970 * will use the background color (as specified by \a back_red, \a back_green and
14971 * \a back_blue).
14972 *
14973 * This form can be used only if the request will not cause
14974 * a reply to be generated. Any returned error will be
14975 * saved for handling by xcb_request_check().
14976 */
14977
14978/*****************************************************************************
14979 **
14980 ** xcb_void_cookie_t xcb_create_glyph_cursor_checked
14981 **
14982 ** @param xcb_connection_t *c
14983 ** @param xcb_cursor_t cid
14984 ** @param xcb_font_t source_font
14985 ** @param xcb_font_t mask_font
14986 ** @param uint16_t source_char
14987 ** @param uint16_t mask_char
14988 ** @param uint16_t fore_red
14989 ** @param uint16_t fore_green
14990 ** @param uint16_t fore_blue
14991 ** @param uint16_t back_red
14992 ** @param uint16_t back_green
14993 ** @param uint16_t back_blue
14994 ** @returns xcb_void_cookie_t
14995 **
14996 *****************************************************************************/
14997
14998xcb_void_cookie_t
14999xcb_create_glyph_cursor_checked (xcb_connection_t *c /**< */,
15000 xcb_cursor_t cid /**< */,
15001 xcb_font_t source_font /**< */,
15002 xcb_font_t mask_font /**< */,
15003 uint16_t source_char /**< */,
15004 uint16_t mask_char /**< */,
15005 uint16_t fore_red /**< */,
15006 uint16_t fore_green /**< */,
15007 uint16_t fore_blue /**< */,
15008 uint16_t back_red /**< */,
15009 uint16_t back_green /**< */,
15010 uint16_t back_blue /**< */);
15011
15012/**
15013 * @brief create cursor
15014 *
15015 * @param c The connection
15016 * @param cid The ID with which you will refer to the cursor, created by `xcb_generate_id`.
15017 * @param source_font In which font to look for the cursor glyph.
15018 * @param mask_font In which font to look for the mask glyph.
15019 * @param source_char The glyph of \a source_font to use.
15020 * @param mask_char The glyph of \a mask_font to use as a mask: Pixels which are set to 1 define
15021 * which source pixels are displayed. All pixels which are set to 0 are not
15022 * displayed.
15023 * @param fore_red The red value of the foreground color.
15024 * @param fore_green The green value of the foreground color.
15025 * @param fore_blue The blue value of the foreground color.
15026 * @param back_red The red value of the background color.
15027 * @param back_green The green value of the background color.
15028 * @param back_blue The blue value of the background color.
15029 * @return A cookie
15030 *
15031 * Creates a cursor from a font glyph. X provides a set of standard cursor shapes
15032 * in a special font named cursor. Applications are encouraged to use this
15033 * interface for their cursors because the font can be customized for the
15034 * individual display type.
15035 *
15036 * All pixels which are set to 1 in the source will use the foreground color (as
15037 * specified by \a fore_red, \a fore_green and \a fore_blue). All pixels set to 0
15038 * will use the background color (as specified by \a back_red, \a back_green and
15039 * \a back_blue).
15040 *
15041 */
15042
15043/*****************************************************************************
15044 **
15045 ** xcb_void_cookie_t xcb_create_glyph_cursor
15046 **
15047 ** @param xcb_connection_t *c
15048 ** @param xcb_cursor_t cid
15049 ** @param xcb_font_t source_font
15050 ** @param xcb_font_t mask_font
15051 ** @param uint16_t source_char
15052 ** @param uint16_t mask_char
15053 ** @param uint16_t fore_red
15054 ** @param uint16_t fore_green
15055 ** @param uint16_t fore_blue
15056 ** @param uint16_t back_red
15057 ** @param uint16_t back_green
15058 ** @param uint16_t back_blue
15059 ** @returns xcb_void_cookie_t
15060 **
15061 *****************************************************************************/
15062
15063xcb_void_cookie_t
15064xcb_create_glyph_cursor (xcb_connection_t *c /**< */,
15065 xcb_cursor_t cid /**< */,
15066 xcb_font_t source_font /**< */,
15067 xcb_font_t mask_font /**< */,
15068 uint16_t source_char /**< */,
15069 uint16_t mask_char /**< */,
15070 uint16_t fore_red /**< */,
15071 uint16_t fore_green /**< */,
15072 uint16_t fore_blue /**< */,
15073 uint16_t back_red /**< */,
15074 uint16_t back_green /**< */,
15075 uint16_t back_blue /**< */);
15076
15077/**
15078 * @brief Deletes a cursor
15079 *
15080 * @param c The connection
15081 * @param cursor The cursor to destroy.
15082 * @return A cookie
15083 *
15084 * Deletes the association between the cursor resource ID and the specified
15085 * cursor. The cursor is freed when no other resource references it.
15086 *
15087 * This form can be used only if the request will not cause
15088 * a reply to be generated. Any returned error will be
15089 * saved for handling by xcb_request_check().
15090 */
15091
15092/*****************************************************************************
15093 **
15094 ** xcb_void_cookie_t xcb_free_cursor_checked
15095 **
15096 ** @param xcb_connection_t *c
15097 ** @param xcb_cursor_t cursor
15098 ** @returns xcb_void_cookie_t
15099 **
15100 *****************************************************************************/
15101
15102xcb_void_cookie_t
15103xcb_free_cursor_checked (xcb_connection_t *c /**< */,
15104 xcb_cursor_t cursor /**< */);
15105
15106/**
15107 * @brief Deletes a cursor
15108 *
15109 * @param c The connection
15110 * @param cursor The cursor to destroy.
15111 * @return A cookie
15112 *
15113 * Deletes the association between the cursor resource ID and the specified
15114 * cursor. The cursor is freed when no other resource references it.
15115 *
15116 */
15117
15118/*****************************************************************************
15119 **
15120 ** xcb_void_cookie_t xcb_free_cursor
15121 **
15122 ** @param xcb_connection_t *c
15123 ** @param xcb_cursor_t cursor
15124 ** @returns xcb_void_cookie_t
15125 **
15126 *****************************************************************************/
15127
15128xcb_void_cookie_t
15129xcb_free_cursor (xcb_connection_t *c /**< */,
15130 xcb_cursor_t cursor /**< */);
15131
15132/**
15133 *
15134 * @param c The connection
15135 * @return A cookie
15136 *
15137 * Delivers a request to the X server.
15138 *
15139 * This form can be used only if the request will not cause
15140 * a reply to be generated. Any returned error will be
15141 * saved for handling by xcb_request_check().
15142 */
15143
15144/*****************************************************************************
15145 **
15146 ** xcb_void_cookie_t xcb_recolor_cursor_checked
15147 **
15148 ** @param xcb_connection_t *c
15149 ** @param xcb_cursor_t cursor
15150 ** @param uint16_t fore_red
15151 ** @param uint16_t fore_green
15152 ** @param uint16_t fore_blue
15153 ** @param uint16_t back_red
15154 ** @param uint16_t back_green
15155 ** @param uint16_t back_blue
15156 ** @returns xcb_void_cookie_t
15157 **
15158 *****************************************************************************/
15159
15160xcb_void_cookie_t
15161xcb_recolor_cursor_checked (xcb_connection_t *c /**< */,
15162 xcb_cursor_t cursor /**< */,
15163 uint16_t fore_red /**< */,
15164 uint16_t fore_green /**< */,
15165 uint16_t fore_blue /**< */,
15166 uint16_t back_red /**< */,
15167 uint16_t back_green /**< */,
15168 uint16_t back_blue /**< */);
15169
15170/**
15171 *
15172 * @param c The connection
15173 * @return A cookie
15174 *
15175 * Delivers a request to the X server.
15176 *
15177 */
15178
15179/*****************************************************************************
15180 **
15181 ** xcb_void_cookie_t xcb_recolor_cursor
15182 **
15183 ** @param xcb_connection_t *c
15184 ** @param xcb_cursor_t cursor
15185 ** @param uint16_t fore_red
15186 ** @param uint16_t fore_green
15187 ** @param uint16_t fore_blue
15188 ** @param uint16_t back_red
15189 ** @param uint16_t back_green
15190 ** @param uint16_t back_blue
15191 ** @returns xcb_void_cookie_t
15192 **
15193 *****************************************************************************/
15194
15195xcb_void_cookie_t
15196xcb_recolor_cursor (xcb_connection_t *c /**< */,
15197 xcb_cursor_t cursor /**< */,
15198 uint16_t fore_red /**< */,
15199 uint16_t fore_green /**< */,
15200 uint16_t fore_blue /**< */,
15201 uint16_t back_red /**< */,
15202 uint16_t back_green /**< */,
15203 uint16_t back_blue /**< */);
15204
15205/**
15206 *
15207 * @param c The connection
15208 * @return A cookie
15209 *
15210 * Delivers a request to the X server.
15211 *
15212 */
15213
15214/*****************************************************************************
15215 **
15216 ** xcb_query_best_size_cookie_t xcb_query_best_size
15217 **
15218 ** @param xcb_connection_t *c
15219 ** @param uint8_t _class
15220 ** @param xcb_drawable_t drawable
15221 ** @param uint16_t width
15222 ** @param uint16_t height
15223 ** @returns xcb_query_best_size_cookie_t
15224 **
15225 *****************************************************************************/
15226
15227xcb_query_best_size_cookie_t
15228xcb_query_best_size (xcb_connection_t *c /**< */,
15229 uint8_t _class /**< */,
15230 xcb_drawable_t drawable /**< */,
15231 uint16_t width /**< */,
15232 uint16_t height /**< */);
15233
15234/**
15235 *
15236 * @param c The connection
15237 * @return A cookie
15238 *
15239 * Delivers a request to the X server.
15240 *
15241 * This form can be used only if the request will cause
15242 * a reply to be generated. Any returned error will be
15243 * placed in the event queue.
15244 */
15245
15246/*****************************************************************************
15247 **
15248 ** xcb_query_best_size_cookie_t xcb_query_best_size_unchecked
15249 **
15250 ** @param xcb_connection_t *c
15251 ** @param uint8_t _class
15252 ** @param xcb_drawable_t drawable
15253 ** @param uint16_t width
15254 ** @param uint16_t height
15255 ** @returns xcb_query_best_size_cookie_t
15256 **
15257 *****************************************************************************/
15258
15259xcb_query_best_size_cookie_t
15260xcb_query_best_size_unchecked (xcb_connection_t *c /**< */,
15261 uint8_t _class /**< */,
15262 xcb_drawable_t drawable /**< */,
15263 uint16_t width /**< */,
15264 uint16_t height /**< */);
15265
15266/**
15267 * Return the reply
15268 * @param c The connection
15269 * @param cookie The cookie
15270 * @param e The xcb_generic_error_t supplied
15271 *
15272 * Returns the reply of the request asked by
15273 *
15274 * The parameter @p e supplied to this function must be NULL if
15275 * xcb_query_best_size_unchecked(). is used.
15276 * Otherwise, it stores the error if any.
15277 *
15278 * The returned value must be freed by the caller using free().
15279 */
15280
15281/*****************************************************************************
15282 **
15283 ** xcb_query_best_size_reply_t * xcb_query_best_size_reply
15284 **
15285 ** @param xcb_connection_t *c
15286 ** @param xcb_query_best_size_cookie_t cookie
15287 ** @param xcb_generic_error_t **e
15288 ** @returns xcb_query_best_size_reply_t *
15289 **
15290 *****************************************************************************/
15291
15292xcb_query_best_size_reply_t *
15293xcb_query_best_size_reply (xcb_connection_t *c /**< */,
15294 xcb_query_best_size_cookie_t cookie /**< */,
15295 xcb_generic_error_t **e /**< */);
15296
15297int
15298xcb_query_extension_sizeof (const void *_buffer /**< */);
15299
15300/**
15301 * @brief check if extension is present
15302 *
15303 * @param c The connection
15304 * @param name_len The length of \a name in bytes.
15305 * @param name The name of the extension to query, for example "RANDR". This is case
15306 * sensitive!
15307 * @return A cookie
15308 *
15309 * Determines if the specified extension is present on this X11 server.
15310 *
15311 * Every extension has a unique `major_opcode` to identify requests, the minor
15312 * opcodes and request formats are extension-specific. If the extension provides
15313 * events and errors, the `first_event` and `first_error` fields in the reply are
15314 * set accordingly.
15315 *
15316 * There should rarely be a need to use this request directly, XCB provides the
15317 * `xcb_get_extension_data` function instead.
15318 *
15319 */
15320
15321/*****************************************************************************
15322 **
15323 ** xcb_query_extension_cookie_t xcb_query_extension
15324 **
15325 ** @param xcb_connection_t *c
15326 ** @param uint16_t name_len
15327 ** @param const char *name
15328 ** @returns xcb_query_extension_cookie_t
15329 **
15330 *****************************************************************************/
15331
15332xcb_query_extension_cookie_t
15333xcb_query_extension (xcb_connection_t *c /**< */,
15334 uint16_t name_len /**< */,
15335 const char *name /**< */);
15336
15337/**
15338 * @brief check if extension is present
15339 *
15340 * @param c The connection
15341 * @param name_len The length of \a name in bytes.
15342 * @param name The name of the extension to query, for example "RANDR". This is case
15343 * sensitive!
15344 * @return A cookie
15345 *
15346 * Determines if the specified extension is present on this X11 server.
15347 *
15348 * Every extension has a unique `major_opcode` to identify requests, the minor
15349 * opcodes and request formats are extension-specific. If the extension provides
15350 * events and errors, the `first_event` and `first_error` fields in the reply are
15351 * set accordingly.
15352 *
15353 * There should rarely be a need to use this request directly, XCB provides the
15354 * `xcb_get_extension_data` function instead.
15355 *
15356 * This form can be used only if the request will cause
15357 * a reply to be generated. Any returned error will be
15358 * placed in the event queue.
15359 */
15360
15361/*****************************************************************************
15362 **
15363 ** xcb_query_extension_cookie_t xcb_query_extension_unchecked
15364 **
15365 ** @param xcb_connection_t *c
15366 ** @param uint16_t name_len
15367 ** @param const char *name
15368 ** @returns xcb_query_extension_cookie_t
15369 **
15370 *****************************************************************************/
15371
15372xcb_query_extension_cookie_t
15373xcb_query_extension_unchecked (xcb_connection_t *c /**< */,
15374 uint16_t name_len /**< */,
15375 const char *name /**< */);
15376
15377/**
15378 * Return the reply
15379 * @param c The connection
15380 * @param cookie The cookie
15381 * @param e The xcb_generic_error_t supplied
15382 *
15383 * Returns the reply of the request asked by
15384 *
15385 * The parameter @p e supplied to this function must be NULL if
15386 * xcb_query_extension_unchecked(). is used.
15387 * Otherwise, it stores the error if any.
15388 *
15389 * The returned value must be freed by the caller using free().
15390 */
15391
15392/*****************************************************************************
15393 **
15394 ** xcb_query_extension_reply_t * xcb_query_extension_reply
15395 **
15396 ** @param xcb_connection_t *c
15397 ** @param xcb_query_extension_cookie_t cookie
15398 ** @param xcb_generic_error_t **e
15399 ** @returns xcb_query_extension_reply_t *
15400 **
15401 *****************************************************************************/
15402
15403xcb_query_extension_reply_t *
15404xcb_query_extension_reply (xcb_connection_t *c /**< */,
15405 xcb_query_extension_cookie_t cookie /**< */,
15406 xcb_generic_error_t **e /**< */);
15407
15408int
15409xcb_list_extensions_sizeof (const void *_buffer /**< */);
15410
15411/**
15412 *
15413 * @param c The connection
15414 * @return A cookie
15415 *
15416 * Delivers a request to the X server.
15417 *
15418 */
15419
15420/*****************************************************************************
15421 **
15422 ** xcb_list_extensions_cookie_t xcb_list_extensions
15423 **
15424 ** @param xcb_connection_t *c
15425 ** @returns xcb_list_extensions_cookie_t
15426 **
15427 *****************************************************************************/
15428
15429xcb_list_extensions_cookie_t
15430xcb_list_extensions (xcb_connection_t *c /**< */);
15431
15432/**
15433 *
15434 * @param c The connection
15435 * @return A cookie
15436 *
15437 * Delivers a request to the X server.
15438 *
15439 * This form can be used only if the request will cause
15440 * a reply to be generated. Any returned error will be
15441 * placed in the event queue.
15442 */
15443
15444/*****************************************************************************
15445 **
15446 ** xcb_list_extensions_cookie_t xcb_list_extensions_unchecked
15447 **
15448 ** @param xcb_connection_t *c
15449 ** @returns xcb_list_extensions_cookie_t
15450 **
15451 *****************************************************************************/
15452
15453xcb_list_extensions_cookie_t
15454xcb_list_extensions_unchecked (xcb_connection_t *c /**< */);
15455
15456
15457/*****************************************************************************
15458 **
15459 ** int xcb_list_extensions_names_length
15460 **
15461 ** @param const xcb_list_extensions_reply_t *R
15462 ** @returns int
15463 **
15464 *****************************************************************************/
15465
15466int
15467xcb_list_extensions_names_length (const xcb_list_extensions_reply_t *R /**< */);
15468
15469
15470/*****************************************************************************
15471 **
15472 ** xcb_str_iterator_t xcb_list_extensions_names_iterator
15473 **
15474 ** @param const xcb_list_extensions_reply_t *R
15475 ** @returns xcb_str_iterator_t
15476 **
15477 *****************************************************************************/
15478
15479xcb_str_iterator_t
15480xcb_list_extensions_names_iterator (const xcb_list_extensions_reply_t *R /**< */);
15481
15482/**
15483 * Return the reply
15484 * @param c The connection
15485 * @param cookie The cookie
15486 * @param e The xcb_generic_error_t supplied
15487 *
15488 * Returns the reply of the request asked by
15489 *
15490 * The parameter @p e supplied to this function must be NULL if
15491 * xcb_list_extensions_unchecked(). is used.
15492 * Otherwise, it stores the error if any.
15493 *
15494 * The returned value must be freed by the caller using free().
15495 */
15496
15497/*****************************************************************************
15498 **
15499 ** xcb_list_extensions_reply_t * xcb_list_extensions_reply
15500 **
15501 ** @param xcb_connection_t *c
15502 ** @param xcb_list_extensions_cookie_t cookie
15503 ** @param xcb_generic_error_t **e
15504 ** @returns xcb_list_extensions_reply_t *
15505 **
15506 *****************************************************************************/
15507
15508xcb_list_extensions_reply_t *
15509xcb_list_extensions_reply (xcb_connection_t *c /**< */,
15510 xcb_list_extensions_cookie_t cookie /**< */,
15511 xcb_generic_error_t **e /**< */);
15512
15513int
15514xcb_change_keyboard_mapping_sizeof (const void *_buffer /**< */);
15515
15516/**
15517 *
15518 * @param c The connection
15519 * @return A cookie
15520 *
15521 * Delivers a request to the X server.
15522 *
15523 * This form can be used only if the request will not cause
15524 * a reply to be generated. Any returned error will be
15525 * saved for handling by xcb_request_check().
15526 */
15527
15528/*****************************************************************************
15529 **
15530 ** xcb_void_cookie_t xcb_change_keyboard_mapping_checked
15531 **
15532 ** @param xcb_connection_t *c
15533 ** @param uint8_t keycode_count
15534 ** @param xcb_keycode_t first_keycode
15535 ** @param uint8_t keysyms_per_keycode
15536 ** @param const xcb_keysym_t *keysyms
15537 ** @returns xcb_void_cookie_t
15538 **
15539 *****************************************************************************/
15540
15541xcb_void_cookie_t
15542xcb_change_keyboard_mapping_checked (xcb_connection_t *c /**< */,
15543 uint8_t keycode_count /**< */,
15544 xcb_keycode_t first_keycode /**< */,
15545 uint8_t keysyms_per_keycode /**< */,
15546 const xcb_keysym_t *keysyms /**< */);
15547
15548/**
15549 *
15550 * @param c The connection
15551 * @return A cookie
15552 *
15553 * Delivers a request to the X server.
15554 *
15555 */
15556
15557/*****************************************************************************
15558 **
15559 ** xcb_void_cookie_t xcb_change_keyboard_mapping
15560 **
15561 ** @param xcb_connection_t *c
15562 ** @param uint8_t keycode_count
15563 ** @param xcb_keycode_t first_keycode
15564 ** @param uint8_t keysyms_per_keycode
15565 ** @param const xcb_keysym_t *keysyms
15566 ** @returns xcb_void_cookie_t
15567 **
15568 *****************************************************************************/
15569
15570xcb_void_cookie_t
15571xcb_change_keyboard_mapping (xcb_connection_t *c /**< */,
15572 uint8_t keycode_count /**< */,
15573 xcb_keycode_t first_keycode /**< */,
15574 uint8_t keysyms_per_keycode /**< */,
15575 const xcb_keysym_t *keysyms /**< */);
15576
15577int
15578xcb_get_keyboard_mapping_sizeof (const void *_buffer /**< */);
15579
15580/**
15581 *
15582 * @param c The connection
15583 * @return A cookie
15584 *
15585 * Delivers a request to the X server.
15586 *
15587 */
15588
15589/*****************************************************************************
15590 **
15591 ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping
15592 **
15593 ** @param xcb_connection_t *c
15594 ** @param xcb_keycode_t first_keycode
15595 ** @param uint8_t count
15596 ** @returns xcb_get_keyboard_mapping_cookie_t
15597 **
15598 *****************************************************************************/
15599
15600xcb_get_keyboard_mapping_cookie_t
15601xcb_get_keyboard_mapping (xcb_connection_t *c /**< */,
15602 xcb_keycode_t first_keycode /**< */,
15603 uint8_t count /**< */);
15604
15605/**
15606 *
15607 * @param c The connection
15608 * @return A cookie
15609 *
15610 * Delivers a request to the X server.
15611 *
15612 * This form can be used only if the request will cause
15613 * a reply to be generated. Any returned error will be
15614 * placed in the event queue.
15615 */
15616
15617/*****************************************************************************
15618 **
15619 ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping_unchecked
15620 **
15621 ** @param xcb_connection_t *c
15622 ** @param xcb_keycode_t first_keycode
15623 ** @param uint8_t count
15624 ** @returns xcb_get_keyboard_mapping_cookie_t
15625 **
15626 *****************************************************************************/
15627
15628xcb_get_keyboard_mapping_cookie_t
15629xcb_get_keyboard_mapping_unchecked (xcb_connection_t *c /**< */,
15630 xcb_keycode_t first_keycode /**< */,
15631 uint8_t count /**< */);
15632
15633
15634/*****************************************************************************
15635 **
15636 ** xcb_keysym_t * xcb_get_keyboard_mapping_keysyms
15637 **
15638 ** @param const xcb_get_keyboard_mapping_reply_t *R
15639 ** @returns xcb_keysym_t *
15640 **
15641 *****************************************************************************/
15642
15643xcb_keysym_t *
15644xcb_get_keyboard_mapping_keysyms (const xcb_get_keyboard_mapping_reply_t *R /**< */);
15645
15646
15647/*****************************************************************************
15648 **
15649 ** int xcb_get_keyboard_mapping_keysyms_length
15650 **
15651 ** @param const xcb_get_keyboard_mapping_reply_t *R
15652 ** @returns int
15653 **
15654 *****************************************************************************/
15655
15656int
15657xcb_get_keyboard_mapping_keysyms_length (const xcb_get_keyboard_mapping_reply_t *R /**< */);
15658
15659
15660/*****************************************************************************
15661 **
15662 ** xcb_generic_iterator_t xcb_get_keyboard_mapping_keysyms_end
15663 **
15664 ** @param const xcb_get_keyboard_mapping_reply_t *R
15665 ** @returns xcb_generic_iterator_t
15666 **
15667 *****************************************************************************/
15668
15669xcb_generic_iterator_t
15670xcb_get_keyboard_mapping_keysyms_end (const xcb_get_keyboard_mapping_reply_t *R /**< */);
15671
15672/**
15673 * Return the reply
15674 * @param c The connection
15675 * @param cookie The cookie
15676 * @param e The xcb_generic_error_t supplied
15677 *
15678 * Returns the reply of the request asked by
15679 *
15680 * The parameter @p e supplied to this function must be NULL if
15681 * xcb_get_keyboard_mapping_unchecked(). is used.
15682 * Otherwise, it stores the error if any.
15683 *
15684 * The returned value must be freed by the caller using free().
15685 */
15686
15687/*****************************************************************************
15688 **
15689 ** xcb_get_keyboard_mapping_reply_t * xcb_get_keyboard_mapping_reply
15690 **
15691 ** @param xcb_connection_t *c
15692 ** @param xcb_get_keyboard_mapping_cookie_t cookie
15693 ** @param xcb_generic_error_t **e
15694 ** @returns xcb_get_keyboard_mapping_reply_t *
15695 **
15696 *****************************************************************************/
15697
15698xcb_get_keyboard_mapping_reply_t *
15699xcb_get_keyboard_mapping_reply (xcb_connection_t *c /**< */,
15700 xcb_get_keyboard_mapping_cookie_t cookie /**< */,
15701 xcb_generic_error_t **e /**< */);
15702
15703int
15704xcb_change_keyboard_control_sizeof (const void *_buffer /**< */);
15705
15706/**
15707 *
15708 * @param c The connection
15709 * @return A cookie
15710 *
15711 * Delivers a request to the X server.
15712 *
15713 * This form can be used only if the request will not cause
15714 * a reply to be generated. Any returned error will be
15715 * saved for handling by xcb_request_check().
15716 */
15717
15718/*****************************************************************************
15719 **
15720 ** xcb_void_cookie_t xcb_change_keyboard_control_checked
15721 **
15722 ** @param xcb_connection_t *c
15723 ** @param uint32_t value_mask
15724 ** @param const uint32_t *value_list
15725 ** @returns xcb_void_cookie_t
15726 **
15727 *****************************************************************************/
15728
15729xcb_void_cookie_t
15730xcb_change_keyboard_control_checked (xcb_connection_t *c /**< */,
15731 uint32_t value_mask /**< */,
15732 const uint32_t *value_list /**< */);
15733
15734/**
15735 *
15736 * @param c The connection
15737 * @return A cookie
15738 *
15739 * Delivers a request to the X server.
15740 *
15741 */
15742
15743/*****************************************************************************
15744 **
15745 ** xcb_void_cookie_t xcb_change_keyboard_control
15746 **
15747 ** @param xcb_connection_t *c
15748 ** @param uint32_t value_mask
15749 ** @param const uint32_t *value_list
15750 ** @returns xcb_void_cookie_t
15751 **
15752 *****************************************************************************/
15753
15754xcb_void_cookie_t
15755xcb_change_keyboard_control (xcb_connection_t *c /**< */,
15756 uint32_t value_mask /**< */,
15757 const uint32_t *value_list /**< */);
15758
15759/**
15760 *
15761 * @param c The connection
15762 * @return A cookie
15763 *
15764 * Delivers a request to the X server.
15765 *
15766 */
15767
15768/*****************************************************************************
15769 **
15770 ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control
15771 **
15772 ** @param xcb_connection_t *c
15773 ** @returns xcb_get_keyboard_control_cookie_t
15774 **
15775 *****************************************************************************/
15776
15777xcb_get_keyboard_control_cookie_t
15778xcb_get_keyboard_control (xcb_connection_t *c /**< */);
15779
15780/**
15781 *
15782 * @param c The connection
15783 * @return A cookie
15784 *
15785 * Delivers a request to the X server.
15786 *
15787 * This form can be used only if the request will cause
15788 * a reply to be generated. Any returned error will be
15789 * placed in the event queue.
15790 */
15791
15792/*****************************************************************************
15793 **
15794 ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control_unchecked
15795 **
15796 ** @param xcb_connection_t *c
15797 ** @returns xcb_get_keyboard_control_cookie_t
15798 **
15799 *****************************************************************************/
15800
15801xcb_get_keyboard_control_cookie_t
15802xcb_get_keyboard_control_unchecked (xcb_connection_t *c /**< */);
15803
15804/**
15805 * Return the reply
15806 * @param c The connection
15807 * @param cookie The cookie
15808 * @param e The xcb_generic_error_t supplied
15809 *
15810 * Returns the reply of the request asked by
15811 *
15812 * The parameter @p e supplied to this function must be NULL if
15813 * xcb_get_keyboard_control_unchecked(). is used.
15814 * Otherwise, it stores the error if any.
15815 *
15816 * The returned value must be freed by the caller using free().
15817 */
15818
15819/*****************************************************************************
15820 **
15821 ** xcb_get_keyboard_control_reply_t * xcb_get_keyboard_control_reply
15822 **
15823 ** @param xcb_connection_t *c
15824 ** @param xcb_get_keyboard_control_cookie_t cookie
15825 ** @param xcb_generic_error_t **e
15826 ** @returns xcb_get_keyboard_control_reply_t *
15827 **
15828 *****************************************************************************/
15829
15830xcb_get_keyboard_control_reply_t *
15831xcb_get_keyboard_control_reply (xcb_connection_t *c /**< */,
15832 xcb_get_keyboard_control_cookie_t cookie /**< */,
15833 xcb_generic_error_t **e /**< */);
15834
15835/**
15836 *
15837 * @param c The connection
15838 * @return A cookie
15839 *
15840 * Delivers a request to the X server.
15841 *
15842 * This form can be used only if the request will not cause
15843 * a reply to be generated. Any returned error will be
15844 * saved for handling by xcb_request_check().
15845 */
15846
15847/*****************************************************************************
15848 **
15849 ** xcb_void_cookie_t xcb_bell_checked
15850 **
15851 ** @param xcb_connection_t *c
15852 ** @param int8_t percent
15853 ** @returns xcb_void_cookie_t
15854 **
15855 *****************************************************************************/
15856
15857xcb_void_cookie_t
15858xcb_bell_checked (xcb_connection_t *c /**< */,
15859 int8_t percent /**< */);
15860
15861/**
15862 *
15863 * @param c The connection
15864 * @return A cookie
15865 *
15866 * Delivers a request to the X server.
15867 *
15868 */
15869
15870/*****************************************************************************
15871 **
15872 ** xcb_void_cookie_t xcb_bell
15873 **
15874 ** @param xcb_connection_t *c
15875 ** @param int8_t percent
15876 ** @returns xcb_void_cookie_t
15877 **
15878 *****************************************************************************/
15879
15880xcb_void_cookie_t
15881xcb_bell (xcb_connection_t *c /**< */,
15882 int8_t percent /**< */);
15883
15884/**
15885 *
15886 * @param c The connection
15887 * @return A cookie
15888 *
15889 * Delivers a request to the X server.
15890 *
15891 * This form can be used only if the request will not cause
15892 * a reply to be generated. Any returned error will be
15893 * saved for handling by xcb_request_check().
15894 */
15895
15896/*****************************************************************************
15897 **
15898 ** xcb_void_cookie_t xcb_change_pointer_control_checked
15899 **
15900 ** @param xcb_connection_t *c
15901 ** @param int16_t acceleration_numerator
15902 ** @param int16_t acceleration_denominator
15903 ** @param int16_t threshold
15904 ** @param uint8_t do_acceleration
15905 ** @param uint8_t do_threshold
15906 ** @returns xcb_void_cookie_t
15907 **
15908 *****************************************************************************/
15909
15910xcb_void_cookie_t
15911xcb_change_pointer_control_checked (xcb_connection_t *c /**< */,
15912 int16_t acceleration_numerator /**< */,
15913 int16_t acceleration_denominator /**< */,
15914 int16_t threshold /**< */,
15915 uint8_t do_acceleration /**< */,
15916 uint8_t do_threshold /**< */);
15917
15918/**
15919 *
15920 * @param c The connection
15921 * @return A cookie
15922 *
15923 * Delivers a request to the X server.
15924 *
15925 */
15926
15927/*****************************************************************************
15928 **
15929 ** xcb_void_cookie_t xcb_change_pointer_control
15930 **
15931 ** @param xcb_connection_t *c
15932 ** @param int16_t acceleration_numerator
15933 ** @param int16_t acceleration_denominator
15934 ** @param int16_t threshold
15935 ** @param uint8_t do_acceleration
15936 ** @param uint8_t do_threshold
15937 ** @returns xcb_void_cookie_t
15938 **
15939 *****************************************************************************/
15940
15941xcb_void_cookie_t
15942xcb_change_pointer_control (xcb_connection_t *c /**< */,
15943 int16_t acceleration_numerator /**< */,
15944 int16_t acceleration_denominator /**< */,
15945 int16_t threshold /**< */,
15946 uint8_t do_acceleration /**< */,
15947 uint8_t do_threshold /**< */);
15948
15949/**
15950 *
15951 * @param c The connection
15952 * @return A cookie
15953 *
15954 * Delivers a request to the X server.
15955 *
15956 */
15957
15958/*****************************************************************************
15959 **
15960 ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control
15961 **
15962 ** @param xcb_connection_t *c
15963 ** @returns xcb_get_pointer_control_cookie_t
15964 **
15965 *****************************************************************************/
15966
15967xcb_get_pointer_control_cookie_t
15968xcb_get_pointer_control (xcb_connection_t *c /**< */);
15969
15970/**
15971 *
15972 * @param c The connection
15973 * @return A cookie
15974 *
15975 * Delivers a request to the X server.
15976 *
15977 * This form can be used only if the request will cause
15978 * a reply to be generated. Any returned error will be
15979 * placed in the event queue.
15980 */
15981
15982/*****************************************************************************
15983 **
15984 ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control_unchecked
15985 **
15986 ** @param xcb_connection_t *c
15987 ** @returns xcb_get_pointer_control_cookie_t
15988 **
15989 *****************************************************************************/
15990
15991xcb_get_pointer_control_cookie_t
15992xcb_get_pointer_control_unchecked (xcb_connection_t *c /**< */);
15993
15994/**
15995 * Return the reply
15996 * @param c The connection
15997 * @param cookie The cookie
15998 * @param e The xcb_generic_error_t supplied
15999 *
16000 * Returns the reply of the request asked by
16001 *
16002 * The parameter @p e supplied to this function must be NULL if
16003 * xcb_get_pointer_control_unchecked(). is used.
16004 * Otherwise, it stores the error if any.
16005 *
16006 * The returned value must be freed by the caller using free().
16007 */
16008
16009/*****************************************************************************
16010 **
16011 ** xcb_get_pointer_control_reply_t * xcb_get_pointer_control_reply
16012 **
16013 ** @param xcb_connection_t *c
16014 ** @param xcb_get_pointer_control_cookie_t cookie
16015 ** @param xcb_generic_error_t **e
16016 ** @returns xcb_get_pointer_control_reply_t *
16017 **
16018 *****************************************************************************/
16019
16020xcb_get_pointer_control_reply_t *
16021xcb_get_pointer_control_reply (xcb_connection_t *c /**< */,
16022 xcb_get_pointer_control_cookie_t cookie /**< */,
16023 xcb_generic_error_t **e /**< */);
16024
16025/**
16026 *
16027 * @param c The connection
16028 * @return A cookie
16029 *
16030 * Delivers a request to the X server.
16031 *
16032 * This form can be used only if the request will not cause
16033 * a reply to be generated. Any returned error will be
16034 * saved for handling by xcb_request_check().
16035 */
16036
16037/*****************************************************************************
16038 **
16039 ** xcb_void_cookie_t xcb_set_screen_saver_checked
16040 **
16041 ** @param xcb_connection_t *c
16042 ** @param int16_t timeout
16043 ** @param int16_t interval
16044 ** @param uint8_t prefer_blanking
16045 ** @param uint8_t allow_exposures
16046 ** @returns xcb_void_cookie_t
16047 **
16048 *****************************************************************************/
16049
16050xcb_void_cookie_t
16051xcb_set_screen_saver_checked (xcb_connection_t *c /**< */,
16052 int16_t timeout /**< */,
16053 int16_t interval /**< */,
16054 uint8_t prefer_blanking /**< */,
16055 uint8_t allow_exposures /**< */);
16056
16057/**
16058 *
16059 * @param c The connection
16060 * @return A cookie
16061 *
16062 * Delivers a request to the X server.
16063 *
16064 */
16065
16066/*****************************************************************************
16067 **
16068 ** xcb_void_cookie_t xcb_set_screen_saver
16069 **
16070 ** @param xcb_connection_t *c
16071 ** @param int16_t timeout
16072 ** @param int16_t interval
16073 ** @param uint8_t prefer_blanking
16074 ** @param uint8_t allow_exposures
16075 ** @returns xcb_void_cookie_t
16076 **
16077 *****************************************************************************/
16078
16079xcb_void_cookie_t
16080xcb_set_screen_saver (xcb_connection_t *c /**< */,
16081 int16_t timeout /**< */,
16082 int16_t interval /**< */,
16083 uint8_t prefer_blanking /**< */,
16084 uint8_t allow_exposures /**< */);
16085
16086/**
16087 *
16088 * @param c The connection
16089 * @return A cookie
16090 *
16091 * Delivers a request to the X server.
16092 *
16093 */
16094
16095/*****************************************************************************
16096 **
16097 ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver
16098 **
16099 ** @param xcb_connection_t *c
16100 ** @returns xcb_get_screen_saver_cookie_t
16101 **
16102 *****************************************************************************/
16103
16104xcb_get_screen_saver_cookie_t
16105xcb_get_screen_saver (xcb_connection_t *c /**< */);
16106
16107/**
16108 *
16109 * @param c The connection
16110 * @return A cookie
16111 *
16112 * Delivers a request to the X server.
16113 *
16114 * This form can be used only if the request will cause
16115 * a reply to be generated. Any returned error will be
16116 * placed in the event queue.
16117 */
16118
16119/*****************************************************************************
16120 **
16121 ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver_unchecked
16122 **
16123 ** @param xcb_connection_t *c
16124 ** @returns xcb_get_screen_saver_cookie_t
16125 **
16126 *****************************************************************************/
16127
16128xcb_get_screen_saver_cookie_t
16129xcb_get_screen_saver_unchecked (xcb_connection_t *c /**< */);
16130
16131/**
16132 * Return the reply
16133 * @param c The connection
16134 * @param cookie The cookie
16135 * @param e The xcb_generic_error_t supplied
16136 *
16137 * Returns the reply of the request asked by
16138 *
16139 * The parameter @p e supplied to this function must be NULL if
16140 * xcb_get_screen_saver_unchecked(). is used.
16141 * Otherwise, it stores the error if any.
16142 *
16143 * The returned value must be freed by the caller using free().
16144 */
16145
16146/*****************************************************************************
16147 **
16148 ** xcb_get_screen_saver_reply_t * xcb_get_screen_saver_reply
16149 **
16150 ** @param xcb_connection_t *c
16151 ** @param xcb_get_screen_saver_cookie_t cookie
16152 ** @param xcb_generic_error_t **e
16153 ** @returns xcb_get_screen_saver_reply_t *
16154 **
16155 *****************************************************************************/
16156
16157xcb_get_screen_saver_reply_t *
16158xcb_get_screen_saver_reply (xcb_connection_t *c /**< */,
16159 xcb_get_screen_saver_cookie_t cookie /**< */,
16160 xcb_generic_error_t **e /**< */);
16161
16162int
16163xcb_change_hosts_sizeof (const void *_buffer /**< */);
16164
16165/**
16166 *
16167 * @param c The connection
16168 * @return A cookie
16169 *
16170 * Delivers a request to the X server.
16171 *
16172 * This form can be used only if the request will not cause
16173 * a reply to be generated. Any returned error will be
16174 * saved for handling by xcb_request_check().
16175 */
16176
16177/*****************************************************************************
16178 **
16179 ** xcb_void_cookie_t xcb_change_hosts_checked
16180 **
16181 ** @param xcb_connection_t *c
16182 ** @param uint8_t mode
16183 ** @param uint8_t family
16184 ** @param uint16_t address_len
16185 ** @param const uint8_t *address
16186 ** @returns xcb_void_cookie_t
16187 **
16188 *****************************************************************************/
16189
16190xcb_void_cookie_t
16191xcb_change_hosts_checked (xcb_connection_t *c /**< */,
16192 uint8_t mode /**< */,
16193 uint8_t family /**< */,
16194 uint16_t address_len /**< */,
16195 const uint8_t *address /**< */);
16196
16197/**
16198 *
16199 * @param c The connection
16200 * @return A cookie
16201 *
16202 * Delivers a request to the X server.
16203 *
16204 */
16205
16206/*****************************************************************************
16207 **
16208 ** xcb_void_cookie_t xcb_change_hosts
16209 **
16210 ** @param xcb_connection_t *c
16211 ** @param uint8_t mode
16212 ** @param uint8_t family
16213 ** @param uint16_t address_len
16214 ** @param const uint8_t *address
16215 ** @returns xcb_void_cookie_t
16216 **
16217 *****************************************************************************/
16218
16219xcb_void_cookie_t
16220xcb_change_hosts (xcb_connection_t *c /**< */,
16221 uint8_t mode /**< */,
16222 uint8_t family /**< */,
16223 uint16_t address_len /**< */,
16224 const uint8_t *address /**< */);
16225
16226int
16227xcb_host_sizeof (const void *_buffer /**< */);
16228
16229
16230/*****************************************************************************
16231 **
16232 ** uint8_t * xcb_host_address
16233 **
16234 ** @param const xcb_host_t *R
16235 ** @returns uint8_t *
16236 **
16237 *****************************************************************************/
16238
16239uint8_t *
16240xcb_host_address (const xcb_host_t *R /**< */);
16241
16242
16243/*****************************************************************************
16244 **
16245 ** int xcb_host_address_length
16246 **
16247 ** @param const xcb_host_t *R
16248 ** @returns int
16249 **
16250 *****************************************************************************/
16251
16252int
16253xcb_host_address_length (const xcb_host_t *R /**< */);
16254
16255
16256/*****************************************************************************
16257 **
16258 ** xcb_generic_iterator_t xcb_host_address_end
16259 **
16260 ** @param const xcb_host_t *R
16261 ** @returns xcb_generic_iterator_t
16262 **
16263 *****************************************************************************/
16264
16265xcb_generic_iterator_t
16266xcb_host_address_end (const xcb_host_t *R /**< */);
16267
16268/**
16269 * Get the next element of the iterator
16270 * @param i Pointer to a xcb_host_iterator_t
16271 *
16272 * Get the next element in the iterator. The member rem is
16273 * decreased by one. The member data points to the next
16274 * element. The member index is increased by sizeof(xcb_host_t)
16275 */
16276
16277/*****************************************************************************
16278 **
16279 ** void xcb_host_next
16280 **
16281 ** @param xcb_host_iterator_t *i
16282 ** @returns void
16283 **
16284 *****************************************************************************/
16285
16286void
16287xcb_host_next (xcb_host_iterator_t *i /**< */);
16288
16289/**
16290 * Return the iterator pointing to the last element
16291 * @param i An xcb_host_iterator_t
16292 * @return The iterator pointing to the last element
16293 *
16294 * Set the current element in the iterator to the last element.
16295 * The member rem is set to 0. The member data points to the
16296 * last element.
16297 */
16298
16299/*****************************************************************************
16300 **
16301 ** xcb_generic_iterator_t xcb_host_end
16302 **
16303 ** @param xcb_host_iterator_t i
16304 ** @returns xcb_generic_iterator_t
16305 **
16306 *****************************************************************************/
16307
16308xcb_generic_iterator_t
16309xcb_host_end (xcb_host_iterator_t i /**< */);
16310
16311int
16312xcb_list_hosts_sizeof (const void *_buffer /**< */);
16313
16314/**
16315 *
16316 * @param c The connection
16317 * @return A cookie
16318 *
16319 * Delivers a request to the X server.
16320 *
16321 */
16322
16323/*****************************************************************************
16324 **
16325 ** xcb_list_hosts_cookie_t xcb_list_hosts
16326 **
16327 ** @param xcb_connection_t *c
16328 ** @returns xcb_list_hosts_cookie_t
16329 **
16330 *****************************************************************************/
16331
16332xcb_list_hosts_cookie_t
16333xcb_list_hosts (xcb_connection_t *c /**< */);
16334
16335/**
16336 *
16337 * @param c The connection
16338 * @return A cookie
16339 *
16340 * Delivers a request to the X server.
16341 *
16342 * This form can be used only if the request will cause
16343 * a reply to be generated. Any returned error will be
16344 * placed in the event queue.
16345 */
16346
16347/*****************************************************************************
16348 **
16349 ** xcb_list_hosts_cookie_t xcb_list_hosts_unchecked
16350 **
16351 ** @param xcb_connection_t *c
16352 ** @returns xcb_list_hosts_cookie_t
16353 **
16354 *****************************************************************************/
16355
16356xcb_list_hosts_cookie_t
16357xcb_list_hosts_unchecked (xcb_connection_t *c /**< */);
16358
16359
16360/*****************************************************************************
16361 **
16362 ** int xcb_list_hosts_hosts_length
16363 **
16364 ** @param const xcb_list_hosts_reply_t *R
16365 ** @returns int
16366 **
16367 *****************************************************************************/
16368
16369int
16370xcb_list_hosts_hosts_length (const xcb_list_hosts_reply_t *R /**< */);
16371
16372
16373/*****************************************************************************
16374 **
16375 ** xcb_host_iterator_t xcb_list_hosts_hosts_iterator
16376 **
16377 ** @param const xcb_list_hosts_reply_t *R
16378 ** @returns xcb_host_iterator_t
16379 **
16380 *****************************************************************************/
16381
16382xcb_host_iterator_t
16383xcb_list_hosts_hosts_iterator (const xcb_list_hosts_reply_t *R /**< */);
16384
16385/**
16386 * Return the reply
16387 * @param c The connection
16388 * @param cookie The cookie
16389 * @param e The xcb_generic_error_t supplied
16390 *
16391 * Returns the reply of the request asked by
16392 *
16393 * The parameter @p e supplied to this function must be NULL if
16394 * xcb_list_hosts_unchecked(). is used.
16395 * Otherwise, it stores the error if any.
16396 *
16397 * The returned value must be freed by the caller using free().
16398 */
16399
16400/*****************************************************************************
16401 **
16402 ** xcb_list_hosts_reply_t * xcb_list_hosts_reply
16403 **
16404 ** @param xcb_connection_t *c
16405 ** @param xcb_list_hosts_cookie_t cookie
16406 ** @param xcb_generic_error_t **e
16407 ** @returns xcb_list_hosts_reply_t *
16408 **
16409 *****************************************************************************/
16410
16411xcb_list_hosts_reply_t *
16412xcb_list_hosts_reply (xcb_connection_t *c /**< */,
16413 xcb_list_hosts_cookie_t cookie /**< */,
16414 xcb_generic_error_t **e /**< */);
16415
16416/**
16417 *
16418 * @param c The connection
16419 * @return A cookie
16420 *
16421 * Delivers a request to the X server.
16422 *
16423 * This form can be used only if the request will not cause
16424 * a reply to be generated. Any returned error will be
16425 * saved for handling by xcb_request_check().
16426 */
16427
16428/*****************************************************************************
16429 **
16430 ** xcb_void_cookie_t xcb_set_access_control_checked
16431 **
16432 ** @param xcb_connection_t *c
16433 ** @param uint8_t mode
16434 ** @returns xcb_void_cookie_t
16435 **
16436 *****************************************************************************/
16437
16438xcb_void_cookie_t
16439xcb_set_access_control_checked (xcb_connection_t *c /**< */,
16440 uint8_t mode /**< */);
16441
16442/**
16443 *
16444 * @param c The connection
16445 * @return A cookie
16446 *
16447 * Delivers a request to the X server.
16448 *
16449 */
16450
16451/*****************************************************************************
16452 **
16453 ** xcb_void_cookie_t xcb_set_access_control
16454 **
16455 ** @param xcb_connection_t *c
16456 ** @param uint8_t mode
16457 ** @returns xcb_void_cookie_t
16458 **
16459 *****************************************************************************/
16460
16461xcb_void_cookie_t
16462xcb_set_access_control (xcb_connection_t *c /**< */,
16463 uint8_t mode /**< */);
16464
16465/**
16466 *
16467 * @param c The connection
16468 * @return A cookie
16469 *
16470 * Delivers a request to the X server.
16471 *
16472 * This form can be used only if the request will not cause
16473 * a reply to be generated. Any returned error will be
16474 * saved for handling by xcb_request_check().
16475 */
16476
16477/*****************************************************************************
16478 **
16479 ** xcb_void_cookie_t xcb_set_close_down_mode_checked
16480 **
16481 ** @param xcb_connection_t *c
16482 ** @param uint8_t mode
16483 ** @returns xcb_void_cookie_t
16484 **
16485 *****************************************************************************/
16486
16487xcb_void_cookie_t
16488xcb_set_close_down_mode_checked (xcb_connection_t *c /**< */,
16489 uint8_t mode /**< */);
16490
16491/**
16492 *
16493 * @param c The connection
16494 * @return A cookie
16495 *
16496 * Delivers a request to the X server.
16497 *
16498 */
16499
16500/*****************************************************************************
16501 **
16502 ** xcb_void_cookie_t xcb_set_close_down_mode
16503 **
16504 ** @param xcb_connection_t *c
16505 ** @param uint8_t mode
16506 ** @returns xcb_void_cookie_t
16507 **
16508 *****************************************************************************/
16509
16510xcb_void_cookie_t
16511xcb_set_close_down_mode (xcb_connection_t *c /**< */,
16512 uint8_t mode /**< */);
16513
16514/**
16515 * @brief kills a client
16516 *
16517 * @param c The connection
16518 * @param resource Any resource belonging to the client (for example a Window), used to identify
16519 * the client connection.
16520 * \n
16521 * The special value of `XCB_KILL_ALL_TEMPORARY`, the resources of all clients
16522 * that have terminated in `RetainTemporary` (TODO) are destroyed.
16523 * @return A cookie
16524 *
16525 * Forces a close down of the client that created the specified \a resource.
16526 *
16527 * This form can be used only if the request will not cause
16528 * a reply to be generated. Any returned error will be
16529 * saved for handling by xcb_request_check().
16530 */
16531
16532/*****************************************************************************
16533 **
16534 ** xcb_void_cookie_t xcb_kill_client_checked
16535 **
16536 ** @param xcb_connection_t *c
16537 ** @param uint32_t resource
16538 ** @returns xcb_void_cookie_t
16539 **
16540 *****************************************************************************/
16541
16542xcb_void_cookie_t
16543xcb_kill_client_checked (xcb_connection_t *c /**< */,
16544 uint32_t resource /**< */);
16545
16546/**
16547 * @brief kills a client
16548 *
16549 * @param c The connection
16550 * @param resource Any resource belonging to the client (for example a Window), used to identify
16551 * the client connection.
16552 * \n
16553 * The special value of `XCB_KILL_ALL_TEMPORARY`, the resources of all clients
16554 * that have terminated in `RetainTemporary` (TODO) are destroyed.
16555 * @return A cookie
16556 *
16557 * Forces a close down of the client that created the specified \a resource.
16558 *
16559 */
16560
16561/*****************************************************************************
16562 **
16563 ** xcb_void_cookie_t xcb_kill_client
16564 **
16565 ** @param xcb_connection_t *c
16566 ** @param uint32_t resource
16567 ** @returns xcb_void_cookie_t
16568 **
16569 *****************************************************************************/
16570
16571xcb_void_cookie_t
16572xcb_kill_client (xcb_connection_t *c /**< */,
16573 uint32_t resource /**< */);
16574
16575int
16576xcb_rotate_properties_sizeof (const void *_buffer /**< */);
16577
16578/**
16579 *
16580 * @param c The connection
16581 * @return A cookie
16582 *
16583 * Delivers a request to the X server.
16584 *
16585 * This form can be used only if the request will not cause
16586 * a reply to be generated. Any returned error will be
16587 * saved for handling by xcb_request_check().
16588 */
16589
16590/*****************************************************************************
16591 **
16592 ** xcb_void_cookie_t xcb_rotate_properties_checked
16593 **
16594 ** @param xcb_connection_t *c
16595 ** @param xcb_window_t window
16596 ** @param uint16_t atoms_len
16597 ** @param int16_t delta
16598 ** @param const xcb_atom_t *atoms
16599 ** @returns xcb_void_cookie_t
16600 **
16601 *****************************************************************************/
16602
16603xcb_void_cookie_t
16604xcb_rotate_properties_checked (xcb_connection_t *c /**< */,
16605 xcb_window_t window /**< */,
16606 uint16_t atoms_len /**< */,
16607 int16_t delta /**< */,
16608 const xcb_atom_t *atoms /**< */);
16609
16610/**
16611 *
16612 * @param c The connection
16613 * @return A cookie
16614 *
16615 * Delivers a request to the X server.
16616 *
16617 */
16618
16619/*****************************************************************************
16620 **
16621 ** xcb_void_cookie_t xcb_rotate_properties
16622 **
16623 ** @param xcb_connection_t *c
16624 ** @param xcb_window_t window
16625 ** @param uint16_t atoms_len
16626 ** @param int16_t delta
16627 ** @param const xcb_atom_t *atoms
16628 ** @returns xcb_void_cookie_t
16629 **
16630 *****************************************************************************/
16631
16632xcb_void_cookie_t
16633xcb_rotate_properties (xcb_connection_t *c /**< */,
16634 xcb_window_t window /**< */,
16635 uint16_t atoms_len /**< */,
16636 int16_t delta /**< */,
16637 const xcb_atom_t *atoms /**< */);
16638
16639/**
16640 *
16641 * @param c The connection
16642 * @return A cookie
16643 *
16644 * Delivers a request to the X server.
16645 *
16646 * This form can be used only if the request will not cause
16647 * a reply to be generated. Any returned error will be
16648 * saved for handling by xcb_request_check().
16649 */
16650
16651/*****************************************************************************
16652 **
16653 ** xcb_void_cookie_t xcb_force_screen_saver_checked
16654 **
16655 ** @param xcb_connection_t *c
16656 ** @param uint8_t mode
16657 ** @returns xcb_void_cookie_t
16658 **
16659 *****************************************************************************/
16660
16661xcb_void_cookie_t
16662xcb_force_screen_saver_checked (xcb_connection_t *c /**< */,
16663 uint8_t mode /**< */);
16664
16665/**
16666 *
16667 * @param c The connection
16668 * @return A cookie
16669 *
16670 * Delivers a request to the X server.
16671 *
16672 */
16673
16674/*****************************************************************************
16675 **
16676 ** xcb_void_cookie_t xcb_force_screen_saver
16677 **
16678 ** @param xcb_connection_t *c
16679 ** @param uint8_t mode
16680 ** @returns xcb_void_cookie_t
16681 **
16682 *****************************************************************************/
16683
16684xcb_void_cookie_t
16685xcb_force_screen_saver (xcb_connection_t *c /**< */,
16686 uint8_t mode /**< */);
16687
16688int
16689xcb_set_pointer_mapping_sizeof (const void *_buffer /**< */);
16690
16691/**
16692 *
16693 * @param c The connection
16694 * @return A cookie
16695 *
16696 * Delivers a request to the X server.
16697 *
16698 */
16699
16700/*****************************************************************************
16701 **
16702 ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping
16703 **
16704 ** @param xcb_connection_t *c
16705 ** @param uint8_t map_len
16706 ** @param const uint8_t *map
16707 ** @returns xcb_set_pointer_mapping_cookie_t
16708 **
16709 *****************************************************************************/
16710
16711xcb_set_pointer_mapping_cookie_t
16712xcb_set_pointer_mapping (xcb_connection_t *c /**< */,
16713 uint8_t map_len /**< */,
16714 const uint8_t *map /**< */);
16715
16716/**
16717 *
16718 * @param c The connection
16719 * @return A cookie
16720 *
16721 * Delivers a request to the X server.
16722 *
16723 * This form can be used only if the request will cause
16724 * a reply to be generated. Any returned error will be
16725 * placed in the event queue.
16726 */
16727
16728/*****************************************************************************
16729 **
16730 ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping_unchecked
16731 **
16732 ** @param xcb_connection_t *c
16733 ** @param uint8_t map_len
16734 ** @param const uint8_t *map
16735 ** @returns xcb_set_pointer_mapping_cookie_t
16736 **
16737 *****************************************************************************/
16738
16739xcb_set_pointer_mapping_cookie_t
16740xcb_set_pointer_mapping_unchecked (xcb_connection_t *c /**< */,
16741 uint8_t map_len /**< */,
16742 const uint8_t *map /**< */);
16743
16744/**
16745 * Return the reply
16746 * @param c The connection
16747 * @param cookie The cookie
16748 * @param e The xcb_generic_error_t supplied
16749 *
16750 * Returns the reply of the request asked by
16751 *
16752 * The parameter @p e supplied to this function must be NULL if
16753 * xcb_set_pointer_mapping_unchecked(). is used.
16754 * Otherwise, it stores the error if any.
16755 *
16756 * The returned value must be freed by the caller using free().
16757 */
16758
16759/*****************************************************************************
16760 **
16761 ** xcb_set_pointer_mapping_reply_t * xcb_set_pointer_mapping_reply
16762 **
16763 ** @param xcb_connection_t *c
16764 ** @param xcb_set_pointer_mapping_cookie_t cookie
16765 ** @param xcb_generic_error_t **e
16766 ** @returns xcb_set_pointer_mapping_reply_t *
16767 **
16768 *****************************************************************************/
16769
16770xcb_set_pointer_mapping_reply_t *
16771xcb_set_pointer_mapping_reply (xcb_connection_t *c /**< */,
16772 xcb_set_pointer_mapping_cookie_t cookie /**< */,
16773 xcb_generic_error_t **e /**< */);
16774
16775int
16776xcb_get_pointer_mapping_sizeof (const void *_buffer /**< */);
16777
16778/**
16779 *
16780 * @param c The connection
16781 * @return A cookie
16782 *
16783 * Delivers a request to the X server.
16784 *
16785 */
16786
16787/*****************************************************************************
16788 **
16789 ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping
16790 **
16791 ** @param xcb_connection_t *c
16792 ** @returns xcb_get_pointer_mapping_cookie_t
16793 **
16794 *****************************************************************************/
16795
16796xcb_get_pointer_mapping_cookie_t
16797xcb_get_pointer_mapping (xcb_connection_t *c /**< */);
16798
16799/**
16800 *
16801 * @param c The connection
16802 * @return A cookie
16803 *
16804 * Delivers a request to the X server.
16805 *
16806 * This form can be used only if the request will cause
16807 * a reply to be generated. Any returned error will be
16808 * placed in the event queue.
16809 */
16810
16811/*****************************************************************************
16812 **
16813 ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping_unchecked
16814 **
16815 ** @param xcb_connection_t *c
16816 ** @returns xcb_get_pointer_mapping_cookie_t
16817 **
16818 *****************************************************************************/
16819
16820xcb_get_pointer_mapping_cookie_t
16821xcb_get_pointer_mapping_unchecked (xcb_connection_t *c /**< */);
16822
16823
16824/*****************************************************************************
16825 **
16826 ** uint8_t * xcb_get_pointer_mapping_map
16827 **
16828 ** @param const xcb_get_pointer_mapping_reply_t *R
16829 ** @returns uint8_t *
16830 **
16831 *****************************************************************************/
16832
16833uint8_t *
16834xcb_get_pointer_mapping_map (const xcb_get_pointer_mapping_reply_t *R /**< */);
16835
16836
16837/*****************************************************************************
16838 **
16839 ** int xcb_get_pointer_mapping_map_length
16840 **
16841 ** @param const xcb_get_pointer_mapping_reply_t *R
16842 ** @returns int
16843 **
16844 *****************************************************************************/
16845
16846int
16847xcb_get_pointer_mapping_map_length (const xcb_get_pointer_mapping_reply_t *R /**< */);
16848
16849
16850/*****************************************************************************
16851 **
16852 ** xcb_generic_iterator_t xcb_get_pointer_mapping_map_end
16853 **
16854 ** @param const xcb_get_pointer_mapping_reply_t *R
16855 ** @returns xcb_generic_iterator_t
16856 **
16857 *****************************************************************************/
16858
16859xcb_generic_iterator_t
16860xcb_get_pointer_mapping_map_end (const xcb_get_pointer_mapping_reply_t *R /**< */);
16861
16862/**
16863 * Return the reply
16864 * @param c The connection
16865 * @param cookie The cookie
16866 * @param e The xcb_generic_error_t supplied
16867 *
16868 * Returns the reply of the request asked by
16869 *
16870 * The parameter @p e supplied to this function must be NULL if
16871 * xcb_get_pointer_mapping_unchecked(). is used.
16872 * Otherwise, it stores the error if any.
16873 *
16874 * The returned value must be freed by the caller using free().
16875 */
16876
16877/*****************************************************************************
16878 **
16879 ** xcb_get_pointer_mapping_reply_t * xcb_get_pointer_mapping_reply
16880 **
16881 ** @param xcb_connection_t *c
16882 ** @param xcb_get_pointer_mapping_cookie_t cookie
16883 ** @param xcb_generic_error_t **e
16884 ** @returns xcb_get_pointer_mapping_reply_t *
16885 **
16886 *****************************************************************************/
16887
16888xcb_get_pointer_mapping_reply_t *
16889xcb_get_pointer_mapping_reply (xcb_connection_t *c /**< */,
16890 xcb_get_pointer_mapping_cookie_t cookie /**< */,
16891 xcb_generic_error_t **e /**< */);
16892
16893int
16894xcb_set_modifier_mapping_sizeof (const void *_buffer /**< */);
16895
16896/**
16897 *
16898 * @param c The connection
16899 * @return A cookie
16900 *
16901 * Delivers a request to the X server.
16902 *
16903 */
16904
16905/*****************************************************************************
16906 **
16907 ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping
16908 **
16909 ** @param xcb_connection_t *c
16910 ** @param uint8_t keycodes_per_modifier
16911 ** @param const xcb_keycode_t *keycodes
16912 ** @returns xcb_set_modifier_mapping_cookie_t
16913 **
16914 *****************************************************************************/
16915
16916xcb_set_modifier_mapping_cookie_t
16917xcb_set_modifier_mapping (xcb_connection_t *c /**< */,
16918 uint8_t keycodes_per_modifier /**< */,
16919 const xcb_keycode_t *keycodes /**< */);
16920
16921/**
16922 *
16923 * @param c The connection
16924 * @return A cookie
16925 *
16926 * Delivers a request to the X server.
16927 *
16928 * This form can be used only if the request will cause
16929 * a reply to be generated. Any returned error will be
16930 * placed in the event queue.
16931 */
16932
16933/*****************************************************************************
16934 **
16935 ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping_unchecked
16936 **
16937 ** @param xcb_connection_t *c
16938 ** @param uint8_t keycodes_per_modifier
16939 ** @param const xcb_keycode_t *keycodes
16940 ** @returns xcb_set_modifier_mapping_cookie_t
16941 **
16942 *****************************************************************************/
16943
16944xcb_set_modifier_mapping_cookie_t
16945xcb_set_modifier_mapping_unchecked (xcb_connection_t *c /**< */,
16946 uint8_t keycodes_per_modifier /**< */,
16947 const xcb_keycode_t *keycodes /**< */);
16948
16949/**
16950 * Return the reply
16951 * @param c The connection
16952 * @param cookie The cookie
16953 * @param e The xcb_generic_error_t supplied
16954 *
16955 * Returns the reply of the request asked by
16956 *
16957 * The parameter @p e supplied to this function must be NULL if
16958 * xcb_set_modifier_mapping_unchecked(). is used.
16959 * Otherwise, it stores the error if any.
16960 *
16961 * The returned value must be freed by the caller using free().
16962 */
16963
16964/*****************************************************************************
16965 **
16966 ** xcb_set_modifier_mapping_reply_t * xcb_set_modifier_mapping_reply
16967 **
16968 ** @param xcb_connection_t *c
16969 ** @param xcb_set_modifier_mapping_cookie_t cookie
16970 ** @param xcb_generic_error_t **e
16971 ** @returns xcb_set_modifier_mapping_reply_t *
16972 **
16973 *****************************************************************************/
16974
16975xcb_set_modifier_mapping_reply_t *
16976xcb_set_modifier_mapping_reply (xcb_connection_t *c /**< */,
16977 xcb_set_modifier_mapping_cookie_t cookie /**< */,
16978 xcb_generic_error_t **e /**< */);
16979
16980int
16981xcb_get_modifier_mapping_sizeof (const void *_buffer /**< */);
16982
16983/**
16984 *
16985 * @param c The connection
16986 * @return A cookie
16987 *
16988 * Delivers a request to the X server.
16989 *
16990 */
16991
16992/*****************************************************************************
16993 **
16994 ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping
16995 **
16996 ** @param xcb_connection_t *c
16997 ** @returns xcb_get_modifier_mapping_cookie_t
16998 **
16999 *****************************************************************************/
17000
17001xcb_get_modifier_mapping_cookie_t
17002xcb_get_modifier_mapping (xcb_connection_t *c /**< */);
17003
17004/**
17005 *
17006 * @param c The connection
17007 * @return A cookie
17008 *
17009 * Delivers a request to the X server.
17010 *
17011 * This form can be used only if the request will cause
17012 * a reply to be generated. Any returned error will be
17013 * placed in the event queue.
17014 */
17015
17016/*****************************************************************************
17017 **
17018 ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping_unchecked
17019 **
17020 ** @param xcb_connection_t *c
17021 ** @returns xcb_get_modifier_mapping_cookie_t
17022 **
17023 *****************************************************************************/
17024
17025xcb_get_modifier_mapping_cookie_t
17026xcb_get_modifier_mapping_unchecked (xcb_connection_t *c /**< */);
17027
17028
17029/*****************************************************************************
17030 **
17031 ** xcb_keycode_t * xcb_get_modifier_mapping_keycodes
17032 **
17033 ** @param const xcb_get_modifier_mapping_reply_t *R
17034 ** @returns xcb_keycode_t *
17035 **
17036 *****************************************************************************/
17037
17038xcb_keycode_t *
17039xcb_get_modifier_mapping_keycodes (const xcb_get_modifier_mapping_reply_t *R /**< */);
17040
17041
17042/*****************************************************************************
17043 **
17044 ** int xcb_get_modifier_mapping_keycodes_length
17045 **
17046 ** @param const xcb_get_modifier_mapping_reply_t *R
17047 ** @returns int
17048 **
17049 *****************************************************************************/
17050
17051int
17052xcb_get_modifier_mapping_keycodes_length (const xcb_get_modifier_mapping_reply_t *R /**< */);
17053
17054
17055/*****************************************************************************
17056 **
17057 ** xcb_generic_iterator_t xcb_get_modifier_mapping_keycodes_end
17058 **
17059 ** @param const xcb_get_modifier_mapping_reply_t *R
17060 ** @returns xcb_generic_iterator_t
17061 **
17062 *****************************************************************************/
17063
17064xcb_generic_iterator_t
17065xcb_get_modifier_mapping_keycodes_end (const xcb_get_modifier_mapping_reply_t *R /**< */);
17066
17067/**
17068 * Return the reply
17069 * @param c The connection
17070 * @param cookie The cookie
17071 * @param e The xcb_generic_error_t supplied
17072 *
17073 * Returns the reply of the request asked by
17074 *
17075 * The parameter @p e supplied to this function must be NULL if
17076 * xcb_get_modifier_mapping_unchecked(). is used.
17077 * Otherwise, it stores the error if any.
17078 *
17079 * The returned value must be freed by the caller using free().
17080 */
17081
17082/*****************************************************************************
17083 **
17084 ** xcb_get_modifier_mapping_reply_t * xcb_get_modifier_mapping_reply
17085 **
17086 ** @param xcb_connection_t *c
17087 ** @param xcb_get_modifier_mapping_cookie_t cookie
17088 ** @param xcb_generic_error_t **e
17089 ** @returns xcb_get_modifier_mapping_reply_t *
17090 **
17091 *****************************************************************************/
17092
17093xcb_get_modifier_mapping_reply_t *
17094xcb_get_modifier_mapping_reply (xcb_connection_t *c /**< */,
17095 xcb_get_modifier_mapping_cookie_t cookie /**< */,
17096 xcb_generic_error_t **e /**< */);
17097
17098/**
17099 *
17100 * @param c The connection
17101 * @return A cookie
17102 *
17103 * Delivers a request to the X server.
17104 *
17105 * This form can be used only if the request will not cause
17106 * a reply to be generated. Any returned error will be
17107 * saved for handling by xcb_request_check().
17108 */
17109
17110/*****************************************************************************
17111 **
17112 ** xcb_void_cookie_t xcb_no_operation_checked
17113 **
17114 ** @param xcb_connection_t *c
17115 ** @returns xcb_void_cookie_t
17116 **
17117 *****************************************************************************/
17118
17119xcb_void_cookie_t
17120xcb_no_operation_checked (xcb_connection_t *c /**< */);
17121
17122/**
17123 *
17124 * @param c The connection
17125 * @return A cookie
17126 *
17127 * Delivers a request to the X server.
17128 *
17129 */
17130
17131/*****************************************************************************
17132 **
17133 ** xcb_void_cookie_t xcb_no_operation
17134 **
17135 ** @param xcb_connection_t *c
17136 ** @returns xcb_void_cookie_t
17137 **
17138 *****************************************************************************/
17139
17140xcb_void_cookie_t
17141xcb_no_operation (xcb_connection_t *c /**< */);
17142
17143
17144#ifdef __cplusplus
17145}
17146#endif
17147
17148#endif
17149
17150/**
17151 * @}
17152 */
17153