XCB  1.9
shape.h
1 /*
2  * This file generated automatically from shape.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
12 #ifndef __SHAPE_H
13 #define __SHAPE_H
14 
15 #include "xcb.h"
16 #include "xproto.h"
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 #define XCB_SHAPE_MAJOR_VERSION 1
23 #define XCB_SHAPE_MINOR_VERSION 1
24 
25 extern xcb_extension_t xcb_shape_id;
26 
27 typedef uint8_t xcb_shape_op_t;
28 
32 typedef struct xcb_shape_op_iterator_t {
33  xcb_shape_op_t *data;
34  int rem;
35  int index;
37 
38 typedef uint8_t xcb_shape_kind_t;
39 
43 typedef struct xcb_shape_kind_iterator_t {
44  xcb_shape_kind_t *data;
45  int rem;
46  int index;
48 
49 typedef enum xcb_shape_so_t {
50  XCB_SHAPE_SO_SET,
51  XCB_SHAPE_SO_UNION,
52  XCB_SHAPE_SO_INTERSECT,
53  XCB_SHAPE_SO_SUBTRACT,
54  XCB_SHAPE_SO_INVERT
55 } xcb_shape_so_t;
56 
57 typedef enum xcb_shape_sk_t {
58  XCB_SHAPE_SK_BOUNDING,
59  XCB_SHAPE_SK_CLIP,
60  XCB_SHAPE_SK_INPUT
61 } xcb_shape_sk_t;
62 
64 #define XCB_SHAPE_NOTIFY 0
65 
69 typedef struct xcb_shape_notify_event_t {
70  uint8_t response_type;
71  xcb_shape_kind_t shape_kind;
72  uint16_t sequence;
73  xcb_window_t affected_window;
74  int16_t extents_x;
75  int16_t extents_y;
76  uint16_t extents_width;
77  uint16_t extents_height;
78  xcb_timestamp_t server_time;
79  uint8_t shaped;
80  uint8_t pad0[11];
82 
87  unsigned int sequence;
89 
91 #define XCB_SHAPE_QUERY_VERSION 0
92 
97  uint8_t major_opcode;
98  uint8_t minor_opcode;
99  uint16_t length;
101 
106  uint8_t response_type;
107  uint8_t pad0;
108  uint16_t sequence;
109  uint32_t length;
110  uint16_t major_version;
111  uint16_t minor_version;
113 
115 #define XCB_SHAPE_RECTANGLES 1
116 
121  uint8_t major_opcode;
122  uint8_t minor_opcode;
123  uint16_t length;
124  xcb_shape_op_t operation;
125  xcb_shape_kind_t destination_kind;
126  uint8_t ordering;
127  uint8_t pad0;
128  xcb_window_t destination_window;
129  int16_t x_offset;
130  int16_t y_offset;
132 
134 #define XCB_SHAPE_MASK 2
135 
139 typedef struct xcb_shape_mask_request_t {
140  uint8_t major_opcode;
141  uint8_t minor_opcode;
142  uint16_t length;
143  xcb_shape_op_t operation;
144  xcb_shape_kind_t destination_kind;
145  uint8_t pad0[2];
146  xcb_window_t destination_window;
147  int16_t x_offset;
148  int16_t y_offset;
149  xcb_pixmap_t source_bitmap;
151 
153 #define XCB_SHAPE_COMBINE 3
154 
159  uint8_t major_opcode;
160  uint8_t minor_opcode;
161  uint16_t length;
162  xcb_shape_op_t operation;
163  xcb_shape_kind_t destination_kind;
164  xcb_shape_kind_t source_kind;
165  uint8_t pad0;
166  xcb_window_t destination_window;
167  int16_t x_offset;
168  int16_t y_offset;
169  xcb_window_t source_window;
171 
173 #define XCB_SHAPE_OFFSET 4
174 
179  uint8_t major_opcode;
180  uint8_t minor_opcode;
181  uint16_t length;
182  xcb_shape_kind_t destination_kind;
183  uint8_t pad0[3];
184  xcb_window_t destination_window;
185  int16_t x_offset;
186  int16_t y_offset;
188 
193  unsigned int sequence;
195 
197 #define XCB_SHAPE_QUERY_EXTENTS 5
198 
203  uint8_t major_opcode;
204  uint8_t minor_opcode;
205  uint16_t length;
206  xcb_window_t destination_window;
208 
213  uint8_t response_type;
214  uint8_t pad0;
215  uint16_t sequence;
216  uint32_t length;
217  uint8_t bounding_shaped;
218  uint8_t clip_shaped;
219  uint8_t pad1[2];
220  int16_t bounding_shape_extents_x;
221  int16_t bounding_shape_extents_y;
222  uint16_t bounding_shape_extents_width;
223  uint16_t bounding_shape_extents_height;
224  int16_t clip_shape_extents_x;
225  int16_t clip_shape_extents_y;
226  uint16_t clip_shape_extents_width;
227  uint16_t clip_shape_extents_height;
229 
231 #define XCB_SHAPE_SELECT_INPUT 6
232 
237  uint8_t major_opcode;
238  uint8_t minor_opcode;
239  uint16_t length;
240  xcb_window_t destination_window;
241  uint8_t enable;
242  uint8_t pad0[3];
244 
249  unsigned int sequence;
251 
253 #define XCB_SHAPE_INPUT_SELECTED 7
254 
259  uint8_t major_opcode;
260  uint8_t minor_opcode;
261  uint16_t length;
262  xcb_window_t destination_window;
264 
269  uint8_t response_type;
270  uint8_t enabled;
271  uint16_t sequence;
272  uint32_t length;
274 
279  unsigned int sequence;
281 
283 #define XCB_SHAPE_GET_RECTANGLES 8
284 
289  uint8_t major_opcode;
290  uint8_t minor_opcode;
291  uint16_t length;
292  xcb_window_t window;
293  xcb_shape_kind_t source_kind;
294  uint8_t pad0[3];
296 
301  uint8_t response_type;
302  uint8_t ordering;
303  uint16_t sequence;
304  uint32_t length;
305  uint32_t rectangles_len;
306  uint8_t pad0[20];
308 
318 /*****************************************************************************
319  **
320  ** void xcb_shape_op_next
321  **
322  ** @param xcb_shape_op_iterator_t *i
323  ** @returns void
324  **
325  *****************************************************************************/
326 
327 void
329 
340 /*****************************************************************************
341  **
342  ** xcb_generic_iterator_t xcb_shape_op_end
343  **
344  ** @param xcb_shape_op_iterator_t i
345  ** @returns xcb_generic_iterator_t
346  **
347  *****************************************************************************/
348 
351 
361 /*****************************************************************************
362  **
363  ** void xcb_shape_kind_next
364  **
365  ** @param xcb_shape_kind_iterator_t *i
366  ** @returns void
367  **
368  *****************************************************************************/
369 
370 void
372 
383 /*****************************************************************************
384  **
385  ** xcb_generic_iterator_t xcb_shape_kind_end
386  **
387  ** @param xcb_shape_kind_iterator_t i
388  ** @returns xcb_generic_iterator_t
389  **
390  *****************************************************************************/
391 
394 
404 /*****************************************************************************
405  **
406  ** xcb_shape_query_version_cookie_t xcb_shape_query_version
407  **
408  ** @param xcb_connection_t *c
409  ** @returns xcb_shape_query_version_cookie_t
410  **
411  *****************************************************************************/
412 
415 
428 /*****************************************************************************
429  **
430  ** xcb_shape_query_version_cookie_t xcb_shape_query_version_unchecked
431  **
432  ** @param xcb_connection_t *c
433  ** @returns xcb_shape_query_version_cookie_t
434  **
435  *****************************************************************************/
436 
439 
455 /*****************************************************************************
456  **
457  ** xcb_shape_query_version_reply_t * xcb_shape_query_version_reply
458  **
459  ** @param xcb_connection_t *c
460  ** @param xcb_shape_query_version_cookie_t cookie
461  ** @param xcb_generic_error_t **e
462  ** @returns xcb_shape_query_version_reply_t *
463  **
464  *****************************************************************************/
465 
469  xcb_generic_error_t **e );
470 
471 int
472 xcb_shape_rectangles_sizeof (const void *_buffer ,
473  uint32_t rectangles_len );
474 
487 /*****************************************************************************
488  **
489  ** xcb_void_cookie_t xcb_shape_rectangles_checked
490  **
491  ** @param xcb_connection_t *c
492  ** @param xcb_shape_op_t operation
493  ** @param xcb_shape_kind_t destination_kind
494  ** @param uint8_t ordering
495  ** @param xcb_window_t destination_window
496  ** @param int16_t x_offset
497  ** @param int16_t y_offset
498  ** @param uint32_t rectangles_len
499  ** @param const xcb_rectangle_t *rectangles
500  ** @returns xcb_void_cookie_t
501  **
502  *****************************************************************************/
503 
506  xcb_shape_op_t operation ,
507  xcb_shape_kind_t destination_kind ,
508  uint8_t ordering ,
509  xcb_window_t destination_window ,
510  int16_t x_offset ,
511  int16_t y_offset ,
512  uint32_t rectangles_len ,
513  const xcb_rectangle_t *rectangles );
514 
524 /*****************************************************************************
525  **
526  ** xcb_void_cookie_t xcb_shape_rectangles
527  **
528  ** @param xcb_connection_t *c
529  ** @param xcb_shape_op_t operation
530  ** @param xcb_shape_kind_t destination_kind
531  ** @param uint8_t ordering
532  ** @param xcb_window_t destination_window
533  ** @param int16_t x_offset
534  ** @param int16_t y_offset
535  ** @param uint32_t rectangles_len
536  ** @param const xcb_rectangle_t *rectangles
537  ** @returns xcb_void_cookie_t
538  **
539  *****************************************************************************/
540 
543  xcb_shape_op_t operation ,
544  xcb_shape_kind_t destination_kind ,
545  uint8_t ordering ,
546  xcb_window_t destination_window ,
547  int16_t x_offset ,
548  int16_t y_offset ,
549  uint32_t rectangles_len ,
550  const xcb_rectangle_t *rectangles );
551 
564 /*****************************************************************************
565  **
566  ** xcb_void_cookie_t xcb_shape_mask_checked
567  **
568  ** @param xcb_connection_t *c
569  ** @param xcb_shape_op_t operation
570  ** @param xcb_shape_kind_t destination_kind
571  ** @param xcb_window_t destination_window
572  ** @param int16_t x_offset
573  ** @param int16_t y_offset
574  ** @param xcb_pixmap_t source_bitmap
575  ** @returns xcb_void_cookie_t
576  **
577  *****************************************************************************/
578 
581  xcb_shape_op_t operation ,
582  xcb_shape_kind_t destination_kind ,
583  xcb_window_t destination_window ,
584  int16_t x_offset ,
585  int16_t y_offset ,
586  xcb_pixmap_t source_bitmap );
587 
597 /*****************************************************************************
598  **
599  ** xcb_void_cookie_t xcb_shape_mask
600  **
601  ** @param xcb_connection_t *c
602  ** @param xcb_shape_op_t operation
603  ** @param xcb_shape_kind_t destination_kind
604  ** @param xcb_window_t destination_window
605  ** @param int16_t x_offset
606  ** @param int16_t y_offset
607  ** @param xcb_pixmap_t source_bitmap
608  ** @returns xcb_void_cookie_t
609  **
610  *****************************************************************************/
611 
614  xcb_shape_op_t operation ,
615  xcb_shape_kind_t destination_kind ,
616  xcb_window_t destination_window ,
617  int16_t x_offset ,
618  int16_t y_offset ,
619  xcb_pixmap_t source_bitmap );
620 
633 /*****************************************************************************
634  **
635  ** xcb_void_cookie_t xcb_shape_combine_checked
636  **
637  ** @param xcb_connection_t *c
638  ** @param xcb_shape_op_t operation
639  ** @param xcb_shape_kind_t destination_kind
640  ** @param xcb_shape_kind_t source_kind
641  ** @param xcb_window_t destination_window
642  ** @param int16_t x_offset
643  ** @param int16_t y_offset
644  ** @param xcb_window_t source_window
645  ** @returns xcb_void_cookie_t
646  **
647  *****************************************************************************/
648 
651  xcb_shape_op_t operation ,
652  xcb_shape_kind_t destination_kind ,
653  xcb_shape_kind_t source_kind ,
654  xcb_window_t destination_window ,
655  int16_t x_offset ,
656  int16_t y_offset ,
657  xcb_window_t source_window );
658 
668 /*****************************************************************************
669  **
670  ** xcb_void_cookie_t xcb_shape_combine
671  **
672  ** @param xcb_connection_t *c
673  ** @param xcb_shape_op_t operation
674  ** @param xcb_shape_kind_t destination_kind
675  ** @param xcb_shape_kind_t source_kind
676  ** @param xcb_window_t destination_window
677  ** @param int16_t x_offset
678  ** @param int16_t y_offset
679  ** @param xcb_window_t source_window
680  ** @returns xcb_void_cookie_t
681  **
682  *****************************************************************************/
683 
686  xcb_shape_op_t operation ,
687  xcb_shape_kind_t destination_kind ,
688  xcb_shape_kind_t source_kind ,
689  xcb_window_t destination_window ,
690  int16_t x_offset ,
691  int16_t y_offset ,
692  xcb_window_t source_window );
693 
706 /*****************************************************************************
707  **
708  ** xcb_void_cookie_t xcb_shape_offset_checked
709  **
710  ** @param xcb_connection_t *c
711  ** @param xcb_shape_kind_t destination_kind
712  ** @param xcb_window_t destination_window
713  ** @param int16_t x_offset
714  ** @param int16_t y_offset
715  ** @returns xcb_void_cookie_t
716  **
717  *****************************************************************************/
718 
721  xcb_shape_kind_t destination_kind ,
722  xcb_window_t destination_window ,
723  int16_t x_offset ,
724  int16_t y_offset );
725 
735 /*****************************************************************************
736  **
737  ** xcb_void_cookie_t xcb_shape_offset
738  **
739  ** @param xcb_connection_t *c
740  ** @param xcb_shape_kind_t destination_kind
741  ** @param xcb_window_t destination_window
742  ** @param int16_t x_offset
743  ** @param int16_t y_offset
744  ** @returns xcb_void_cookie_t
745  **
746  *****************************************************************************/
747 
750  xcb_shape_kind_t destination_kind ,
751  xcb_window_t destination_window ,
752  int16_t x_offset ,
753  int16_t y_offset );
754 
764 /*****************************************************************************
765  **
766  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents
767  **
768  ** @param xcb_connection_t *c
769  ** @param xcb_window_t destination_window
770  ** @returns xcb_shape_query_extents_cookie_t
771  **
772  *****************************************************************************/
773 
776  xcb_window_t destination_window );
777 
790 /*****************************************************************************
791  **
792  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents_unchecked
793  **
794  ** @param xcb_connection_t *c
795  ** @param xcb_window_t destination_window
796  ** @returns xcb_shape_query_extents_cookie_t
797  **
798  *****************************************************************************/
799 
802  xcb_window_t destination_window );
803 
819 /*****************************************************************************
820  **
821  ** xcb_shape_query_extents_reply_t * xcb_shape_query_extents_reply
822  **
823  ** @param xcb_connection_t *c
824  ** @param xcb_shape_query_extents_cookie_t cookie
825  ** @param xcb_generic_error_t **e
826  ** @returns xcb_shape_query_extents_reply_t *
827  **
828  *****************************************************************************/
829 
833  xcb_generic_error_t **e );
834 
847 /*****************************************************************************
848  **
849  ** xcb_void_cookie_t xcb_shape_select_input_checked
850  **
851  ** @param xcb_connection_t *c
852  ** @param xcb_window_t destination_window
853  ** @param uint8_t enable
854  ** @returns xcb_void_cookie_t
855  **
856  *****************************************************************************/
857 
860  xcb_window_t destination_window ,
861  uint8_t enable );
862 
872 /*****************************************************************************
873  **
874  ** xcb_void_cookie_t xcb_shape_select_input
875  **
876  ** @param xcb_connection_t *c
877  ** @param xcb_window_t destination_window
878  ** @param uint8_t enable
879  ** @returns xcb_void_cookie_t
880  **
881  *****************************************************************************/
882 
885  xcb_window_t destination_window ,
886  uint8_t enable );
887 
897 /*****************************************************************************
898  **
899  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected
900  **
901  ** @param xcb_connection_t *c
902  ** @param xcb_window_t destination_window
903  ** @returns xcb_shape_input_selected_cookie_t
904  **
905  *****************************************************************************/
906 
909  xcb_window_t destination_window );
910 
923 /*****************************************************************************
924  **
925  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected_unchecked
926  **
927  ** @param xcb_connection_t *c
928  ** @param xcb_window_t destination_window
929  ** @returns xcb_shape_input_selected_cookie_t
930  **
931  *****************************************************************************/
932 
935  xcb_window_t destination_window );
936 
952 /*****************************************************************************
953  **
954  ** xcb_shape_input_selected_reply_t * xcb_shape_input_selected_reply
955  **
956  ** @param xcb_connection_t *c
957  ** @param xcb_shape_input_selected_cookie_t cookie
958  ** @param xcb_generic_error_t **e
959  ** @returns xcb_shape_input_selected_reply_t *
960  **
961  *****************************************************************************/
962 
966  xcb_generic_error_t **e );
967 
968 int
969 xcb_shape_get_rectangles_sizeof (const void *_buffer );
970 
980 /*****************************************************************************
981  **
982  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles
983  **
984  ** @param xcb_connection_t *c
985  ** @param xcb_window_t window
986  ** @param xcb_shape_kind_t source_kind
987  ** @returns xcb_shape_get_rectangles_cookie_t
988  **
989  *****************************************************************************/
990 
993  xcb_window_t window ,
994  xcb_shape_kind_t source_kind );
995 
1008 /*****************************************************************************
1009  **
1010  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles_unchecked
1011  **
1012  ** @param xcb_connection_t *c
1013  ** @param xcb_window_t window
1014  ** @param xcb_shape_kind_t source_kind
1015  ** @returns xcb_shape_get_rectangles_cookie_t
1016  **
1017  *****************************************************************************/
1018 
1021  xcb_window_t window ,
1022  xcb_shape_kind_t source_kind );
1023 
1024 
1025 /*****************************************************************************
1026  **
1027  ** xcb_rectangle_t * xcb_shape_get_rectangles_rectangles
1028  **
1029  ** @param const xcb_shape_get_rectangles_reply_t *R
1030  ** @returns xcb_rectangle_t *
1031  **
1032  *****************************************************************************/
1033 
1035 xcb_shape_get_rectangles_rectangles (const xcb_shape_get_rectangles_reply_t *R );
1036 
1037 
1038 /*****************************************************************************
1039  **
1040  ** int xcb_shape_get_rectangles_rectangles_length
1041  **
1042  ** @param const xcb_shape_get_rectangles_reply_t *R
1043  ** @returns int
1044  **
1045  *****************************************************************************/
1046 
1047 int
1048 xcb_shape_get_rectangles_rectangles_length (const xcb_shape_get_rectangles_reply_t *R );
1049 
1050 
1051 /*****************************************************************************
1052  **
1053  ** xcb_rectangle_iterator_t xcb_shape_get_rectangles_rectangles_iterator
1054  **
1055  ** @param const xcb_shape_get_rectangles_reply_t *R
1056  ** @returns xcb_rectangle_iterator_t
1057  **
1058  *****************************************************************************/
1059 
1061 xcb_shape_get_rectangles_rectangles_iterator (const xcb_shape_get_rectangles_reply_t *R );
1062 
1078 /*****************************************************************************
1079  **
1080  ** xcb_shape_get_rectangles_reply_t * xcb_shape_get_rectangles_reply
1081  **
1082  ** @param xcb_connection_t *c
1083  ** @param xcb_shape_get_rectangles_cookie_t cookie
1084  ** @param xcb_generic_error_t **e
1085  ** @returns xcb_shape_get_rectangles_reply_t *
1086  **
1087  *****************************************************************************/
1088 
1092  xcb_generic_error_t **e );
1093 
1094 
1095 #ifdef __cplusplus
1096 }
1097 #endif
1098 
1099 #endif
1100