annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/xcb/xinput.h @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
rev   line source
jpayne@69 1 /*
jpayne@69 2 * This file generated automatically from xinput.xml by c_client.py.
jpayne@69 3 * Edit at your peril.
jpayne@69 4 */
jpayne@69 5
jpayne@69 6 /**
jpayne@69 7 * @defgroup XCB_Input_API XCB Input API
jpayne@69 8 * @brief Input XCB Protocol Implementation.
jpayne@69 9 * @{
jpayne@69 10 **/
jpayne@69 11
jpayne@69 12 #ifndef __XINPUT_H
jpayne@69 13 #define __XINPUT_H
jpayne@69 14
jpayne@69 15 #include "xcb.h"
jpayne@69 16 #include "xfixes.h"
jpayne@69 17
jpayne@69 18 #ifdef __cplusplus
jpayne@69 19 extern "C" {
jpayne@69 20 #endif
jpayne@69 21
jpayne@69 22 #define XCB_INPUT_MAJOR_VERSION 2
jpayne@69 23 #define XCB_INPUT_MINOR_VERSION 4
jpayne@69 24
jpayne@69 25 extern xcb_extension_t xcb_input_id;
jpayne@69 26
jpayne@69 27 typedef uint32_t xcb_input_event_class_t;
jpayne@69 28
jpayne@69 29 /**
jpayne@69 30 * @brief xcb_input_event_class_iterator_t
jpayne@69 31 **/
jpayne@69 32 typedef struct xcb_input_event_class_iterator_t {
jpayne@69 33 xcb_input_event_class_t *data;
jpayne@69 34 int rem;
jpayne@69 35 int index;
jpayne@69 36 } xcb_input_event_class_iterator_t;
jpayne@69 37
jpayne@69 38 typedef uint8_t xcb_input_key_code_t;
jpayne@69 39
jpayne@69 40 /**
jpayne@69 41 * @brief xcb_input_key_code_iterator_t
jpayne@69 42 **/
jpayne@69 43 typedef struct xcb_input_key_code_iterator_t {
jpayne@69 44 xcb_input_key_code_t *data;
jpayne@69 45 int rem;
jpayne@69 46 int index;
jpayne@69 47 } xcb_input_key_code_iterator_t;
jpayne@69 48
jpayne@69 49 typedef uint16_t xcb_input_device_id_t;
jpayne@69 50
jpayne@69 51 /**
jpayne@69 52 * @brief xcb_input_device_id_iterator_t
jpayne@69 53 **/
jpayne@69 54 typedef struct xcb_input_device_id_iterator_t {
jpayne@69 55 xcb_input_device_id_t *data;
jpayne@69 56 int rem;
jpayne@69 57 int index;
jpayne@69 58 } xcb_input_device_id_iterator_t;
jpayne@69 59
jpayne@69 60 typedef int32_t xcb_input_fp1616_t;
jpayne@69 61
jpayne@69 62 /**
jpayne@69 63 * @brief xcb_input_fp1616_iterator_t
jpayne@69 64 **/
jpayne@69 65 typedef struct xcb_input_fp1616_iterator_t {
jpayne@69 66 xcb_input_fp1616_t *data;
jpayne@69 67 int rem;
jpayne@69 68 int index;
jpayne@69 69 } xcb_input_fp1616_iterator_t;
jpayne@69 70
jpayne@69 71 /**
jpayne@69 72 * @brief xcb_input_fp3232_t
jpayne@69 73 **/
jpayne@69 74 typedef struct xcb_input_fp3232_t {
jpayne@69 75 int32_t integral;
jpayne@69 76 uint32_t frac;
jpayne@69 77 } xcb_input_fp3232_t;
jpayne@69 78
jpayne@69 79 /**
jpayne@69 80 * @brief xcb_input_fp3232_iterator_t
jpayne@69 81 **/
jpayne@69 82 typedef struct xcb_input_fp3232_iterator_t {
jpayne@69 83 xcb_input_fp3232_t *data;
jpayne@69 84 int rem;
jpayne@69 85 int index;
jpayne@69 86 } xcb_input_fp3232_iterator_t;
jpayne@69 87
jpayne@69 88 /**
jpayne@69 89 * @brief xcb_input_get_extension_version_cookie_t
jpayne@69 90 **/
jpayne@69 91 typedef struct xcb_input_get_extension_version_cookie_t {
jpayne@69 92 unsigned int sequence;
jpayne@69 93 } xcb_input_get_extension_version_cookie_t;
jpayne@69 94
jpayne@69 95 /** Opcode for xcb_input_get_extension_version. */
jpayne@69 96 #define XCB_INPUT_GET_EXTENSION_VERSION 1
jpayne@69 97
jpayne@69 98 /**
jpayne@69 99 * @brief xcb_input_get_extension_version_request_t
jpayne@69 100 **/
jpayne@69 101 typedef struct xcb_input_get_extension_version_request_t {
jpayne@69 102 uint8_t major_opcode;
jpayne@69 103 uint8_t minor_opcode;
jpayne@69 104 uint16_t length;
jpayne@69 105 uint16_t name_len;
jpayne@69 106 uint8_t pad0[2];
jpayne@69 107 } xcb_input_get_extension_version_request_t;
jpayne@69 108
jpayne@69 109 /**
jpayne@69 110 * @brief xcb_input_get_extension_version_reply_t
jpayne@69 111 **/
jpayne@69 112 typedef struct xcb_input_get_extension_version_reply_t {
jpayne@69 113 uint8_t response_type;
jpayne@69 114 uint8_t xi_reply_type;
jpayne@69 115 uint16_t sequence;
jpayne@69 116 uint32_t length;
jpayne@69 117 uint16_t server_major;
jpayne@69 118 uint16_t server_minor;
jpayne@69 119 uint8_t present;
jpayne@69 120 uint8_t pad0[19];
jpayne@69 121 } xcb_input_get_extension_version_reply_t;
jpayne@69 122
jpayne@69 123 typedef enum xcb_input_device_use_t {
jpayne@69 124 XCB_INPUT_DEVICE_USE_IS_X_POINTER = 0,
jpayne@69 125 XCB_INPUT_DEVICE_USE_IS_X_KEYBOARD = 1,
jpayne@69 126 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_DEVICE = 2,
jpayne@69 127 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_KEYBOARD = 3,
jpayne@69 128 XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_POINTER = 4
jpayne@69 129 } xcb_input_device_use_t;
jpayne@69 130
jpayne@69 131 typedef enum xcb_input_input_class_t {
jpayne@69 132 XCB_INPUT_INPUT_CLASS_KEY = 0,
jpayne@69 133 XCB_INPUT_INPUT_CLASS_BUTTON = 1,
jpayne@69 134 XCB_INPUT_INPUT_CLASS_VALUATOR = 2,
jpayne@69 135 XCB_INPUT_INPUT_CLASS_FEEDBACK = 3,
jpayne@69 136 XCB_INPUT_INPUT_CLASS_PROXIMITY = 4,
jpayne@69 137 XCB_INPUT_INPUT_CLASS_FOCUS = 5,
jpayne@69 138 XCB_INPUT_INPUT_CLASS_OTHER = 6
jpayne@69 139 } xcb_input_input_class_t;
jpayne@69 140
jpayne@69 141 typedef enum xcb_input_valuator_mode_t {
jpayne@69 142 XCB_INPUT_VALUATOR_MODE_RELATIVE = 0,
jpayne@69 143 XCB_INPUT_VALUATOR_MODE_ABSOLUTE = 1
jpayne@69 144 } xcb_input_valuator_mode_t;
jpayne@69 145
jpayne@69 146 /**
jpayne@69 147 * @brief xcb_input_device_info_t
jpayne@69 148 **/
jpayne@69 149 typedef struct xcb_input_device_info_t {
jpayne@69 150 xcb_atom_t device_type;
jpayne@69 151 uint8_t device_id;
jpayne@69 152 uint8_t num_class_info;
jpayne@69 153 uint8_t device_use;
jpayne@69 154 uint8_t pad0;
jpayne@69 155 } xcb_input_device_info_t;
jpayne@69 156
jpayne@69 157 /**
jpayne@69 158 * @brief xcb_input_device_info_iterator_t
jpayne@69 159 **/
jpayne@69 160 typedef struct xcb_input_device_info_iterator_t {
jpayne@69 161 xcb_input_device_info_t *data;
jpayne@69 162 int rem;
jpayne@69 163 int index;
jpayne@69 164 } xcb_input_device_info_iterator_t;
jpayne@69 165
jpayne@69 166 /**
jpayne@69 167 * @brief xcb_input_key_info_t
jpayne@69 168 **/
jpayne@69 169 typedef struct xcb_input_key_info_t {
jpayne@69 170 uint8_t class_id;
jpayne@69 171 uint8_t len;
jpayne@69 172 xcb_input_key_code_t min_keycode;
jpayne@69 173 xcb_input_key_code_t max_keycode;
jpayne@69 174 uint16_t num_keys;
jpayne@69 175 uint8_t pad0[2];
jpayne@69 176 } xcb_input_key_info_t;
jpayne@69 177
jpayne@69 178 /**
jpayne@69 179 * @brief xcb_input_key_info_iterator_t
jpayne@69 180 **/
jpayne@69 181 typedef struct xcb_input_key_info_iterator_t {
jpayne@69 182 xcb_input_key_info_t *data;
jpayne@69 183 int rem;
jpayne@69 184 int index;
jpayne@69 185 } xcb_input_key_info_iterator_t;
jpayne@69 186
jpayne@69 187 /**
jpayne@69 188 * @brief xcb_input_button_info_t
jpayne@69 189 **/
jpayne@69 190 typedef struct xcb_input_button_info_t {
jpayne@69 191 uint8_t class_id;
jpayne@69 192 uint8_t len;
jpayne@69 193 uint16_t num_buttons;
jpayne@69 194 } xcb_input_button_info_t;
jpayne@69 195
jpayne@69 196 /**
jpayne@69 197 * @brief xcb_input_button_info_iterator_t
jpayne@69 198 **/
jpayne@69 199 typedef struct xcb_input_button_info_iterator_t {
jpayne@69 200 xcb_input_button_info_t *data;
jpayne@69 201 int rem;
jpayne@69 202 int index;
jpayne@69 203 } xcb_input_button_info_iterator_t;
jpayne@69 204
jpayne@69 205 /**
jpayne@69 206 * @brief xcb_input_axis_info_t
jpayne@69 207 **/
jpayne@69 208 typedef struct xcb_input_axis_info_t {
jpayne@69 209 uint32_t resolution;
jpayne@69 210 int32_t minimum;
jpayne@69 211 int32_t maximum;
jpayne@69 212 } xcb_input_axis_info_t;
jpayne@69 213
jpayne@69 214 /**
jpayne@69 215 * @brief xcb_input_axis_info_iterator_t
jpayne@69 216 **/
jpayne@69 217 typedef struct xcb_input_axis_info_iterator_t {
jpayne@69 218 xcb_input_axis_info_t *data;
jpayne@69 219 int rem;
jpayne@69 220 int index;
jpayne@69 221 } xcb_input_axis_info_iterator_t;
jpayne@69 222
jpayne@69 223 /**
jpayne@69 224 * @brief xcb_input_valuator_info_t
jpayne@69 225 **/
jpayne@69 226 typedef struct xcb_input_valuator_info_t {
jpayne@69 227 uint8_t class_id;
jpayne@69 228 uint8_t len;
jpayne@69 229 uint8_t axes_len;
jpayne@69 230 uint8_t mode;
jpayne@69 231 uint32_t motion_size;
jpayne@69 232 } xcb_input_valuator_info_t;
jpayne@69 233
jpayne@69 234 /**
jpayne@69 235 * @brief xcb_input_valuator_info_iterator_t
jpayne@69 236 **/
jpayne@69 237 typedef struct xcb_input_valuator_info_iterator_t {
jpayne@69 238 xcb_input_valuator_info_t *data;
jpayne@69 239 int rem;
jpayne@69 240 int index;
jpayne@69 241 } xcb_input_valuator_info_iterator_t;
jpayne@69 242
jpayne@69 243 /**
jpayne@69 244 * @brief xcb_input_input_info_info_t
jpayne@69 245 **/
jpayne@69 246 typedef struct xcb_input_input_info_info_t {
jpayne@69 247 struct {
jpayne@69 248 xcb_input_key_code_t min_keycode;
jpayne@69 249 xcb_input_key_code_t max_keycode;
jpayne@69 250 uint16_t num_keys;
jpayne@69 251 uint8_t pad0[2];
jpayne@69 252 } key;
jpayne@69 253 struct {
jpayne@69 254 uint16_t num_buttons;
jpayne@69 255 } button;
jpayne@69 256 struct {
jpayne@69 257 uint8_t axes_len;
jpayne@69 258 uint8_t mode;
jpayne@69 259 uint32_t motion_size;
jpayne@69 260 xcb_input_axis_info_t *axes;
jpayne@69 261 } valuator;
jpayne@69 262 } xcb_input_input_info_info_t;
jpayne@69 263
jpayne@69 264 /**
jpayne@69 265 * @brief xcb_input_input_info_t
jpayne@69 266 **/
jpayne@69 267 typedef struct xcb_input_input_info_t {
jpayne@69 268 uint8_t class_id;
jpayne@69 269 uint8_t len;
jpayne@69 270 } xcb_input_input_info_t;
jpayne@69 271
jpayne@69 272 void *
jpayne@69 273 xcb_input_input_info_info (const xcb_input_input_info_t *R);
jpayne@69 274
jpayne@69 275 /**
jpayne@69 276 * @brief xcb_input_input_info_iterator_t
jpayne@69 277 **/
jpayne@69 278 typedef struct xcb_input_input_info_iterator_t {
jpayne@69 279 xcb_input_input_info_t *data;
jpayne@69 280 int rem;
jpayne@69 281 int index;
jpayne@69 282 } xcb_input_input_info_iterator_t;
jpayne@69 283
jpayne@69 284 /**
jpayne@69 285 * @brief xcb_input_device_name_t
jpayne@69 286 **/
jpayne@69 287 typedef struct xcb_input_device_name_t {
jpayne@69 288 uint8_t len;
jpayne@69 289 } xcb_input_device_name_t;
jpayne@69 290
jpayne@69 291 /**
jpayne@69 292 * @brief xcb_input_device_name_iterator_t
jpayne@69 293 **/
jpayne@69 294 typedef struct xcb_input_device_name_iterator_t {
jpayne@69 295 xcb_input_device_name_t *data;
jpayne@69 296 int rem;
jpayne@69 297 int index;
jpayne@69 298 } xcb_input_device_name_iterator_t;
jpayne@69 299
jpayne@69 300 /**
jpayne@69 301 * @brief xcb_input_list_input_devices_cookie_t
jpayne@69 302 **/
jpayne@69 303 typedef struct xcb_input_list_input_devices_cookie_t {
jpayne@69 304 unsigned int sequence;
jpayne@69 305 } xcb_input_list_input_devices_cookie_t;
jpayne@69 306
jpayne@69 307 /** Opcode for xcb_input_list_input_devices. */
jpayne@69 308 #define XCB_INPUT_LIST_INPUT_DEVICES 2
jpayne@69 309
jpayne@69 310 /**
jpayne@69 311 * @brief xcb_input_list_input_devices_request_t
jpayne@69 312 **/
jpayne@69 313 typedef struct xcb_input_list_input_devices_request_t {
jpayne@69 314 uint8_t major_opcode;
jpayne@69 315 uint8_t minor_opcode;
jpayne@69 316 uint16_t length;
jpayne@69 317 } xcb_input_list_input_devices_request_t;
jpayne@69 318
jpayne@69 319 /**
jpayne@69 320 * @brief xcb_input_list_input_devices_reply_t
jpayne@69 321 **/
jpayne@69 322 typedef struct xcb_input_list_input_devices_reply_t {
jpayne@69 323 uint8_t response_type;
jpayne@69 324 uint8_t xi_reply_type;
jpayne@69 325 uint16_t sequence;
jpayne@69 326 uint32_t length;
jpayne@69 327 uint8_t devices_len;
jpayne@69 328 uint8_t pad0[23];
jpayne@69 329 } xcb_input_list_input_devices_reply_t;
jpayne@69 330
jpayne@69 331 typedef uint8_t xcb_input_event_type_base_t;
jpayne@69 332
jpayne@69 333 /**
jpayne@69 334 * @brief xcb_input_event_type_base_iterator_t
jpayne@69 335 **/
jpayne@69 336 typedef struct xcb_input_event_type_base_iterator_t {
jpayne@69 337 xcb_input_event_type_base_t *data;
jpayne@69 338 int rem;
jpayne@69 339 int index;
jpayne@69 340 } xcb_input_event_type_base_iterator_t;
jpayne@69 341
jpayne@69 342 /**
jpayne@69 343 * @brief xcb_input_input_class_info_t
jpayne@69 344 **/
jpayne@69 345 typedef struct xcb_input_input_class_info_t {
jpayne@69 346 uint8_t class_id;
jpayne@69 347 xcb_input_event_type_base_t event_type_base;
jpayne@69 348 } xcb_input_input_class_info_t;
jpayne@69 349
jpayne@69 350 /**
jpayne@69 351 * @brief xcb_input_input_class_info_iterator_t
jpayne@69 352 **/
jpayne@69 353 typedef struct xcb_input_input_class_info_iterator_t {
jpayne@69 354 xcb_input_input_class_info_t *data;
jpayne@69 355 int rem;
jpayne@69 356 int index;
jpayne@69 357 } xcb_input_input_class_info_iterator_t;
jpayne@69 358
jpayne@69 359 /**
jpayne@69 360 * @brief xcb_input_open_device_cookie_t
jpayne@69 361 **/
jpayne@69 362 typedef struct xcb_input_open_device_cookie_t {
jpayne@69 363 unsigned int sequence;
jpayne@69 364 } xcb_input_open_device_cookie_t;
jpayne@69 365
jpayne@69 366 /** Opcode for xcb_input_open_device. */
jpayne@69 367 #define XCB_INPUT_OPEN_DEVICE 3
jpayne@69 368
jpayne@69 369 /**
jpayne@69 370 * @brief xcb_input_open_device_request_t
jpayne@69 371 **/
jpayne@69 372 typedef struct xcb_input_open_device_request_t {
jpayne@69 373 uint8_t major_opcode;
jpayne@69 374 uint8_t minor_opcode;
jpayne@69 375 uint16_t length;
jpayne@69 376 uint8_t device_id;
jpayne@69 377 uint8_t pad0[3];
jpayne@69 378 } xcb_input_open_device_request_t;
jpayne@69 379
jpayne@69 380 /**
jpayne@69 381 * @brief xcb_input_open_device_reply_t
jpayne@69 382 **/
jpayne@69 383 typedef struct xcb_input_open_device_reply_t {
jpayne@69 384 uint8_t response_type;
jpayne@69 385 uint8_t xi_reply_type;
jpayne@69 386 uint16_t sequence;
jpayne@69 387 uint32_t length;
jpayne@69 388 uint8_t num_classes;
jpayne@69 389 uint8_t pad0[23];
jpayne@69 390 } xcb_input_open_device_reply_t;
jpayne@69 391
jpayne@69 392 /** Opcode for xcb_input_close_device. */
jpayne@69 393 #define XCB_INPUT_CLOSE_DEVICE 4
jpayne@69 394
jpayne@69 395 /**
jpayne@69 396 * @brief xcb_input_close_device_request_t
jpayne@69 397 **/
jpayne@69 398 typedef struct xcb_input_close_device_request_t {
jpayne@69 399 uint8_t major_opcode;
jpayne@69 400 uint8_t minor_opcode;
jpayne@69 401 uint16_t length;
jpayne@69 402 uint8_t device_id;
jpayne@69 403 uint8_t pad0[3];
jpayne@69 404 } xcb_input_close_device_request_t;
jpayne@69 405
jpayne@69 406 /**
jpayne@69 407 * @brief xcb_input_set_device_mode_cookie_t
jpayne@69 408 **/
jpayne@69 409 typedef struct xcb_input_set_device_mode_cookie_t {
jpayne@69 410 unsigned int sequence;
jpayne@69 411 } xcb_input_set_device_mode_cookie_t;
jpayne@69 412
jpayne@69 413 /** Opcode for xcb_input_set_device_mode. */
jpayne@69 414 #define XCB_INPUT_SET_DEVICE_MODE 5
jpayne@69 415
jpayne@69 416 /**
jpayne@69 417 * @brief xcb_input_set_device_mode_request_t
jpayne@69 418 **/
jpayne@69 419 typedef struct xcb_input_set_device_mode_request_t {
jpayne@69 420 uint8_t major_opcode;
jpayne@69 421 uint8_t minor_opcode;
jpayne@69 422 uint16_t length;
jpayne@69 423 uint8_t device_id;
jpayne@69 424 uint8_t mode;
jpayne@69 425 uint8_t pad0[2];
jpayne@69 426 } xcb_input_set_device_mode_request_t;
jpayne@69 427
jpayne@69 428 /**
jpayne@69 429 * @brief xcb_input_set_device_mode_reply_t
jpayne@69 430 **/
jpayne@69 431 typedef struct xcb_input_set_device_mode_reply_t {
jpayne@69 432 uint8_t response_type;
jpayne@69 433 uint8_t xi_reply_type;
jpayne@69 434 uint16_t sequence;
jpayne@69 435 uint32_t length;
jpayne@69 436 uint8_t status;
jpayne@69 437 uint8_t pad0[23];
jpayne@69 438 } xcb_input_set_device_mode_reply_t;
jpayne@69 439
jpayne@69 440 /** Opcode for xcb_input_select_extension_event. */
jpayne@69 441 #define XCB_INPUT_SELECT_EXTENSION_EVENT 6
jpayne@69 442
jpayne@69 443 /**
jpayne@69 444 * @brief xcb_input_select_extension_event_request_t
jpayne@69 445 **/
jpayne@69 446 typedef struct xcb_input_select_extension_event_request_t {
jpayne@69 447 uint8_t major_opcode;
jpayne@69 448 uint8_t minor_opcode;
jpayne@69 449 uint16_t length;
jpayne@69 450 xcb_window_t window;
jpayne@69 451 uint16_t num_classes;
jpayne@69 452 uint8_t pad0[2];
jpayne@69 453 } xcb_input_select_extension_event_request_t;
jpayne@69 454
jpayne@69 455 /**
jpayne@69 456 * @brief xcb_input_get_selected_extension_events_cookie_t
jpayne@69 457 **/
jpayne@69 458 typedef struct xcb_input_get_selected_extension_events_cookie_t {
jpayne@69 459 unsigned int sequence;
jpayne@69 460 } xcb_input_get_selected_extension_events_cookie_t;
jpayne@69 461
jpayne@69 462 /** Opcode for xcb_input_get_selected_extension_events. */
jpayne@69 463 #define XCB_INPUT_GET_SELECTED_EXTENSION_EVENTS 7
jpayne@69 464
jpayne@69 465 /**
jpayne@69 466 * @brief xcb_input_get_selected_extension_events_request_t
jpayne@69 467 **/
jpayne@69 468 typedef struct xcb_input_get_selected_extension_events_request_t {
jpayne@69 469 uint8_t major_opcode;
jpayne@69 470 uint8_t minor_opcode;
jpayne@69 471 uint16_t length;
jpayne@69 472 xcb_window_t window;
jpayne@69 473 } xcb_input_get_selected_extension_events_request_t;
jpayne@69 474
jpayne@69 475 /**
jpayne@69 476 * @brief xcb_input_get_selected_extension_events_reply_t
jpayne@69 477 **/
jpayne@69 478 typedef struct xcb_input_get_selected_extension_events_reply_t {
jpayne@69 479 uint8_t response_type;
jpayne@69 480 uint8_t xi_reply_type;
jpayne@69 481 uint16_t sequence;
jpayne@69 482 uint32_t length;
jpayne@69 483 uint16_t num_this_classes;
jpayne@69 484 uint16_t num_all_classes;
jpayne@69 485 uint8_t pad0[20];
jpayne@69 486 } xcb_input_get_selected_extension_events_reply_t;
jpayne@69 487
jpayne@69 488 typedef enum xcb_input_propagate_mode_t {
jpayne@69 489 XCB_INPUT_PROPAGATE_MODE_ADD_TO_LIST = 0,
jpayne@69 490 XCB_INPUT_PROPAGATE_MODE_DELETE_FROM_LIST = 1
jpayne@69 491 } xcb_input_propagate_mode_t;
jpayne@69 492
jpayne@69 493 /** Opcode for xcb_input_change_device_dont_propagate_list. */
jpayne@69 494 #define XCB_INPUT_CHANGE_DEVICE_DONT_PROPAGATE_LIST 8
jpayne@69 495
jpayne@69 496 /**
jpayne@69 497 * @brief xcb_input_change_device_dont_propagate_list_request_t
jpayne@69 498 **/
jpayne@69 499 typedef struct xcb_input_change_device_dont_propagate_list_request_t {
jpayne@69 500 uint8_t major_opcode;
jpayne@69 501 uint8_t minor_opcode;
jpayne@69 502 uint16_t length;
jpayne@69 503 xcb_window_t window;
jpayne@69 504 uint16_t num_classes;
jpayne@69 505 uint8_t mode;
jpayne@69 506 uint8_t pad0;
jpayne@69 507 } xcb_input_change_device_dont_propagate_list_request_t;
jpayne@69 508
jpayne@69 509 /**
jpayne@69 510 * @brief xcb_input_get_device_dont_propagate_list_cookie_t
jpayne@69 511 **/
jpayne@69 512 typedef struct xcb_input_get_device_dont_propagate_list_cookie_t {
jpayne@69 513 unsigned int sequence;
jpayne@69 514 } xcb_input_get_device_dont_propagate_list_cookie_t;
jpayne@69 515
jpayne@69 516 /** Opcode for xcb_input_get_device_dont_propagate_list. */
jpayne@69 517 #define XCB_INPUT_GET_DEVICE_DONT_PROPAGATE_LIST 9
jpayne@69 518
jpayne@69 519 /**
jpayne@69 520 * @brief xcb_input_get_device_dont_propagate_list_request_t
jpayne@69 521 **/
jpayne@69 522 typedef struct xcb_input_get_device_dont_propagate_list_request_t {
jpayne@69 523 uint8_t major_opcode;
jpayne@69 524 uint8_t minor_opcode;
jpayne@69 525 uint16_t length;
jpayne@69 526 xcb_window_t window;
jpayne@69 527 } xcb_input_get_device_dont_propagate_list_request_t;
jpayne@69 528
jpayne@69 529 /**
jpayne@69 530 * @brief xcb_input_get_device_dont_propagate_list_reply_t
jpayne@69 531 **/
jpayne@69 532 typedef struct xcb_input_get_device_dont_propagate_list_reply_t {
jpayne@69 533 uint8_t response_type;
jpayne@69 534 uint8_t xi_reply_type;
jpayne@69 535 uint16_t sequence;
jpayne@69 536 uint32_t length;
jpayne@69 537 uint16_t num_classes;
jpayne@69 538 uint8_t pad0[22];
jpayne@69 539 } xcb_input_get_device_dont_propagate_list_reply_t;
jpayne@69 540
jpayne@69 541 /**
jpayne@69 542 * @brief xcb_input_device_time_coord_t
jpayne@69 543 **/
jpayne@69 544 typedef struct xcb_input_device_time_coord_t {
jpayne@69 545 xcb_timestamp_t time;
jpayne@69 546 } xcb_input_device_time_coord_t;
jpayne@69 547
jpayne@69 548 /**
jpayne@69 549 * @brief xcb_input_device_time_coord_iterator_t
jpayne@69 550 **/
jpayne@69 551 typedef struct xcb_input_device_time_coord_iterator_t {
jpayne@69 552 xcb_input_device_time_coord_t *data;
jpayne@69 553 int rem;
jpayne@69 554 int index;
jpayne@69 555 uint8_t num_axes; /**< */
jpayne@69 556 } xcb_input_device_time_coord_iterator_t;
jpayne@69 557
jpayne@69 558 /**
jpayne@69 559 * @brief xcb_input_get_device_motion_events_cookie_t
jpayne@69 560 **/
jpayne@69 561 typedef struct xcb_input_get_device_motion_events_cookie_t {
jpayne@69 562 unsigned int sequence;
jpayne@69 563 } xcb_input_get_device_motion_events_cookie_t;
jpayne@69 564
jpayne@69 565 /** Opcode for xcb_input_get_device_motion_events. */
jpayne@69 566 #define XCB_INPUT_GET_DEVICE_MOTION_EVENTS 10
jpayne@69 567
jpayne@69 568 /**
jpayne@69 569 * @brief xcb_input_get_device_motion_events_request_t
jpayne@69 570 **/
jpayne@69 571 typedef struct xcb_input_get_device_motion_events_request_t {
jpayne@69 572 uint8_t major_opcode;
jpayne@69 573 uint8_t minor_opcode;
jpayne@69 574 uint16_t length;
jpayne@69 575 xcb_timestamp_t start;
jpayne@69 576 xcb_timestamp_t stop;
jpayne@69 577 uint8_t device_id;
jpayne@69 578 uint8_t pad0[3];
jpayne@69 579 } xcb_input_get_device_motion_events_request_t;
jpayne@69 580
jpayne@69 581 /**
jpayne@69 582 * @brief xcb_input_get_device_motion_events_reply_t
jpayne@69 583 **/
jpayne@69 584 typedef struct xcb_input_get_device_motion_events_reply_t {
jpayne@69 585 uint8_t response_type;
jpayne@69 586 uint8_t xi_reply_type;
jpayne@69 587 uint16_t sequence;
jpayne@69 588 uint32_t length;
jpayne@69 589 uint32_t num_events;
jpayne@69 590 uint8_t num_axes;
jpayne@69 591 uint8_t device_mode;
jpayne@69 592 uint8_t pad0[18];
jpayne@69 593 } xcb_input_get_device_motion_events_reply_t;
jpayne@69 594
jpayne@69 595 /**
jpayne@69 596 * @brief xcb_input_change_keyboard_device_cookie_t
jpayne@69 597 **/
jpayne@69 598 typedef struct xcb_input_change_keyboard_device_cookie_t {
jpayne@69 599 unsigned int sequence;
jpayne@69 600 } xcb_input_change_keyboard_device_cookie_t;
jpayne@69 601
jpayne@69 602 /** Opcode for xcb_input_change_keyboard_device. */
jpayne@69 603 #define XCB_INPUT_CHANGE_KEYBOARD_DEVICE 11
jpayne@69 604
jpayne@69 605 /**
jpayne@69 606 * @brief xcb_input_change_keyboard_device_request_t
jpayne@69 607 **/
jpayne@69 608 typedef struct xcb_input_change_keyboard_device_request_t {
jpayne@69 609 uint8_t major_opcode;
jpayne@69 610 uint8_t minor_opcode;
jpayne@69 611 uint16_t length;
jpayne@69 612 uint8_t device_id;
jpayne@69 613 uint8_t pad0[3];
jpayne@69 614 } xcb_input_change_keyboard_device_request_t;
jpayne@69 615
jpayne@69 616 /**
jpayne@69 617 * @brief xcb_input_change_keyboard_device_reply_t
jpayne@69 618 **/
jpayne@69 619 typedef struct xcb_input_change_keyboard_device_reply_t {
jpayne@69 620 uint8_t response_type;
jpayne@69 621 uint8_t xi_reply_type;
jpayne@69 622 uint16_t sequence;
jpayne@69 623 uint32_t length;
jpayne@69 624 uint8_t status;
jpayne@69 625 uint8_t pad0[23];
jpayne@69 626 } xcb_input_change_keyboard_device_reply_t;
jpayne@69 627
jpayne@69 628 /**
jpayne@69 629 * @brief xcb_input_change_pointer_device_cookie_t
jpayne@69 630 **/
jpayne@69 631 typedef struct xcb_input_change_pointer_device_cookie_t {
jpayne@69 632 unsigned int sequence;
jpayne@69 633 } xcb_input_change_pointer_device_cookie_t;
jpayne@69 634
jpayne@69 635 /** Opcode for xcb_input_change_pointer_device. */
jpayne@69 636 #define XCB_INPUT_CHANGE_POINTER_DEVICE 12
jpayne@69 637
jpayne@69 638 /**
jpayne@69 639 * @brief xcb_input_change_pointer_device_request_t
jpayne@69 640 **/
jpayne@69 641 typedef struct xcb_input_change_pointer_device_request_t {
jpayne@69 642 uint8_t major_opcode;
jpayne@69 643 uint8_t minor_opcode;
jpayne@69 644 uint16_t length;
jpayne@69 645 uint8_t x_axis;
jpayne@69 646 uint8_t y_axis;
jpayne@69 647 uint8_t device_id;
jpayne@69 648 uint8_t pad0;
jpayne@69 649 } xcb_input_change_pointer_device_request_t;
jpayne@69 650
jpayne@69 651 /**
jpayne@69 652 * @brief xcb_input_change_pointer_device_reply_t
jpayne@69 653 **/
jpayne@69 654 typedef struct xcb_input_change_pointer_device_reply_t {
jpayne@69 655 uint8_t response_type;
jpayne@69 656 uint8_t xi_reply_type;
jpayne@69 657 uint16_t sequence;
jpayne@69 658 uint32_t length;
jpayne@69 659 uint8_t status;
jpayne@69 660 uint8_t pad0[23];
jpayne@69 661 } xcb_input_change_pointer_device_reply_t;
jpayne@69 662
jpayne@69 663 /**
jpayne@69 664 * @brief xcb_input_grab_device_cookie_t
jpayne@69 665 **/
jpayne@69 666 typedef struct xcb_input_grab_device_cookie_t {
jpayne@69 667 unsigned int sequence;
jpayne@69 668 } xcb_input_grab_device_cookie_t;
jpayne@69 669
jpayne@69 670 /** Opcode for xcb_input_grab_device. */
jpayne@69 671 #define XCB_INPUT_GRAB_DEVICE 13
jpayne@69 672
jpayne@69 673 /**
jpayne@69 674 * @brief xcb_input_grab_device_request_t
jpayne@69 675 **/
jpayne@69 676 typedef struct xcb_input_grab_device_request_t {
jpayne@69 677 uint8_t major_opcode;
jpayne@69 678 uint8_t minor_opcode;
jpayne@69 679 uint16_t length;
jpayne@69 680 xcb_window_t grab_window;
jpayne@69 681 xcb_timestamp_t time;
jpayne@69 682 uint16_t num_classes;
jpayne@69 683 uint8_t this_device_mode;
jpayne@69 684 uint8_t other_device_mode;
jpayne@69 685 uint8_t owner_events;
jpayne@69 686 uint8_t device_id;
jpayne@69 687 uint8_t pad0[2];
jpayne@69 688 } xcb_input_grab_device_request_t;
jpayne@69 689
jpayne@69 690 /**
jpayne@69 691 * @brief xcb_input_grab_device_reply_t
jpayne@69 692 **/
jpayne@69 693 typedef struct xcb_input_grab_device_reply_t {
jpayne@69 694 uint8_t response_type;
jpayne@69 695 uint8_t xi_reply_type;
jpayne@69 696 uint16_t sequence;
jpayne@69 697 uint32_t length;
jpayne@69 698 uint8_t status;
jpayne@69 699 uint8_t pad0[23];
jpayne@69 700 } xcb_input_grab_device_reply_t;
jpayne@69 701
jpayne@69 702 /** Opcode for xcb_input_ungrab_device. */
jpayne@69 703 #define XCB_INPUT_UNGRAB_DEVICE 14
jpayne@69 704
jpayne@69 705 /**
jpayne@69 706 * @brief xcb_input_ungrab_device_request_t
jpayne@69 707 **/
jpayne@69 708 typedef struct xcb_input_ungrab_device_request_t {
jpayne@69 709 uint8_t major_opcode;
jpayne@69 710 uint8_t minor_opcode;
jpayne@69 711 uint16_t length;
jpayne@69 712 xcb_timestamp_t time;
jpayne@69 713 uint8_t device_id;
jpayne@69 714 uint8_t pad0[3];
jpayne@69 715 } xcb_input_ungrab_device_request_t;
jpayne@69 716
jpayne@69 717 typedef enum xcb_input_modifier_device_t {
jpayne@69 718 XCB_INPUT_MODIFIER_DEVICE_USE_X_KEYBOARD = 255
jpayne@69 719 } xcb_input_modifier_device_t;
jpayne@69 720
jpayne@69 721 /** Opcode for xcb_input_grab_device_key. */
jpayne@69 722 #define XCB_INPUT_GRAB_DEVICE_KEY 15
jpayne@69 723
jpayne@69 724 /**
jpayne@69 725 * @brief xcb_input_grab_device_key_request_t
jpayne@69 726 **/
jpayne@69 727 typedef struct xcb_input_grab_device_key_request_t {
jpayne@69 728 uint8_t major_opcode;
jpayne@69 729 uint8_t minor_opcode;
jpayne@69 730 uint16_t length;
jpayne@69 731 xcb_window_t grab_window;
jpayne@69 732 uint16_t num_classes;
jpayne@69 733 uint16_t modifiers;
jpayne@69 734 uint8_t modifier_device;
jpayne@69 735 uint8_t grabbed_device;
jpayne@69 736 uint8_t key;
jpayne@69 737 uint8_t this_device_mode;
jpayne@69 738 uint8_t other_device_mode;
jpayne@69 739 uint8_t owner_events;
jpayne@69 740 uint8_t pad0[2];
jpayne@69 741 } xcb_input_grab_device_key_request_t;
jpayne@69 742
jpayne@69 743 /** Opcode for xcb_input_ungrab_device_key. */
jpayne@69 744 #define XCB_INPUT_UNGRAB_DEVICE_KEY 16
jpayne@69 745
jpayne@69 746 /**
jpayne@69 747 * @brief xcb_input_ungrab_device_key_request_t
jpayne@69 748 **/
jpayne@69 749 typedef struct xcb_input_ungrab_device_key_request_t {
jpayne@69 750 uint8_t major_opcode;
jpayne@69 751 uint8_t minor_opcode;
jpayne@69 752 uint16_t length;
jpayne@69 753 xcb_window_t grabWindow;
jpayne@69 754 uint16_t modifiers;
jpayne@69 755 uint8_t modifier_device;
jpayne@69 756 uint8_t key;
jpayne@69 757 uint8_t grabbed_device;
jpayne@69 758 } xcb_input_ungrab_device_key_request_t;
jpayne@69 759
jpayne@69 760 /** Opcode for xcb_input_grab_device_button. */
jpayne@69 761 #define XCB_INPUT_GRAB_DEVICE_BUTTON 17
jpayne@69 762
jpayne@69 763 /**
jpayne@69 764 * @brief xcb_input_grab_device_button_request_t
jpayne@69 765 **/
jpayne@69 766 typedef struct xcb_input_grab_device_button_request_t {
jpayne@69 767 uint8_t major_opcode;
jpayne@69 768 uint8_t minor_opcode;
jpayne@69 769 uint16_t length;
jpayne@69 770 xcb_window_t grab_window;
jpayne@69 771 uint8_t grabbed_device;
jpayne@69 772 uint8_t modifier_device;
jpayne@69 773 uint16_t num_classes;
jpayne@69 774 uint16_t modifiers;
jpayne@69 775 uint8_t this_device_mode;
jpayne@69 776 uint8_t other_device_mode;
jpayne@69 777 uint8_t button;
jpayne@69 778 uint8_t owner_events;
jpayne@69 779 uint8_t pad0[2];
jpayne@69 780 } xcb_input_grab_device_button_request_t;
jpayne@69 781
jpayne@69 782 /** Opcode for xcb_input_ungrab_device_button. */
jpayne@69 783 #define XCB_INPUT_UNGRAB_DEVICE_BUTTON 18
jpayne@69 784
jpayne@69 785 /**
jpayne@69 786 * @brief xcb_input_ungrab_device_button_request_t
jpayne@69 787 **/
jpayne@69 788 typedef struct xcb_input_ungrab_device_button_request_t {
jpayne@69 789 uint8_t major_opcode;
jpayne@69 790 uint8_t minor_opcode;
jpayne@69 791 uint16_t length;
jpayne@69 792 xcb_window_t grab_window;
jpayne@69 793 uint16_t modifiers;
jpayne@69 794 uint8_t modifier_device;
jpayne@69 795 uint8_t button;
jpayne@69 796 uint8_t grabbed_device;
jpayne@69 797 uint8_t pad0[3];
jpayne@69 798 } xcb_input_ungrab_device_button_request_t;
jpayne@69 799
jpayne@69 800 typedef enum xcb_input_device_input_mode_t {
jpayne@69 801 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_THIS_DEVICE = 0,
jpayne@69 802 XCB_INPUT_DEVICE_INPUT_MODE_SYNC_THIS_DEVICE = 1,
jpayne@69 803 XCB_INPUT_DEVICE_INPUT_MODE_REPLAY_THIS_DEVICE = 2,
jpayne@69 804 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_OTHER_DEVICES = 3,
jpayne@69 805 XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_ALL = 4,
jpayne@69 806 XCB_INPUT_DEVICE_INPUT_MODE_SYNC_ALL = 5
jpayne@69 807 } xcb_input_device_input_mode_t;
jpayne@69 808
jpayne@69 809 /** Opcode for xcb_input_allow_device_events. */
jpayne@69 810 #define XCB_INPUT_ALLOW_DEVICE_EVENTS 19
jpayne@69 811
jpayne@69 812 /**
jpayne@69 813 * @brief xcb_input_allow_device_events_request_t
jpayne@69 814 **/
jpayne@69 815 typedef struct xcb_input_allow_device_events_request_t {
jpayne@69 816 uint8_t major_opcode;
jpayne@69 817 uint8_t minor_opcode;
jpayne@69 818 uint16_t length;
jpayne@69 819 xcb_timestamp_t time;
jpayne@69 820 uint8_t mode;
jpayne@69 821 uint8_t device_id;
jpayne@69 822 uint8_t pad0[2];
jpayne@69 823 } xcb_input_allow_device_events_request_t;
jpayne@69 824
jpayne@69 825 /**
jpayne@69 826 * @brief xcb_input_get_device_focus_cookie_t
jpayne@69 827 **/
jpayne@69 828 typedef struct xcb_input_get_device_focus_cookie_t {
jpayne@69 829 unsigned int sequence;
jpayne@69 830 } xcb_input_get_device_focus_cookie_t;
jpayne@69 831
jpayne@69 832 /** Opcode for xcb_input_get_device_focus. */
jpayne@69 833 #define XCB_INPUT_GET_DEVICE_FOCUS 20
jpayne@69 834
jpayne@69 835 /**
jpayne@69 836 * @brief xcb_input_get_device_focus_request_t
jpayne@69 837 **/
jpayne@69 838 typedef struct xcb_input_get_device_focus_request_t {
jpayne@69 839 uint8_t major_opcode;
jpayne@69 840 uint8_t minor_opcode;
jpayne@69 841 uint16_t length;
jpayne@69 842 uint8_t device_id;
jpayne@69 843 uint8_t pad0[3];
jpayne@69 844 } xcb_input_get_device_focus_request_t;
jpayne@69 845
jpayne@69 846 /**
jpayne@69 847 * @brief xcb_input_get_device_focus_reply_t
jpayne@69 848 **/
jpayne@69 849 typedef struct xcb_input_get_device_focus_reply_t {
jpayne@69 850 uint8_t response_type;
jpayne@69 851 uint8_t xi_reply_type;
jpayne@69 852 uint16_t sequence;
jpayne@69 853 uint32_t length;
jpayne@69 854 xcb_window_t focus;
jpayne@69 855 xcb_timestamp_t time;
jpayne@69 856 uint8_t revert_to;
jpayne@69 857 uint8_t pad0[15];
jpayne@69 858 } xcb_input_get_device_focus_reply_t;
jpayne@69 859
jpayne@69 860 /** Opcode for xcb_input_set_device_focus. */
jpayne@69 861 #define XCB_INPUT_SET_DEVICE_FOCUS 21
jpayne@69 862
jpayne@69 863 /**
jpayne@69 864 * @brief xcb_input_set_device_focus_request_t
jpayne@69 865 **/
jpayne@69 866 typedef struct xcb_input_set_device_focus_request_t {
jpayne@69 867 uint8_t major_opcode;
jpayne@69 868 uint8_t minor_opcode;
jpayne@69 869 uint16_t length;
jpayne@69 870 xcb_window_t focus;
jpayne@69 871 xcb_timestamp_t time;
jpayne@69 872 uint8_t revert_to;
jpayne@69 873 uint8_t device_id;
jpayne@69 874 uint8_t pad0[2];
jpayne@69 875 } xcb_input_set_device_focus_request_t;
jpayne@69 876
jpayne@69 877 typedef enum xcb_input_feedback_class_t {
jpayne@69 878 XCB_INPUT_FEEDBACK_CLASS_KEYBOARD = 0,
jpayne@69 879 XCB_INPUT_FEEDBACK_CLASS_POINTER = 1,
jpayne@69 880 XCB_INPUT_FEEDBACK_CLASS_STRING = 2,
jpayne@69 881 XCB_INPUT_FEEDBACK_CLASS_INTEGER = 3,
jpayne@69 882 XCB_INPUT_FEEDBACK_CLASS_LED = 4,
jpayne@69 883 XCB_INPUT_FEEDBACK_CLASS_BELL = 5
jpayne@69 884 } xcb_input_feedback_class_t;
jpayne@69 885
jpayne@69 886 /**
jpayne@69 887 * @brief xcb_input_kbd_feedback_state_t
jpayne@69 888 **/
jpayne@69 889 typedef struct xcb_input_kbd_feedback_state_t {
jpayne@69 890 uint8_t class_id;
jpayne@69 891 uint8_t feedback_id;
jpayne@69 892 uint16_t len;
jpayne@69 893 uint16_t pitch;
jpayne@69 894 uint16_t duration;
jpayne@69 895 uint32_t led_mask;
jpayne@69 896 uint32_t led_values;
jpayne@69 897 uint8_t global_auto_repeat;
jpayne@69 898 uint8_t click;
jpayne@69 899 uint8_t percent;
jpayne@69 900 uint8_t pad0;
jpayne@69 901 uint8_t auto_repeats[32];
jpayne@69 902 } xcb_input_kbd_feedback_state_t;
jpayne@69 903
jpayne@69 904 /**
jpayne@69 905 * @brief xcb_input_kbd_feedback_state_iterator_t
jpayne@69 906 **/
jpayne@69 907 typedef struct xcb_input_kbd_feedback_state_iterator_t {
jpayne@69 908 xcb_input_kbd_feedback_state_t *data;
jpayne@69 909 int rem;
jpayne@69 910 int index;
jpayne@69 911 } xcb_input_kbd_feedback_state_iterator_t;
jpayne@69 912
jpayne@69 913 /**
jpayne@69 914 * @brief xcb_input_ptr_feedback_state_t
jpayne@69 915 **/
jpayne@69 916 typedef struct xcb_input_ptr_feedback_state_t {
jpayne@69 917 uint8_t class_id;
jpayne@69 918 uint8_t feedback_id;
jpayne@69 919 uint16_t len;
jpayne@69 920 uint8_t pad0[2];
jpayne@69 921 uint16_t accel_num;
jpayne@69 922 uint16_t accel_denom;
jpayne@69 923 uint16_t threshold;
jpayne@69 924 } xcb_input_ptr_feedback_state_t;
jpayne@69 925
jpayne@69 926 /**
jpayne@69 927 * @brief xcb_input_ptr_feedback_state_iterator_t
jpayne@69 928 **/
jpayne@69 929 typedef struct xcb_input_ptr_feedback_state_iterator_t {
jpayne@69 930 xcb_input_ptr_feedback_state_t *data;
jpayne@69 931 int rem;
jpayne@69 932 int index;
jpayne@69 933 } xcb_input_ptr_feedback_state_iterator_t;
jpayne@69 934
jpayne@69 935 /**
jpayne@69 936 * @brief xcb_input_integer_feedback_state_t
jpayne@69 937 **/
jpayne@69 938 typedef struct xcb_input_integer_feedback_state_t {
jpayne@69 939 uint8_t class_id;
jpayne@69 940 uint8_t feedback_id;
jpayne@69 941 uint16_t len;
jpayne@69 942 uint32_t resolution;
jpayne@69 943 int32_t min_value;
jpayne@69 944 int32_t max_value;
jpayne@69 945 } xcb_input_integer_feedback_state_t;
jpayne@69 946
jpayne@69 947 /**
jpayne@69 948 * @brief xcb_input_integer_feedback_state_iterator_t
jpayne@69 949 **/
jpayne@69 950 typedef struct xcb_input_integer_feedback_state_iterator_t {
jpayne@69 951 xcb_input_integer_feedback_state_t *data;
jpayne@69 952 int rem;
jpayne@69 953 int index;
jpayne@69 954 } xcb_input_integer_feedback_state_iterator_t;
jpayne@69 955
jpayne@69 956 /**
jpayne@69 957 * @brief xcb_input_string_feedback_state_t
jpayne@69 958 **/
jpayne@69 959 typedef struct xcb_input_string_feedback_state_t {
jpayne@69 960 uint8_t class_id;
jpayne@69 961 uint8_t feedback_id;
jpayne@69 962 uint16_t len;
jpayne@69 963 uint16_t max_symbols;
jpayne@69 964 uint16_t num_keysyms;
jpayne@69 965 } xcb_input_string_feedback_state_t;
jpayne@69 966
jpayne@69 967 /**
jpayne@69 968 * @brief xcb_input_string_feedback_state_iterator_t
jpayne@69 969 **/
jpayne@69 970 typedef struct xcb_input_string_feedback_state_iterator_t {
jpayne@69 971 xcb_input_string_feedback_state_t *data;
jpayne@69 972 int rem;
jpayne@69 973 int index;
jpayne@69 974 } xcb_input_string_feedback_state_iterator_t;
jpayne@69 975
jpayne@69 976 /**
jpayne@69 977 * @brief xcb_input_bell_feedback_state_t
jpayne@69 978 **/
jpayne@69 979 typedef struct xcb_input_bell_feedback_state_t {
jpayne@69 980 uint8_t class_id;
jpayne@69 981 uint8_t feedback_id;
jpayne@69 982 uint16_t len;
jpayne@69 983 uint8_t percent;
jpayne@69 984 uint8_t pad0[3];
jpayne@69 985 uint16_t pitch;
jpayne@69 986 uint16_t duration;
jpayne@69 987 } xcb_input_bell_feedback_state_t;
jpayne@69 988
jpayne@69 989 /**
jpayne@69 990 * @brief xcb_input_bell_feedback_state_iterator_t
jpayne@69 991 **/
jpayne@69 992 typedef struct xcb_input_bell_feedback_state_iterator_t {
jpayne@69 993 xcb_input_bell_feedback_state_t *data;
jpayne@69 994 int rem;
jpayne@69 995 int index;
jpayne@69 996 } xcb_input_bell_feedback_state_iterator_t;
jpayne@69 997
jpayne@69 998 /**
jpayne@69 999 * @brief xcb_input_led_feedback_state_t
jpayne@69 1000 **/
jpayne@69 1001 typedef struct xcb_input_led_feedback_state_t {
jpayne@69 1002 uint8_t class_id;
jpayne@69 1003 uint8_t feedback_id;
jpayne@69 1004 uint16_t len;
jpayne@69 1005 uint32_t led_mask;
jpayne@69 1006 uint32_t led_values;
jpayne@69 1007 } xcb_input_led_feedback_state_t;
jpayne@69 1008
jpayne@69 1009 /**
jpayne@69 1010 * @brief xcb_input_led_feedback_state_iterator_t
jpayne@69 1011 **/
jpayne@69 1012 typedef struct xcb_input_led_feedback_state_iterator_t {
jpayne@69 1013 xcb_input_led_feedback_state_t *data;
jpayne@69 1014 int rem;
jpayne@69 1015 int index;
jpayne@69 1016 } xcb_input_led_feedback_state_iterator_t;
jpayne@69 1017
jpayne@69 1018 /**
jpayne@69 1019 * @brief xcb_input_feedback_state_data_t
jpayne@69 1020 **/
jpayne@69 1021 typedef struct xcb_input_feedback_state_data_t {
jpayne@69 1022 struct {
jpayne@69 1023 uint16_t pitch;
jpayne@69 1024 uint16_t duration;
jpayne@69 1025 uint32_t led_mask;
jpayne@69 1026 uint32_t led_values;
jpayne@69 1027 uint8_t global_auto_repeat;
jpayne@69 1028 uint8_t click;
jpayne@69 1029 uint8_t percent;
jpayne@69 1030 uint8_t pad0;
jpayne@69 1031 uint8_t auto_repeats[32];
jpayne@69 1032 } keyboard;
jpayne@69 1033 struct {
jpayne@69 1034 uint8_t pad1[2];
jpayne@69 1035 uint16_t accel_num;
jpayne@69 1036 uint16_t accel_denom;
jpayne@69 1037 uint16_t threshold;
jpayne@69 1038 } pointer;
jpayne@69 1039 struct {
jpayne@69 1040 uint16_t max_symbols;
jpayne@69 1041 uint16_t num_keysyms;
jpayne@69 1042 xcb_keysym_t *keysyms;
jpayne@69 1043 } string;
jpayne@69 1044 struct {
jpayne@69 1045 uint32_t resolution;
jpayne@69 1046 int32_t min_value;
jpayne@69 1047 int32_t max_value;
jpayne@69 1048 } integer;
jpayne@69 1049 struct {
jpayne@69 1050 uint32_t led_mask;
jpayne@69 1051 uint32_t led_values;
jpayne@69 1052 } led;
jpayne@69 1053 struct {
jpayne@69 1054 uint8_t percent;
jpayne@69 1055 uint8_t pad2[3];
jpayne@69 1056 uint16_t pitch;
jpayne@69 1057 uint16_t duration;
jpayne@69 1058 } bell;
jpayne@69 1059 } xcb_input_feedback_state_data_t;
jpayne@69 1060
jpayne@69 1061 /**
jpayne@69 1062 * @brief xcb_input_feedback_state_t
jpayne@69 1063 **/
jpayne@69 1064 typedef struct xcb_input_feedback_state_t {
jpayne@69 1065 uint8_t class_id;
jpayne@69 1066 uint8_t feedback_id;
jpayne@69 1067 uint16_t len;
jpayne@69 1068 } xcb_input_feedback_state_t;
jpayne@69 1069
jpayne@69 1070 void *
jpayne@69 1071 xcb_input_feedback_state_data (const xcb_input_feedback_state_t *R);
jpayne@69 1072
jpayne@69 1073 /**
jpayne@69 1074 * @brief xcb_input_feedback_state_iterator_t
jpayne@69 1075 **/
jpayne@69 1076 typedef struct xcb_input_feedback_state_iterator_t {
jpayne@69 1077 xcb_input_feedback_state_t *data;
jpayne@69 1078 int rem;
jpayne@69 1079 int index;
jpayne@69 1080 } xcb_input_feedback_state_iterator_t;
jpayne@69 1081
jpayne@69 1082 /**
jpayne@69 1083 * @brief xcb_input_get_feedback_control_cookie_t
jpayne@69 1084 **/
jpayne@69 1085 typedef struct xcb_input_get_feedback_control_cookie_t {
jpayne@69 1086 unsigned int sequence;
jpayne@69 1087 } xcb_input_get_feedback_control_cookie_t;
jpayne@69 1088
jpayne@69 1089 /** Opcode for xcb_input_get_feedback_control. */
jpayne@69 1090 #define XCB_INPUT_GET_FEEDBACK_CONTROL 22
jpayne@69 1091
jpayne@69 1092 /**
jpayne@69 1093 * @brief xcb_input_get_feedback_control_request_t
jpayne@69 1094 **/
jpayne@69 1095 typedef struct xcb_input_get_feedback_control_request_t {
jpayne@69 1096 uint8_t major_opcode;
jpayne@69 1097 uint8_t minor_opcode;
jpayne@69 1098 uint16_t length;
jpayne@69 1099 uint8_t device_id;
jpayne@69 1100 uint8_t pad0[3];
jpayne@69 1101 } xcb_input_get_feedback_control_request_t;
jpayne@69 1102
jpayne@69 1103 /**
jpayne@69 1104 * @brief xcb_input_get_feedback_control_reply_t
jpayne@69 1105 **/
jpayne@69 1106 typedef struct xcb_input_get_feedback_control_reply_t {
jpayne@69 1107 uint8_t response_type;
jpayne@69 1108 uint8_t xi_reply_type;
jpayne@69 1109 uint16_t sequence;
jpayne@69 1110 uint32_t length;
jpayne@69 1111 uint16_t num_feedbacks;
jpayne@69 1112 uint8_t pad0[22];
jpayne@69 1113 } xcb_input_get_feedback_control_reply_t;
jpayne@69 1114
jpayne@69 1115 /**
jpayne@69 1116 * @brief xcb_input_kbd_feedback_ctl_t
jpayne@69 1117 **/
jpayne@69 1118 typedef struct xcb_input_kbd_feedback_ctl_t {
jpayne@69 1119 uint8_t class_id;
jpayne@69 1120 uint8_t feedback_id;
jpayne@69 1121 uint16_t len;
jpayne@69 1122 xcb_input_key_code_t key;
jpayne@69 1123 uint8_t auto_repeat_mode;
jpayne@69 1124 int8_t key_click_percent;
jpayne@69 1125 int8_t bell_percent;
jpayne@69 1126 int16_t bell_pitch;
jpayne@69 1127 int16_t bell_duration;
jpayne@69 1128 uint32_t led_mask;
jpayne@69 1129 uint32_t led_values;
jpayne@69 1130 } xcb_input_kbd_feedback_ctl_t;
jpayne@69 1131
jpayne@69 1132 /**
jpayne@69 1133 * @brief xcb_input_kbd_feedback_ctl_iterator_t
jpayne@69 1134 **/
jpayne@69 1135 typedef struct xcb_input_kbd_feedback_ctl_iterator_t {
jpayne@69 1136 xcb_input_kbd_feedback_ctl_t *data;
jpayne@69 1137 int rem;
jpayne@69 1138 int index;
jpayne@69 1139 } xcb_input_kbd_feedback_ctl_iterator_t;
jpayne@69 1140
jpayne@69 1141 /**
jpayne@69 1142 * @brief xcb_input_ptr_feedback_ctl_t
jpayne@69 1143 **/
jpayne@69 1144 typedef struct xcb_input_ptr_feedback_ctl_t {
jpayne@69 1145 uint8_t class_id;
jpayne@69 1146 uint8_t feedback_id;
jpayne@69 1147 uint16_t len;
jpayne@69 1148 uint8_t pad0[2];
jpayne@69 1149 int16_t num;
jpayne@69 1150 int16_t denom;
jpayne@69 1151 int16_t threshold;
jpayne@69 1152 } xcb_input_ptr_feedback_ctl_t;
jpayne@69 1153
jpayne@69 1154 /**
jpayne@69 1155 * @brief xcb_input_ptr_feedback_ctl_iterator_t
jpayne@69 1156 **/
jpayne@69 1157 typedef struct xcb_input_ptr_feedback_ctl_iterator_t {
jpayne@69 1158 xcb_input_ptr_feedback_ctl_t *data;
jpayne@69 1159 int rem;
jpayne@69 1160 int index;
jpayne@69 1161 } xcb_input_ptr_feedback_ctl_iterator_t;
jpayne@69 1162
jpayne@69 1163 /**
jpayne@69 1164 * @brief xcb_input_integer_feedback_ctl_t
jpayne@69 1165 **/
jpayne@69 1166 typedef struct xcb_input_integer_feedback_ctl_t {
jpayne@69 1167 uint8_t class_id;
jpayne@69 1168 uint8_t feedback_id;
jpayne@69 1169 uint16_t len;
jpayne@69 1170 int32_t int_to_display;
jpayne@69 1171 } xcb_input_integer_feedback_ctl_t;
jpayne@69 1172
jpayne@69 1173 /**
jpayne@69 1174 * @brief xcb_input_integer_feedback_ctl_iterator_t
jpayne@69 1175 **/
jpayne@69 1176 typedef struct xcb_input_integer_feedback_ctl_iterator_t {
jpayne@69 1177 xcb_input_integer_feedback_ctl_t *data;
jpayne@69 1178 int rem;
jpayne@69 1179 int index;
jpayne@69 1180 } xcb_input_integer_feedback_ctl_iterator_t;
jpayne@69 1181
jpayne@69 1182 /**
jpayne@69 1183 * @brief xcb_input_string_feedback_ctl_t
jpayne@69 1184 **/
jpayne@69 1185 typedef struct xcb_input_string_feedback_ctl_t {
jpayne@69 1186 uint8_t class_id;
jpayne@69 1187 uint8_t feedback_id;
jpayne@69 1188 uint16_t len;
jpayne@69 1189 uint8_t pad0[2];
jpayne@69 1190 uint16_t num_keysyms;
jpayne@69 1191 } xcb_input_string_feedback_ctl_t;
jpayne@69 1192
jpayne@69 1193 /**
jpayne@69 1194 * @brief xcb_input_string_feedback_ctl_iterator_t
jpayne@69 1195 **/
jpayne@69 1196 typedef struct xcb_input_string_feedback_ctl_iterator_t {
jpayne@69 1197 xcb_input_string_feedback_ctl_t *data;
jpayne@69 1198 int rem;
jpayne@69 1199 int index;
jpayne@69 1200 } xcb_input_string_feedback_ctl_iterator_t;
jpayne@69 1201
jpayne@69 1202 /**
jpayne@69 1203 * @brief xcb_input_bell_feedback_ctl_t
jpayne@69 1204 **/
jpayne@69 1205 typedef struct xcb_input_bell_feedback_ctl_t {
jpayne@69 1206 uint8_t class_id;
jpayne@69 1207 uint8_t feedback_id;
jpayne@69 1208 uint16_t len;
jpayne@69 1209 int8_t percent;
jpayne@69 1210 uint8_t pad0[3];
jpayne@69 1211 int16_t pitch;
jpayne@69 1212 int16_t duration;
jpayne@69 1213 } xcb_input_bell_feedback_ctl_t;
jpayne@69 1214
jpayne@69 1215 /**
jpayne@69 1216 * @brief xcb_input_bell_feedback_ctl_iterator_t
jpayne@69 1217 **/
jpayne@69 1218 typedef struct xcb_input_bell_feedback_ctl_iterator_t {
jpayne@69 1219 xcb_input_bell_feedback_ctl_t *data;
jpayne@69 1220 int rem;
jpayne@69 1221 int index;
jpayne@69 1222 } xcb_input_bell_feedback_ctl_iterator_t;
jpayne@69 1223
jpayne@69 1224 /**
jpayne@69 1225 * @brief xcb_input_led_feedback_ctl_t
jpayne@69 1226 **/
jpayne@69 1227 typedef struct xcb_input_led_feedback_ctl_t {
jpayne@69 1228 uint8_t class_id;
jpayne@69 1229 uint8_t feedback_id;
jpayne@69 1230 uint16_t len;
jpayne@69 1231 uint32_t led_mask;
jpayne@69 1232 uint32_t led_values;
jpayne@69 1233 } xcb_input_led_feedback_ctl_t;
jpayne@69 1234
jpayne@69 1235 /**
jpayne@69 1236 * @brief xcb_input_led_feedback_ctl_iterator_t
jpayne@69 1237 **/
jpayne@69 1238 typedef struct xcb_input_led_feedback_ctl_iterator_t {
jpayne@69 1239 xcb_input_led_feedback_ctl_t *data;
jpayne@69 1240 int rem;
jpayne@69 1241 int index;
jpayne@69 1242 } xcb_input_led_feedback_ctl_iterator_t;
jpayne@69 1243
jpayne@69 1244 /**
jpayne@69 1245 * @brief xcb_input_feedback_ctl_data_t
jpayne@69 1246 **/
jpayne@69 1247 typedef struct xcb_input_feedback_ctl_data_t {
jpayne@69 1248 struct {
jpayne@69 1249 xcb_input_key_code_t key;
jpayne@69 1250 uint8_t auto_repeat_mode;
jpayne@69 1251 int8_t key_click_percent;
jpayne@69 1252 int8_t bell_percent;
jpayne@69 1253 int16_t bell_pitch;
jpayne@69 1254 int16_t bell_duration;
jpayne@69 1255 uint32_t led_mask;
jpayne@69 1256 uint32_t led_values;
jpayne@69 1257 } keyboard;
jpayne@69 1258 struct {
jpayne@69 1259 uint8_t pad0[2];
jpayne@69 1260 int16_t num;
jpayne@69 1261 int16_t denom;
jpayne@69 1262 int16_t threshold;
jpayne@69 1263 } pointer;
jpayne@69 1264 struct {
jpayne@69 1265 uint8_t pad1[2];
jpayne@69 1266 uint16_t num_keysyms;
jpayne@69 1267 xcb_keysym_t *keysyms;
jpayne@69 1268 } string;
jpayne@69 1269 struct {
jpayne@69 1270 int32_t int_to_display;
jpayne@69 1271 } integer;
jpayne@69 1272 struct {
jpayne@69 1273 uint32_t led_mask;
jpayne@69 1274 uint32_t led_values;
jpayne@69 1275 } led;
jpayne@69 1276 struct {
jpayne@69 1277 int8_t percent;
jpayne@69 1278 uint8_t pad2[3];
jpayne@69 1279 int16_t pitch;
jpayne@69 1280 int16_t duration;
jpayne@69 1281 } bell;
jpayne@69 1282 } xcb_input_feedback_ctl_data_t;
jpayne@69 1283
jpayne@69 1284 /**
jpayne@69 1285 * @brief xcb_input_feedback_ctl_t
jpayne@69 1286 **/
jpayne@69 1287 typedef struct xcb_input_feedback_ctl_t {
jpayne@69 1288 uint8_t class_id;
jpayne@69 1289 uint8_t feedback_id;
jpayne@69 1290 uint16_t len;
jpayne@69 1291 } xcb_input_feedback_ctl_t;
jpayne@69 1292
jpayne@69 1293 void *
jpayne@69 1294 xcb_input_feedback_ctl_data (const xcb_input_feedback_ctl_t *R);
jpayne@69 1295
jpayne@69 1296 /**
jpayne@69 1297 * @brief xcb_input_feedback_ctl_iterator_t
jpayne@69 1298 **/
jpayne@69 1299 typedef struct xcb_input_feedback_ctl_iterator_t {
jpayne@69 1300 xcb_input_feedback_ctl_t *data;
jpayne@69 1301 int rem;
jpayne@69 1302 int index;
jpayne@69 1303 } xcb_input_feedback_ctl_iterator_t;
jpayne@69 1304
jpayne@69 1305 typedef enum xcb_input_change_feedback_control_mask_t {
jpayne@69 1306 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_KEY_CLICK_PERCENT = 1,
jpayne@69 1307 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_PERCENT = 2,
jpayne@69 1308 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_PITCH = 4,
jpayne@69 1309 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_DURATION = 8,
jpayne@69 1310 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_LED = 16,
jpayne@69 1311 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_LED_MODE = 32,
jpayne@69 1312 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_KEY = 64,
jpayne@69 1313 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_AUTO_REPEAT_MODE = 128,
jpayne@69 1314 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_STRING = 1,
jpayne@69 1315 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_INTEGER = 1,
jpayne@69 1316 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_ACCEL_NUM = 1,
jpayne@69 1317 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_ACCEL_DENOM = 2,
jpayne@69 1318 XCB_INPUT_CHANGE_FEEDBACK_CONTROL_MASK_THRESHOLD = 4
jpayne@69 1319 } xcb_input_change_feedback_control_mask_t;
jpayne@69 1320
jpayne@69 1321 /** Opcode for xcb_input_change_feedback_control. */
jpayne@69 1322 #define XCB_INPUT_CHANGE_FEEDBACK_CONTROL 23
jpayne@69 1323
jpayne@69 1324 /**
jpayne@69 1325 * @brief xcb_input_change_feedback_control_request_t
jpayne@69 1326 **/
jpayne@69 1327 typedef struct xcb_input_change_feedback_control_request_t {
jpayne@69 1328 uint8_t major_opcode;
jpayne@69 1329 uint8_t minor_opcode;
jpayne@69 1330 uint16_t length;
jpayne@69 1331 uint32_t mask;
jpayne@69 1332 uint8_t device_id;
jpayne@69 1333 uint8_t feedback_id;
jpayne@69 1334 uint8_t pad0[2];
jpayne@69 1335 } xcb_input_change_feedback_control_request_t;
jpayne@69 1336
jpayne@69 1337 /**
jpayne@69 1338 * @brief xcb_input_get_device_key_mapping_cookie_t
jpayne@69 1339 **/
jpayne@69 1340 typedef struct xcb_input_get_device_key_mapping_cookie_t {
jpayne@69 1341 unsigned int sequence;
jpayne@69 1342 } xcb_input_get_device_key_mapping_cookie_t;
jpayne@69 1343
jpayne@69 1344 /** Opcode for xcb_input_get_device_key_mapping. */
jpayne@69 1345 #define XCB_INPUT_GET_DEVICE_KEY_MAPPING 24
jpayne@69 1346
jpayne@69 1347 /**
jpayne@69 1348 * @brief xcb_input_get_device_key_mapping_request_t
jpayne@69 1349 **/
jpayne@69 1350 typedef struct xcb_input_get_device_key_mapping_request_t {
jpayne@69 1351 uint8_t major_opcode;
jpayne@69 1352 uint8_t minor_opcode;
jpayne@69 1353 uint16_t length;
jpayne@69 1354 uint8_t device_id;
jpayne@69 1355 xcb_input_key_code_t first_keycode;
jpayne@69 1356 uint8_t count;
jpayne@69 1357 uint8_t pad0;
jpayne@69 1358 } xcb_input_get_device_key_mapping_request_t;
jpayne@69 1359
jpayne@69 1360 /**
jpayne@69 1361 * @brief xcb_input_get_device_key_mapping_reply_t
jpayne@69 1362 **/
jpayne@69 1363 typedef struct xcb_input_get_device_key_mapping_reply_t {
jpayne@69 1364 uint8_t response_type;
jpayne@69 1365 uint8_t xi_reply_type;
jpayne@69 1366 uint16_t sequence;
jpayne@69 1367 uint32_t length;
jpayne@69 1368 uint8_t keysyms_per_keycode;
jpayne@69 1369 uint8_t pad0[23];
jpayne@69 1370 } xcb_input_get_device_key_mapping_reply_t;
jpayne@69 1371
jpayne@69 1372 /** Opcode for xcb_input_change_device_key_mapping. */
jpayne@69 1373 #define XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING 25
jpayne@69 1374
jpayne@69 1375 /**
jpayne@69 1376 * @brief xcb_input_change_device_key_mapping_request_t
jpayne@69 1377 **/
jpayne@69 1378 typedef struct xcb_input_change_device_key_mapping_request_t {
jpayne@69 1379 uint8_t major_opcode;
jpayne@69 1380 uint8_t minor_opcode;
jpayne@69 1381 uint16_t length;
jpayne@69 1382 uint8_t device_id;
jpayne@69 1383 xcb_input_key_code_t first_keycode;
jpayne@69 1384 uint8_t keysyms_per_keycode;
jpayne@69 1385 uint8_t keycode_count;
jpayne@69 1386 } xcb_input_change_device_key_mapping_request_t;
jpayne@69 1387
jpayne@69 1388 /**
jpayne@69 1389 * @brief xcb_input_get_device_modifier_mapping_cookie_t
jpayne@69 1390 **/
jpayne@69 1391 typedef struct xcb_input_get_device_modifier_mapping_cookie_t {
jpayne@69 1392 unsigned int sequence;
jpayne@69 1393 } xcb_input_get_device_modifier_mapping_cookie_t;
jpayne@69 1394
jpayne@69 1395 /** Opcode for xcb_input_get_device_modifier_mapping. */
jpayne@69 1396 #define XCB_INPUT_GET_DEVICE_MODIFIER_MAPPING 26
jpayne@69 1397
jpayne@69 1398 /**
jpayne@69 1399 * @brief xcb_input_get_device_modifier_mapping_request_t
jpayne@69 1400 **/
jpayne@69 1401 typedef struct xcb_input_get_device_modifier_mapping_request_t {
jpayne@69 1402 uint8_t major_opcode;
jpayne@69 1403 uint8_t minor_opcode;
jpayne@69 1404 uint16_t length;
jpayne@69 1405 uint8_t device_id;
jpayne@69 1406 uint8_t pad0[3];
jpayne@69 1407 } xcb_input_get_device_modifier_mapping_request_t;
jpayne@69 1408
jpayne@69 1409 /**
jpayne@69 1410 * @brief xcb_input_get_device_modifier_mapping_reply_t
jpayne@69 1411 **/
jpayne@69 1412 typedef struct xcb_input_get_device_modifier_mapping_reply_t {
jpayne@69 1413 uint8_t response_type;
jpayne@69 1414 uint8_t xi_reply_type;
jpayne@69 1415 uint16_t sequence;
jpayne@69 1416 uint32_t length;
jpayne@69 1417 uint8_t keycodes_per_modifier;
jpayne@69 1418 uint8_t pad0[23];
jpayne@69 1419 } xcb_input_get_device_modifier_mapping_reply_t;
jpayne@69 1420
jpayne@69 1421 /**
jpayne@69 1422 * @brief xcb_input_set_device_modifier_mapping_cookie_t
jpayne@69 1423 **/
jpayne@69 1424 typedef struct xcb_input_set_device_modifier_mapping_cookie_t {
jpayne@69 1425 unsigned int sequence;
jpayne@69 1426 } xcb_input_set_device_modifier_mapping_cookie_t;
jpayne@69 1427
jpayne@69 1428 /** Opcode for xcb_input_set_device_modifier_mapping. */
jpayne@69 1429 #define XCB_INPUT_SET_DEVICE_MODIFIER_MAPPING 27
jpayne@69 1430
jpayne@69 1431 /**
jpayne@69 1432 * @brief xcb_input_set_device_modifier_mapping_request_t
jpayne@69 1433 **/
jpayne@69 1434 typedef struct xcb_input_set_device_modifier_mapping_request_t {
jpayne@69 1435 uint8_t major_opcode;
jpayne@69 1436 uint8_t minor_opcode;
jpayne@69 1437 uint16_t length;
jpayne@69 1438 uint8_t device_id;
jpayne@69 1439 uint8_t keycodes_per_modifier;
jpayne@69 1440 uint8_t pad0[2];
jpayne@69 1441 } xcb_input_set_device_modifier_mapping_request_t;
jpayne@69 1442
jpayne@69 1443 /**
jpayne@69 1444 * @brief xcb_input_set_device_modifier_mapping_reply_t
jpayne@69 1445 **/
jpayne@69 1446 typedef struct xcb_input_set_device_modifier_mapping_reply_t {
jpayne@69 1447 uint8_t response_type;
jpayne@69 1448 uint8_t xi_reply_type;
jpayne@69 1449 uint16_t sequence;
jpayne@69 1450 uint32_t length;
jpayne@69 1451 uint8_t status;
jpayne@69 1452 uint8_t pad0[23];
jpayne@69 1453 } xcb_input_set_device_modifier_mapping_reply_t;
jpayne@69 1454
jpayne@69 1455 /**
jpayne@69 1456 * @brief xcb_input_get_device_button_mapping_cookie_t
jpayne@69 1457 **/
jpayne@69 1458 typedef struct xcb_input_get_device_button_mapping_cookie_t {
jpayne@69 1459 unsigned int sequence;
jpayne@69 1460 } xcb_input_get_device_button_mapping_cookie_t;
jpayne@69 1461
jpayne@69 1462 /** Opcode for xcb_input_get_device_button_mapping. */
jpayne@69 1463 #define XCB_INPUT_GET_DEVICE_BUTTON_MAPPING 28
jpayne@69 1464
jpayne@69 1465 /**
jpayne@69 1466 * @brief xcb_input_get_device_button_mapping_request_t
jpayne@69 1467 **/
jpayne@69 1468 typedef struct xcb_input_get_device_button_mapping_request_t {
jpayne@69 1469 uint8_t major_opcode;
jpayne@69 1470 uint8_t minor_opcode;
jpayne@69 1471 uint16_t length;
jpayne@69 1472 uint8_t device_id;
jpayne@69 1473 uint8_t pad0[3];
jpayne@69 1474 } xcb_input_get_device_button_mapping_request_t;
jpayne@69 1475
jpayne@69 1476 /**
jpayne@69 1477 * @brief xcb_input_get_device_button_mapping_reply_t
jpayne@69 1478 **/
jpayne@69 1479 typedef struct xcb_input_get_device_button_mapping_reply_t {
jpayne@69 1480 uint8_t response_type;
jpayne@69 1481 uint8_t xi_reply_type;
jpayne@69 1482 uint16_t sequence;
jpayne@69 1483 uint32_t length;
jpayne@69 1484 uint8_t map_size;
jpayne@69 1485 uint8_t pad0[23];
jpayne@69 1486 } xcb_input_get_device_button_mapping_reply_t;
jpayne@69 1487
jpayne@69 1488 /**
jpayne@69 1489 * @brief xcb_input_set_device_button_mapping_cookie_t
jpayne@69 1490 **/
jpayne@69 1491 typedef struct xcb_input_set_device_button_mapping_cookie_t {
jpayne@69 1492 unsigned int sequence;
jpayne@69 1493 } xcb_input_set_device_button_mapping_cookie_t;
jpayne@69 1494
jpayne@69 1495 /** Opcode for xcb_input_set_device_button_mapping. */
jpayne@69 1496 #define XCB_INPUT_SET_DEVICE_BUTTON_MAPPING 29
jpayne@69 1497
jpayne@69 1498 /**
jpayne@69 1499 * @brief xcb_input_set_device_button_mapping_request_t
jpayne@69 1500 **/
jpayne@69 1501 typedef struct xcb_input_set_device_button_mapping_request_t {
jpayne@69 1502 uint8_t major_opcode;
jpayne@69 1503 uint8_t minor_opcode;
jpayne@69 1504 uint16_t length;
jpayne@69 1505 uint8_t device_id;
jpayne@69 1506 uint8_t map_size;
jpayne@69 1507 uint8_t pad0[2];
jpayne@69 1508 } xcb_input_set_device_button_mapping_request_t;
jpayne@69 1509
jpayne@69 1510 /**
jpayne@69 1511 * @brief xcb_input_set_device_button_mapping_reply_t
jpayne@69 1512 **/
jpayne@69 1513 typedef struct xcb_input_set_device_button_mapping_reply_t {
jpayne@69 1514 uint8_t response_type;
jpayne@69 1515 uint8_t xi_reply_type;
jpayne@69 1516 uint16_t sequence;
jpayne@69 1517 uint32_t length;
jpayne@69 1518 uint8_t status;
jpayne@69 1519 uint8_t pad0[23];
jpayne@69 1520 } xcb_input_set_device_button_mapping_reply_t;
jpayne@69 1521
jpayne@69 1522 /**
jpayne@69 1523 * @brief xcb_input_key_state_t
jpayne@69 1524 **/
jpayne@69 1525 typedef struct xcb_input_key_state_t {
jpayne@69 1526 uint8_t class_id;
jpayne@69 1527 uint8_t len;
jpayne@69 1528 uint8_t num_keys;
jpayne@69 1529 uint8_t pad0;
jpayne@69 1530 uint8_t keys[32];
jpayne@69 1531 } xcb_input_key_state_t;
jpayne@69 1532
jpayne@69 1533 /**
jpayne@69 1534 * @brief xcb_input_key_state_iterator_t
jpayne@69 1535 **/
jpayne@69 1536 typedef struct xcb_input_key_state_iterator_t {
jpayne@69 1537 xcb_input_key_state_t *data;
jpayne@69 1538 int rem;
jpayne@69 1539 int index;
jpayne@69 1540 } xcb_input_key_state_iterator_t;
jpayne@69 1541
jpayne@69 1542 /**
jpayne@69 1543 * @brief xcb_input_button_state_t
jpayne@69 1544 **/
jpayne@69 1545 typedef struct xcb_input_button_state_t {
jpayne@69 1546 uint8_t class_id;
jpayne@69 1547 uint8_t len;
jpayne@69 1548 uint8_t num_buttons;
jpayne@69 1549 uint8_t pad0;
jpayne@69 1550 uint8_t buttons[32];
jpayne@69 1551 } xcb_input_button_state_t;
jpayne@69 1552
jpayne@69 1553 /**
jpayne@69 1554 * @brief xcb_input_button_state_iterator_t
jpayne@69 1555 **/
jpayne@69 1556 typedef struct xcb_input_button_state_iterator_t {
jpayne@69 1557 xcb_input_button_state_t *data;
jpayne@69 1558 int rem;
jpayne@69 1559 int index;
jpayne@69 1560 } xcb_input_button_state_iterator_t;
jpayne@69 1561
jpayne@69 1562 typedef enum xcb_input_valuator_state_mode_mask_t {
jpayne@69 1563 XCB_INPUT_VALUATOR_STATE_MODE_MASK_DEVICE_MODE_ABSOLUTE = 1,
jpayne@69 1564 XCB_INPUT_VALUATOR_STATE_MODE_MASK_OUT_OF_PROXIMITY = 2
jpayne@69 1565 } xcb_input_valuator_state_mode_mask_t;
jpayne@69 1566
jpayne@69 1567 /**
jpayne@69 1568 * @brief xcb_input_valuator_state_t
jpayne@69 1569 **/
jpayne@69 1570 typedef struct xcb_input_valuator_state_t {
jpayne@69 1571 uint8_t class_id;
jpayne@69 1572 uint8_t len;
jpayne@69 1573 uint8_t num_valuators;
jpayne@69 1574 uint8_t mode;
jpayne@69 1575 } xcb_input_valuator_state_t;
jpayne@69 1576
jpayne@69 1577 /**
jpayne@69 1578 * @brief xcb_input_valuator_state_iterator_t
jpayne@69 1579 **/
jpayne@69 1580 typedef struct xcb_input_valuator_state_iterator_t {
jpayne@69 1581 xcb_input_valuator_state_t *data;
jpayne@69 1582 int rem;
jpayne@69 1583 int index;
jpayne@69 1584 } xcb_input_valuator_state_iterator_t;
jpayne@69 1585
jpayne@69 1586 /**
jpayne@69 1587 * @brief xcb_input_input_state_data_t
jpayne@69 1588 **/
jpayne@69 1589 typedef struct xcb_input_input_state_data_t {
jpayne@69 1590 struct {
jpayne@69 1591 uint8_t num_keys;
jpayne@69 1592 uint8_t pad0;
jpayne@69 1593 uint8_t keys[32];
jpayne@69 1594 } key;
jpayne@69 1595 struct {
jpayne@69 1596 uint8_t num_buttons;
jpayne@69 1597 uint8_t pad1;
jpayne@69 1598 uint8_t buttons[32];
jpayne@69 1599 } button;
jpayne@69 1600 struct {
jpayne@69 1601 uint8_t num_valuators;
jpayne@69 1602 uint8_t mode;
jpayne@69 1603 int32_t *valuators;
jpayne@69 1604 } valuator;
jpayne@69 1605 } xcb_input_input_state_data_t;
jpayne@69 1606
jpayne@69 1607 /**
jpayne@69 1608 * @brief xcb_input_input_state_t
jpayne@69 1609 **/
jpayne@69 1610 typedef struct xcb_input_input_state_t {
jpayne@69 1611 uint8_t class_id;
jpayne@69 1612 uint8_t len;
jpayne@69 1613 } xcb_input_input_state_t;
jpayne@69 1614
jpayne@69 1615 void *
jpayne@69 1616 xcb_input_input_state_data (const xcb_input_input_state_t *R);
jpayne@69 1617
jpayne@69 1618 /**
jpayne@69 1619 * @brief xcb_input_input_state_iterator_t
jpayne@69 1620 **/
jpayne@69 1621 typedef struct xcb_input_input_state_iterator_t {
jpayne@69 1622 xcb_input_input_state_t *data;
jpayne@69 1623 int rem;
jpayne@69 1624 int index;
jpayne@69 1625 } xcb_input_input_state_iterator_t;
jpayne@69 1626
jpayne@69 1627 /**
jpayne@69 1628 * @brief xcb_input_query_device_state_cookie_t
jpayne@69 1629 **/
jpayne@69 1630 typedef struct xcb_input_query_device_state_cookie_t {
jpayne@69 1631 unsigned int sequence;
jpayne@69 1632 } xcb_input_query_device_state_cookie_t;
jpayne@69 1633
jpayne@69 1634 /** Opcode for xcb_input_query_device_state. */
jpayne@69 1635 #define XCB_INPUT_QUERY_DEVICE_STATE 30
jpayne@69 1636
jpayne@69 1637 /**
jpayne@69 1638 * @brief xcb_input_query_device_state_request_t
jpayne@69 1639 **/
jpayne@69 1640 typedef struct xcb_input_query_device_state_request_t {
jpayne@69 1641 uint8_t major_opcode;
jpayne@69 1642 uint8_t minor_opcode;
jpayne@69 1643 uint16_t length;
jpayne@69 1644 uint8_t device_id;
jpayne@69 1645 uint8_t pad0[3];
jpayne@69 1646 } xcb_input_query_device_state_request_t;
jpayne@69 1647
jpayne@69 1648 /**
jpayne@69 1649 * @brief xcb_input_query_device_state_reply_t
jpayne@69 1650 **/
jpayne@69 1651 typedef struct xcb_input_query_device_state_reply_t {
jpayne@69 1652 uint8_t response_type;
jpayne@69 1653 uint8_t xi_reply_type;
jpayne@69 1654 uint16_t sequence;
jpayne@69 1655 uint32_t length;
jpayne@69 1656 uint8_t num_classes;
jpayne@69 1657 uint8_t pad0[23];
jpayne@69 1658 } xcb_input_query_device_state_reply_t;
jpayne@69 1659
jpayne@69 1660 /** Opcode for xcb_input_device_bell. */
jpayne@69 1661 #define XCB_INPUT_DEVICE_BELL 32
jpayne@69 1662
jpayne@69 1663 /**
jpayne@69 1664 * @brief xcb_input_device_bell_request_t
jpayne@69 1665 **/
jpayne@69 1666 typedef struct xcb_input_device_bell_request_t {
jpayne@69 1667 uint8_t major_opcode;
jpayne@69 1668 uint8_t minor_opcode;
jpayne@69 1669 uint16_t length;
jpayne@69 1670 uint8_t device_id;
jpayne@69 1671 uint8_t feedback_id;
jpayne@69 1672 uint8_t feedback_class;
jpayne@69 1673 int8_t percent;
jpayne@69 1674 } xcb_input_device_bell_request_t;
jpayne@69 1675
jpayne@69 1676 /**
jpayne@69 1677 * @brief xcb_input_set_device_valuators_cookie_t
jpayne@69 1678 **/
jpayne@69 1679 typedef struct xcb_input_set_device_valuators_cookie_t {
jpayne@69 1680 unsigned int sequence;
jpayne@69 1681 } xcb_input_set_device_valuators_cookie_t;
jpayne@69 1682
jpayne@69 1683 /** Opcode for xcb_input_set_device_valuators. */
jpayne@69 1684 #define XCB_INPUT_SET_DEVICE_VALUATORS 33
jpayne@69 1685
jpayne@69 1686 /**
jpayne@69 1687 * @brief xcb_input_set_device_valuators_request_t
jpayne@69 1688 **/
jpayne@69 1689 typedef struct xcb_input_set_device_valuators_request_t {
jpayne@69 1690 uint8_t major_opcode;
jpayne@69 1691 uint8_t minor_opcode;
jpayne@69 1692 uint16_t length;
jpayne@69 1693 uint8_t device_id;
jpayne@69 1694 uint8_t first_valuator;
jpayne@69 1695 uint8_t num_valuators;
jpayne@69 1696 uint8_t pad0;
jpayne@69 1697 } xcb_input_set_device_valuators_request_t;
jpayne@69 1698
jpayne@69 1699 /**
jpayne@69 1700 * @brief xcb_input_set_device_valuators_reply_t
jpayne@69 1701 **/
jpayne@69 1702 typedef struct xcb_input_set_device_valuators_reply_t {
jpayne@69 1703 uint8_t response_type;
jpayne@69 1704 uint8_t xi_reply_type;
jpayne@69 1705 uint16_t sequence;
jpayne@69 1706 uint32_t length;
jpayne@69 1707 uint8_t status;
jpayne@69 1708 uint8_t pad0[23];
jpayne@69 1709 } xcb_input_set_device_valuators_reply_t;
jpayne@69 1710
jpayne@69 1711 typedef enum xcb_input_device_control_t {
jpayne@69 1712 XCB_INPUT_DEVICE_CONTROL_RESOLUTION = 1,
jpayne@69 1713 XCB_INPUT_DEVICE_CONTROL_ABS_CALIB = 2,
jpayne@69 1714 XCB_INPUT_DEVICE_CONTROL_CORE = 3,
jpayne@69 1715 XCB_INPUT_DEVICE_CONTROL_ENABLE = 4,
jpayne@69 1716 XCB_INPUT_DEVICE_CONTROL_ABS_AREA = 5
jpayne@69 1717 } xcb_input_device_control_t;
jpayne@69 1718
jpayne@69 1719 /**
jpayne@69 1720 * @brief xcb_input_device_resolution_state_t
jpayne@69 1721 **/
jpayne@69 1722 typedef struct xcb_input_device_resolution_state_t {
jpayne@69 1723 uint16_t control_id;
jpayne@69 1724 uint16_t len;
jpayne@69 1725 uint32_t num_valuators;
jpayne@69 1726 } xcb_input_device_resolution_state_t;
jpayne@69 1727
jpayne@69 1728 /**
jpayne@69 1729 * @brief xcb_input_device_resolution_state_iterator_t
jpayne@69 1730 **/
jpayne@69 1731 typedef struct xcb_input_device_resolution_state_iterator_t {
jpayne@69 1732 xcb_input_device_resolution_state_t *data;
jpayne@69 1733 int rem;
jpayne@69 1734 int index;
jpayne@69 1735 } xcb_input_device_resolution_state_iterator_t;
jpayne@69 1736
jpayne@69 1737 /**
jpayne@69 1738 * @brief xcb_input_device_abs_calib_state_t
jpayne@69 1739 **/
jpayne@69 1740 typedef struct xcb_input_device_abs_calib_state_t {
jpayne@69 1741 uint16_t control_id;
jpayne@69 1742 uint16_t len;
jpayne@69 1743 int32_t min_x;
jpayne@69 1744 int32_t max_x;
jpayne@69 1745 int32_t min_y;
jpayne@69 1746 int32_t max_y;
jpayne@69 1747 uint32_t flip_x;
jpayne@69 1748 uint32_t flip_y;
jpayne@69 1749 uint32_t rotation;
jpayne@69 1750 uint32_t button_threshold;
jpayne@69 1751 } xcb_input_device_abs_calib_state_t;
jpayne@69 1752
jpayne@69 1753 /**
jpayne@69 1754 * @brief xcb_input_device_abs_calib_state_iterator_t
jpayne@69 1755 **/
jpayne@69 1756 typedef struct xcb_input_device_abs_calib_state_iterator_t {
jpayne@69 1757 xcb_input_device_abs_calib_state_t *data;
jpayne@69 1758 int rem;
jpayne@69 1759 int index;
jpayne@69 1760 } xcb_input_device_abs_calib_state_iterator_t;
jpayne@69 1761
jpayne@69 1762 /**
jpayne@69 1763 * @brief xcb_input_device_abs_area_state_t
jpayne@69 1764 **/
jpayne@69 1765 typedef struct xcb_input_device_abs_area_state_t {
jpayne@69 1766 uint16_t control_id;
jpayne@69 1767 uint16_t len;
jpayne@69 1768 uint32_t offset_x;
jpayne@69 1769 uint32_t offset_y;
jpayne@69 1770 uint32_t width;
jpayne@69 1771 uint32_t height;
jpayne@69 1772 uint32_t screen;
jpayne@69 1773 uint32_t following;
jpayne@69 1774 } xcb_input_device_abs_area_state_t;
jpayne@69 1775
jpayne@69 1776 /**
jpayne@69 1777 * @brief xcb_input_device_abs_area_state_iterator_t
jpayne@69 1778 **/
jpayne@69 1779 typedef struct xcb_input_device_abs_area_state_iterator_t {
jpayne@69 1780 xcb_input_device_abs_area_state_t *data;
jpayne@69 1781 int rem;
jpayne@69 1782 int index;
jpayne@69 1783 } xcb_input_device_abs_area_state_iterator_t;
jpayne@69 1784
jpayne@69 1785 /**
jpayne@69 1786 * @brief xcb_input_device_core_state_t
jpayne@69 1787 **/
jpayne@69 1788 typedef struct xcb_input_device_core_state_t {
jpayne@69 1789 uint16_t control_id;
jpayne@69 1790 uint16_t len;
jpayne@69 1791 uint8_t status;
jpayne@69 1792 uint8_t iscore;
jpayne@69 1793 uint8_t pad0[2];
jpayne@69 1794 } xcb_input_device_core_state_t;
jpayne@69 1795
jpayne@69 1796 /**
jpayne@69 1797 * @brief xcb_input_device_core_state_iterator_t
jpayne@69 1798 **/
jpayne@69 1799 typedef struct xcb_input_device_core_state_iterator_t {
jpayne@69 1800 xcb_input_device_core_state_t *data;
jpayne@69 1801 int rem;
jpayne@69 1802 int index;
jpayne@69 1803 } xcb_input_device_core_state_iterator_t;
jpayne@69 1804
jpayne@69 1805 /**
jpayne@69 1806 * @brief xcb_input_device_enable_state_t
jpayne@69 1807 **/
jpayne@69 1808 typedef struct xcb_input_device_enable_state_t {
jpayne@69 1809 uint16_t control_id;
jpayne@69 1810 uint16_t len;
jpayne@69 1811 uint8_t enable;
jpayne@69 1812 uint8_t pad0[3];
jpayne@69 1813 } xcb_input_device_enable_state_t;
jpayne@69 1814
jpayne@69 1815 /**
jpayne@69 1816 * @brief xcb_input_device_enable_state_iterator_t
jpayne@69 1817 **/
jpayne@69 1818 typedef struct xcb_input_device_enable_state_iterator_t {
jpayne@69 1819 xcb_input_device_enable_state_t *data;
jpayne@69 1820 int rem;
jpayne@69 1821 int index;
jpayne@69 1822 } xcb_input_device_enable_state_iterator_t;
jpayne@69 1823
jpayne@69 1824 /**
jpayne@69 1825 * @brief xcb_input_device_state_data_t
jpayne@69 1826 **/
jpayne@69 1827 typedef struct xcb_input_device_state_data_t {
jpayne@69 1828 struct {
jpayne@69 1829 uint32_t num_valuators;
jpayne@69 1830 uint32_t *resolution_values;
jpayne@69 1831 uint32_t *resolution_min;
jpayne@69 1832 uint32_t *resolution_max;
jpayne@69 1833 } resolution;
jpayne@69 1834 struct {
jpayne@69 1835 int32_t min_x;
jpayne@69 1836 int32_t max_x;
jpayne@69 1837 int32_t min_y;
jpayne@69 1838 int32_t max_y;
jpayne@69 1839 uint32_t flip_x;
jpayne@69 1840 uint32_t flip_y;
jpayne@69 1841 uint32_t rotation;
jpayne@69 1842 uint32_t button_threshold;
jpayne@69 1843 } abs_calib;
jpayne@69 1844 struct {
jpayne@69 1845 uint8_t status;
jpayne@69 1846 uint8_t iscore;
jpayne@69 1847 uint8_t pad0[2];
jpayne@69 1848 } core;
jpayne@69 1849 struct {
jpayne@69 1850 uint8_t enable;
jpayne@69 1851 uint8_t pad1[3];
jpayne@69 1852 } enable;
jpayne@69 1853 struct {
jpayne@69 1854 uint32_t offset_x;
jpayne@69 1855 uint32_t offset_y;
jpayne@69 1856 uint32_t width;
jpayne@69 1857 uint32_t height;
jpayne@69 1858 uint32_t screen;
jpayne@69 1859 uint32_t following;
jpayne@69 1860 } abs_area;
jpayne@69 1861 } xcb_input_device_state_data_t;
jpayne@69 1862
jpayne@69 1863 /**
jpayne@69 1864 * @brief xcb_input_device_state_t
jpayne@69 1865 **/
jpayne@69 1866 typedef struct xcb_input_device_state_t {
jpayne@69 1867 uint16_t control_id;
jpayne@69 1868 uint16_t len;
jpayne@69 1869 } xcb_input_device_state_t;
jpayne@69 1870
jpayne@69 1871 void *
jpayne@69 1872 xcb_input_device_state_data (const xcb_input_device_state_t *R);
jpayne@69 1873
jpayne@69 1874 /**
jpayne@69 1875 * @brief xcb_input_device_state_iterator_t
jpayne@69 1876 **/
jpayne@69 1877 typedef struct xcb_input_device_state_iterator_t {
jpayne@69 1878 xcb_input_device_state_t *data;
jpayne@69 1879 int rem;
jpayne@69 1880 int index;
jpayne@69 1881 } xcb_input_device_state_iterator_t;
jpayne@69 1882
jpayne@69 1883 /**
jpayne@69 1884 * @brief xcb_input_get_device_control_cookie_t
jpayne@69 1885 **/
jpayne@69 1886 typedef struct xcb_input_get_device_control_cookie_t {
jpayne@69 1887 unsigned int sequence;
jpayne@69 1888 } xcb_input_get_device_control_cookie_t;
jpayne@69 1889
jpayne@69 1890 /** Opcode for xcb_input_get_device_control. */
jpayne@69 1891 #define XCB_INPUT_GET_DEVICE_CONTROL 34
jpayne@69 1892
jpayne@69 1893 /**
jpayne@69 1894 * @brief xcb_input_get_device_control_request_t
jpayne@69 1895 **/
jpayne@69 1896 typedef struct xcb_input_get_device_control_request_t {
jpayne@69 1897 uint8_t major_opcode;
jpayne@69 1898 uint8_t minor_opcode;
jpayne@69 1899 uint16_t length;
jpayne@69 1900 uint16_t control_id;
jpayne@69 1901 uint8_t device_id;
jpayne@69 1902 uint8_t pad0;
jpayne@69 1903 } xcb_input_get_device_control_request_t;
jpayne@69 1904
jpayne@69 1905 /**
jpayne@69 1906 * @brief xcb_input_get_device_control_reply_t
jpayne@69 1907 **/
jpayne@69 1908 typedef struct xcb_input_get_device_control_reply_t {
jpayne@69 1909 uint8_t response_type;
jpayne@69 1910 uint8_t xi_reply_type;
jpayne@69 1911 uint16_t sequence;
jpayne@69 1912 uint32_t length;
jpayne@69 1913 uint8_t status;
jpayne@69 1914 uint8_t pad0[23];
jpayne@69 1915 } xcb_input_get_device_control_reply_t;
jpayne@69 1916
jpayne@69 1917 /**
jpayne@69 1918 * @brief xcb_input_device_resolution_ctl_t
jpayne@69 1919 **/
jpayne@69 1920 typedef struct xcb_input_device_resolution_ctl_t {
jpayne@69 1921 uint16_t control_id;
jpayne@69 1922 uint16_t len;
jpayne@69 1923 uint8_t first_valuator;
jpayne@69 1924 uint8_t num_valuators;
jpayne@69 1925 uint8_t pad0[2];
jpayne@69 1926 } xcb_input_device_resolution_ctl_t;
jpayne@69 1927
jpayne@69 1928 /**
jpayne@69 1929 * @brief xcb_input_device_resolution_ctl_iterator_t
jpayne@69 1930 **/
jpayne@69 1931 typedef struct xcb_input_device_resolution_ctl_iterator_t {
jpayne@69 1932 xcb_input_device_resolution_ctl_t *data;
jpayne@69 1933 int rem;
jpayne@69 1934 int index;
jpayne@69 1935 } xcb_input_device_resolution_ctl_iterator_t;
jpayne@69 1936
jpayne@69 1937 /**
jpayne@69 1938 * @brief xcb_input_device_abs_calib_ctl_t
jpayne@69 1939 **/
jpayne@69 1940 typedef struct xcb_input_device_abs_calib_ctl_t {
jpayne@69 1941 uint16_t control_id;
jpayne@69 1942 uint16_t len;
jpayne@69 1943 int32_t min_x;
jpayne@69 1944 int32_t max_x;
jpayne@69 1945 int32_t min_y;
jpayne@69 1946 int32_t max_y;
jpayne@69 1947 uint32_t flip_x;
jpayne@69 1948 uint32_t flip_y;
jpayne@69 1949 uint32_t rotation;
jpayne@69 1950 uint32_t button_threshold;
jpayne@69 1951 } xcb_input_device_abs_calib_ctl_t;
jpayne@69 1952
jpayne@69 1953 /**
jpayne@69 1954 * @brief xcb_input_device_abs_calib_ctl_iterator_t
jpayne@69 1955 **/
jpayne@69 1956 typedef struct xcb_input_device_abs_calib_ctl_iterator_t {
jpayne@69 1957 xcb_input_device_abs_calib_ctl_t *data;
jpayne@69 1958 int rem;
jpayne@69 1959 int index;
jpayne@69 1960 } xcb_input_device_abs_calib_ctl_iterator_t;
jpayne@69 1961
jpayne@69 1962 /**
jpayne@69 1963 * @brief xcb_input_device_abs_area_ctrl_t
jpayne@69 1964 **/
jpayne@69 1965 typedef struct xcb_input_device_abs_area_ctrl_t {
jpayne@69 1966 uint16_t control_id;
jpayne@69 1967 uint16_t len;
jpayne@69 1968 uint32_t offset_x;
jpayne@69 1969 uint32_t offset_y;
jpayne@69 1970 int32_t width;
jpayne@69 1971 int32_t height;
jpayne@69 1972 int32_t screen;
jpayne@69 1973 uint32_t following;
jpayne@69 1974 } xcb_input_device_abs_area_ctrl_t;
jpayne@69 1975
jpayne@69 1976 /**
jpayne@69 1977 * @brief xcb_input_device_abs_area_ctrl_iterator_t
jpayne@69 1978 **/
jpayne@69 1979 typedef struct xcb_input_device_abs_area_ctrl_iterator_t {
jpayne@69 1980 xcb_input_device_abs_area_ctrl_t *data;
jpayne@69 1981 int rem;
jpayne@69 1982 int index;
jpayne@69 1983 } xcb_input_device_abs_area_ctrl_iterator_t;
jpayne@69 1984
jpayne@69 1985 /**
jpayne@69 1986 * @brief xcb_input_device_core_ctrl_t
jpayne@69 1987 **/
jpayne@69 1988 typedef struct xcb_input_device_core_ctrl_t {
jpayne@69 1989 uint16_t control_id;
jpayne@69 1990 uint16_t len;
jpayne@69 1991 uint8_t status;
jpayne@69 1992 uint8_t pad0[3];
jpayne@69 1993 } xcb_input_device_core_ctrl_t;
jpayne@69 1994
jpayne@69 1995 /**
jpayne@69 1996 * @brief xcb_input_device_core_ctrl_iterator_t
jpayne@69 1997 **/
jpayne@69 1998 typedef struct xcb_input_device_core_ctrl_iterator_t {
jpayne@69 1999 xcb_input_device_core_ctrl_t *data;
jpayne@69 2000 int rem;
jpayne@69 2001 int index;
jpayne@69 2002 } xcb_input_device_core_ctrl_iterator_t;
jpayne@69 2003
jpayne@69 2004 /**
jpayne@69 2005 * @brief xcb_input_device_enable_ctrl_t
jpayne@69 2006 **/
jpayne@69 2007 typedef struct xcb_input_device_enable_ctrl_t {
jpayne@69 2008 uint16_t control_id;
jpayne@69 2009 uint16_t len;
jpayne@69 2010 uint8_t enable;
jpayne@69 2011 uint8_t pad0[3];
jpayne@69 2012 } xcb_input_device_enable_ctrl_t;
jpayne@69 2013
jpayne@69 2014 /**
jpayne@69 2015 * @brief xcb_input_device_enable_ctrl_iterator_t
jpayne@69 2016 **/
jpayne@69 2017 typedef struct xcb_input_device_enable_ctrl_iterator_t {
jpayne@69 2018 xcb_input_device_enable_ctrl_t *data;
jpayne@69 2019 int rem;
jpayne@69 2020 int index;
jpayne@69 2021 } xcb_input_device_enable_ctrl_iterator_t;
jpayne@69 2022
jpayne@69 2023 /**
jpayne@69 2024 * @brief xcb_input_device_ctl_data_t
jpayne@69 2025 **/
jpayne@69 2026 typedef struct xcb_input_device_ctl_data_t {
jpayne@69 2027 struct {
jpayne@69 2028 uint8_t first_valuator;
jpayne@69 2029 uint8_t num_valuators;
jpayne@69 2030 uint8_t pad0[2];
jpayne@69 2031 uint32_t *resolution_values;
jpayne@69 2032 } resolution;
jpayne@69 2033 struct {
jpayne@69 2034 int32_t min_x;
jpayne@69 2035 int32_t max_x;
jpayne@69 2036 int32_t min_y;
jpayne@69 2037 int32_t max_y;
jpayne@69 2038 uint32_t flip_x;
jpayne@69 2039 uint32_t flip_y;
jpayne@69 2040 uint32_t rotation;
jpayne@69 2041 uint32_t button_threshold;
jpayne@69 2042 } abs_calib;
jpayne@69 2043 struct {
jpayne@69 2044 uint8_t status;
jpayne@69 2045 uint8_t pad1[3];
jpayne@69 2046 } core;
jpayne@69 2047 struct {
jpayne@69 2048 uint8_t enable;
jpayne@69 2049 uint8_t pad2[3];
jpayne@69 2050 } enable;
jpayne@69 2051 struct {
jpayne@69 2052 uint32_t offset_x;
jpayne@69 2053 uint32_t offset_y;
jpayne@69 2054 int32_t width;
jpayne@69 2055 int32_t height;
jpayne@69 2056 int32_t screen;
jpayne@69 2057 uint32_t following;
jpayne@69 2058 } abs_area;
jpayne@69 2059 } xcb_input_device_ctl_data_t;
jpayne@69 2060
jpayne@69 2061 /**
jpayne@69 2062 * @brief xcb_input_device_ctl_t
jpayne@69 2063 **/
jpayne@69 2064 typedef struct xcb_input_device_ctl_t {
jpayne@69 2065 uint16_t control_id;
jpayne@69 2066 uint16_t len;
jpayne@69 2067 } xcb_input_device_ctl_t;
jpayne@69 2068
jpayne@69 2069 void *
jpayne@69 2070 xcb_input_device_ctl_data (const xcb_input_device_ctl_t *R);
jpayne@69 2071
jpayne@69 2072 /**
jpayne@69 2073 * @brief xcb_input_device_ctl_iterator_t
jpayne@69 2074 **/
jpayne@69 2075 typedef struct xcb_input_device_ctl_iterator_t {
jpayne@69 2076 xcb_input_device_ctl_t *data;
jpayne@69 2077 int rem;
jpayne@69 2078 int index;
jpayne@69 2079 } xcb_input_device_ctl_iterator_t;
jpayne@69 2080
jpayne@69 2081 /**
jpayne@69 2082 * @brief xcb_input_change_device_control_cookie_t
jpayne@69 2083 **/
jpayne@69 2084 typedef struct xcb_input_change_device_control_cookie_t {
jpayne@69 2085 unsigned int sequence;
jpayne@69 2086 } xcb_input_change_device_control_cookie_t;
jpayne@69 2087
jpayne@69 2088 /** Opcode for xcb_input_change_device_control. */
jpayne@69 2089 #define XCB_INPUT_CHANGE_DEVICE_CONTROL 35
jpayne@69 2090
jpayne@69 2091 /**
jpayne@69 2092 * @brief xcb_input_change_device_control_request_t
jpayne@69 2093 **/
jpayne@69 2094 typedef struct xcb_input_change_device_control_request_t {
jpayne@69 2095 uint8_t major_opcode;
jpayne@69 2096 uint8_t minor_opcode;
jpayne@69 2097 uint16_t length;
jpayne@69 2098 uint16_t control_id;
jpayne@69 2099 uint8_t device_id;
jpayne@69 2100 uint8_t pad0;
jpayne@69 2101 } xcb_input_change_device_control_request_t;
jpayne@69 2102
jpayne@69 2103 /**
jpayne@69 2104 * @brief xcb_input_change_device_control_reply_t
jpayne@69 2105 **/
jpayne@69 2106 typedef struct xcb_input_change_device_control_reply_t {
jpayne@69 2107 uint8_t response_type;
jpayne@69 2108 uint8_t xi_reply_type;
jpayne@69 2109 uint16_t sequence;
jpayne@69 2110 uint32_t length;
jpayne@69 2111 uint8_t status;
jpayne@69 2112 uint8_t pad0[23];
jpayne@69 2113 } xcb_input_change_device_control_reply_t;
jpayne@69 2114
jpayne@69 2115 /**
jpayne@69 2116 * @brief xcb_input_list_device_properties_cookie_t
jpayne@69 2117 **/
jpayne@69 2118 typedef struct xcb_input_list_device_properties_cookie_t {
jpayne@69 2119 unsigned int sequence;
jpayne@69 2120 } xcb_input_list_device_properties_cookie_t;
jpayne@69 2121
jpayne@69 2122 /** Opcode for xcb_input_list_device_properties. */
jpayne@69 2123 #define XCB_INPUT_LIST_DEVICE_PROPERTIES 36
jpayne@69 2124
jpayne@69 2125 /**
jpayne@69 2126 * @brief xcb_input_list_device_properties_request_t
jpayne@69 2127 **/
jpayne@69 2128 typedef struct xcb_input_list_device_properties_request_t {
jpayne@69 2129 uint8_t major_opcode;
jpayne@69 2130 uint8_t minor_opcode;
jpayne@69 2131 uint16_t length;
jpayne@69 2132 uint8_t device_id;
jpayne@69 2133 uint8_t pad0[3];
jpayne@69 2134 } xcb_input_list_device_properties_request_t;
jpayne@69 2135
jpayne@69 2136 /**
jpayne@69 2137 * @brief xcb_input_list_device_properties_reply_t
jpayne@69 2138 **/
jpayne@69 2139 typedef struct xcb_input_list_device_properties_reply_t {
jpayne@69 2140 uint8_t response_type;
jpayne@69 2141 uint8_t xi_reply_type;
jpayne@69 2142 uint16_t sequence;
jpayne@69 2143 uint32_t length;
jpayne@69 2144 uint16_t num_atoms;
jpayne@69 2145 uint8_t pad0[22];
jpayne@69 2146 } xcb_input_list_device_properties_reply_t;
jpayne@69 2147
jpayne@69 2148 typedef enum xcb_input_property_format_t {
jpayne@69 2149 XCB_INPUT_PROPERTY_FORMAT_8_BITS = 8,
jpayne@69 2150 XCB_INPUT_PROPERTY_FORMAT_16_BITS = 16,
jpayne@69 2151 XCB_INPUT_PROPERTY_FORMAT_32_BITS = 32
jpayne@69 2152 } xcb_input_property_format_t;
jpayne@69 2153
jpayne@69 2154 /**
jpayne@69 2155 * @brief xcb_input_change_device_property_items_t
jpayne@69 2156 **/
jpayne@69 2157 typedef struct xcb_input_change_device_property_items_t {
jpayne@69 2158 uint8_t *data8;
jpayne@69 2159 uint16_t *data16;
jpayne@69 2160 uint32_t *data32;
jpayne@69 2161 } xcb_input_change_device_property_items_t;
jpayne@69 2162
jpayne@69 2163 /** Opcode for xcb_input_change_device_property. */
jpayne@69 2164 #define XCB_INPUT_CHANGE_DEVICE_PROPERTY 37
jpayne@69 2165
jpayne@69 2166 /**
jpayne@69 2167 * @brief xcb_input_change_device_property_request_t
jpayne@69 2168 **/
jpayne@69 2169 typedef struct xcb_input_change_device_property_request_t {
jpayne@69 2170 uint8_t major_opcode;
jpayne@69 2171 uint8_t minor_opcode;
jpayne@69 2172 uint16_t length;
jpayne@69 2173 xcb_atom_t property;
jpayne@69 2174 xcb_atom_t type;
jpayne@69 2175 uint8_t device_id;
jpayne@69 2176 uint8_t format;
jpayne@69 2177 uint8_t mode;
jpayne@69 2178 uint8_t pad0;
jpayne@69 2179 uint32_t num_items;
jpayne@69 2180 } xcb_input_change_device_property_request_t;
jpayne@69 2181
jpayne@69 2182 /** Opcode for xcb_input_delete_device_property. */
jpayne@69 2183 #define XCB_INPUT_DELETE_DEVICE_PROPERTY 38
jpayne@69 2184
jpayne@69 2185 /**
jpayne@69 2186 * @brief xcb_input_delete_device_property_request_t
jpayne@69 2187 **/
jpayne@69 2188 typedef struct xcb_input_delete_device_property_request_t {
jpayne@69 2189 uint8_t major_opcode;
jpayne@69 2190 uint8_t minor_opcode;
jpayne@69 2191 uint16_t length;
jpayne@69 2192 xcb_atom_t property;
jpayne@69 2193 uint8_t device_id;
jpayne@69 2194 uint8_t pad0[3];
jpayne@69 2195 } xcb_input_delete_device_property_request_t;
jpayne@69 2196
jpayne@69 2197 /**
jpayne@69 2198 * @brief xcb_input_get_device_property_cookie_t
jpayne@69 2199 **/
jpayne@69 2200 typedef struct xcb_input_get_device_property_cookie_t {
jpayne@69 2201 unsigned int sequence;
jpayne@69 2202 } xcb_input_get_device_property_cookie_t;
jpayne@69 2203
jpayne@69 2204 /** Opcode for xcb_input_get_device_property. */
jpayne@69 2205 #define XCB_INPUT_GET_DEVICE_PROPERTY 39
jpayne@69 2206
jpayne@69 2207 /**
jpayne@69 2208 * @brief xcb_input_get_device_property_request_t
jpayne@69 2209 **/
jpayne@69 2210 typedef struct xcb_input_get_device_property_request_t {
jpayne@69 2211 uint8_t major_opcode;
jpayne@69 2212 uint8_t minor_opcode;
jpayne@69 2213 uint16_t length;
jpayne@69 2214 xcb_atom_t property;
jpayne@69 2215 xcb_atom_t type;
jpayne@69 2216 uint32_t offset;
jpayne@69 2217 uint32_t len;
jpayne@69 2218 uint8_t device_id;
jpayne@69 2219 uint8_t _delete;
jpayne@69 2220 uint8_t pad0[2];
jpayne@69 2221 } xcb_input_get_device_property_request_t;
jpayne@69 2222
jpayne@69 2223 /**
jpayne@69 2224 * @brief xcb_input_get_device_property_items_t
jpayne@69 2225 **/
jpayne@69 2226 typedef struct xcb_input_get_device_property_items_t {
jpayne@69 2227 uint8_t *data8;
jpayne@69 2228 uint16_t *data16;
jpayne@69 2229 uint32_t *data32;
jpayne@69 2230 } xcb_input_get_device_property_items_t;
jpayne@69 2231
jpayne@69 2232 /**
jpayne@69 2233 * @brief xcb_input_get_device_property_reply_t
jpayne@69 2234 **/
jpayne@69 2235 typedef struct xcb_input_get_device_property_reply_t {
jpayne@69 2236 uint8_t response_type;
jpayne@69 2237 uint8_t xi_reply_type;
jpayne@69 2238 uint16_t sequence;
jpayne@69 2239 uint32_t length;
jpayne@69 2240 xcb_atom_t type;
jpayne@69 2241 uint32_t bytes_after;
jpayne@69 2242 uint32_t num_items;
jpayne@69 2243 uint8_t format;
jpayne@69 2244 uint8_t device_id;
jpayne@69 2245 uint8_t pad0[10];
jpayne@69 2246 } xcb_input_get_device_property_reply_t;
jpayne@69 2247
jpayne@69 2248 typedef enum xcb_input_device_t {
jpayne@69 2249 XCB_INPUT_DEVICE_ALL = 0,
jpayne@69 2250 XCB_INPUT_DEVICE_ALL_MASTER = 1
jpayne@69 2251 } xcb_input_device_t;
jpayne@69 2252
jpayne@69 2253 /**
jpayne@69 2254 * @brief xcb_input_group_info_t
jpayne@69 2255 **/
jpayne@69 2256 typedef struct xcb_input_group_info_t {
jpayne@69 2257 uint8_t base;
jpayne@69 2258 uint8_t latched;
jpayne@69 2259 uint8_t locked;
jpayne@69 2260 uint8_t effective;
jpayne@69 2261 } xcb_input_group_info_t;
jpayne@69 2262
jpayne@69 2263 /**
jpayne@69 2264 * @brief xcb_input_group_info_iterator_t
jpayne@69 2265 **/
jpayne@69 2266 typedef struct xcb_input_group_info_iterator_t {
jpayne@69 2267 xcb_input_group_info_t *data;
jpayne@69 2268 int rem;
jpayne@69 2269 int index;
jpayne@69 2270 } xcb_input_group_info_iterator_t;
jpayne@69 2271
jpayne@69 2272 /**
jpayne@69 2273 * @brief xcb_input_modifier_info_t
jpayne@69 2274 **/
jpayne@69 2275 typedef struct xcb_input_modifier_info_t {
jpayne@69 2276 uint32_t base;
jpayne@69 2277 uint32_t latched;
jpayne@69 2278 uint32_t locked;
jpayne@69 2279 uint32_t effective;
jpayne@69 2280 } xcb_input_modifier_info_t;
jpayne@69 2281
jpayne@69 2282 /**
jpayne@69 2283 * @brief xcb_input_modifier_info_iterator_t
jpayne@69 2284 **/
jpayne@69 2285 typedef struct xcb_input_modifier_info_iterator_t {
jpayne@69 2286 xcb_input_modifier_info_t *data;
jpayne@69 2287 int rem;
jpayne@69 2288 int index;
jpayne@69 2289 } xcb_input_modifier_info_iterator_t;
jpayne@69 2290
jpayne@69 2291 /**
jpayne@69 2292 * @brief xcb_input_xi_query_pointer_cookie_t
jpayne@69 2293 **/
jpayne@69 2294 typedef struct xcb_input_xi_query_pointer_cookie_t {
jpayne@69 2295 unsigned int sequence;
jpayne@69 2296 } xcb_input_xi_query_pointer_cookie_t;
jpayne@69 2297
jpayne@69 2298 /** Opcode for xcb_input_xi_query_pointer. */
jpayne@69 2299 #define XCB_INPUT_XI_QUERY_POINTER 40
jpayne@69 2300
jpayne@69 2301 /**
jpayne@69 2302 * @brief xcb_input_xi_query_pointer_request_t
jpayne@69 2303 **/
jpayne@69 2304 typedef struct xcb_input_xi_query_pointer_request_t {
jpayne@69 2305 uint8_t major_opcode;
jpayne@69 2306 uint8_t minor_opcode;
jpayne@69 2307 uint16_t length;
jpayne@69 2308 xcb_window_t window;
jpayne@69 2309 xcb_input_device_id_t deviceid;
jpayne@69 2310 uint8_t pad0[2];
jpayne@69 2311 } xcb_input_xi_query_pointer_request_t;
jpayne@69 2312
jpayne@69 2313 /**
jpayne@69 2314 * @brief xcb_input_xi_query_pointer_reply_t
jpayne@69 2315 **/
jpayne@69 2316 typedef struct xcb_input_xi_query_pointer_reply_t {
jpayne@69 2317 uint8_t response_type;
jpayne@69 2318 uint8_t pad0;
jpayne@69 2319 uint16_t sequence;
jpayne@69 2320 uint32_t length;
jpayne@69 2321 xcb_window_t root;
jpayne@69 2322 xcb_window_t child;
jpayne@69 2323 xcb_input_fp1616_t root_x;
jpayne@69 2324 xcb_input_fp1616_t root_y;
jpayne@69 2325 xcb_input_fp1616_t win_x;
jpayne@69 2326 xcb_input_fp1616_t win_y;
jpayne@69 2327 uint8_t same_screen;
jpayne@69 2328 uint8_t pad1;
jpayne@69 2329 uint16_t buttons_len;
jpayne@69 2330 xcb_input_modifier_info_t mods;
jpayne@69 2331 xcb_input_group_info_t group;
jpayne@69 2332 } xcb_input_xi_query_pointer_reply_t;
jpayne@69 2333
jpayne@69 2334 /** Opcode for xcb_input_xi_warp_pointer. */
jpayne@69 2335 #define XCB_INPUT_XI_WARP_POINTER 41
jpayne@69 2336
jpayne@69 2337 /**
jpayne@69 2338 * @brief xcb_input_xi_warp_pointer_request_t
jpayne@69 2339 **/
jpayne@69 2340 typedef struct xcb_input_xi_warp_pointer_request_t {
jpayne@69 2341 uint8_t major_opcode;
jpayne@69 2342 uint8_t minor_opcode;
jpayne@69 2343 uint16_t length;
jpayne@69 2344 xcb_window_t src_win;
jpayne@69 2345 xcb_window_t dst_win;
jpayne@69 2346 xcb_input_fp1616_t src_x;
jpayne@69 2347 xcb_input_fp1616_t src_y;
jpayne@69 2348 uint16_t src_width;
jpayne@69 2349 uint16_t src_height;
jpayne@69 2350 xcb_input_fp1616_t dst_x;
jpayne@69 2351 xcb_input_fp1616_t dst_y;
jpayne@69 2352 xcb_input_device_id_t deviceid;
jpayne@69 2353 uint8_t pad0[2];
jpayne@69 2354 } xcb_input_xi_warp_pointer_request_t;
jpayne@69 2355
jpayne@69 2356 /** Opcode for xcb_input_xi_change_cursor. */
jpayne@69 2357 #define XCB_INPUT_XI_CHANGE_CURSOR 42
jpayne@69 2358
jpayne@69 2359 /**
jpayne@69 2360 * @brief xcb_input_xi_change_cursor_request_t
jpayne@69 2361 **/
jpayne@69 2362 typedef struct xcb_input_xi_change_cursor_request_t {
jpayne@69 2363 uint8_t major_opcode;
jpayne@69 2364 uint8_t minor_opcode;
jpayne@69 2365 uint16_t length;
jpayne@69 2366 xcb_window_t window;
jpayne@69 2367 xcb_cursor_t cursor;
jpayne@69 2368 xcb_input_device_id_t deviceid;
jpayne@69 2369 uint8_t pad0[2];
jpayne@69 2370 } xcb_input_xi_change_cursor_request_t;
jpayne@69 2371
jpayne@69 2372 typedef enum xcb_input_hierarchy_change_type_t {
jpayne@69 2373 XCB_INPUT_HIERARCHY_CHANGE_TYPE_ADD_MASTER = 1,
jpayne@69 2374 XCB_INPUT_HIERARCHY_CHANGE_TYPE_REMOVE_MASTER = 2,
jpayne@69 2375 XCB_INPUT_HIERARCHY_CHANGE_TYPE_ATTACH_SLAVE = 3,
jpayne@69 2376 XCB_INPUT_HIERARCHY_CHANGE_TYPE_DETACH_SLAVE = 4
jpayne@69 2377 } xcb_input_hierarchy_change_type_t;
jpayne@69 2378
jpayne@69 2379 typedef enum xcb_input_change_mode_t {
jpayne@69 2380 XCB_INPUT_CHANGE_MODE_ATTACH = 1,
jpayne@69 2381 XCB_INPUT_CHANGE_MODE_FLOAT = 2
jpayne@69 2382 } xcb_input_change_mode_t;
jpayne@69 2383
jpayne@69 2384 /**
jpayne@69 2385 * @brief xcb_input_add_master_t
jpayne@69 2386 **/
jpayne@69 2387 typedef struct xcb_input_add_master_t {
jpayne@69 2388 uint16_t type;
jpayne@69 2389 uint16_t len;
jpayne@69 2390 uint16_t name_len;
jpayne@69 2391 uint8_t send_core;
jpayne@69 2392 uint8_t enable;
jpayne@69 2393 } xcb_input_add_master_t;
jpayne@69 2394
jpayne@69 2395 /**
jpayne@69 2396 * @brief xcb_input_add_master_iterator_t
jpayne@69 2397 **/
jpayne@69 2398 typedef struct xcb_input_add_master_iterator_t {
jpayne@69 2399 xcb_input_add_master_t *data;
jpayne@69 2400 int rem;
jpayne@69 2401 int index;
jpayne@69 2402 } xcb_input_add_master_iterator_t;
jpayne@69 2403
jpayne@69 2404 /**
jpayne@69 2405 * @brief xcb_input_remove_master_t
jpayne@69 2406 **/
jpayne@69 2407 typedef struct xcb_input_remove_master_t {
jpayne@69 2408 uint16_t type;
jpayne@69 2409 uint16_t len;
jpayne@69 2410 xcb_input_device_id_t deviceid;
jpayne@69 2411 uint8_t return_mode;
jpayne@69 2412 uint8_t pad0;
jpayne@69 2413 xcb_input_device_id_t return_pointer;
jpayne@69 2414 xcb_input_device_id_t return_keyboard;
jpayne@69 2415 } xcb_input_remove_master_t;
jpayne@69 2416
jpayne@69 2417 /**
jpayne@69 2418 * @brief xcb_input_remove_master_iterator_t
jpayne@69 2419 **/
jpayne@69 2420 typedef struct xcb_input_remove_master_iterator_t {
jpayne@69 2421 xcb_input_remove_master_t *data;
jpayne@69 2422 int rem;
jpayne@69 2423 int index;
jpayne@69 2424 } xcb_input_remove_master_iterator_t;
jpayne@69 2425
jpayne@69 2426 /**
jpayne@69 2427 * @brief xcb_input_attach_slave_t
jpayne@69 2428 **/
jpayne@69 2429 typedef struct xcb_input_attach_slave_t {
jpayne@69 2430 uint16_t type;
jpayne@69 2431 uint16_t len;
jpayne@69 2432 xcb_input_device_id_t deviceid;
jpayne@69 2433 xcb_input_device_id_t master;
jpayne@69 2434 } xcb_input_attach_slave_t;
jpayne@69 2435
jpayne@69 2436 /**
jpayne@69 2437 * @brief xcb_input_attach_slave_iterator_t
jpayne@69 2438 **/
jpayne@69 2439 typedef struct xcb_input_attach_slave_iterator_t {
jpayne@69 2440 xcb_input_attach_slave_t *data;
jpayne@69 2441 int rem;
jpayne@69 2442 int index;
jpayne@69 2443 } xcb_input_attach_slave_iterator_t;
jpayne@69 2444
jpayne@69 2445 /**
jpayne@69 2446 * @brief xcb_input_detach_slave_t
jpayne@69 2447 **/
jpayne@69 2448 typedef struct xcb_input_detach_slave_t {
jpayne@69 2449 uint16_t type;
jpayne@69 2450 uint16_t len;
jpayne@69 2451 xcb_input_device_id_t deviceid;
jpayne@69 2452 uint8_t pad0[2];
jpayne@69 2453 } xcb_input_detach_slave_t;
jpayne@69 2454
jpayne@69 2455 /**
jpayne@69 2456 * @brief xcb_input_detach_slave_iterator_t
jpayne@69 2457 **/
jpayne@69 2458 typedef struct xcb_input_detach_slave_iterator_t {
jpayne@69 2459 xcb_input_detach_slave_t *data;
jpayne@69 2460 int rem;
jpayne@69 2461 int index;
jpayne@69 2462 } xcb_input_detach_slave_iterator_t;
jpayne@69 2463
jpayne@69 2464 /**
jpayne@69 2465 * @brief xcb_input_hierarchy_change_data_t
jpayne@69 2466 **/
jpayne@69 2467 typedef struct xcb_input_hierarchy_change_data_t {
jpayne@69 2468 struct {
jpayne@69 2469 uint16_t name_len;
jpayne@69 2470 uint8_t send_core;
jpayne@69 2471 uint8_t enable;
jpayne@69 2472 char *name;
jpayne@69 2473 } add_master;
jpayne@69 2474 struct {
jpayne@69 2475 xcb_input_device_id_t deviceid;
jpayne@69 2476 uint8_t return_mode;
jpayne@69 2477 uint8_t pad1;
jpayne@69 2478 xcb_input_device_id_t return_pointer;
jpayne@69 2479 xcb_input_device_id_t return_keyboard;
jpayne@69 2480 } remove_master;
jpayne@69 2481 struct {
jpayne@69 2482 xcb_input_device_id_t deviceid;
jpayne@69 2483 xcb_input_device_id_t master;
jpayne@69 2484 } attach_slave;
jpayne@69 2485 struct {
jpayne@69 2486 xcb_input_device_id_t deviceid;
jpayne@69 2487 uint8_t pad2[2];
jpayne@69 2488 } detach_slave;
jpayne@69 2489 } xcb_input_hierarchy_change_data_t;
jpayne@69 2490
jpayne@69 2491 /**
jpayne@69 2492 * @brief xcb_input_hierarchy_change_t
jpayne@69 2493 **/
jpayne@69 2494 typedef struct xcb_input_hierarchy_change_t {
jpayne@69 2495 uint16_t type;
jpayne@69 2496 uint16_t len;
jpayne@69 2497 } xcb_input_hierarchy_change_t;
jpayne@69 2498
jpayne@69 2499 void *
jpayne@69 2500 xcb_input_hierarchy_change_data (const xcb_input_hierarchy_change_t *R);
jpayne@69 2501
jpayne@69 2502 /**
jpayne@69 2503 * @brief xcb_input_hierarchy_change_iterator_t
jpayne@69 2504 **/
jpayne@69 2505 typedef struct xcb_input_hierarchy_change_iterator_t {
jpayne@69 2506 xcb_input_hierarchy_change_t *data;
jpayne@69 2507 int rem;
jpayne@69 2508 int index;
jpayne@69 2509 } xcb_input_hierarchy_change_iterator_t;
jpayne@69 2510
jpayne@69 2511 /** Opcode for xcb_input_xi_change_hierarchy. */
jpayne@69 2512 #define XCB_INPUT_XI_CHANGE_HIERARCHY 43
jpayne@69 2513
jpayne@69 2514 /**
jpayne@69 2515 * @brief xcb_input_xi_change_hierarchy_request_t
jpayne@69 2516 **/
jpayne@69 2517 typedef struct xcb_input_xi_change_hierarchy_request_t {
jpayne@69 2518 uint8_t major_opcode;
jpayne@69 2519 uint8_t minor_opcode;
jpayne@69 2520 uint16_t length;
jpayne@69 2521 uint8_t num_changes;
jpayne@69 2522 uint8_t pad0[3];
jpayne@69 2523 } xcb_input_xi_change_hierarchy_request_t;
jpayne@69 2524
jpayne@69 2525 /** Opcode for xcb_input_xi_set_client_pointer. */
jpayne@69 2526 #define XCB_INPUT_XI_SET_CLIENT_POINTER 44
jpayne@69 2527
jpayne@69 2528 /**
jpayne@69 2529 * @brief xcb_input_xi_set_client_pointer_request_t
jpayne@69 2530 **/
jpayne@69 2531 typedef struct xcb_input_xi_set_client_pointer_request_t {
jpayne@69 2532 uint8_t major_opcode;
jpayne@69 2533 uint8_t minor_opcode;
jpayne@69 2534 uint16_t length;
jpayne@69 2535 xcb_window_t window;
jpayne@69 2536 xcb_input_device_id_t deviceid;
jpayne@69 2537 uint8_t pad0[2];
jpayne@69 2538 } xcb_input_xi_set_client_pointer_request_t;
jpayne@69 2539
jpayne@69 2540 /**
jpayne@69 2541 * @brief xcb_input_xi_get_client_pointer_cookie_t
jpayne@69 2542 **/
jpayne@69 2543 typedef struct xcb_input_xi_get_client_pointer_cookie_t {
jpayne@69 2544 unsigned int sequence;
jpayne@69 2545 } xcb_input_xi_get_client_pointer_cookie_t;
jpayne@69 2546
jpayne@69 2547 /** Opcode for xcb_input_xi_get_client_pointer. */
jpayne@69 2548 #define XCB_INPUT_XI_GET_CLIENT_POINTER 45
jpayne@69 2549
jpayne@69 2550 /**
jpayne@69 2551 * @brief xcb_input_xi_get_client_pointer_request_t
jpayne@69 2552 **/
jpayne@69 2553 typedef struct xcb_input_xi_get_client_pointer_request_t {
jpayne@69 2554 uint8_t major_opcode;
jpayne@69 2555 uint8_t minor_opcode;
jpayne@69 2556 uint16_t length;
jpayne@69 2557 xcb_window_t window;
jpayne@69 2558 } xcb_input_xi_get_client_pointer_request_t;
jpayne@69 2559
jpayne@69 2560 /**
jpayne@69 2561 * @brief xcb_input_xi_get_client_pointer_reply_t
jpayne@69 2562 **/
jpayne@69 2563 typedef struct xcb_input_xi_get_client_pointer_reply_t {
jpayne@69 2564 uint8_t response_type;
jpayne@69 2565 uint8_t pad0;
jpayne@69 2566 uint16_t sequence;
jpayne@69 2567 uint32_t length;
jpayne@69 2568 uint8_t set;
jpayne@69 2569 uint8_t pad1;
jpayne@69 2570 xcb_input_device_id_t deviceid;
jpayne@69 2571 uint8_t pad2[20];
jpayne@69 2572 } xcb_input_xi_get_client_pointer_reply_t;
jpayne@69 2573
jpayne@69 2574 typedef enum xcb_input_xi_event_mask_t {
jpayne@69 2575 XCB_INPUT_XI_EVENT_MASK_DEVICE_CHANGED = 2,
jpayne@69 2576 XCB_INPUT_XI_EVENT_MASK_KEY_PRESS = 4,
jpayne@69 2577 XCB_INPUT_XI_EVENT_MASK_KEY_RELEASE = 8,
jpayne@69 2578 XCB_INPUT_XI_EVENT_MASK_BUTTON_PRESS = 16,
jpayne@69 2579 XCB_INPUT_XI_EVENT_MASK_BUTTON_RELEASE = 32,
jpayne@69 2580 XCB_INPUT_XI_EVENT_MASK_MOTION = 64,
jpayne@69 2581 XCB_INPUT_XI_EVENT_MASK_ENTER = 128,
jpayne@69 2582 XCB_INPUT_XI_EVENT_MASK_LEAVE = 256,
jpayne@69 2583 XCB_INPUT_XI_EVENT_MASK_FOCUS_IN = 512,
jpayne@69 2584 XCB_INPUT_XI_EVENT_MASK_FOCUS_OUT = 1024,
jpayne@69 2585 XCB_INPUT_XI_EVENT_MASK_HIERARCHY = 2048,
jpayne@69 2586 XCB_INPUT_XI_EVENT_MASK_PROPERTY = 4096,
jpayne@69 2587 XCB_INPUT_XI_EVENT_MASK_RAW_KEY_PRESS = 8192,
jpayne@69 2588 XCB_INPUT_XI_EVENT_MASK_RAW_KEY_RELEASE = 16384,
jpayne@69 2589 XCB_INPUT_XI_EVENT_MASK_RAW_BUTTON_PRESS = 32768,
jpayne@69 2590 XCB_INPUT_XI_EVENT_MASK_RAW_BUTTON_RELEASE = 65536,
jpayne@69 2591 XCB_INPUT_XI_EVENT_MASK_RAW_MOTION = 131072,
jpayne@69 2592 XCB_INPUT_XI_EVENT_MASK_TOUCH_BEGIN = 262144,
jpayne@69 2593 XCB_INPUT_XI_EVENT_MASK_TOUCH_UPDATE = 524288,
jpayne@69 2594 XCB_INPUT_XI_EVENT_MASK_TOUCH_END = 1048576,
jpayne@69 2595 XCB_INPUT_XI_EVENT_MASK_TOUCH_OWNERSHIP = 2097152,
jpayne@69 2596 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_BEGIN = 4194304,
jpayne@69 2597 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_UPDATE = 8388608,
jpayne@69 2598 XCB_INPUT_XI_EVENT_MASK_RAW_TOUCH_END = 16777216,
jpayne@69 2599 XCB_INPUT_XI_EVENT_MASK_BARRIER_HIT = 33554432,
jpayne@69 2600 XCB_INPUT_XI_EVENT_MASK_BARRIER_LEAVE = 67108864
jpayne@69 2601 } xcb_input_xi_event_mask_t;
jpayne@69 2602
jpayne@69 2603 /**
jpayne@69 2604 * @brief xcb_input_event_mask_t
jpayne@69 2605 **/
jpayne@69 2606 typedef struct xcb_input_event_mask_t {
jpayne@69 2607 xcb_input_device_id_t deviceid;
jpayne@69 2608 uint16_t mask_len;
jpayne@69 2609 } xcb_input_event_mask_t;
jpayne@69 2610
jpayne@69 2611 /**
jpayne@69 2612 * @brief xcb_input_event_mask_iterator_t
jpayne@69 2613 **/
jpayne@69 2614 typedef struct xcb_input_event_mask_iterator_t {
jpayne@69 2615 xcb_input_event_mask_t *data;
jpayne@69 2616 int rem;
jpayne@69 2617 int index;
jpayne@69 2618 } xcb_input_event_mask_iterator_t;
jpayne@69 2619
jpayne@69 2620 /** Opcode for xcb_input_xi_select_events. */
jpayne@69 2621 #define XCB_INPUT_XI_SELECT_EVENTS 46
jpayne@69 2622
jpayne@69 2623 /**
jpayne@69 2624 * @brief xcb_input_xi_select_events_request_t
jpayne@69 2625 **/
jpayne@69 2626 typedef struct xcb_input_xi_select_events_request_t {
jpayne@69 2627 uint8_t major_opcode;
jpayne@69 2628 uint8_t minor_opcode;
jpayne@69 2629 uint16_t length;
jpayne@69 2630 xcb_window_t window;
jpayne@69 2631 uint16_t num_mask;
jpayne@69 2632 uint8_t pad0[2];
jpayne@69 2633 } xcb_input_xi_select_events_request_t;
jpayne@69 2634
jpayne@69 2635 /**
jpayne@69 2636 * @brief xcb_input_xi_query_version_cookie_t
jpayne@69 2637 **/
jpayne@69 2638 typedef struct xcb_input_xi_query_version_cookie_t {
jpayne@69 2639 unsigned int sequence;
jpayne@69 2640 } xcb_input_xi_query_version_cookie_t;
jpayne@69 2641
jpayne@69 2642 /** Opcode for xcb_input_xi_query_version. */
jpayne@69 2643 #define XCB_INPUT_XI_QUERY_VERSION 47
jpayne@69 2644
jpayne@69 2645 /**
jpayne@69 2646 * @brief xcb_input_xi_query_version_request_t
jpayne@69 2647 **/
jpayne@69 2648 typedef struct xcb_input_xi_query_version_request_t {
jpayne@69 2649 uint8_t major_opcode;
jpayne@69 2650 uint8_t minor_opcode;
jpayne@69 2651 uint16_t length;
jpayne@69 2652 uint16_t major_version;
jpayne@69 2653 uint16_t minor_version;
jpayne@69 2654 } xcb_input_xi_query_version_request_t;
jpayne@69 2655
jpayne@69 2656 /**
jpayne@69 2657 * @brief xcb_input_xi_query_version_reply_t
jpayne@69 2658 **/
jpayne@69 2659 typedef struct xcb_input_xi_query_version_reply_t {
jpayne@69 2660 uint8_t response_type;
jpayne@69 2661 uint8_t pad0;
jpayne@69 2662 uint16_t sequence;
jpayne@69 2663 uint32_t length;
jpayne@69 2664 uint16_t major_version;
jpayne@69 2665 uint16_t minor_version;
jpayne@69 2666 uint8_t pad1[20];
jpayne@69 2667 } xcb_input_xi_query_version_reply_t;
jpayne@69 2668
jpayne@69 2669 typedef enum xcb_input_device_class_type_t {
jpayne@69 2670 XCB_INPUT_DEVICE_CLASS_TYPE_KEY = 0,
jpayne@69 2671 XCB_INPUT_DEVICE_CLASS_TYPE_BUTTON = 1,
jpayne@69 2672 XCB_INPUT_DEVICE_CLASS_TYPE_VALUATOR = 2,
jpayne@69 2673 XCB_INPUT_DEVICE_CLASS_TYPE_SCROLL = 3,
jpayne@69 2674 XCB_INPUT_DEVICE_CLASS_TYPE_TOUCH = 8,
jpayne@69 2675 XCB_INPUT_DEVICE_CLASS_TYPE_GESTURE = 9
jpayne@69 2676 } xcb_input_device_class_type_t;
jpayne@69 2677
jpayne@69 2678 typedef enum xcb_input_device_type_t {
jpayne@69 2679 XCB_INPUT_DEVICE_TYPE_MASTER_POINTER = 1,
jpayne@69 2680 XCB_INPUT_DEVICE_TYPE_MASTER_KEYBOARD = 2,
jpayne@69 2681 XCB_INPUT_DEVICE_TYPE_SLAVE_POINTER = 3,
jpayne@69 2682 XCB_INPUT_DEVICE_TYPE_SLAVE_KEYBOARD = 4,
jpayne@69 2683 XCB_INPUT_DEVICE_TYPE_FLOATING_SLAVE = 5
jpayne@69 2684 } xcb_input_device_type_t;
jpayne@69 2685
jpayne@69 2686 typedef enum xcb_input_scroll_flags_t {
jpayne@69 2687 XCB_INPUT_SCROLL_FLAGS_NO_EMULATION = 1,
jpayne@69 2688 XCB_INPUT_SCROLL_FLAGS_PREFERRED = 2
jpayne@69 2689 } xcb_input_scroll_flags_t;
jpayne@69 2690
jpayne@69 2691 typedef enum xcb_input_scroll_type_t {
jpayne@69 2692 XCB_INPUT_SCROLL_TYPE_VERTICAL = 1,
jpayne@69 2693 XCB_INPUT_SCROLL_TYPE_HORIZONTAL = 2
jpayne@69 2694 } xcb_input_scroll_type_t;
jpayne@69 2695
jpayne@69 2696 typedef enum xcb_input_touch_mode_t {
jpayne@69 2697 XCB_INPUT_TOUCH_MODE_DIRECT = 1,
jpayne@69 2698 XCB_INPUT_TOUCH_MODE_DEPENDENT = 2
jpayne@69 2699 } xcb_input_touch_mode_t;
jpayne@69 2700
jpayne@69 2701 /**
jpayne@69 2702 * @brief xcb_input_button_class_t
jpayne@69 2703 **/
jpayne@69 2704 typedef struct xcb_input_button_class_t {
jpayne@69 2705 uint16_t type;
jpayne@69 2706 uint16_t len;
jpayne@69 2707 xcb_input_device_id_t sourceid;
jpayne@69 2708 uint16_t num_buttons;
jpayne@69 2709 } xcb_input_button_class_t;
jpayne@69 2710
jpayne@69 2711 /**
jpayne@69 2712 * @brief xcb_input_button_class_iterator_t
jpayne@69 2713 **/
jpayne@69 2714 typedef struct xcb_input_button_class_iterator_t {
jpayne@69 2715 xcb_input_button_class_t *data;
jpayne@69 2716 int rem;
jpayne@69 2717 int index;
jpayne@69 2718 } xcb_input_button_class_iterator_t;
jpayne@69 2719
jpayne@69 2720 /**
jpayne@69 2721 * @brief xcb_input_key_class_t
jpayne@69 2722 **/
jpayne@69 2723 typedef struct xcb_input_key_class_t {
jpayne@69 2724 uint16_t type;
jpayne@69 2725 uint16_t len;
jpayne@69 2726 xcb_input_device_id_t sourceid;
jpayne@69 2727 uint16_t num_keys;
jpayne@69 2728 } xcb_input_key_class_t;
jpayne@69 2729
jpayne@69 2730 /**
jpayne@69 2731 * @brief xcb_input_key_class_iterator_t
jpayne@69 2732 **/
jpayne@69 2733 typedef struct xcb_input_key_class_iterator_t {
jpayne@69 2734 xcb_input_key_class_t *data;
jpayne@69 2735 int rem;
jpayne@69 2736 int index;
jpayne@69 2737 } xcb_input_key_class_iterator_t;
jpayne@69 2738
jpayne@69 2739 /**
jpayne@69 2740 * @brief xcb_input_scroll_class_t
jpayne@69 2741 **/
jpayne@69 2742 typedef struct xcb_input_scroll_class_t {
jpayne@69 2743 uint16_t type;
jpayne@69 2744 uint16_t len;
jpayne@69 2745 xcb_input_device_id_t sourceid;
jpayne@69 2746 uint16_t number;
jpayne@69 2747 uint16_t scroll_type;
jpayne@69 2748 uint8_t pad0[2];
jpayne@69 2749 uint32_t flags;
jpayne@69 2750 xcb_input_fp3232_t increment;
jpayne@69 2751 } xcb_input_scroll_class_t;
jpayne@69 2752
jpayne@69 2753 /**
jpayne@69 2754 * @brief xcb_input_scroll_class_iterator_t
jpayne@69 2755 **/
jpayne@69 2756 typedef struct xcb_input_scroll_class_iterator_t {
jpayne@69 2757 xcb_input_scroll_class_t *data;
jpayne@69 2758 int rem;
jpayne@69 2759 int index;
jpayne@69 2760 } xcb_input_scroll_class_iterator_t;
jpayne@69 2761
jpayne@69 2762 /**
jpayne@69 2763 * @brief xcb_input_touch_class_t
jpayne@69 2764 **/
jpayne@69 2765 typedef struct xcb_input_touch_class_t {
jpayne@69 2766 uint16_t type;
jpayne@69 2767 uint16_t len;
jpayne@69 2768 xcb_input_device_id_t sourceid;
jpayne@69 2769 uint8_t mode;
jpayne@69 2770 uint8_t num_touches;
jpayne@69 2771 } xcb_input_touch_class_t;
jpayne@69 2772
jpayne@69 2773 /**
jpayne@69 2774 * @brief xcb_input_touch_class_iterator_t
jpayne@69 2775 **/
jpayne@69 2776 typedef struct xcb_input_touch_class_iterator_t {
jpayne@69 2777 xcb_input_touch_class_t *data;
jpayne@69 2778 int rem;
jpayne@69 2779 int index;
jpayne@69 2780 } xcb_input_touch_class_iterator_t;
jpayne@69 2781
jpayne@69 2782 /**
jpayne@69 2783 * @brief xcb_input_gesture_class_t
jpayne@69 2784 **/
jpayne@69 2785 typedef struct xcb_input_gesture_class_t {
jpayne@69 2786 uint16_t type;
jpayne@69 2787 uint16_t len;
jpayne@69 2788 xcb_input_device_id_t sourceid;
jpayne@69 2789 uint8_t num_touches;
jpayne@69 2790 uint8_t pad0;
jpayne@69 2791 } xcb_input_gesture_class_t;
jpayne@69 2792
jpayne@69 2793 /**
jpayne@69 2794 * @brief xcb_input_gesture_class_iterator_t
jpayne@69 2795 **/
jpayne@69 2796 typedef struct xcb_input_gesture_class_iterator_t {
jpayne@69 2797 xcb_input_gesture_class_t *data;
jpayne@69 2798 int rem;
jpayne@69 2799 int index;
jpayne@69 2800 } xcb_input_gesture_class_iterator_t;
jpayne@69 2801
jpayne@69 2802 /**
jpayne@69 2803 * @brief xcb_input_valuator_class_t
jpayne@69 2804 **/
jpayne@69 2805 typedef struct xcb_input_valuator_class_t {
jpayne@69 2806 uint16_t type;
jpayne@69 2807 uint16_t len;
jpayne@69 2808 xcb_input_device_id_t sourceid;
jpayne@69 2809 uint16_t number;
jpayne@69 2810 xcb_atom_t label;
jpayne@69 2811 xcb_input_fp3232_t min;
jpayne@69 2812 xcb_input_fp3232_t max;
jpayne@69 2813 xcb_input_fp3232_t value;
jpayne@69 2814 uint32_t resolution;
jpayne@69 2815 uint8_t mode;
jpayne@69 2816 uint8_t pad0[3];
jpayne@69 2817 } xcb_input_valuator_class_t;
jpayne@69 2818
jpayne@69 2819 /**
jpayne@69 2820 * @brief xcb_input_valuator_class_iterator_t
jpayne@69 2821 **/
jpayne@69 2822 typedef struct xcb_input_valuator_class_iterator_t {
jpayne@69 2823 xcb_input_valuator_class_t *data;
jpayne@69 2824 int rem;
jpayne@69 2825 int index;
jpayne@69 2826 } xcb_input_valuator_class_iterator_t;
jpayne@69 2827
jpayne@69 2828 /**
jpayne@69 2829 * @brief xcb_input_device_class_data_t
jpayne@69 2830 **/
jpayne@69 2831 typedef struct xcb_input_device_class_data_t {
jpayne@69 2832 struct {
jpayne@69 2833 uint16_t num_keys;
jpayne@69 2834 uint32_t *keys;
jpayne@69 2835 } key;
jpayne@69 2836 struct {
jpayne@69 2837 uint16_t num_buttons;
jpayne@69 2838 uint32_t *state;
jpayne@69 2839 xcb_atom_t *labels;
jpayne@69 2840 } button;
jpayne@69 2841 struct {
jpayne@69 2842 uint16_t number;
jpayne@69 2843 xcb_atom_t label;
jpayne@69 2844 xcb_input_fp3232_t min;
jpayne@69 2845 xcb_input_fp3232_t max;
jpayne@69 2846 xcb_input_fp3232_t value;
jpayne@69 2847 uint32_t resolution;
jpayne@69 2848 uint8_t mode;
jpayne@69 2849 uint8_t pad0[3];
jpayne@69 2850 } valuator;
jpayne@69 2851 struct {
jpayne@69 2852 uint16_t number;
jpayne@69 2853 uint16_t scroll_type;
jpayne@69 2854 uint8_t pad1[2];
jpayne@69 2855 uint32_t flags;
jpayne@69 2856 xcb_input_fp3232_t increment;
jpayne@69 2857 } scroll;
jpayne@69 2858 struct {
jpayne@69 2859 uint8_t mode;
jpayne@69 2860 uint8_t num_touches;
jpayne@69 2861 } touch;
jpayne@69 2862 struct {
jpayne@69 2863 uint8_t num_touches;
jpayne@69 2864 uint8_t pad2;
jpayne@69 2865 } gesture;
jpayne@69 2866 } xcb_input_device_class_data_t;
jpayne@69 2867
jpayne@69 2868 /**
jpayne@69 2869 * @brief xcb_input_device_class_t
jpayne@69 2870 **/
jpayne@69 2871 typedef struct xcb_input_device_class_t {
jpayne@69 2872 uint16_t type;
jpayne@69 2873 uint16_t len;
jpayne@69 2874 xcb_input_device_id_t sourceid;
jpayne@69 2875 } xcb_input_device_class_t;
jpayne@69 2876
jpayne@69 2877 void *
jpayne@69 2878 xcb_input_device_class_data (const xcb_input_device_class_t *R);
jpayne@69 2879
jpayne@69 2880 /**
jpayne@69 2881 * @brief xcb_input_device_class_iterator_t
jpayne@69 2882 **/
jpayne@69 2883 typedef struct xcb_input_device_class_iterator_t {
jpayne@69 2884 xcb_input_device_class_t *data;
jpayne@69 2885 int rem;
jpayne@69 2886 int index;
jpayne@69 2887 } xcb_input_device_class_iterator_t;
jpayne@69 2888
jpayne@69 2889 /**
jpayne@69 2890 * @brief xcb_input_xi_device_info_t
jpayne@69 2891 **/
jpayne@69 2892 typedef struct xcb_input_xi_device_info_t {
jpayne@69 2893 xcb_input_device_id_t deviceid;
jpayne@69 2894 uint16_t type;
jpayne@69 2895 xcb_input_device_id_t attachment;
jpayne@69 2896 uint16_t num_classes;
jpayne@69 2897 uint16_t name_len;
jpayne@69 2898 uint8_t enabled;
jpayne@69 2899 uint8_t pad0;
jpayne@69 2900 } xcb_input_xi_device_info_t;
jpayne@69 2901
jpayne@69 2902 /**
jpayne@69 2903 * @brief xcb_input_xi_device_info_iterator_t
jpayne@69 2904 **/
jpayne@69 2905 typedef struct xcb_input_xi_device_info_iterator_t {
jpayne@69 2906 xcb_input_xi_device_info_t *data;
jpayne@69 2907 int rem;
jpayne@69 2908 int index;
jpayne@69 2909 } xcb_input_xi_device_info_iterator_t;
jpayne@69 2910
jpayne@69 2911 /**
jpayne@69 2912 * @brief xcb_input_xi_query_device_cookie_t
jpayne@69 2913 **/
jpayne@69 2914 typedef struct xcb_input_xi_query_device_cookie_t {
jpayne@69 2915 unsigned int sequence;
jpayne@69 2916 } xcb_input_xi_query_device_cookie_t;
jpayne@69 2917
jpayne@69 2918 /** Opcode for xcb_input_xi_query_device. */
jpayne@69 2919 #define XCB_INPUT_XI_QUERY_DEVICE 48
jpayne@69 2920
jpayne@69 2921 /**
jpayne@69 2922 * @brief xcb_input_xi_query_device_request_t
jpayne@69 2923 **/
jpayne@69 2924 typedef struct xcb_input_xi_query_device_request_t {
jpayne@69 2925 uint8_t major_opcode;
jpayne@69 2926 uint8_t minor_opcode;
jpayne@69 2927 uint16_t length;
jpayne@69 2928 xcb_input_device_id_t deviceid;
jpayne@69 2929 uint8_t pad0[2];
jpayne@69 2930 } xcb_input_xi_query_device_request_t;
jpayne@69 2931
jpayne@69 2932 /**
jpayne@69 2933 * @brief xcb_input_xi_query_device_reply_t
jpayne@69 2934 **/
jpayne@69 2935 typedef struct xcb_input_xi_query_device_reply_t {
jpayne@69 2936 uint8_t response_type;
jpayne@69 2937 uint8_t pad0;
jpayne@69 2938 uint16_t sequence;
jpayne@69 2939 uint32_t length;
jpayne@69 2940 uint16_t num_infos;
jpayne@69 2941 uint8_t pad1[22];
jpayne@69 2942 } xcb_input_xi_query_device_reply_t;
jpayne@69 2943
jpayne@69 2944 /** Opcode for xcb_input_xi_set_focus. */
jpayne@69 2945 #define XCB_INPUT_XI_SET_FOCUS 49
jpayne@69 2946
jpayne@69 2947 /**
jpayne@69 2948 * @brief xcb_input_xi_set_focus_request_t
jpayne@69 2949 **/
jpayne@69 2950 typedef struct xcb_input_xi_set_focus_request_t {
jpayne@69 2951 uint8_t major_opcode;
jpayne@69 2952 uint8_t minor_opcode;
jpayne@69 2953 uint16_t length;
jpayne@69 2954 xcb_window_t window;
jpayne@69 2955 xcb_timestamp_t time;
jpayne@69 2956 xcb_input_device_id_t deviceid;
jpayne@69 2957 uint8_t pad0[2];
jpayne@69 2958 } xcb_input_xi_set_focus_request_t;
jpayne@69 2959
jpayne@69 2960 /**
jpayne@69 2961 * @brief xcb_input_xi_get_focus_cookie_t
jpayne@69 2962 **/
jpayne@69 2963 typedef struct xcb_input_xi_get_focus_cookie_t {
jpayne@69 2964 unsigned int sequence;
jpayne@69 2965 } xcb_input_xi_get_focus_cookie_t;
jpayne@69 2966
jpayne@69 2967 /** Opcode for xcb_input_xi_get_focus. */
jpayne@69 2968 #define XCB_INPUT_XI_GET_FOCUS 50
jpayne@69 2969
jpayne@69 2970 /**
jpayne@69 2971 * @brief xcb_input_xi_get_focus_request_t
jpayne@69 2972 **/
jpayne@69 2973 typedef struct xcb_input_xi_get_focus_request_t {
jpayne@69 2974 uint8_t major_opcode;
jpayne@69 2975 uint8_t minor_opcode;
jpayne@69 2976 uint16_t length;
jpayne@69 2977 xcb_input_device_id_t deviceid;
jpayne@69 2978 uint8_t pad0[2];
jpayne@69 2979 } xcb_input_xi_get_focus_request_t;
jpayne@69 2980
jpayne@69 2981 /**
jpayne@69 2982 * @brief xcb_input_xi_get_focus_reply_t
jpayne@69 2983 **/
jpayne@69 2984 typedef struct xcb_input_xi_get_focus_reply_t {
jpayne@69 2985 uint8_t response_type;
jpayne@69 2986 uint8_t pad0;
jpayne@69 2987 uint16_t sequence;
jpayne@69 2988 uint32_t length;
jpayne@69 2989 xcb_window_t focus;
jpayne@69 2990 uint8_t pad1[20];
jpayne@69 2991 } xcb_input_xi_get_focus_reply_t;
jpayne@69 2992
jpayne@69 2993 typedef enum xcb_input_grab_owner_t {
jpayne@69 2994 XCB_INPUT_GRAB_OWNER_NO_OWNER = 0,
jpayne@69 2995 XCB_INPUT_GRAB_OWNER_OWNER = 1
jpayne@69 2996 } xcb_input_grab_owner_t;
jpayne@69 2997
jpayne@69 2998 /**
jpayne@69 2999 * @brief xcb_input_xi_grab_device_cookie_t
jpayne@69 3000 **/
jpayne@69 3001 typedef struct xcb_input_xi_grab_device_cookie_t {
jpayne@69 3002 unsigned int sequence;
jpayne@69 3003 } xcb_input_xi_grab_device_cookie_t;
jpayne@69 3004
jpayne@69 3005 /** Opcode for xcb_input_xi_grab_device. */
jpayne@69 3006 #define XCB_INPUT_XI_GRAB_DEVICE 51
jpayne@69 3007
jpayne@69 3008 /**
jpayne@69 3009 * @brief xcb_input_xi_grab_device_request_t
jpayne@69 3010 **/
jpayne@69 3011 typedef struct xcb_input_xi_grab_device_request_t {
jpayne@69 3012 uint8_t major_opcode;
jpayne@69 3013 uint8_t minor_opcode;
jpayne@69 3014 uint16_t length;
jpayne@69 3015 xcb_window_t window;
jpayne@69 3016 xcb_timestamp_t time;
jpayne@69 3017 xcb_cursor_t cursor;
jpayne@69 3018 xcb_input_device_id_t deviceid;
jpayne@69 3019 uint8_t mode;
jpayne@69 3020 uint8_t paired_device_mode;
jpayne@69 3021 uint8_t owner_events;
jpayne@69 3022 uint8_t pad0;
jpayne@69 3023 uint16_t mask_len;
jpayne@69 3024 } xcb_input_xi_grab_device_request_t;
jpayne@69 3025
jpayne@69 3026 /**
jpayne@69 3027 * @brief xcb_input_xi_grab_device_reply_t
jpayne@69 3028 **/
jpayne@69 3029 typedef struct xcb_input_xi_grab_device_reply_t {
jpayne@69 3030 uint8_t response_type;
jpayne@69 3031 uint8_t pad0;
jpayne@69 3032 uint16_t sequence;
jpayne@69 3033 uint32_t length;
jpayne@69 3034 uint8_t status;
jpayne@69 3035 uint8_t pad1[23];
jpayne@69 3036 } xcb_input_xi_grab_device_reply_t;
jpayne@69 3037
jpayne@69 3038 /** Opcode for xcb_input_xi_ungrab_device. */
jpayne@69 3039 #define XCB_INPUT_XI_UNGRAB_DEVICE 52
jpayne@69 3040
jpayne@69 3041 /**
jpayne@69 3042 * @brief xcb_input_xi_ungrab_device_request_t
jpayne@69 3043 **/
jpayne@69 3044 typedef struct xcb_input_xi_ungrab_device_request_t {
jpayne@69 3045 uint8_t major_opcode;
jpayne@69 3046 uint8_t minor_opcode;
jpayne@69 3047 uint16_t length;
jpayne@69 3048 xcb_timestamp_t time;
jpayne@69 3049 xcb_input_device_id_t deviceid;
jpayne@69 3050 uint8_t pad0[2];
jpayne@69 3051 } xcb_input_xi_ungrab_device_request_t;
jpayne@69 3052
jpayne@69 3053 typedef enum xcb_input_event_mode_t {
jpayne@69 3054 XCB_INPUT_EVENT_MODE_ASYNC_DEVICE = 0,
jpayne@69 3055 XCB_INPUT_EVENT_MODE_SYNC_DEVICE = 1,
jpayne@69 3056 XCB_INPUT_EVENT_MODE_REPLAY_DEVICE = 2,
jpayne@69 3057 XCB_INPUT_EVENT_MODE_ASYNC_PAIRED_DEVICE = 3,
jpayne@69 3058 XCB_INPUT_EVENT_MODE_ASYNC_PAIR = 4,
jpayne@69 3059 XCB_INPUT_EVENT_MODE_SYNC_PAIR = 5,
jpayne@69 3060 XCB_INPUT_EVENT_MODE_ACCEPT_TOUCH = 6,
jpayne@69 3061 XCB_INPUT_EVENT_MODE_REJECT_TOUCH = 7
jpayne@69 3062 } xcb_input_event_mode_t;
jpayne@69 3063
jpayne@69 3064 /** Opcode for xcb_input_xi_allow_events. */
jpayne@69 3065 #define XCB_INPUT_XI_ALLOW_EVENTS 53
jpayne@69 3066
jpayne@69 3067 /**
jpayne@69 3068 * @brief xcb_input_xi_allow_events_request_t
jpayne@69 3069 **/
jpayne@69 3070 typedef struct xcb_input_xi_allow_events_request_t {
jpayne@69 3071 uint8_t major_opcode;
jpayne@69 3072 uint8_t minor_opcode;
jpayne@69 3073 uint16_t length;
jpayne@69 3074 xcb_timestamp_t time;
jpayne@69 3075 xcb_input_device_id_t deviceid;
jpayne@69 3076 uint8_t event_mode;
jpayne@69 3077 uint8_t pad0;
jpayne@69 3078 uint32_t touchid;
jpayne@69 3079 xcb_window_t grab_window;
jpayne@69 3080 } xcb_input_xi_allow_events_request_t;
jpayne@69 3081
jpayne@69 3082 typedef enum xcb_input_grab_mode_22_t {
jpayne@69 3083 XCB_INPUT_GRAB_MODE_22_SYNC = 0,
jpayne@69 3084 XCB_INPUT_GRAB_MODE_22_ASYNC = 1,
jpayne@69 3085 XCB_INPUT_GRAB_MODE_22_TOUCH = 2
jpayne@69 3086 } xcb_input_grab_mode_22_t;
jpayne@69 3087
jpayne@69 3088 typedef enum xcb_input_grab_type_t {
jpayne@69 3089 XCB_INPUT_GRAB_TYPE_BUTTON = 0,
jpayne@69 3090 XCB_INPUT_GRAB_TYPE_KEYCODE = 1,
jpayne@69 3091 XCB_INPUT_GRAB_TYPE_ENTER = 2,
jpayne@69 3092 XCB_INPUT_GRAB_TYPE_FOCUS_IN = 3,
jpayne@69 3093 XCB_INPUT_GRAB_TYPE_TOUCH_BEGIN = 4,
jpayne@69 3094 XCB_INPUT_GRAB_TYPE_GESTURE_PINCH_BEGIN = 5,
jpayne@69 3095 XCB_INPUT_GRAB_TYPE_GESTURE_SWIPE_BEGIN = 6
jpayne@69 3096 } xcb_input_grab_type_t;
jpayne@69 3097
jpayne@69 3098 typedef enum xcb_input_modifier_mask_t {
jpayne@69 3099 XCB_INPUT_MODIFIER_MASK_ANY = 2147483648
jpayne@69 3100 } xcb_input_modifier_mask_t;
jpayne@69 3101
jpayne@69 3102 /**
jpayne@69 3103 * @brief xcb_input_grab_modifier_info_t
jpayne@69 3104 **/
jpayne@69 3105 typedef struct xcb_input_grab_modifier_info_t {
jpayne@69 3106 uint32_t modifiers;
jpayne@69 3107 uint8_t status;
jpayne@69 3108 uint8_t pad0[3];
jpayne@69 3109 } xcb_input_grab_modifier_info_t;
jpayne@69 3110
jpayne@69 3111 /**
jpayne@69 3112 * @brief xcb_input_grab_modifier_info_iterator_t
jpayne@69 3113 **/
jpayne@69 3114 typedef struct xcb_input_grab_modifier_info_iterator_t {
jpayne@69 3115 xcb_input_grab_modifier_info_t *data;
jpayne@69 3116 int rem;
jpayne@69 3117 int index;
jpayne@69 3118 } xcb_input_grab_modifier_info_iterator_t;
jpayne@69 3119
jpayne@69 3120 /**
jpayne@69 3121 * @brief xcb_input_xi_passive_grab_device_cookie_t
jpayne@69 3122 **/
jpayne@69 3123 typedef struct xcb_input_xi_passive_grab_device_cookie_t {
jpayne@69 3124 unsigned int sequence;
jpayne@69 3125 } xcb_input_xi_passive_grab_device_cookie_t;
jpayne@69 3126
jpayne@69 3127 /** Opcode for xcb_input_xi_passive_grab_device. */
jpayne@69 3128 #define XCB_INPUT_XI_PASSIVE_GRAB_DEVICE 54
jpayne@69 3129
jpayne@69 3130 /**
jpayne@69 3131 * @brief xcb_input_xi_passive_grab_device_request_t
jpayne@69 3132 **/
jpayne@69 3133 typedef struct xcb_input_xi_passive_grab_device_request_t {
jpayne@69 3134 uint8_t major_opcode;
jpayne@69 3135 uint8_t minor_opcode;
jpayne@69 3136 uint16_t length;
jpayne@69 3137 xcb_timestamp_t time;
jpayne@69 3138 xcb_window_t grab_window;
jpayne@69 3139 xcb_cursor_t cursor;
jpayne@69 3140 uint32_t detail;
jpayne@69 3141 xcb_input_device_id_t deviceid;
jpayne@69 3142 uint16_t num_modifiers;
jpayne@69 3143 uint16_t mask_len;
jpayne@69 3144 uint8_t grab_type;
jpayne@69 3145 uint8_t grab_mode;
jpayne@69 3146 uint8_t paired_device_mode;
jpayne@69 3147 uint8_t owner_events;
jpayne@69 3148 uint8_t pad0[2];
jpayne@69 3149 } xcb_input_xi_passive_grab_device_request_t;
jpayne@69 3150
jpayne@69 3151 /**
jpayne@69 3152 * @brief xcb_input_xi_passive_grab_device_reply_t
jpayne@69 3153 **/
jpayne@69 3154 typedef struct xcb_input_xi_passive_grab_device_reply_t {
jpayne@69 3155 uint8_t response_type;
jpayne@69 3156 uint8_t pad0;
jpayne@69 3157 uint16_t sequence;
jpayne@69 3158 uint32_t length;
jpayne@69 3159 uint16_t num_modifiers;
jpayne@69 3160 uint8_t pad1[22];
jpayne@69 3161 } xcb_input_xi_passive_grab_device_reply_t;
jpayne@69 3162
jpayne@69 3163 /** Opcode for xcb_input_xi_passive_ungrab_device. */
jpayne@69 3164 #define XCB_INPUT_XI_PASSIVE_UNGRAB_DEVICE 55
jpayne@69 3165
jpayne@69 3166 /**
jpayne@69 3167 * @brief xcb_input_xi_passive_ungrab_device_request_t
jpayne@69 3168 **/
jpayne@69 3169 typedef struct xcb_input_xi_passive_ungrab_device_request_t {
jpayne@69 3170 uint8_t major_opcode;
jpayne@69 3171 uint8_t minor_opcode;
jpayne@69 3172 uint16_t length;
jpayne@69 3173 xcb_window_t grab_window;
jpayne@69 3174 uint32_t detail;
jpayne@69 3175 xcb_input_device_id_t deviceid;
jpayne@69 3176 uint16_t num_modifiers;
jpayne@69 3177 uint8_t grab_type;
jpayne@69 3178 uint8_t pad0[3];
jpayne@69 3179 } xcb_input_xi_passive_ungrab_device_request_t;
jpayne@69 3180
jpayne@69 3181 /**
jpayne@69 3182 * @brief xcb_input_xi_list_properties_cookie_t
jpayne@69 3183 **/
jpayne@69 3184 typedef struct xcb_input_xi_list_properties_cookie_t {
jpayne@69 3185 unsigned int sequence;
jpayne@69 3186 } xcb_input_xi_list_properties_cookie_t;
jpayne@69 3187
jpayne@69 3188 /** Opcode for xcb_input_xi_list_properties. */
jpayne@69 3189 #define XCB_INPUT_XI_LIST_PROPERTIES 56
jpayne@69 3190
jpayne@69 3191 /**
jpayne@69 3192 * @brief xcb_input_xi_list_properties_request_t
jpayne@69 3193 **/
jpayne@69 3194 typedef struct xcb_input_xi_list_properties_request_t {
jpayne@69 3195 uint8_t major_opcode;
jpayne@69 3196 uint8_t minor_opcode;
jpayne@69 3197 uint16_t length;
jpayne@69 3198 xcb_input_device_id_t deviceid;
jpayne@69 3199 uint8_t pad0[2];
jpayne@69 3200 } xcb_input_xi_list_properties_request_t;
jpayne@69 3201
jpayne@69 3202 /**
jpayne@69 3203 * @brief xcb_input_xi_list_properties_reply_t
jpayne@69 3204 **/
jpayne@69 3205 typedef struct xcb_input_xi_list_properties_reply_t {
jpayne@69 3206 uint8_t response_type;
jpayne@69 3207 uint8_t pad0;
jpayne@69 3208 uint16_t sequence;
jpayne@69 3209 uint32_t length;
jpayne@69 3210 uint16_t num_properties;
jpayne@69 3211 uint8_t pad1[22];
jpayne@69 3212 } xcb_input_xi_list_properties_reply_t;
jpayne@69 3213
jpayne@69 3214 /**
jpayne@69 3215 * @brief xcb_input_xi_change_property_items_t
jpayne@69 3216 **/
jpayne@69 3217 typedef struct xcb_input_xi_change_property_items_t {
jpayne@69 3218 uint8_t *data8;
jpayne@69 3219 uint16_t *data16;
jpayne@69 3220 uint32_t *data32;
jpayne@69 3221 } xcb_input_xi_change_property_items_t;
jpayne@69 3222
jpayne@69 3223 /** Opcode for xcb_input_xi_change_property. */
jpayne@69 3224 #define XCB_INPUT_XI_CHANGE_PROPERTY 57
jpayne@69 3225
jpayne@69 3226 /**
jpayne@69 3227 * @brief xcb_input_xi_change_property_request_t
jpayne@69 3228 **/
jpayne@69 3229 typedef struct xcb_input_xi_change_property_request_t {
jpayne@69 3230 uint8_t major_opcode;
jpayne@69 3231 uint8_t minor_opcode;
jpayne@69 3232 uint16_t length;
jpayne@69 3233 xcb_input_device_id_t deviceid;
jpayne@69 3234 uint8_t mode;
jpayne@69 3235 uint8_t format;
jpayne@69 3236 xcb_atom_t property;
jpayne@69 3237 xcb_atom_t type;
jpayne@69 3238 uint32_t num_items;
jpayne@69 3239 } xcb_input_xi_change_property_request_t;
jpayne@69 3240
jpayne@69 3241 /** Opcode for xcb_input_xi_delete_property. */
jpayne@69 3242 #define XCB_INPUT_XI_DELETE_PROPERTY 58
jpayne@69 3243
jpayne@69 3244 /**
jpayne@69 3245 * @brief xcb_input_xi_delete_property_request_t
jpayne@69 3246 **/
jpayne@69 3247 typedef struct xcb_input_xi_delete_property_request_t {
jpayne@69 3248 uint8_t major_opcode;
jpayne@69 3249 uint8_t minor_opcode;
jpayne@69 3250 uint16_t length;
jpayne@69 3251 xcb_input_device_id_t deviceid;
jpayne@69 3252 uint8_t pad0[2];
jpayne@69 3253 xcb_atom_t property;
jpayne@69 3254 } xcb_input_xi_delete_property_request_t;
jpayne@69 3255
jpayne@69 3256 /**
jpayne@69 3257 * @brief xcb_input_xi_get_property_cookie_t
jpayne@69 3258 **/
jpayne@69 3259 typedef struct xcb_input_xi_get_property_cookie_t {
jpayne@69 3260 unsigned int sequence;
jpayne@69 3261 } xcb_input_xi_get_property_cookie_t;
jpayne@69 3262
jpayne@69 3263 /** Opcode for xcb_input_xi_get_property. */
jpayne@69 3264 #define XCB_INPUT_XI_GET_PROPERTY 59
jpayne@69 3265
jpayne@69 3266 /**
jpayne@69 3267 * @brief xcb_input_xi_get_property_request_t
jpayne@69 3268 **/
jpayne@69 3269 typedef struct xcb_input_xi_get_property_request_t {
jpayne@69 3270 uint8_t major_opcode;
jpayne@69 3271 uint8_t minor_opcode;
jpayne@69 3272 uint16_t length;
jpayne@69 3273 xcb_input_device_id_t deviceid;
jpayne@69 3274 uint8_t _delete;
jpayne@69 3275 uint8_t pad0;
jpayne@69 3276 xcb_atom_t property;
jpayne@69 3277 xcb_atom_t type;
jpayne@69 3278 uint32_t offset;
jpayne@69 3279 uint32_t len;
jpayne@69 3280 } xcb_input_xi_get_property_request_t;
jpayne@69 3281
jpayne@69 3282 /**
jpayne@69 3283 * @brief xcb_input_xi_get_property_items_t
jpayne@69 3284 **/
jpayne@69 3285 typedef struct xcb_input_xi_get_property_items_t {
jpayne@69 3286 uint8_t *data8;
jpayne@69 3287 uint16_t *data16;
jpayne@69 3288 uint32_t *data32;
jpayne@69 3289 } xcb_input_xi_get_property_items_t;
jpayne@69 3290
jpayne@69 3291 /**
jpayne@69 3292 * @brief xcb_input_xi_get_property_reply_t
jpayne@69 3293 **/
jpayne@69 3294 typedef struct xcb_input_xi_get_property_reply_t {
jpayne@69 3295 uint8_t response_type;
jpayne@69 3296 uint8_t pad0;
jpayne@69 3297 uint16_t sequence;
jpayne@69 3298 uint32_t length;
jpayne@69 3299 xcb_atom_t type;
jpayne@69 3300 uint32_t bytes_after;
jpayne@69 3301 uint32_t num_items;
jpayne@69 3302 uint8_t format;
jpayne@69 3303 uint8_t pad1[11];
jpayne@69 3304 } xcb_input_xi_get_property_reply_t;
jpayne@69 3305
jpayne@69 3306 /**
jpayne@69 3307 * @brief xcb_input_xi_get_selected_events_cookie_t
jpayne@69 3308 **/
jpayne@69 3309 typedef struct xcb_input_xi_get_selected_events_cookie_t {
jpayne@69 3310 unsigned int sequence;
jpayne@69 3311 } xcb_input_xi_get_selected_events_cookie_t;
jpayne@69 3312
jpayne@69 3313 /** Opcode for xcb_input_xi_get_selected_events. */
jpayne@69 3314 #define XCB_INPUT_XI_GET_SELECTED_EVENTS 60
jpayne@69 3315
jpayne@69 3316 /**
jpayne@69 3317 * @brief xcb_input_xi_get_selected_events_request_t
jpayne@69 3318 **/
jpayne@69 3319 typedef struct xcb_input_xi_get_selected_events_request_t {
jpayne@69 3320 uint8_t major_opcode;
jpayne@69 3321 uint8_t minor_opcode;
jpayne@69 3322 uint16_t length;
jpayne@69 3323 xcb_window_t window;
jpayne@69 3324 } xcb_input_xi_get_selected_events_request_t;
jpayne@69 3325
jpayne@69 3326 /**
jpayne@69 3327 * @brief xcb_input_xi_get_selected_events_reply_t
jpayne@69 3328 **/
jpayne@69 3329 typedef struct xcb_input_xi_get_selected_events_reply_t {
jpayne@69 3330 uint8_t response_type;
jpayne@69 3331 uint8_t pad0;
jpayne@69 3332 uint16_t sequence;
jpayne@69 3333 uint32_t length;
jpayne@69 3334 uint16_t num_masks;
jpayne@69 3335 uint8_t pad1[22];
jpayne@69 3336 } xcb_input_xi_get_selected_events_reply_t;
jpayne@69 3337
jpayne@69 3338 /**
jpayne@69 3339 * @brief xcb_input_barrier_release_pointer_info_t
jpayne@69 3340 **/
jpayne@69 3341 typedef struct xcb_input_barrier_release_pointer_info_t {
jpayne@69 3342 xcb_input_device_id_t deviceid;
jpayne@69 3343 uint8_t pad0[2];
jpayne@69 3344 xcb_xfixes_barrier_t barrier;
jpayne@69 3345 uint32_t eventid;
jpayne@69 3346 } xcb_input_barrier_release_pointer_info_t;
jpayne@69 3347
jpayne@69 3348 /**
jpayne@69 3349 * @brief xcb_input_barrier_release_pointer_info_iterator_t
jpayne@69 3350 **/
jpayne@69 3351 typedef struct xcb_input_barrier_release_pointer_info_iterator_t {
jpayne@69 3352 xcb_input_barrier_release_pointer_info_t *data;
jpayne@69 3353 int rem;
jpayne@69 3354 int index;
jpayne@69 3355 } xcb_input_barrier_release_pointer_info_iterator_t;
jpayne@69 3356
jpayne@69 3357 /** Opcode for xcb_input_xi_barrier_release_pointer. */
jpayne@69 3358 #define XCB_INPUT_XI_BARRIER_RELEASE_POINTER 61
jpayne@69 3359
jpayne@69 3360 /**
jpayne@69 3361 * @brief xcb_input_xi_barrier_release_pointer_request_t
jpayne@69 3362 **/
jpayne@69 3363 typedef struct xcb_input_xi_barrier_release_pointer_request_t {
jpayne@69 3364 uint8_t major_opcode;
jpayne@69 3365 uint8_t minor_opcode;
jpayne@69 3366 uint16_t length;
jpayne@69 3367 uint32_t num_barriers;
jpayne@69 3368 } xcb_input_xi_barrier_release_pointer_request_t;
jpayne@69 3369
jpayne@69 3370 /** Opcode for xcb_input_device_valuator. */
jpayne@69 3371 #define XCB_INPUT_DEVICE_VALUATOR 0
jpayne@69 3372
jpayne@69 3373 /**
jpayne@69 3374 * @brief xcb_input_device_valuator_event_t
jpayne@69 3375 **/
jpayne@69 3376 typedef struct xcb_input_device_valuator_event_t {
jpayne@69 3377 uint8_t response_type;
jpayne@69 3378 uint8_t device_id;
jpayne@69 3379 uint16_t sequence;
jpayne@69 3380 uint16_t device_state;
jpayne@69 3381 uint8_t num_valuators;
jpayne@69 3382 uint8_t first_valuator;
jpayne@69 3383 int32_t valuators[6];
jpayne@69 3384 } xcb_input_device_valuator_event_t;
jpayne@69 3385
jpayne@69 3386 typedef enum xcb_input_more_events_mask_t {
jpayne@69 3387 XCB_INPUT_MORE_EVENTS_MASK_MORE_EVENTS = 128
jpayne@69 3388 } xcb_input_more_events_mask_t;
jpayne@69 3389
jpayne@69 3390 /** Opcode for xcb_input_device_key_press. */
jpayne@69 3391 #define XCB_INPUT_DEVICE_KEY_PRESS 1
jpayne@69 3392
jpayne@69 3393 /**
jpayne@69 3394 * @brief xcb_input_device_key_press_event_t
jpayne@69 3395 **/
jpayne@69 3396 typedef struct xcb_input_device_key_press_event_t {
jpayne@69 3397 uint8_t response_type;
jpayne@69 3398 uint8_t detail;
jpayne@69 3399 uint16_t sequence;
jpayne@69 3400 xcb_timestamp_t time;
jpayne@69 3401 xcb_window_t root;
jpayne@69 3402 xcb_window_t event;
jpayne@69 3403 xcb_window_t child;
jpayne@69 3404 int16_t root_x;
jpayne@69 3405 int16_t root_y;
jpayne@69 3406 int16_t event_x;
jpayne@69 3407 int16_t event_y;
jpayne@69 3408 uint16_t state;
jpayne@69 3409 uint8_t same_screen;
jpayne@69 3410 uint8_t device_id;
jpayne@69 3411 } xcb_input_device_key_press_event_t;
jpayne@69 3412
jpayne@69 3413 /** Opcode for xcb_input_device_key_release. */
jpayne@69 3414 #define XCB_INPUT_DEVICE_KEY_RELEASE 2
jpayne@69 3415
jpayne@69 3416 typedef xcb_input_device_key_press_event_t xcb_input_device_key_release_event_t;
jpayne@69 3417
jpayne@69 3418 /** Opcode for xcb_input_device_button_press. */
jpayne@69 3419 #define XCB_INPUT_DEVICE_BUTTON_PRESS 3
jpayne@69 3420
jpayne@69 3421 typedef xcb_input_device_key_press_event_t xcb_input_device_button_press_event_t;
jpayne@69 3422
jpayne@69 3423 /** Opcode for xcb_input_device_button_release. */
jpayne@69 3424 #define XCB_INPUT_DEVICE_BUTTON_RELEASE 4
jpayne@69 3425
jpayne@69 3426 typedef xcb_input_device_key_press_event_t xcb_input_device_button_release_event_t;
jpayne@69 3427
jpayne@69 3428 /** Opcode for xcb_input_device_motion_notify. */
jpayne@69 3429 #define XCB_INPUT_DEVICE_MOTION_NOTIFY 5
jpayne@69 3430
jpayne@69 3431 typedef xcb_input_device_key_press_event_t xcb_input_device_motion_notify_event_t;
jpayne@69 3432
jpayne@69 3433 /** Opcode for xcb_input_device_focus_in. */
jpayne@69 3434 #define XCB_INPUT_DEVICE_FOCUS_IN 6
jpayne@69 3435
jpayne@69 3436 /**
jpayne@69 3437 * @brief xcb_input_device_focus_in_event_t
jpayne@69 3438 **/
jpayne@69 3439 typedef struct xcb_input_device_focus_in_event_t {
jpayne@69 3440 uint8_t response_type;
jpayne@69 3441 uint8_t detail;
jpayne@69 3442 uint16_t sequence;
jpayne@69 3443 xcb_timestamp_t time;
jpayne@69 3444 xcb_window_t window;
jpayne@69 3445 uint8_t mode;
jpayne@69 3446 uint8_t device_id;
jpayne@69 3447 uint8_t pad0[18];
jpayne@69 3448 } xcb_input_device_focus_in_event_t;
jpayne@69 3449
jpayne@69 3450 /** Opcode for xcb_input_device_focus_out. */
jpayne@69 3451 #define XCB_INPUT_DEVICE_FOCUS_OUT 7
jpayne@69 3452
jpayne@69 3453 typedef xcb_input_device_focus_in_event_t xcb_input_device_focus_out_event_t;
jpayne@69 3454
jpayne@69 3455 /** Opcode for xcb_input_proximity_in. */
jpayne@69 3456 #define XCB_INPUT_PROXIMITY_IN 8
jpayne@69 3457
jpayne@69 3458 typedef xcb_input_device_key_press_event_t xcb_input_proximity_in_event_t;
jpayne@69 3459
jpayne@69 3460 /** Opcode for xcb_input_proximity_out. */
jpayne@69 3461 #define XCB_INPUT_PROXIMITY_OUT 9
jpayne@69 3462
jpayne@69 3463 typedef xcb_input_device_key_press_event_t xcb_input_proximity_out_event_t;
jpayne@69 3464
jpayne@69 3465 typedef enum xcb_input_classes_reported_mask_t {
jpayne@69 3466 XCB_INPUT_CLASSES_REPORTED_MASK_OUT_OF_PROXIMITY = 128,
jpayne@69 3467 XCB_INPUT_CLASSES_REPORTED_MASK_DEVICE_MODE_ABSOLUTE = 64,
jpayne@69 3468 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_VALUATORS = 4,
jpayne@69 3469 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_BUTTONS = 2,
jpayne@69 3470 XCB_INPUT_CLASSES_REPORTED_MASK_REPORTING_KEYS = 1
jpayne@69 3471 } xcb_input_classes_reported_mask_t;
jpayne@69 3472
jpayne@69 3473 /** Opcode for xcb_input_device_state_notify. */
jpayne@69 3474 #define XCB_INPUT_DEVICE_STATE_NOTIFY 10
jpayne@69 3475
jpayne@69 3476 /**
jpayne@69 3477 * @brief xcb_input_device_state_notify_event_t
jpayne@69 3478 **/
jpayne@69 3479 typedef struct xcb_input_device_state_notify_event_t {
jpayne@69 3480 uint8_t response_type;
jpayne@69 3481 uint8_t device_id;
jpayne@69 3482 uint16_t sequence;
jpayne@69 3483 xcb_timestamp_t time;
jpayne@69 3484 uint8_t num_keys;
jpayne@69 3485 uint8_t num_buttons;
jpayne@69 3486 uint8_t num_valuators;
jpayne@69 3487 uint8_t classes_reported;
jpayne@69 3488 uint8_t buttons[4];
jpayne@69 3489 uint8_t keys[4];
jpayne@69 3490 uint32_t valuators[3];
jpayne@69 3491 } xcb_input_device_state_notify_event_t;
jpayne@69 3492
jpayne@69 3493 /** Opcode for xcb_input_device_mapping_notify. */
jpayne@69 3494 #define XCB_INPUT_DEVICE_MAPPING_NOTIFY 11
jpayne@69 3495
jpayne@69 3496 /**
jpayne@69 3497 * @brief xcb_input_device_mapping_notify_event_t
jpayne@69 3498 **/
jpayne@69 3499 typedef struct xcb_input_device_mapping_notify_event_t {
jpayne@69 3500 uint8_t response_type;
jpayne@69 3501 uint8_t device_id;
jpayne@69 3502 uint16_t sequence;
jpayne@69 3503 uint8_t request;
jpayne@69 3504 xcb_input_key_code_t first_keycode;
jpayne@69 3505 uint8_t count;
jpayne@69 3506 uint8_t pad0;
jpayne@69 3507 xcb_timestamp_t time;
jpayne@69 3508 uint8_t pad1[20];
jpayne@69 3509 } xcb_input_device_mapping_notify_event_t;
jpayne@69 3510
jpayne@69 3511 typedef enum xcb_input_change_device_t {
jpayne@69 3512 XCB_INPUT_CHANGE_DEVICE_NEW_POINTER = 0,
jpayne@69 3513 XCB_INPUT_CHANGE_DEVICE_NEW_KEYBOARD = 1
jpayne@69 3514 } xcb_input_change_device_t;
jpayne@69 3515
jpayne@69 3516 /** Opcode for xcb_input_change_device_notify. */
jpayne@69 3517 #define XCB_INPUT_CHANGE_DEVICE_NOTIFY 12
jpayne@69 3518
jpayne@69 3519 /**
jpayne@69 3520 * @brief xcb_input_change_device_notify_event_t
jpayne@69 3521 **/
jpayne@69 3522 typedef struct xcb_input_change_device_notify_event_t {
jpayne@69 3523 uint8_t response_type;
jpayne@69 3524 uint8_t device_id;
jpayne@69 3525 uint16_t sequence;
jpayne@69 3526 xcb_timestamp_t time;
jpayne@69 3527 uint8_t request;
jpayne@69 3528 uint8_t pad0[23];
jpayne@69 3529 } xcb_input_change_device_notify_event_t;
jpayne@69 3530
jpayne@69 3531 /** Opcode for xcb_input_device_key_state_notify. */
jpayne@69 3532 #define XCB_INPUT_DEVICE_KEY_STATE_NOTIFY 13
jpayne@69 3533
jpayne@69 3534 /**
jpayne@69 3535 * @brief xcb_input_device_key_state_notify_event_t
jpayne@69 3536 **/
jpayne@69 3537 typedef struct xcb_input_device_key_state_notify_event_t {
jpayne@69 3538 uint8_t response_type;
jpayne@69 3539 uint8_t device_id;
jpayne@69 3540 uint16_t sequence;
jpayne@69 3541 uint8_t keys[28];
jpayne@69 3542 } xcb_input_device_key_state_notify_event_t;
jpayne@69 3543
jpayne@69 3544 /** Opcode for xcb_input_device_button_state_notify. */
jpayne@69 3545 #define XCB_INPUT_DEVICE_BUTTON_STATE_NOTIFY 14
jpayne@69 3546
jpayne@69 3547 /**
jpayne@69 3548 * @brief xcb_input_device_button_state_notify_event_t
jpayne@69 3549 **/
jpayne@69 3550 typedef struct xcb_input_device_button_state_notify_event_t {
jpayne@69 3551 uint8_t response_type;
jpayne@69 3552 uint8_t device_id;
jpayne@69 3553 uint16_t sequence;
jpayne@69 3554 uint8_t buttons[28];
jpayne@69 3555 } xcb_input_device_button_state_notify_event_t;
jpayne@69 3556
jpayne@69 3557 typedef enum xcb_input_device_change_t {
jpayne@69 3558 XCB_INPUT_DEVICE_CHANGE_ADDED = 0,
jpayne@69 3559 XCB_INPUT_DEVICE_CHANGE_REMOVED = 1,
jpayne@69 3560 XCB_INPUT_DEVICE_CHANGE_ENABLED = 2,
jpayne@69 3561 XCB_INPUT_DEVICE_CHANGE_DISABLED = 3,
jpayne@69 3562 XCB_INPUT_DEVICE_CHANGE_UNRECOVERABLE = 4,
jpayne@69 3563 XCB_INPUT_DEVICE_CHANGE_CONTROL_CHANGED = 5
jpayne@69 3564 } xcb_input_device_change_t;
jpayne@69 3565
jpayne@69 3566 /** Opcode for xcb_input_device_presence_notify. */
jpayne@69 3567 #define XCB_INPUT_DEVICE_PRESENCE_NOTIFY 15
jpayne@69 3568
jpayne@69 3569 /**
jpayne@69 3570 * @brief xcb_input_device_presence_notify_event_t
jpayne@69 3571 **/
jpayne@69 3572 typedef struct xcb_input_device_presence_notify_event_t {
jpayne@69 3573 uint8_t response_type;
jpayne@69 3574 uint8_t pad0;
jpayne@69 3575 uint16_t sequence;
jpayne@69 3576 xcb_timestamp_t time;
jpayne@69 3577 uint8_t devchange;
jpayne@69 3578 uint8_t device_id;
jpayne@69 3579 uint16_t control;
jpayne@69 3580 uint8_t pad1[20];
jpayne@69 3581 } xcb_input_device_presence_notify_event_t;
jpayne@69 3582
jpayne@69 3583 /** Opcode for xcb_input_device_property_notify. */
jpayne@69 3584 #define XCB_INPUT_DEVICE_PROPERTY_NOTIFY 16
jpayne@69 3585
jpayne@69 3586 /**
jpayne@69 3587 * @brief xcb_input_device_property_notify_event_t
jpayne@69 3588 **/
jpayne@69 3589 typedef struct xcb_input_device_property_notify_event_t {
jpayne@69 3590 uint8_t response_type;
jpayne@69 3591 uint8_t state;
jpayne@69 3592 uint16_t sequence;
jpayne@69 3593 xcb_timestamp_t time;
jpayne@69 3594 xcb_atom_t property;
jpayne@69 3595 uint8_t pad0[19];
jpayne@69 3596 uint8_t device_id;
jpayne@69 3597 } xcb_input_device_property_notify_event_t;
jpayne@69 3598
jpayne@69 3599 typedef enum xcb_input_change_reason_t {
jpayne@69 3600 XCB_INPUT_CHANGE_REASON_SLAVE_SWITCH = 1,
jpayne@69 3601 XCB_INPUT_CHANGE_REASON_DEVICE_CHANGE = 2
jpayne@69 3602 } xcb_input_change_reason_t;
jpayne@69 3603
jpayne@69 3604 /** Opcode for xcb_input_device_changed. */
jpayne@69 3605 #define XCB_INPUT_DEVICE_CHANGED 1
jpayne@69 3606
jpayne@69 3607 /**
jpayne@69 3608 * @brief xcb_input_device_changed_event_t
jpayne@69 3609 **/
jpayne@69 3610 typedef struct xcb_input_device_changed_event_t {
jpayne@69 3611 uint8_t response_type;
jpayne@69 3612 uint8_t extension;
jpayne@69 3613 uint16_t sequence;
jpayne@69 3614 uint32_t length;
jpayne@69 3615 uint16_t event_type;
jpayne@69 3616 xcb_input_device_id_t deviceid;
jpayne@69 3617 xcb_timestamp_t time;
jpayne@69 3618 uint16_t num_classes;
jpayne@69 3619 xcb_input_device_id_t sourceid;
jpayne@69 3620 uint8_t reason;
jpayne@69 3621 uint8_t pad0[11];
jpayne@69 3622 uint32_t full_sequence;
jpayne@69 3623 } xcb_input_device_changed_event_t;
jpayne@69 3624
jpayne@69 3625 typedef enum xcb_input_key_event_flags_t {
jpayne@69 3626 XCB_INPUT_KEY_EVENT_FLAGS_KEY_REPEAT = 65536
jpayne@69 3627 } xcb_input_key_event_flags_t;
jpayne@69 3628
jpayne@69 3629 /** Opcode for xcb_input_key_press. */
jpayne@69 3630 #define XCB_INPUT_KEY_PRESS 2
jpayne@69 3631
jpayne@69 3632 /**
jpayne@69 3633 * @brief xcb_input_key_press_event_t
jpayne@69 3634 **/
jpayne@69 3635 typedef struct xcb_input_key_press_event_t {
jpayne@69 3636 uint8_t response_type;
jpayne@69 3637 uint8_t extension;
jpayne@69 3638 uint16_t sequence;
jpayne@69 3639 uint32_t length;
jpayne@69 3640 uint16_t event_type;
jpayne@69 3641 xcb_input_device_id_t deviceid;
jpayne@69 3642 xcb_timestamp_t time;
jpayne@69 3643 uint32_t detail;
jpayne@69 3644 xcb_window_t root;
jpayne@69 3645 xcb_window_t event;
jpayne@69 3646 xcb_window_t child;
jpayne@69 3647 uint32_t full_sequence;
jpayne@69 3648 xcb_input_fp1616_t root_x;
jpayne@69 3649 xcb_input_fp1616_t root_y;
jpayne@69 3650 xcb_input_fp1616_t event_x;
jpayne@69 3651 xcb_input_fp1616_t event_y;
jpayne@69 3652 uint16_t buttons_len;
jpayne@69 3653 uint16_t valuators_len;
jpayne@69 3654 xcb_input_device_id_t sourceid;
jpayne@69 3655 uint8_t pad0[2];
jpayne@69 3656 uint32_t flags;
jpayne@69 3657 xcb_input_modifier_info_t mods;
jpayne@69 3658 xcb_input_group_info_t group;
jpayne@69 3659 } xcb_input_key_press_event_t;
jpayne@69 3660
jpayne@69 3661 /** Opcode for xcb_input_key_release. */
jpayne@69 3662 #define XCB_INPUT_KEY_RELEASE 3
jpayne@69 3663
jpayne@69 3664 typedef xcb_input_key_press_event_t xcb_input_key_release_event_t;
jpayne@69 3665
jpayne@69 3666 typedef enum xcb_input_pointer_event_flags_t {
jpayne@69 3667 XCB_INPUT_POINTER_EVENT_FLAGS_POINTER_EMULATED = 65536
jpayne@69 3668 } xcb_input_pointer_event_flags_t;
jpayne@69 3669
jpayne@69 3670 /** Opcode for xcb_input_button_press. */
jpayne@69 3671 #define XCB_INPUT_BUTTON_PRESS 4
jpayne@69 3672
jpayne@69 3673 /**
jpayne@69 3674 * @brief xcb_input_button_press_event_t
jpayne@69 3675 **/
jpayne@69 3676 typedef struct xcb_input_button_press_event_t {
jpayne@69 3677 uint8_t response_type;
jpayne@69 3678 uint8_t extension;
jpayne@69 3679 uint16_t sequence;
jpayne@69 3680 uint32_t length;
jpayne@69 3681 uint16_t event_type;
jpayne@69 3682 xcb_input_device_id_t deviceid;
jpayne@69 3683 xcb_timestamp_t time;
jpayne@69 3684 uint32_t detail;
jpayne@69 3685 xcb_window_t root;
jpayne@69 3686 xcb_window_t event;
jpayne@69 3687 xcb_window_t child;
jpayne@69 3688 uint32_t full_sequence;
jpayne@69 3689 xcb_input_fp1616_t root_x;
jpayne@69 3690 xcb_input_fp1616_t root_y;
jpayne@69 3691 xcb_input_fp1616_t event_x;
jpayne@69 3692 xcb_input_fp1616_t event_y;
jpayne@69 3693 uint16_t buttons_len;
jpayne@69 3694 uint16_t valuators_len;
jpayne@69 3695 xcb_input_device_id_t sourceid;
jpayne@69 3696 uint8_t pad0[2];
jpayne@69 3697 uint32_t flags;
jpayne@69 3698 xcb_input_modifier_info_t mods;
jpayne@69 3699 xcb_input_group_info_t group;
jpayne@69 3700 } xcb_input_button_press_event_t;
jpayne@69 3701
jpayne@69 3702 /** Opcode for xcb_input_button_release. */
jpayne@69 3703 #define XCB_INPUT_BUTTON_RELEASE 5
jpayne@69 3704
jpayne@69 3705 typedef xcb_input_button_press_event_t xcb_input_button_release_event_t;
jpayne@69 3706
jpayne@69 3707 /** Opcode for xcb_input_motion. */
jpayne@69 3708 #define XCB_INPUT_MOTION 6
jpayne@69 3709
jpayne@69 3710 typedef xcb_input_button_press_event_t xcb_input_motion_event_t;
jpayne@69 3711
jpayne@69 3712 typedef enum xcb_input_notify_mode_t {
jpayne@69 3713 XCB_INPUT_NOTIFY_MODE_NORMAL = 0,
jpayne@69 3714 XCB_INPUT_NOTIFY_MODE_GRAB = 1,
jpayne@69 3715 XCB_INPUT_NOTIFY_MODE_UNGRAB = 2,
jpayne@69 3716 XCB_INPUT_NOTIFY_MODE_WHILE_GRABBED = 3,
jpayne@69 3717 XCB_INPUT_NOTIFY_MODE_PASSIVE_GRAB = 4,
jpayne@69 3718 XCB_INPUT_NOTIFY_MODE_PASSIVE_UNGRAB = 5
jpayne@69 3719 } xcb_input_notify_mode_t;
jpayne@69 3720
jpayne@69 3721 typedef enum xcb_input_notify_detail_t {
jpayne@69 3722 XCB_INPUT_NOTIFY_DETAIL_ANCESTOR = 0,
jpayne@69 3723 XCB_INPUT_NOTIFY_DETAIL_VIRTUAL = 1,
jpayne@69 3724 XCB_INPUT_NOTIFY_DETAIL_INFERIOR = 2,
jpayne@69 3725 XCB_INPUT_NOTIFY_DETAIL_NONLINEAR = 3,
jpayne@69 3726 XCB_INPUT_NOTIFY_DETAIL_NONLINEAR_VIRTUAL = 4,
jpayne@69 3727 XCB_INPUT_NOTIFY_DETAIL_POINTER = 5,
jpayne@69 3728 XCB_INPUT_NOTIFY_DETAIL_POINTER_ROOT = 6,
jpayne@69 3729 XCB_INPUT_NOTIFY_DETAIL_NONE = 7
jpayne@69 3730 } xcb_input_notify_detail_t;
jpayne@69 3731
jpayne@69 3732 /** Opcode for xcb_input_enter. */
jpayne@69 3733 #define XCB_INPUT_ENTER 7
jpayne@69 3734
jpayne@69 3735 /**
jpayne@69 3736 * @brief xcb_input_enter_event_t
jpayne@69 3737 **/
jpayne@69 3738 typedef struct xcb_input_enter_event_t {
jpayne@69 3739 uint8_t response_type;
jpayne@69 3740 uint8_t extension;
jpayne@69 3741 uint16_t sequence;
jpayne@69 3742 uint32_t length;
jpayne@69 3743 uint16_t event_type;
jpayne@69 3744 xcb_input_device_id_t deviceid;
jpayne@69 3745 xcb_timestamp_t time;
jpayne@69 3746 xcb_input_device_id_t sourceid;
jpayne@69 3747 uint8_t mode;
jpayne@69 3748 uint8_t detail;
jpayne@69 3749 xcb_window_t root;
jpayne@69 3750 xcb_window_t event;
jpayne@69 3751 xcb_window_t child;
jpayne@69 3752 uint32_t full_sequence;
jpayne@69 3753 xcb_input_fp1616_t root_x;
jpayne@69 3754 xcb_input_fp1616_t root_y;
jpayne@69 3755 xcb_input_fp1616_t event_x;
jpayne@69 3756 xcb_input_fp1616_t event_y;
jpayne@69 3757 uint8_t same_screen;
jpayne@69 3758 uint8_t focus;
jpayne@69 3759 uint16_t buttons_len;
jpayne@69 3760 xcb_input_modifier_info_t mods;
jpayne@69 3761 xcb_input_group_info_t group;
jpayne@69 3762 } xcb_input_enter_event_t;
jpayne@69 3763
jpayne@69 3764 /** Opcode for xcb_input_leave. */
jpayne@69 3765 #define XCB_INPUT_LEAVE 8
jpayne@69 3766
jpayne@69 3767 typedef xcb_input_enter_event_t xcb_input_leave_event_t;
jpayne@69 3768
jpayne@69 3769 /** Opcode for xcb_input_focus_in. */
jpayne@69 3770 #define XCB_INPUT_FOCUS_IN 9
jpayne@69 3771
jpayne@69 3772 typedef xcb_input_enter_event_t xcb_input_focus_in_event_t;
jpayne@69 3773
jpayne@69 3774 /** Opcode for xcb_input_focus_out. */
jpayne@69 3775 #define XCB_INPUT_FOCUS_OUT 10
jpayne@69 3776
jpayne@69 3777 typedef xcb_input_enter_event_t xcb_input_focus_out_event_t;
jpayne@69 3778
jpayne@69 3779 typedef enum xcb_input_hierarchy_mask_t {
jpayne@69 3780 XCB_INPUT_HIERARCHY_MASK_MASTER_ADDED = 1,
jpayne@69 3781 XCB_INPUT_HIERARCHY_MASK_MASTER_REMOVED = 2,
jpayne@69 3782 XCB_INPUT_HIERARCHY_MASK_SLAVE_ADDED = 4,
jpayne@69 3783 XCB_INPUT_HIERARCHY_MASK_SLAVE_REMOVED = 8,
jpayne@69 3784 XCB_INPUT_HIERARCHY_MASK_SLAVE_ATTACHED = 16,
jpayne@69 3785 XCB_INPUT_HIERARCHY_MASK_SLAVE_DETACHED = 32,
jpayne@69 3786 XCB_INPUT_HIERARCHY_MASK_DEVICE_ENABLED = 64,
jpayne@69 3787 XCB_INPUT_HIERARCHY_MASK_DEVICE_DISABLED = 128
jpayne@69 3788 } xcb_input_hierarchy_mask_t;
jpayne@69 3789
jpayne@69 3790 /**
jpayne@69 3791 * @brief xcb_input_hierarchy_info_t
jpayne@69 3792 **/
jpayne@69 3793 typedef struct xcb_input_hierarchy_info_t {
jpayne@69 3794 xcb_input_device_id_t deviceid;
jpayne@69 3795 xcb_input_device_id_t attachment;
jpayne@69 3796 uint8_t type;
jpayne@69 3797 uint8_t enabled;
jpayne@69 3798 uint8_t pad0[2];
jpayne@69 3799 uint32_t flags;
jpayne@69 3800 } xcb_input_hierarchy_info_t;
jpayne@69 3801
jpayne@69 3802 /**
jpayne@69 3803 * @brief xcb_input_hierarchy_info_iterator_t
jpayne@69 3804 **/
jpayne@69 3805 typedef struct xcb_input_hierarchy_info_iterator_t {
jpayne@69 3806 xcb_input_hierarchy_info_t *data;
jpayne@69 3807 int rem;
jpayne@69 3808 int index;
jpayne@69 3809 } xcb_input_hierarchy_info_iterator_t;
jpayne@69 3810
jpayne@69 3811 /** Opcode for xcb_input_hierarchy. */
jpayne@69 3812 #define XCB_INPUT_HIERARCHY 11
jpayne@69 3813
jpayne@69 3814 /**
jpayne@69 3815 * @brief xcb_input_hierarchy_event_t
jpayne@69 3816 **/
jpayne@69 3817 typedef struct xcb_input_hierarchy_event_t {
jpayne@69 3818 uint8_t response_type;
jpayne@69 3819 uint8_t extension;
jpayne@69 3820 uint16_t sequence;
jpayne@69 3821 uint32_t length;
jpayne@69 3822 uint16_t event_type;
jpayne@69 3823 xcb_input_device_id_t deviceid;
jpayne@69 3824 xcb_timestamp_t time;
jpayne@69 3825 uint32_t flags;
jpayne@69 3826 uint16_t num_infos;
jpayne@69 3827 uint8_t pad0[10];
jpayne@69 3828 uint32_t full_sequence;
jpayne@69 3829 } xcb_input_hierarchy_event_t;
jpayne@69 3830
jpayne@69 3831 typedef enum xcb_input_property_flag_t {
jpayne@69 3832 XCB_INPUT_PROPERTY_FLAG_DELETED = 0,
jpayne@69 3833 XCB_INPUT_PROPERTY_FLAG_CREATED = 1,
jpayne@69 3834 XCB_INPUT_PROPERTY_FLAG_MODIFIED = 2
jpayne@69 3835 } xcb_input_property_flag_t;
jpayne@69 3836
jpayne@69 3837 /** Opcode for xcb_input_property. */
jpayne@69 3838 #define XCB_INPUT_PROPERTY 12
jpayne@69 3839
jpayne@69 3840 /**
jpayne@69 3841 * @brief xcb_input_property_event_t
jpayne@69 3842 **/
jpayne@69 3843 typedef struct xcb_input_property_event_t {
jpayne@69 3844 uint8_t response_type;
jpayne@69 3845 uint8_t extension;
jpayne@69 3846 uint16_t sequence;
jpayne@69 3847 uint32_t length;
jpayne@69 3848 uint16_t event_type;
jpayne@69 3849 xcb_input_device_id_t deviceid;
jpayne@69 3850 xcb_timestamp_t time;
jpayne@69 3851 xcb_atom_t property;
jpayne@69 3852 uint8_t what;
jpayne@69 3853 uint8_t pad0[11];
jpayne@69 3854 uint32_t full_sequence;
jpayne@69 3855 } xcb_input_property_event_t;
jpayne@69 3856
jpayne@69 3857 /** Opcode for xcb_input_raw_key_press. */
jpayne@69 3858 #define XCB_INPUT_RAW_KEY_PRESS 13
jpayne@69 3859
jpayne@69 3860 /**
jpayne@69 3861 * @brief xcb_input_raw_key_press_event_t
jpayne@69 3862 **/
jpayne@69 3863 typedef struct xcb_input_raw_key_press_event_t {
jpayne@69 3864 uint8_t response_type;
jpayne@69 3865 uint8_t extension;
jpayne@69 3866 uint16_t sequence;
jpayne@69 3867 uint32_t length;
jpayne@69 3868 uint16_t event_type;
jpayne@69 3869 xcb_input_device_id_t deviceid;
jpayne@69 3870 xcb_timestamp_t time;
jpayne@69 3871 uint32_t detail;
jpayne@69 3872 xcb_input_device_id_t sourceid;
jpayne@69 3873 uint16_t valuators_len;
jpayne@69 3874 uint32_t flags;
jpayne@69 3875 uint8_t pad0[4];
jpayne@69 3876 uint32_t full_sequence;
jpayne@69 3877 } xcb_input_raw_key_press_event_t;
jpayne@69 3878
jpayne@69 3879 /** Opcode for xcb_input_raw_key_release. */
jpayne@69 3880 #define XCB_INPUT_RAW_KEY_RELEASE 14
jpayne@69 3881
jpayne@69 3882 typedef xcb_input_raw_key_press_event_t xcb_input_raw_key_release_event_t;
jpayne@69 3883
jpayne@69 3884 /** Opcode for xcb_input_raw_button_press. */
jpayne@69 3885 #define XCB_INPUT_RAW_BUTTON_PRESS 15
jpayne@69 3886
jpayne@69 3887 /**
jpayne@69 3888 * @brief xcb_input_raw_button_press_event_t
jpayne@69 3889 **/
jpayne@69 3890 typedef struct xcb_input_raw_button_press_event_t {
jpayne@69 3891 uint8_t response_type;
jpayne@69 3892 uint8_t extension;
jpayne@69 3893 uint16_t sequence;
jpayne@69 3894 uint32_t length;
jpayne@69 3895 uint16_t event_type;
jpayne@69 3896 xcb_input_device_id_t deviceid;
jpayne@69 3897 xcb_timestamp_t time;
jpayne@69 3898 uint32_t detail;
jpayne@69 3899 xcb_input_device_id_t sourceid;
jpayne@69 3900 uint16_t valuators_len;
jpayne@69 3901 uint32_t flags;
jpayne@69 3902 uint8_t pad0[4];
jpayne@69 3903 uint32_t full_sequence;
jpayne@69 3904 } xcb_input_raw_button_press_event_t;
jpayne@69 3905
jpayne@69 3906 /** Opcode for xcb_input_raw_button_release. */
jpayne@69 3907 #define XCB_INPUT_RAW_BUTTON_RELEASE 16
jpayne@69 3908
jpayne@69 3909 typedef xcb_input_raw_button_press_event_t xcb_input_raw_button_release_event_t;
jpayne@69 3910
jpayne@69 3911 /** Opcode for xcb_input_raw_motion. */
jpayne@69 3912 #define XCB_INPUT_RAW_MOTION 17
jpayne@69 3913
jpayne@69 3914 typedef xcb_input_raw_button_press_event_t xcb_input_raw_motion_event_t;
jpayne@69 3915
jpayne@69 3916 typedef enum xcb_input_touch_event_flags_t {
jpayne@69 3917 XCB_INPUT_TOUCH_EVENT_FLAGS_TOUCH_PENDING_END = 65536,
jpayne@69 3918 XCB_INPUT_TOUCH_EVENT_FLAGS_TOUCH_EMULATING_POINTER = 131072
jpayne@69 3919 } xcb_input_touch_event_flags_t;
jpayne@69 3920
jpayne@69 3921 /** Opcode for xcb_input_touch_begin. */
jpayne@69 3922 #define XCB_INPUT_TOUCH_BEGIN 18
jpayne@69 3923
jpayne@69 3924 /**
jpayne@69 3925 * @brief xcb_input_touch_begin_event_t
jpayne@69 3926 **/
jpayne@69 3927 typedef struct xcb_input_touch_begin_event_t {
jpayne@69 3928 uint8_t response_type;
jpayne@69 3929 uint8_t extension;
jpayne@69 3930 uint16_t sequence;
jpayne@69 3931 uint32_t length;
jpayne@69 3932 uint16_t event_type;
jpayne@69 3933 xcb_input_device_id_t deviceid;
jpayne@69 3934 xcb_timestamp_t time;
jpayne@69 3935 uint32_t detail;
jpayne@69 3936 xcb_window_t root;
jpayne@69 3937 xcb_window_t event;
jpayne@69 3938 xcb_window_t child;
jpayne@69 3939 uint32_t full_sequence;
jpayne@69 3940 xcb_input_fp1616_t root_x;
jpayne@69 3941 xcb_input_fp1616_t root_y;
jpayne@69 3942 xcb_input_fp1616_t event_x;
jpayne@69 3943 xcb_input_fp1616_t event_y;
jpayne@69 3944 uint16_t buttons_len;
jpayne@69 3945 uint16_t valuators_len;
jpayne@69 3946 xcb_input_device_id_t sourceid;
jpayne@69 3947 uint8_t pad0[2];
jpayne@69 3948 uint32_t flags;
jpayne@69 3949 xcb_input_modifier_info_t mods;
jpayne@69 3950 xcb_input_group_info_t group;
jpayne@69 3951 } xcb_input_touch_begin_event_t;
jpayne@69 3952
jpayne@69 3953 /** Opcode for xcb_input_touch_update. */
jpayne@69 3954 #define XCB_INPUT_TOUCH_UPDATE 19
jpayne@69 3955
jpayne@69 3956 typedef xcb_input_touch_begin_event_t xcb_input_touch_update_event_t;
jpayne@69 3957
jpayne@69 3958 /** Opcode for xcb_input_touch_end. */
jpayne@69 3959 #define XCB_INPUT_TOUCH_END 20
jpayne@69 3960
jpayne@69 3961 typedef xcb_input_touch_begin_event_t xcb_input_touch_end_event_t;
jpayne@69 3962
jpayne@69 3963 typedef enum xcb_input_touch_ownership_flags_t {
jpayne@69 3964 XCB_INPUT_TOUCH_OWNERSHIP_FLAGS_NONE = 0
jpayne@69 3965 } xcb_input_touch_ownership_flags_t;
jpayne@69 3966
jpayne@69 3967 /** Opcode for xcb_input_touch_ownership. */
jpayne@69 3968 #define XCB_INPUT_TOUCH_OWNERSHIP 21
jpayne@69 3969
jpayne@69 3970 /**
jpayne@69 3971 * @brief xcb_input_touch_ownership_event_t
jpayne@69 3972 **/
jpayne@69 3973 typedef struct xcb_input_touch_ownership_event_t {
jpayne@69 3974 uint8_t response_type;
jpayne@69 3975 uint8_t extension;
jpayne@69 3976 uint16_t sequence;
jpayne@69 3977 uint32_t length;
jpayne@69 3978 uint16_t event_type;
jpayne@69 3979 xcb_input_device_id_t deviceid;
jpayne@69 3980 xcb_timestamp_t time;
jpayne@69 3981 uint32_t touchid;
jpayne@69 3982 xcb_window_t root;
jpayne@69 3983 xcb_window_t event;
jpayne@69 3984 xcb_window_t child;
jpayne@69 3985 uint32_t full_sequence;
jpayne@69 3986 xcb_input_device_id_t sourceid;
jpayne@69 3987 uint8_t pad0[2];
jpayne@69 3988 uint32_t flags;
jpayne@69 3989 uint8_t pad1[8];
jpayne@69 3990 } xcb_input_touch_ownership_event_t;
jpayne@69 3991
jpayne@69 3992 /** Opcode for xcb_input_raw_touch_begin. */
jpayne@69 3993 #define XCB_INPUT_RAW_TOUCH_BEGIN 22
jpayne@69 3994
jpayne@69 3995 /**
jpayne@69 3996 * @brief xcb_input_raw_touch_begin_event_t
jpayne@69 3997 **/
jpayne@69 3998 typedef struct xcb_input_raw_touch_begin_event_t {
jpayne@69 3999 uint8_t response_type;
jpayne@69 4000 uint8_t extension;
jpayne@69 4001 uint16_t sequence;
jpayne@69 4002 uint32_t length;
jpayne@69 4003 uint16_t event_type;
jpayne@69 4004 xcb_input_device_id_t deviceid;
jpayne@69 4005 xcb_timestamp_t time;
jpayne@69 4006 uint32_t detail;
jpayne@69 4007 xcb_input_device_id_t sourceid;
jpayne@69 4008 uint16_t valuators_len;
jpayne@69 4009 uint32_t flags;
jpayne@69 4010 uint8_t pad0[4];
jpayne@69 4011 uint32_t full_sequence;
jpayne@69 4012 } xcb_input_raw_touch_begin_event_t;
jpayne@69 4013
jpayne@69 4014 /** Opcode for xcb_input_raw_touch_update. */
jpayne@69 4015 #define XCB_INPUT_RAW_TOUCH_UPDATE 23
jpayne@69 4016
jpayne@69 4017 typedef xcb_input_raw_touch_begin_event_t xcb_input_raw_touch_update_event_t;
jpayne@69 4018
jpayne@69 4019 /** Opcode for xcb_input_raw_touch_end. */
jpayne@69 4020 #define XCB_INPUT_RAW_TOUCH_END 24
jpayne@69 4021
jpayne@69 4022 typedef xcb_input_raw_touch_begin_event_t xcb_input_raw_touch_end_event_t;
jpayne@69 4023
jpayne@69 4024 typedef enum xcb_input_barrier_flags_t {
jpayne@69 4025 XCB_INPUT_BARRIER_FLAGS_POINTER_RELEASED = 1,
jpayne@69 4026 XCB_INPUT_BARRIER_FLAGS_DEVICE_IS_GRABBED = 2
jpayne@69 4027 } xcb_input_barrier_flags_t;
jpayne@69 4028
jpayne@69 4029 /** Opcode for xcb_input_barrier_hit. */
jpayne@69 4030 #define XCB_INPUT_BARRIER_HIT 25
jpayne@69 4031
jpayne@69 4032 /**
jpayne@69 4033 * @brief xcb_input_barrier_hit_event_t
jpayne@69 4034 **/
jpayne@69 4035 typedef struct xcb_input_barrier_hit_event_t {
jpayne@69 4036 uint8_t response_type;
jpayne@69 4037 uint8_t extension;
jpayne@69 4038 uint16_t sequence;
jpayne@69 4039 uint32_t length;
jpayne@69 4040 uint16_t event_type;
jpayne@69 4041 xcb_input_device_id_t deviceid;
jpayne@69 4042 xcb_timestamp_t time;
jpayne@69 4043 uint32_t eventid;
jpayne@69 4044 xcb_window_t root;
jpayne@69 4045 xcb_window_t event;
jpayne@69 4046 xcb_xfixes_barrier_t barrier;
jpayne@69 4047 uint32_t full_sequence;
jpayne@69 4048 uint32_t dtime;
jpayne@69 4049 uint32_t flags;
jpayne@69 4050 xcb_input_device_id_t sourceid;
jpayne@69 4051 uint8_t pad0[2];
jpayne@69 4052 xcb_input_fp1616_t root_x;
jpayne@69 4053 xcb_input_fp1616_t root_y;
jpayne@69 4054 xcb_input_fp3232_t dx;
jpayne@69 4055 xcb_input_fp3232_t dy;
jpayne@69 4056 } xcb_input_barrier_hit_event_t;
jpayne@69 4057
jpayne@69 4058 /** Opcode for xcb_input_barrier_leave. */
jpayne@69 4059 #define XCB_INPUT_BARRIER_LEAVE 26
jpayne@69 4060
jpayne@69 4061 typedef xcb_input_barrier_hit_event_t xcb_input_barrier_leave_event_t;
jpayne@69 4062
jpayne@69 4063 typedef enum xcb_input_gesture_pinch_event_flags_t {
jpayne@69 4064 XCB_INPUT_GESTURE_PINCH_EVENT_FLAGS_GESTURE_PINCH_CANCELLED = 1
jpayne@69 4065 } xcb_input_gesture_pinch_event_flags_t;
jpayne@69 4066
jpayne@69 4067 /** Opcode for xcb_input_gesture_pinch_begin. */
jpayne@69 4068 #define XCB_INPUT_GESTURE_PINCH_BEGIN 27
jpayne@69 4069
jpayne@69 4070 /**
jpayne@69 4071 * @brief xcb_input_gesture_pinch_begin_event_t
jpayne@69 4072 **/
jpayne@69 4073 typedef struct xcb_input_gesture_pinch_begin_event_t {
jpayne@69 4074 uint8_t response_type;
jpayne@69 4075 uint8_t extension;
jpayne@69 4076 uint16_t sequence;
jpayne@69 4077 uint32_t length;
jpayne@69 4078 uint16_t event_type;
jpayne@69 4079 xcb_input_device_id_t deviceid;
jpayne@69 4080 xcb_timestamp_t time;
jpayne@69 4081 uint32_t detail;
jpayne@69 4082 xcb_window_t root;
jpayne@69 4083 xcb_window_t event;
jpayne@69 4084 xcb_window_t child;
jpayne@69 4085 uint32_t full_sequence;
jpayne@69 4086 xcb_input_fp1616_t root_x;
jpayne@69 4087 xcb_input_fp1616_t root_y;
jpayne@69 4088 xcb_input_fp1616_t event_x;
jpayne@69 4089 xcb_input_fp1616_t event_y;
jpayne@69 4090 xcb_input_fp1616_t delta_x;
jpayne@69 4091 xcb_input_fp1616_t delta_y;
jpayne@69 4092 xcb_input_fp1616_t delta_unaccel_x;
jpayne@69 4093 xcb_input_fp1616_t delta_unaccel_y;
jpayne@69 4094 xcb_input_fp1616_t scale;
jpayne@69 4095 xcb_input_fp1616_t delta_angle;
jpayne@69 4096 xcb_input_device_id_t sourceid;
jpayne@69 4097 uint8_t pad0[2];
jpayne@69 4098 xcb_input_modifier_info_t mods;
jpayne@69 4099 xcb_input_group_info_t group;
jpayne@69 4100 uint32_t flags;
jpayne@69 4101 } xcb_input_gesture_pinch_begin_event_t;
jpayne@69 4102
jpayne@69 4103 /** Opcode for xcb_input_gesture_pinch_update. */
jpayne@69 4104 #define XCB_INPUT_GESTURE_PINCH_UPDATE 28
jpayne@69 4105
jpayne@69 4106 typedef xcb_input_gesture_pinch_begin_event_t xcb_input_gesture_pinch_update_event_t;
jpayne@69 4107
jpayne@69 4108 /** Opcode for xcb_input_gesture_pinch_end. */
jpayne@69 4109 #define XCB_INPUT_GESTURE_PINCH_END 29
jpayne@69 4110
jpayne@69 4111 typedef xcb_input_gesture_pinch_begin_event_t xcb_input_gesture_pinch_end_event_t;
jpayne@69 4112
jpayne@69 4113 typedef enum xcb_input_gesture_swipe_event_flags_t {
jpayne@69 4114 XCB_INPUT_GESTURE_SWIPE_EVENT_FLAGS_GESTURE_SWIPE_CANCELLED = 1
jpayne@69 4115 } xcb_input_gesture_swipe_event_flags_t;
jpayne@69 4116
jpayne@69 4117 /** Opcode for xcb_input_gesture_swipe_begin. */
jpayne@69 4118 #define XCB_INPUT_GESTURE_SWIPE_BEGIN 30
jpayne@69 4119
jpayne@69 4120 /**
jpayne@69 4121 * @brief xcb_input_gesture_swipe_begin_event_t
jpayne@69 4122 **/
jpayne@69 4123 typedef struct xcb_input_gesture_swipe_begin_event_t {
jpayne@69 4124 uint8_t response_type;
jpayne@69 4125 uint8_t extension;
jpayne@69 4126 uint16_t sequence;
jpayne@69 4127 uint32_t length;
jpayne@69 4128 uint16_t event_type;
jpayne@69 4129 xcb_input_device_id_t deviceid;
jpayne@69 4130 xcb_timestamp_t time;
jpayne@69 4131 uint32_t detail;
jpayne@69 4132 xcb_window_t root;
jpayne@69 4133 xcb_window_t event;
jpayne@69 4134 xcb_window_t child;
jpayne@69 4135 uint32_t full_sequence;
jpayne@69 4136 xcb_input_fp1616_t root_x;
jpayne@69 4137 xcb_input_fp1616_t root_y;
jpayne@69 4138 xcb_input_fp1616_t event_x;
jpayne@69 4139 xcb_input_fp1616_t event_y;
jpayne@69 4140 xcb_input_fp1616_t delta_x;
jpayne@69 4141 xcb_input_fp1616_t delta_y;
jpayne@69 4142 xcb_input_fp1616_t delta_unaccel_x;
jpayne@69 4143 xcb_input_fp1616_t delta_unaccel_y;
jpayne@69 4144 xcb_input_device_id_t sourceid;
jpayne@69 4145 uint8_t pad0[2];
jpayne@69 4146 xcb_input_modifier_info_t mods;
jpayne@69 4147 xcb_input_group_info_t group;
jpayne@69 4148 uint32_t flags;
jpayne@69 4149 } xcb_input_gesture_swipe_begin_event_t;
jpayne@69 4150
jpayne@69 4151 /** Opcode for xcb_input_gesture_swipe_update. */
jpayne@69 4152 #define XCB_INPUT_GESTURE_SWIPE_UPDATE 31
jpayne@69 4153
jpayne@69 4154 typedef xcb_input_gesture_swipe_begin_event_t xcb_input_gesture_swipe_update_event_t;
jpayne@69 4155
jpayne@69 4156 /** Opcode for xcb_input_gesture_swipe_end. */
jpayne@69 4157 #define XCB_INPUT_GESTURE_SWIPE_END 32
jpayne@69 4158
jpayne@69 4159 typedef xcb_input_gesture_swipe_begin_event_t xcb_input_gesture_swipe_end_event_t;
jpayne@69 4160
jpayne@69 4161 /**
jpayne@69 4162 * @brief xcb_input_event_for_send_t
jpayne@69 4163 **/
jpayne@69 4164 typedef union xcb_input_event_for_send_t {
jpayne@69 4165 xcb_input_device_valuator_event_t device_valuator;
jpayne@69 4166 xcb_input_device_key_press_event_t device_key_press;
jpayne@69 4167 xcb_input_device_key_release_event_t device_key_release;
jpayne@69 4168 xcb_input_device_button_press_event_t device_button_press;
jpayne@69 4169 xcb_input_device_button_release_event_t device_button_release;
jpayne@69 4170 xcb_input_device_motion_notify_event_t device_motion_notify;
jpayne@69 4171 xcb_input_device_focus_in_event_t device_focus_in;
jpayne@69 4172 xcb_input_device_focus_out_event_t device_focus_out;
jpayne@69 4173 xcb_input_proximity_in_event_t proximity_in;
jpayne@69 4174 xcb_input_proximity_out_event_t proximity_out;
jpayne@69 4175 xcb_input_device_state_notify_event_t device_state_notify;
jpayne@69 4176 xcb_input_device_mapping_notify_event_t device_mapping_notify;
jpayne@69 4177 xcb_input_change_device_notify_event_t change_device_notify;
jpayne@69 4178 xcb_input_device_key_state_notify_event_t device_key_state_notify;
jpayne@69 4179 xcb_input_device_button_state_notify_event_t device_button_state_notify;
jpayne@69 4180 xcb_input_device_presence_notify_event_t device_presence_notify;
jpayne@69 4181 xcb_raw_generic_event_t event_header;
jpayne@69 4182 } xcb_input_event_for_send_t;
jpayne@69 4183
jpayne@69 4184 /**
jpayne@69 4185 * @brief xcb_input_event_for_send_iterator_t
jpayne@69 4186 **/
jpayne@69 4187 typedef struct xcb_input_event_for_send_iterator_t {
jpayne@69 4188 xcb_input_event_for_send_t *data;
jpayne@69 4189 int rem;
jpayne@69 4190 int index;
jpayne@69 4191 } xcb_input_event_for_send_iterator_t;
jpayne@69 4192
jpayne@69 4193 /** Opcode for xcb_input_send_extension_event. */
jpayne@69 4194 #define XCB_INPUT_SEND_EXTENSION_EVENT 31
jpayne@69 4195
jpayne@69 4196 /**
jpayne@69 4197 * @brief xcb_input_send_extension_event_request_t
jpayne@69 4198 **/
jpayne@69 4199 typedef struct xcb_input_send_extension_event_request_t {
jpayne@69 4200 uint8_t major_opcode;
jpayne@69 4201 uint8_t minor_opcode;
jpayne@69 4202 uint16_t length;
jpayne@69 4203 xcb_window_t destination;
jpayne@69 4204 uint8_t device_id;
jpayne@69 4205 uint8_t propagate;
jpayne@69 4206 uint16_t num_classes;
jpayne@69 4207 uint8_t num_events;
jpayne@69 4208 uint8_t pad0[3];
jpayne@69 4209 } xcb_input_send_extension_event_request_t;
jpayne@69 4210
jpayne@69 4211 /** Opcode for xcb_input_device. */
jpayne@69 4212 #define XCB_INPUT_DEVICE 0
jpayne@69 4213
jpayne@69 4214 /**
jpayne@69 4215 * @brief xcb_input_device_error_t
jpayne@69 4216 **/
jpayne@69 4217 typedef struct xcb_input_device_error_t {
jpayne@69 4218 uint8_t response_type;
jpayne@69 4219 uint8_t error_code;
jpayne@69 4220 uint16_t sequence;
jpayne@69 4221 uint32_t bad_value;
jpayne@69 4222 uint16_t minor_opcode;
jpayne@69 4223 uint8_t major_opcode;
jpayne@69 4224 } xcb_input_device_error_t;
jpayne@69 4225
jpayne@69 4226 /** Opcode for xcb_input_event. */
jpayne@69 4227 #define XCB_INPUT_EVENT 1
jpayne@69 4228
jpayne@69 4229 /**
jpayne@69 4230 * @brief xcb_input_event_error_t
jpayne@69 4231 **/
jpayne@69 4232 typedef struct xcb_input_event_error_t {
jpayne@69 4233 uint8_t response_type;
jpayne@69 4234 uint8_t error_code;
jpayne@69 4235 uint16_t sequence;
jpayne@69 4236 uint32_t bad_value;
jpayne@69 4237 uint16_t minor_opcode;
jpayne@69 4238 uint8_t major_opcode;
jpayne@69 4239 } xcb_input_event_error_t;
jpayne@69 4240
jpayne@69 4241 /** Opcode for xcb_input_mode. */
jpayne@69 4242 #define XCB_INPUT_MODE 2
jpayne@69 4243
jpayne@69 4244 /**
jpayne@69 4245 * @brief xcb_input_mode_error_t
jpayne@69 4246 **/
jpayne@69 4247 typedef struct xcb_input_mode_error_t {
jpayne@69 4248 uint8_t response_type;
jpayne@69 4249 uint8_t error_code;
jpayne@69 4250 uint16_t sequence;
jpayne@69 4251 uint32_t bad_value;
jpayne@69 4252 uint16_t minor_opcode;
jpayne@69 4253 uint8_t major_opcode;
jpayne@69 4254 } xcb_input_mode_error_t;
jpayne@69 4255
jpayne@69 4256 /** Opcode for xcb_input_device_busy. */
jpayne@69 4257 #define XCB_INPUT_DEVICE_BUSY 3
jpayne@69 4258
jpayne@69 4259 /**
jpayne@69 4260 * @brief xcb_input_device_busy_error_t
jpayne@69 4261 **/
jpayne@69 4262 typedef struct xcb_input_device_busy_error_t {
jpayne@69 4263 uint8_t response_type;
jpayne@69 4264 uint8_t error_code;
jpayne@69 4265 uint16_t sequence;
jpayne@69 4266 uint32_t bad_value;
jpayne@69 4267 uint16_t minor_opcode;
jpayne@69 4268 uint8_t major_opcode;
jpayne@69 4269 } xcb_input_device_busy_error_t;
jpayne@69 4270
jpayne@69 4271 /** Opcode for xcb_input_class. */
jpayne@69 4272 #define XCB_INPUT_CLASS 4
jpayne@69 4273
jpayne@69 4274 /**
jpayne@69 4275 * @brief xcb_input_class_error_t
jpayne@69 4276 **/
jpayne@69 4277 typedef struct xcb_input_class_error_t {
jpayne@69 4278 uint8_t response_type;
jpayne@69 4279 uint8_t error_code;
jpayne@69 4280 uint16_t sequence;
jpayne@69 4281 uint32_t bad_value;
jpayne@69 4282 uint16_t minor_opcode;
jpayne@69 4283 uint8_t major_opcode;
jpayne@69 4284 } xcb_input_class_error_t;
jpayne@69 4285
jpayne@69 4286 /**
jpayne@69 4287 * Get the next element of the iterator
jpayne@69 4288 * @param i Pointer to a xcb_input_event_class_iterator_t
jpayne@69 4289 *
jpayne@69 4290 * Get the next element in the iterator. The member rem is
jpayne@69 4291 * decreased by one. The member data points to the next
jpayne@69 4292 * element. The member index is increased by sizeof(xcb_input_event_class_t)
jpayne@69 4293 */
jpayne@69 4294 void
jpayne@69 4295 xcb_input_event_class_next (xcb_input_event_class_iterator_t *i);
jpayne@69 4296
jpayne@69 4297 /**
jpayne@69 4298 * Return the iterator pointing to the last element
jpayne@69 4299 * @param i An xcb_input_event_class_iterator_t
jpayne@69 4300 * @return The iterator pointing to the last element
jpayne@69 4301 *
jpayne@69 4302 * Set the current element in the iterator to the last element.
jpayne@69 4303 * The member rem is set to 0. The member data points to the
jpayne@69 4304 * last element.
jpayne@69 4305 */
jpayne@69 4306 xcb_generic_iterator_t
jpayne@69 4307 xcb_input_event_class_end (xcb_input_event_class_iterator_t i);
jpayne@69 4308
jpayne@69 4309 /**
jpayne@69 4310 * Get the next element of the iterator
jpayne@69 4311 * @param i Pointer to a xcb_input_key_code_iterator_t
jpayne@69 4312 *
jpayne@69 4313 * Get the next element in the iterator. The member rem is
jpayne@69 4314 * decreased by one. The member data points to the next
jpayne@69 4315 * element. The member index is increased by sizeof(xcb_input_key_code_t)
jpayne@69 4316 */
jpayne@69 4317 void
jpayne@69 4318 xcb_input_key_code_next (xcb_input_key_code_iterator_t *i);
jpayne@69 4319
jpayne@69 4320 /**
jpayne@69 4321 * Return the iterator pointing to the last element
jpayne@69 4322 * @param i An xcb_input_key_code_iterator_t
jpayne@69 4323 * @return The iterator pointing to the last element
jpayne@69 4324 *
jpayne@69 4325 * Set the current element in the iterator to the last element.
jpayne@69 4326 * The member rem is set to 0. The member data points to the
jpayne@69 4327 * last element.
jpayne@69 4328 */
jpayne@69 4329 xcb_generic_iterator_t
jpayne@69 4330 xcb_input_key_code_end (xcb_input_key_code_iterator_t i);
jpayne@69 4331
jpayne@69 4332 /**
jpayne@69 4333 * Get the next element of the iterator
jpayne@69 4334 * @param i Pointer to a xcb_input_device_id_iterator_t
jpayne@69 4335 *
jpayne@69 4336 * Get the next element in the iterator. The member rem is
jpayne@69 4337 * decreased by one. The member data points to the next
jpayne@69 4338 * element. The member index is increased by sizeof(xcb_input_device_id_t)
jpayne@69 4339 */
jpayne@69 4340 void
jpayne@69 4341 xcb_input_device_id_next (xcb_input_device_id_iterator_t *i);
jpayne@69 4342
jpayne@69 4343 /**
jpayne@69 4344 * Return the iterator pointing to the last element
jpayne@69 4345 * @param i An xcb_input_device_id_iterator_t
jpayne@69 4346 * @return The iterator pointing to the last element
jpayne@69 4347 *
jpayne@69 4348 * Set the current element in the iterator to the last element.
jpayne@69 4349 * The member rem is set to 0. The member data points to the
jpayne@69 4350 * last element.
jpayne@69 4351 */
jpayne@69 4352 xcb_generic_iterator_t
jpayne@69 4353 xcb_input_device_id_end (xcb_input_device_id_iterator_t i);
jpayne@69 4354
jpayne@69 4355 /**
jpayne@69 4356 * Get the next element of the iterator
jpayne@69 4357 * @param i Pointer to a xcb_input_fp1616_iterator_t
jpayne@69 4358 *
jpayne@69 4359 * Get the next element in the iterator. The member rem is
jpayne@69 4360 * decreased by one. The member data points to the next
jpayne@69 4361 * element. The member index is increased by sizeof(xcb_input_fp1616_t)
jpayne@69 4362 */
jpayne@69 4363 void
jpayne@69 4364 xcb_input_fp1616_next (xcb_input_fp1616_iterator_t *i);
jpayne@69 4365
jpayne@69 4366 /**
jpayne@69 4367 * Return the iterator pointing to the last element
jpayne@69 4368 * @param i An xcb_input_fp1616_iterator_t
jpayne@69 4369 * @return The iterator pointing to the last element
jpayne@69 4370 *
jpayne@69 4371 * Set the current element in the iterator to the last element.
jpayne@69 4372 * The member rem is set to 0. The member data points to the
jpayne@69 4373 * last element.
jpayne@69 4374 */
jpayne@69 4375 xcb_generic_iterator_t
jpayne@69 4376 xcb_input_fp1616_end (xcb_input_fp1616_iterator_t i);
jpayne@69 4377
jpayne@69 4378 /**
jpayne@69 4379 * Get the next element of the iterator
jpayne@69 4380 * @param i Pointer to a xcb_input_fp3232_iterator_t
jpayne@69 4381 *
jpayne@69 4382 * Get the next element in the iterator. The member rem is
jpayne@69 4383 * decreased by one. The member data points to the next
jpayne@69 4384 * element. The member index is increased by sizeof(xcb_input_fp3232_t)
jpayne@69 4385 */
jpayne@69 4386 void
jpayne@69 4387 xcb_input_fp3232_next (xcb_input_fp3232_iterator_t *i);
jpayne@69 4388
jpayne@69 4389 /**
jpayne@69 4390 * Return the iterator pointing to the last element
jpayne@69 4391 * @param i An xcb_input_fp3232_iterator_t
jpayne@69 4392 * @return The iterator pointing to the last element
jpayne@69 4393 *
jpayne@69 4394 * Set the current element in the iterator to the last element.
jpayne@69 4395 * The member rem is set to 0. The member data points to the
jpayne@69 4396 * last element.
jpayne@69 4397 */
jpayne@69 4398 xcb_generic_iterator_t
jpayne@69 4399 xcb_input_fp3232_end (xcb_input_fp3232_iterator_t i);
jpayne@69 4400
jpayne@69 4401 int
jpayne@69 4402 xcb_input_get_extension_version_sizeof (const void *_buffer);
jpayne@69 4403
jpayne@69 4404 /**
jpayne@69 4405 *
jpayne@69 4406 * @param c The connection
jpayne@69 4407 * @return A cookie
jpayne@69 4408 *
jpayne@69 4409 * Delivers a request to the X server.
jpayne@69 4410 *
jpayne@69 4411 */
jpayne@69 4412 xcb_input_get_extension_version_cookie_t
jpayne@69 4413 xcb_input_get_extension_version (xcb_connection_t *c,
jpayne@69 4414 uint16_t name_len,
jpayne@69 4415 const char *name);
jpayne@69 4416
jpayne@69 4417 /**
jpayne@69 4418 *
jpayne@69 4419 * @param c The connection
jpayne@69 4420 * @return A cookie
jpayne@69 4421 *
jpayne@69 4422 * Delivers a request to the X server.
jpayne@69 4423 *
jpayne@69 4424 * This form can be used only if the request will cause
jpayne@69 4425 * a reply to be generated. Any returned error will be
jpayne@69 4426 * placed in the event queue.
jpayne@69 4427 */
jpayne@69 4428 xcb_input_get_extension_version_cookie_t
jpayne@69 4429 xcb_input_get_extension_version_unchecked (xcb_connection_t *c,
jpayne@69 4430 uint16_t name_len,
jpayne@69 4431 const char *name);
jpayne@69 4432
jpayne@69 4433 /**
jpayne@69 4434 * Return the reply
jpayne@69 4435 * @param c The connection
jpayne@69 4436 * @param cookie The cookie
jpayne@69 4437 * @param e The xcb_generic_error_t supplied
jpayne@69 4438 *
jpayne@69 4439 * Returns the reply of the request asked by
jpayne@69 4440 *
jpayne@69 4441 * The parameter @p e supplied to this function must be NULL if
jpayne@69 4442 * xcb_input_get_extension_version_unchecked(). is used.
jpayne@69 4443 * Otherwise, it stores the error if any.
jpayne@69 4444 *
jpayne@69 4445 * The returned value must be freed by the caller using free().
jpayne@69 4446 */
jpayne@69 4447 xcb_input_get_extension_version_reply_t *
jpayne@69 4448 xcb_input_get_extension_version_reply (xcb_connection_t *c,
jpayne@69 4449 xcb_input_get_extension_version_cookie_t cookie /**< */,
jpayne@69 4450 xcb_generic_error_t **e);
jpayne@69 4451
jpayne@69 4452 /**
jpayne@69 4453 * Get the next element of the iterator
jpayne@69 4454 * @param i Pointer to a xcb_input_device_info_iterator_t
jpayne@69 4455 *
jpayne@69 4456 * Get the next element in the iterator. The member rem is
jpayne@69 4457 * decreased by one. The member data points to the next
jpayne@69 4458 * element. The member index is increased by sizeof(xcb_input_device_info_t)
jpayne@69 4459 */
jpayne@69 4460 void
jpayne@69 4461 xcb_input_device_info_next (xcb_input_device_info_iterator_t *i);
jpayne@69 4462
jpayne@69 4463 /**
jpayne@69 4464 * Return the iterator pointing to the last element
jpayne@69 4465 * @param i An xcb_input_device_info_iterator_t
jpayne@69 4466 * @return The iterator pointing to the last element
jpayne@69 4467 *
jpayne@69 4468 * Set the current element in the iterator to the last element.
jpayne@69 4469 * The member rem is set to 0. The member data points to the
jpayne@69 4470 * last element.
jpayne@69 4471 */
jpayne@69 4472 xcb_generic_iterator_t
jpayne@69 4473 xcb_input_device_info_end (xcb_input_device_info_iterator_t i);
jpayne@69 4474
jpayne@69 4475 /**
jpayne@69 4476 * Get the next element of the iterator
jpayne@69 4477 * @param i Pointer to a xcb_input_key_info_iterator_t
jpayne@69 4478 *
jpayne@69 4479 * Get the next element in the iterator. The member rem is
jpayne@69 4480 * decreased by one. The member data points to the next
jpayne@69 4481 * element. The member index is increased by sizeof(xcb_input_key_info_t)
jpayne@69 4482 */
jpayne@69 4483 void
jpayne@69 4484 xcb_input_key_info_next (xcb_input_key_info_iterator_t *i);
jpayne@69 4485
jpayne@69 4486 /**
jpayne@69 4487 * Return the iterator pointing to the last element
jpayne@69 4488 * @param i An xcb_input_key_info_iterator_t
jpayne@69 4489 * @return The iterator pointing to the last element
jpayne@69 4490 *
jpayne@69 4491 * Set the current element in the iterator to the last element.
jpayne@69 4492 * The member rem is set to 0. The member data points to the
jpayne@69 4493 * last element.
jpayne@69 4494 */
jpayne@69 4495 xcb_generic_iterator_t
jpayne@69 4496 xcb_input_key_info_end (xcb_input_key_info_iterator_t i);
jpayne@69 4497
jpayne@69 4498 /**
jpayne@69 4499 * Get the next element of the iterator
jpayne@69 4500 * @param i Pointer to a xcb_input_button_info_iterator_t
jpayne@69 4501 *
jpayne@69 4502 * Get the next element in the iterator. The member rem is
jpayne@69 4503 * decreased by one. The member data points to the next
jpayne@69 4504 * element. The member index is increased by sizeof(xcb_input_button_info_t)
jpayne@69 4505 */
jpayne@69 4506 void
jpayne@69 4507 xcb_input_button_info_next (xcb_input_button_info_iterator_t *i);
jpayne@69 4508
jpayne@69 4509 /**
jpayne@69 4510 * Return the iterator pointing to the last element
jpayne@69 4511 * @param i An xcb_input_button_info_iterator_t
jpayne@69 4512 * @return The iterator pointing to the last element
jpayne@69 4513 *
jpayne@69 4514 * Set the current element in the iterator to the last element.
jpayne@69 4515 * The member rem is set to 0. The member data points to the
jpayne@69 4516 * last element.
jpayne@69 4517 */
jpayne@69 4518 xcb_generic_iterator_t
jpayne@69 4519 xcb_input_button_info_end (xcb_input_button_info_iterator_t i);
jpayne@69 4520
jpayne@69 4521 /**
jpayne@69 4522 * Get the next element of the iterator
jpayne@69 4523 * @param i Pointer to a xcb_input_axis_info_iterator_t
jpayne@69 4524 *
jpayne@69 4525 * Get the next element in the iterator. The member rem is
jpayne@69 4526 * decreased by one. The member data points to the next
jpayne@69 4527 * element. The member index is increased by sizeof(xcb_input_axis_info_t)
jpayne@69 4528 */
jpayne@69 4529 void
jpayne@69 4530 xcb_input_axis_info_next (xcb_input_axis_info_iterator_t *i);
jpayne@69 4531
jpayne@69 4532 /**
jpayne@69 4533 * Return the iterator pointing to the last element
jpayne@69 4534 * @param i An xcb_input_axis_info_iterator_t
jpayne@69 4535 * @return The iterator pointing to the last element
jpayne@69 4536 *
jpayne@69 4537 * Set the current element in the iterator to the last element.
jpayne@69 4538 * The member rem is set to 0. The member data points to the
jpayne@69 4539 * last element.
jpayne@69 4540 */
jpayne@69 4541 xcb_generic_iterator_t
jpayne@69 4542 xcb_input_axis_info_end (xcb_input_axis_info_iterator_t i);
jpayne@69 4543
jpayne@69 4544 int
jpayne@69 4545 xcb_input_valuator_info_sizeof (const void *_buffer);
jpayne@69 4546
jpayne@69 4547 xcb_input_axis_info_t *
jpayne@69 4548 xcb_input_valuator_info_axes (const xcb_input_valuator_info_t *R);
jpayne@69 4549
jpayne@69 4550 int
jpayne@69 4551 xcb_input_valuator_info_axes_length (const xcb_input_valuator_info_t *R);
jpayne@69 4552
jpayne@69 4553 xcb_input_axis_info_iterator_t
jpayne@69 4554 xcb_input_valuator_info_axes_iterator (const xcb_input_valuator_info_t *R);
jpayne@69 4555
jpayne@69 4556 /**
jpayne@69 4557 * Get the next element of the iterator
jpayne@69 4558 * @param i Pointer to a xcb_input_valuator_info_iterator_t
jpayne@69 4559 *
jpayne@69 4560 * Get the next element in the iterator. The member rem is
jpayne@69 4561 * decreased by one. The member data points to the next
jpayne@69 4562 * element. The member index is increased by sizeof(xcb_input_valuator_info_t)
jpayne@69 4563 */
jpayne@69 4564 void
jpayne@69 4565 xcb_input_valuator_info_next (xcb_input_valuator_info_iterator_t *i);
jpayne@69 4566
jpayne@69 4567 /**
jpayne@69 4568 * Return the iterator pointing to the last element
jpayne@69 4569 * @param i An xcb_input_valuator_info_iterator_t
jpayne@69 4570 * @return The iterator pointing to the last element
jpayne@69 4571 *
jpayne@69 4572 * Set the current element in the iterator to the last element.
jpayne@69 4573 * The member rem is set to 0. The member data points to the
jpayne@69 4574 * last element.
jpayne@69 4575 */
jpayne@69 4576 xcb_generic_iterator_t
jpayne@69 4577 xcb_input_valuator_info_end (xcb_input_valuator_info_iterator_t i);
jpayne@69 4578
jpayne@69 4579 xcb_input_axis_info_t *
jpayne@69 4580 xcb_input_input_info_info_valuator_axes (const xcb_input_input_info_info_t *S);
jpayne@69 4581
jpayne@69 4582 int
jpayne@69 4583 xcb_input_input_info_info_valuator_axes_length (const xcb_input_input_info_t *R,
jpayne@69 4584 const xcb_input_input_info_info_t *S);
jpayne@69 4585
jpayne@69 4586 xcb_input_axis_info_iterator_t
jpayne@69 4587 xcb_input_input_info_info_valuator_axes_iterator (const xcb_input_input_info_t *R,
jpayne@69 4588 const xcb_input_input_info_info_t *S);
jpayne@69 4589
jpayne@69 4590 int
jpayne@69 4591 xcb_input_input_info_info_serialize (void **_buffer,
jpayne@69 4592 uint8_t class_id,
jpayne@69 4593 const xcb_input_input_info_info_t *_aux);
jpayne@69 4594
jpayne@69 4595 int
jpayne@69 4596 xcb_input_input_info_info_unpack (const void *_buffer,
jpayne@69 4597 uint8_t class_id,
jpayne@69 4598 xcb_input_input_info_info_t *_aux);
jpayne@69 4599
jpayne@69 4600 int
jpayne@69 4601 xcb_input_input_info_info_sizeof (const void *_buffer,
jpayne@69 4602 uint8_t class_id);
jpayne@69 4603
jpayne@69 4604 int
jpayne@69 4605 xcb_input_input_info_sizeof (const void *_buffer);
jpayne@69 4606
jpayne@69 4607 /**
jpayne@69 4608 * Get the next element of the iterator
jpayne@69 4609 * @param i Pointer to a xcb_input_input_info_iterator_t
jpayne@69 4610 *
jpayne@69 4611 * Get the next element in the iterator. The member rem is
jpayne@69 4612 * decreased by one. The member data points to the next
jpayne@69 4613 * element. The member index is increased by sizeof(xcb_input_input_info_t)
jpayne@69 4614 */
jpayne@69 4615 void
jpayne@69 4616 xcb_input_input_info_next (xcb_input_input_info_iterator_t *i);
jpayne@69 4617
jpayne@69 4618 /**
jpayne@69 4619 * Return the iterator pointing to the last element
jpayne@69 4620 * @param i An xcb_input_input_info_iterator_t
jpayne@69 4621 * @return The iterator pointing to the last element
jpayne@69 4622 *
jpayne@69 4623 * Set the current element in the iterator to the last element.
jpayne@69 4624 * The member rem is set to 0. The member data points to the
jpayne@69 4625 * last element.
jpayne@69 4626 */
jpayne@69 4627 xcb_generic_iterator_t
jpayne@69 4628 xcb_input_input_info_end (xcb_input_input_info_iterator_t i);
jpayne@69 4629
jpayne@69 4630 int
jpayne@69 4631 xcb_input_device_name_sizeof (const void *_buffer);
jpayne@69 4632
jpayne@69 4633 char *
jpayne@69 4634 xcb_input_device_name_string (const xcb_input_device_name_t *R);
jpayne@69 4635
jpayne@69 4636 int
jpayne@69 4637 xcb_input_device_name_string_length (const xcb_input_device_name_t *R);
jpayne@69 4638
jpayne@69 4639 xcb_generic_iterator_t
jpayne@69 4640 xcb_input_device_name_string_end (const xcb_input_device_name_t *R);
jpayne@69 4641
jpayne@69 4642 /**
jpayne@69 4643 * Get the next element of the iterator
jpayne@69 4644 * @param i Pointer to a xcb_input_device_name_iterator_t
jpayne@69 4645 *
jpayne@69 4646 * Get the next element in the iterator. The member rem is
jpayne@69 4647 * decreased by one. The member data points to the next
jpayne@69 4648 * element. The member index is increased by sizeof(xcb_input_device_name_t)
jpayne@69 4649 */
jpayne@69 4650 void
jpayne@69 4651 xcb_input_device_name_next (xcb_input_device_name_iterator_t *i);
jpayne@69 4652
jpayne@69 4653 /**
jpayne@69 4654 * Return the iterator pointing to the last element
jpayne@69 4655 * @param i An xcb_input_device_name_iterator_t
jpayne@69 4656 * @return The iterator pointing to the last element
jpayne@69 4657 *
jpayne@69 4658 * Set the current element in the iterator to the last element.
jpayne@69 4659 * The member rem is set to 0. The member data points to the
jpayne@69 4660 * last element.
jpayne@69 4661 */
jpayne@69 4662 xcb_generic_iterator_t
jpayne@69 4663 xcb_input_device_name_end (xcb_input_device_name_iterator_t i);
jpayne@69 4664
jpayne@69 4665 int
jpayne@69 4666 xcb_input_list_input_devices_sizeof (const void *_buffer);
jpayne@69 4667
jpayne@69 4668 /**
jpayne@69 4669 *
jpayne@69 4670 * @param c The connection
jpayne@69 4671 * @return A cookie
jpayne@69 4672 *
jpayne@69 4673 * Delivers a request to the X server.
jpayne@69 4674 *
jpayne@69 4675 */
jpayne@69 4676 xcb_input_list_input_devices_cookie_t
jpayne@69 4677 xcb_input_list_input_devices (xcb_connection_t *c);
jpayne@69 4678
jpayne@69 4679 /**
jpayne@69 4680 *
jpayne@69 4681 * @param c The connection
jpayne@69 4682 * @return A cookie
jpayne@69 4683 *
jpayne@69 4684 * Delivers a request to the X server.
jpayne@69 4685 *
jpayne@69 4686 * This form can be used only if the request will cause
jpayne@69 4687 * a reply to be generated. Any returned error will be
jpayne@69 4688 * placed in the event queue.
jpayne@69 4689 */
jpayne@69 4690 xcb_input_list_input_devices_cookie_t
jpayne@69 4691 xcb_input_list_input_devices_unchecked (xcb_connection_t *c);
jpayne@69 4692
jpayne@69 4693 xcb_input_device_info_t *
jpayne@69 4694 xcb_input_list_input_devices_devices (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4695
jpayne@69 4696 int
jpayne@69 4697 xcb_input_list_input_devices_devices_length (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4698
jpayne@69 4699 xcb_input_device_info_iterator_t
jpayne@69 4700 xcb_input_list_input_devices_devices_iterator (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4701
jpayne@69 4702 int
jpayne@69 4703 xcb_input_list_input_devices_infos_length (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4704
jpayne@69 4705 xcb_input_input_info_iterator_t
jpayne@69 4706 xcb_input_list_input_devices_infos_iterator (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4707
jpayne@69 4708 int
jpayne@69 4709 xcb_input_list_input_devices_names_length (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4710
jpayne@69 4711 xcb_str_iterator_t
jpayne@69 4712 xcb_input_list_input_devices_names_iterator (const xcb_input_list_input_devices_reply_t *R);
jpayne@69 4713
jpayne@69 4714 /**
jpayne@69 4715 * Return the reply
jpayne@69 4716 * @param c The connection
jpayne@69 4717 * @param cookie The cookie
jpayne@69 4718 * @param e The xcb_generic_error_t supplied
jpayne@69 4719 *
jpayne@69 4720 * Returns the reply of the request asked by
jpayne@69 4721 *
jpayne@69 4722 * The parameter @p e supplied to this function must be NULL if
jpayne@69 4723 * xcb_input_list_input_devices_unchecked(). is used.
jpayne@69 4724 * Otherwise, it stores the error if any.
jpayne@69 4725 *
jpayne@69 4726 * The returned value must be freed by the caller using free().
jpayne@69 4727 */
jpayne@69 4728 xcb_input_list_input_devices_reply_t *
jpayne@69 4729 xcb_input_list_input_devices_reply (xcb_connection_t *c,
jpayne@69 4730 xcb_input_list_input_devices_cookie_t cookie /**< */,
jpayne@69 4731 xcb_generic_error_t **e);
jpayne@69 4732
jpayne@69 4733 /**
jpayne@69 4734 * Get the next element of the iterator
jpayne@69 4735 * @param i Pointer to a xcb_input_event_type_base_iterator_t
jpayne@69 4736 *
jpayne@69 4737 * Get the next element in the iterator. The member rem is
jpayne@69 4738 * decreased by one. The member data points to the next
jpayne@69 4739 * element. The member index is increased by sizeof(xcb_input_event_type_base_t)
jpayne@69 4740 */
jpayne@69 4741 void
jpayne@69 4742 xcb_input_event_type_base_next (xcb_input_event_type_base_iterator_t *i);
jpayne@69 4743
jpayne@69 4744 /**
jpayne@69 4745 * Return the iterator pointing to the last element
jpayne@69 4746 * @param i An xcb_input_event_type_base_iterator_t
jpayne@69 4747 * @return The iterator pointing to the last element
jpayne@69 4748 *
jpayne@69 4749 * Set the current element in the iterator to the last element.
jpayne@69 4750 * The member rem is set to 0. The member data points to the
jpayne@69 4751 * last element.
jpayne@69 4752 */
jpayne@69 4753 xcb_generic_iterator_t
jpayne@69 4754 xcb_input_event_type_base_end (xcb_input_event_type_base_iterator_t i);
jpayne@69 4755
jpayne@69 4756 /**
jpayne@69 4757 * Get the next element of the iterator
jpayne@69 4758 * @param i Pointer to a xcb_input_input_class_info_iterator_t
jpayne@69 4759 *
jpayne@69 4760 * Get the next element in the iterator. The member rem is
jpayne@69 4761 * decreased by one. The member data points to the next
jpayne@69 4762 * element. The member index is increased by sizeof(xcb_input_input_class_info_t)
jpayne@69 4763 */
jpayne@69 4764 void
jpayne@69 4765 xcb_input_input_class_info_next (xcb_input_input_class_info_iterator_t *i);
jpayne@69 4766
jpayne@69 4767 /**
jpayne@69 4768 * Return the iterator pointing to the last element
jpayne@69 4769 * @param i An xcb_input_input_class_info_iterator_t
jpayne@69 4770 * @return The iterator pointing to the last element
jpayne@69 4771 *
jpayne@69 4772 * Set the current element in the iterator to the last element.
jpayne@69 4773 * The member rem is set to 0. The member data points to the
jpayne@69 4774 * last element.
jpayne@69 4775 */
jpayne@69 4776 xcb_generic_iterator_t
jpayne@69 4777 xcb_input_input_class_info_end (xcb_input_input_class_info_iterator_t i);
jpayne@69 4778
jpayne@69 4779 int
jpayne@69 4780 xcb_input_open_device_sizeof (const void *_buffer);
jpayne@69 4781
jpayne@69 4782 /**
jpayne@69 4783 *
jpayne@69 4784 * @param c The connection
jpayne@69 4785 * @return A cookie
jpayne@69 4786 *
jpayne@69 4787 * Delivers a request to the X server.
jpayne@69 4788 *
jpayne@69 4789 */
jpayne@69 4790 xcb_input_open_device_cookie_t
jpayne@69 4791 xcb_input_open_device (xcb_connection_t *c,
jpayne@69 4792 uint8_t device_id);
jpayne@69 4793
jpayne@69 4794 /**
jpayne@69 4795 *
jpayne@69 4796 * @param c The connection
jpayne@69 4797 * @return A cookie
jpayne@69 4798 *
jpayne@69 4799 * Delivers a request to the X server.
jpayne@69 4800 *
jpayne@69 4801 * This form can be used only if the request will cause
jpayne@69 4802 * a reply to be generated. Any returned error will be
jpayne@69 4803 * placed in the event queue.
jpayne@69 4804 */
jpayne@69 4805 xcb_input_open_device_cookie_t
jpayne@69 4806 xcb_input_open_device_unchecked (xcb_connection_t *c,
jpayne@69 4807 uint8_t device_id);
jpayne@69 4808
jpayne@69 4809 xcb_input_input_class_info_t *
jpayne@69 4810 xcb_input_open_device_class_info (const xcb_input_open_device_reply_t *R);
jpayne@69 4811
jpayne@69 4812 int
jpayne@69 4813 xcb_input_open_device_class_info_length (const xcb_input_open_device_reply_t *R);
jpayne@69 4814
jpayne@69 4815 xcb_input_input_class_info_iterator_t
jpayne@69 4816 xcb_input_open_device_class_info_iterator (const xcb_input_open_device_reply_t *R);
jpayne@69 4817
jpayne@69 4818 /**
jpayne@69 4819 * Return the reply
jpayne@69 4820 * @param c The connection
jpayne@69 4821 * @param cookie The cookie
jpayne@69 4822 * @param e The xcb_generic_error_t supplied
jpayne@69 4823 *
jpayne@69 4824 * Returns the reply of the request asked by
jpayne@69 4825 *
jpayne@69 4826 * The parameter @p e supplied to this function must be NULL if
jpayne@69 4827 * xcb_input_open_device_unchecked(). is used.
jpayne@69 4828 * Otherwise, it stores the error if any.
jpayne@69 4829 *
jpayne@69 4830 * The returned value must be freed by the caller using free().
jpayne@69 4831 */
jpayne@69 4832 xcb_input_open_device_reply_t *
jpayne@69 4833 xcb_input_open_device_reply (xcb_connection_t *c,
jpayne@69 4834 xcb_input_open_device_cookie_t cookie /**< */,
jpayne@69 4835 xcb_generic_error_t **e);
jpayne@69 4836
jpayne@69 4837 /**
jpayne@69 4838 *
jpayne@69 4839 * @param c The connection
jpayne@69 4840 * @return A cookie
jpayne@69 4841 *
jpayne@69 4842 * Delivers a request to the X server.
jpayne@69 4843 *
jpayne@69 4844 * This form can be used only if the request will not cause
jpayne@69 4845 * a reply to be generated. Any returned error will be
jpayne@69 4846 * saved for handling by xcb_request_check().
jpayne@69 4847 */
jpayne@69 4848 xcb_void_cookie_t
jpayne@69 4849 xcb_input_close_device_checked (xcb_connection_t *c,
jpayne@69 4850 uint8_t device_id);
jpayne@69 4851
jpayne@69 4852 /**
jpayne@69 4853 *
jpayne@69 4854 * @param c The connection
jpayne@69 4855 * @return A cookie
jpayne@69 4856 *
jpayne@69 4857 * Delivers a request to the X server.
jpayne@69 4858 *
jpayne@69 4859 */
jpayne@69 4860 xcb_void_cookie_t
jpayne@69 4861 xcb_input_close_device (xcb_connection_t *c,
jpayne@69 4862 uint8_t device_id);
jpayne@69 4863
jpayne@69 4864 /**
jpayne@69 4865 *
jpayne@69 4866 * @param c The connection
jpayne@69 4867 * @return A cookie
jpayne@69 4868 *
jpayne@69 4869 * Delivers a request to the X server.
jpayne@69 4870 *
jpayne@69 4871 */
jpayne@69 4872 xcb_input_set_device_mode_cookie_t
jpayne@69 4873 xcb_input_set_device_mode (xcb_connection_t *c,
jpayne@69 4874 uint8_t device_id,
jpayne@69 4875 uint8_t mode);
jpayne@69 4876
jpayne@69 4877 /**
jpayne@69 4878 *
jpayne@69 4879 * @param c The connection
jpayne@69 4880 * @return A cookie
jpayne@69 4881 *
jpayne@69 4882 * Delivers a request to the X server.
jpayne@69 4883 *
jpayne@69 4884 * This form can be used only if the request will cause
jpayne@69 4885 * a reply to be generated. Any returned error will be
jpayne@69 4886 * placed in the event queue.
jpayne@69 4887 */
jpayne@69 4888 xcb_input_set_device_mode_cookie_t
jpayne@69 4889 xcb_input_set_device_mode_unchecked (xcb_connection_t *c,
jpayne@69 4890 uint8_t device_id,
jpayne@69 4891 uint8_t mode);
jpayne@69 4892
jpayne@69 4893 /**
jpayne@69 4894 * Return the reply
jpayne@69 4895 * @param c The connection
jpayne@69 4896 * @param cookie The cookie
jpayne@69 4897 * @param e The xcb_generic_error_t supplied
jpayne@69 4898 *
jpayne@69 4899 * Returns the reply of the request asked by
jpayne@69 4900 *
jpayne@69 4901 * The parameter @p e supplied to this function must be NULL if
jpayne@69 4902 * xcb_input_set_device_mode_unchecked(). is used.
jpayne@69 4903 * Otherwise, it stores the error if any.
jpayne@69 4904 *
jpayne@69 4905 * The returned value must be freed by the caller using free().
jpayne@69 4906 */
jpayne@69 4907 xcb_input_set_device_mode_reply_t *
jpayne@69 4908 xcb_input_set_device_mode_reply (xcb_connection_t *c,
jpayne@69 4909 xcb_input_set_device_mode_cookie_t cookie /**< */,
jpayne@69 4910 xcb_generic_error_t **e);
jpayne@69 4911
jpayne@69 4912 int
jpayne@69 4913 xcb_input_select_extension_event_sizeof (const void *_buffer);
jpayne@69 4914
jpayne@69 4915 /**
jpayne@69 4916 *
jpayne@69 4917 * @param c The connection
jpayne@69 4918 * @return A cookie
jpayne@69 4919 *
jpayne@69 4920 * Delivers a request to the X server.
jpayne@69 4921 *
jpayne@69 4922 * This form can be used only if the request will not cause
jpayne@69 4923 * a reply to be generated. Any returned error will be
jpayne@69 4924 * saved for handling by xcb_request_check().
jpayne@69 4925 */
jpayne@69 4926 xcb_void_cookie_t
jpayne@69 4927 xcb_input_select_extension_event_checked (xcb_connection_t *c,
jpayne@69 4928 xcb_window_t window,
jpayne@69 4929 uint16_t num_classes,
jpayne@69 4930 const xcb_input_event_class_t *classes);
jpayne@69 4931
jpayne@69 4932 /**
jpayne@69 4933 *
jpayne@69 4934 * @param c The connection
jpayne@69 4935 * @return A cookie
jpayne@69 4936 *
jpayne@69 4937 * Delivers a request to the X server.
jpayne@69 4938 *
jpayne@69 4939 */
jpayne@69 4940 xcb_void_cookie_t
jpayne@69 4941 xcb_input_select_extension_event (xcb_connection_t *c,
jpayne@69 4942 xcb_window_t window,
jpayne@69 4943 uint16_t num_classes,
jpayne@69 4944 const xcb_input_event_class_t *classes);
jpayne@69 4945
jpayne@69 4946 xcb_input_event_class_t *
jpayne@69 4947 xcb_input_select_extension_event_classes (const xcb_input_select_extension_event_request_t *R);
jpayne@69 4948
jpayne@69 4949 int
jpayne@69 4950 xcb_input_select_extension_event_classes_length (const xcb_input_select_extension_event_request_t *R);
jpayne@69 4951
jpayne@69 4952 xcb_generic_iterator_t
jpayne@69 4953 xcb_input_select_extension_event_classes_end (const xcb_input_select_extension_event_request_t *R);
jpayne@69 4954
jpayne@69 4955 int
jpayne@69 4956 xcb_input_get_selected_extension_events_sizeof (const void *_buffer);
jpayne@69 4957
jpayne@69 4958 /**
jpayne@69 4959 *
jpayne@69 4960 * @param c The connection
jpayne@69 4961 * @return A cookie
jpayne@69 4962 *
jpayne@69 4963 * Delivers a request to the X server.
jpayne@69 4964 *
jpayne@69 4965 */
jpayne@69 4966 xcb_input_get_selected_extension_events_cookie_t
jpayne@69 4967 xcb_input_get_selected_extension_events (xcb_connection_t *c,
jpayne@69 4968 xcb_window_t window);
jpayne@69 4969
jpayne@69 4970 /**
jpayne@69 4971 *
jpayne@69 4972 * @param c The connection
jpayne@69 4973 * @return A cookie
jpayne@69 4974 *
jpayne@69 4975 * Delivers a request to the X server.
jpayne@69 4976 *
jpayne@69 4977 * This form can be used only if the request will cause
jpayne@69 4978 * a reply to be generated. Any returned error will be
jpayne@69 4979 * placed in the event queue.
jpayne@69 4980 */
jpayne@69 4981 xcb_input_get_selected_extension_events_cookie_t
jpayne@69 4982 xcb_input_get_selected_extension_events_unchecked (xcb_connection_t *c,
jpayne@69 4983 xcb_window_t window);
jpayne@69 4984
jpayne@69 4985 xcb_input_event_class_t *
jpayne@69 4986 xcb_input_get_selected_extension_events_this_classes (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 4987
jpayne@69 4988 int
jpayne@69 4989 xcb_input_get_selected_extension_events_this_classes_length (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 4990
jpayne@69 4991 xcb_generic_iterator_t
jpayne@69 4992 xcb_input_get_selected_extension_events_this_classes_end (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 4993
jpayne@69 4994 xcb_input_event_class_t *
jpayne@69 4995 xcb_input_get_selected_extension_events_all_classes (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 4996
jpayne@69 4997 int
jpayne@69 4998 xcb_input_get_selected_extension_events_all_classes_length (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 4999
jpayne@69 5000 xcb_generic_iterator_t
jpayne@69 5001 xcb_input_get_selected_extension_events_all_classes_end (const xcb_input_get_selected_extension_events_reply_t *R);
jpayne@69 5002
jpayne@69 5003 /**
jpayne@69 5004 * Return the reply
jpayne@69 5005 * @param c The connection
jpayne@69 5006 * @param cookie The cookie
jpayne@69 5007 * @param e The xcb_generic_error_t supplied
jpayne@69 5008 *
jpayne@69 5009 * Returns the reply of the request asked by
jpayne@69 5010 *
jpayne@69 5011 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5012 * xcb_input_get_selected_extension_events_unchecked(). is used.
jpayne@69 5013 * Otherwise, it stores the error if any.
jpayne@69 5014 *
jpayne@69 5015 * The returned value must be freed by the caller using free().
jpayne@69 5016 */
jpayne@69 5017 xcb_input_get_selected_extension_events_reply_t *
jpayne@69 5018 xcb_input_get_selected_extension_events_reply (xcb_connection_t *c,
jpayne@69 5019 xcb_input_get_selected_extension_events_cookie_t cookie /**< */,
jpayne@69 5020 xcb_generic_error_t **e);
jpayne@69 5021
jpayne@69 5022 int
jpayne@69 5023 xcb_input_change_device_dont_propagate_list_sizeof (const void *_buffer);
jpayne@69 5024
jpayne@69 5025 /**
jpayne@69 5026 *
jpayne@69 5027 * @param c The connection
jpayne@69 5028 * @return A cookie
jpayne@69 5029 *
jpayne@69 5030 * Delivers a request to the X server.
jpayne@69 5031 *
jpayne@69 5032 * This form can be used only if the request will not cause
jpayne@69 5033 * a reply to be generated. Any returned error will be
jpayne@69 5034 * saved for handling by xcb_request_check().
jpayne@69 5035 */
jpayne@69 5036 xcb_void_cookie_t
jpayne@69 5037 xcb_input_change_device_dont_propagate_list_checked (xcb_connection_t *c,
jpayne@69 5038 xcb_window_t window,
jpayne@69 5039 uint16_t num_classes,
jpayne@69 5040 uint8_t mode,
jpayne@69 5041 const xcb_input_event_class_t *classes);
jpayne@69 5042
jpayne@69 5043 /**
jpayne@69 5044 *
jpayne@69 5045 * @param c The connection
jpayne@69 5046 * @return A cookie
jpayne@69 5047 *
jpayne@69 5048 * Delivers a request to the X server.
jpayne@69 5049 *
jpayne@69 5050 */
jpayne@69 5051 xcb_void_cookie_t
jpayne@69 5052 xcb_input_change_device_dont_propagate_list (xcb_connection_t *c,
jpayne@69 5053 xcb_window_t window,
jpayne@69 5054 uint16_t num_classes,
jpayne@69 5055 uint8_t mode,
jpayne@69 5056 const xcb_input_event_class_t *classes);
jpayne@69 5057
jpayne@69 5058 xcb_input_event_class_t *
jpayne@69 5059 xcb_input_change_device_dont_propagate_list_classes (const xcb_input_change_device_dont_propagate_list_request_t *R);
jpayne@69 5060
jpayne@69 5061 int
jpayne@69 5062 xcb_input_change_device_dont_propagate_list_classes_length (const xcb_input_change_device_dont_propagate_list_request_t *R);
jpayne@69 5063
jpayne@69 5064 xcb_generic_iterator_t
jpayne@69 5065 xcb_input_change_device_dont_propagate_list_classes_end (const xcb_input_change_device_dont_propagate_list_request_t *R);
jpayne@69 5066
jpayne@69 5067 int
jpayne@69 5068 xcb_input_get_device_dont_propagate_list_sizeof (const void *_buffer);
jpayne@69 5069
jpayne@69 5070 /**
jpayne@69 5071 *
jpayne@69 5072 * @param c The connection
jpayne@69 5073 * @return A cookie
jpayne@69 5074 *
jpayne@69 5075 * Delivers a request to the X server.
jpayne@69 5076 *
jpayne@69 5077 */
jpayne@69 5078 xcb_input_get_device_dont_propagate_list_cookie_t
jpayne@69 5079 xcb_input_get_device_dont_propagate_list (xcb_connection_t *c,
jpayne@69 5080 xcb_window_t window);
jpayne@69 5081
jpayne@69 5082 /**
jpayne@69 5083 *
jpayne@69 5084 * @param c The connection
jpayne@69 5085 * @return A cookie
jpayne@69 5086 *
jpayne@69 5087 * Delivers a request to the X server.
jpayne@69 5088 *
jpayne@69 5089 * This form can be used only if the request will cause
jpayne@69 5090 * a reply to be generated. Any returned error will be
jpayne@69 5091 * placed in the event queue.
jpayne@69 5092 */
jpayne@69 5093 xcb_input_get_device_dont_propagate_list_cookie_t
jpayne@69 5094 xcb_input_get_device_dont_propagate_list_unchecked (xcb_connection_t *c,
jpayne@69 5095 xcb_window_t window);
jpayne@69 5096
jpayne@69 5097 xcb_input_event_class_t *
jpayne@69 5098 xcb_input_get_device_dont_propagate_list_classes (const xcb_input_get_device_dont_propagate_list_reply_t *R);
jpayne@69 5099
jpayne@69 5100 int
jpayne@69 5101 xcb_input_get_device_dont_propagate_list_classes_length (const xcb_input_get_device_dont_propagate_list_reply_t *R);
jpayne@69 5102
jpayne@69 5103 xcb_generic_iterator_t
jpayne@69 5104 xcb_input_get_device_dont_propagate_list_classes_end (const xcb_input_get_device_dont_propagate_list_reply_t *R);
jpayne@69 5105
jpayne@69 5106 /**
jpayne@69 5107 * Return the reply
jpayne@69 5108 * @param c The connection
jpayne@69 5109 * @param cookie The cookie
jpayne@69 5110 * @param e The xcb_generic_error_t supplied
jpayne@69 5111 *
jpayne@69 5112 * Returns the reply of the request asked by
jpayne@69 5113 *
jpayne@69 5114 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5115 * xcb_input_get_device_dont_propagate_list_unchecked(). is used.
jpayne@69 5116 * Otherwise, it stores the error if any.
jpayne@69 5117 *
jpayne@69 5118 * The returned value must be freed by the caller using free().
jpayne@69 5119 */
jpayne@69 5120 xcb_input_get_device_dont_propagate_list_reply_t *
jpayne@69 5121 xcb_input_get_device_dont_propagate_list_reply (xcb_connection_t *c,
jpayne@69 5122 xcb_input_get_device_dont_propagate_list_cookie_t cookie /**< */,
jpayne@69 5123 xcb_generic_error_t **e);
jpayne@69 5124
jpayne@69 5125 int
jpayne@69 5126 xcb_input_device_time_coord_sizeof (const void *_buffer,
jpayne@69 5127 uint8_t num_axes);
jpayne@69 5128
jpayne@69 5129 int32_t *
jpayne@69 5130 xcb_input_device_time_coord_axisvalues (const xcb_input_device_time_coord_t *R);
jpayne@69 5131
jpayne@69 5132 int
jpayne@69 5133 xcb_input_device_time_coord_axisvalues_length (const xcb_input_device_time_coord_t *R,
jpayne@69 5134 uint8_t num_axes);
jpayne@69 5135
jpayne@69 5136 xcb_generic_iterator_t
jpayne@69 5137 xcb_input_device_time_coord_axisvalues_end (const xcb_input_device_time_coord_t *R,
jpayne@69 5138 uint8_t num_axes);
jpayne@69 5139
jpayne@69 5140 /**
jpayne@69 5141 * Get the next element of the iterator
jpayne@69 5142 * @param i Pointer to a xcb_input_device_time_coord_iterator_t
jpayne@69 5143 *
jpayne@69 5144 * Get the next element in the iterator. The member rem is
jpayne@69 5145 * decreased by one. The member data points to the next
jpayne@69 5146 * element. The member index is increased by sizeof(xcb_input_device_time_coord_t)
jpayne@69 5147 */
jpayne@69 5148 void
jpayne@69 5149 xcb_input_device_time_coord_next (xcb_input_device_time_coord_iterator_t *i);
jpayne@69 5150
jpayne@69 5151 /**
jpayne@69 5152 * Return the iterator pointing to the last element
jpayne@69 5153 * @param i An xcb_input_device_time_coord_iterator_t
jpayne@69 5154 * @return The iterator pointing to the last element
jpayne@69 5155 *
jpayne@69 5156 * Set the current element in the iterator to the last element.
jpayne@69 5157 * The member rem is set to 0. The member data points to the
jpayne@69 5158 * last element.
jpayne@69 5159 */
jpayne@69 5160 xcb_generic_iterator_t
jpayne@69 5161 xcb_input_device_time_coord_end (xcb_input_device_time_coord_iterator_t i);
jpayne@69 5162
jpayne@69 5163 int
jpayne@69 5164 xcb_input_get_device_motion_events_sizeof (const void *_buffer);
jpayne@69 5165
jpayne@69 5166 /**
jpayne@69 5167 *
jpayne@69 5168 * @param c The connection
jpayne@69 5169 * @return A cookie
jpayne@69 5170 *
jpayne@69 5171 * Delivers a request to the X server.
jpayne@69 5172 *
jpayne@69 5173 */
jpayne@69 5174 xcb_input_get_device_motion_events_cookie_t
jpayne@69 5175 xcb_input_get_device_motion_events (xcb_connection_t *c,
jpayne@69 5176 xcb_timestamp_t start,
jpayne@69 5177 xcb_timestamp_t stop,
jpayne@69 5178 uint8_t device_id);
jpayne@69 5179
jpayne@69 5180 /**
jpayne@69 5181 *
jpayne@69 5182 * @param c The connection
jpayne@69 5183 * @return A cookie
jpayne@69 5184 *
jpayne@69 5185 * Delivers a request to the X server.
jpayne@69 5186 *
jpayne@69 5187 * This form can be used only if the request will cause
jpayne@69 5188 * a reply to be generated. Any returned error will be
jpayne@69 5189 * placed in the event queue.
jpayne@69 5190 */
jpayne@69 5191 xcb_input_get_device_motion_events_cookie_t
jpayne@69 5192 xcb_input_get_device_motion_events_unchecked (xcb_connection_t *c,
jpayne@69 5193 xcb_timestamp_t start,
jpayne@69 5194 xcb_timestamp_t stop,
jpayne@69 5195 uint8_t device_id);
jpayne@69 5196
jpayne@69 5197 int
jpayne@69 5198 xcb_input_get_device_motion_events_events_length (const xcb_input_get_device_motion_events_reply_t *R);
jpayne@69 5199
jpayne@69 5200 xcb_input_device_time_coord_iterator_t
jpayne@69 5201 xcb_input_get_device_motion_events_events_iterator (const xcb_input_get_device_motion_events_reply_t *R);
jpayne@69 5202
jpayne@69 5203 /**
jpayne@69 5204 * Return the reply
jpayne@69 5205 * @param c The connection
jpayne@69 5206 * @param cookie The cookie
jpayne@69 5207 * @param e The xcb_generic_error_t supplied
jpayne@69 5208 *
jpayne@69 5209 * Returns the reply of the request asked by
jpayne@69 5210 *
jpayne@69 5211 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5212 * xcb_input_get_device_motion_events_unchecked(). is used.
jpayne@69 5213 * Otherwise, it stores the error if any.
jpayne@69 5214 *
jpayne@69 5215 * The returned value must be freed by the caller using free().
jpayne@69 5216 */
jpayne@69 5217 xcb_input_get_device_motion_events_reply_t *
jpayne@69 5218 xcb_input_get_device_motion_events_reply (xcb_connection_t *c,
jpayne@69 5219 xcb_input_get_device_motion_events_cookie_t cookie /**< */,
jpayne@69 5220 xcb_generic_error_t **e);
jpayne@69 5221
jpayne@69 5222 /**
jpayne@69 5223 *
jpayne@69 5224 * @param c The connection
jpayne@69 5225 * @return A cookie
jpayne@69 5226 *
jpayne@69 5227 * Delivers a request to the X server.
jpayne@69 5228 *
jpayne@69 5229 */
jpayne@69 5230 xcb_input_change_keyboard_device_cookie_t
jpayne@69 5231 xcb_input_change_keyboard_device (xcb_connection_t *c,
jpayne@69 5232 uint8_t device_id);
jpayne@69 5233
jpayne@69 5234 /**
jpayne@69 5235 *
jpayne@69 5236 * @param c The connection
jpayne@69 5237 * @return A cookie
jpayne@69 5238 *
jpayne@69 5239 * Delivers a request to the X server.
jpayne@69 5240 *
jpayne@69 5241 * This form can be used only if the request will cause
jpayne@69 5242 * a reply to be generated. Any returned error will be
jpayne@69 5243 * placed in the event queue.
jpayne@69 5244 */
jpayne@69 5245 xcb_input_change_keyboard_device_cookie_t
jpayne@69 5246 xcb_input_change_keyboard_device_unchecked (xcb_connection_t *c,
jpayne@69 5247 uint8_t device_id);
jpayne@69 5248
jpayne@69 5249 /**
jpayne@69 5250 * Return the reply
jpayne@69 5251 * @param c The connection
jpayne@69 5252 * @param cookie The cookie
jpayne@69 5253 * @param e The xcb_generic_error_t supplied
jpayne@69 5254 *
jpayne@69 5255 * Returns the reply of the request asked by
jpayne@69 5256 *
jpayne@69 5257 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5258 * xcb_input_change_keyboard_device_unchecked(). is used.
jpayne@69 5259 * Otherwise, it stores the error if any.
jpayne@69 5260 *
jpayne@69 5261 * The returned value must be freed by the caller using free().
jpayne@69 5262 */
jpayne@69 5263 xcb_input_change_keyboard_device_reply_t *
jpayne@69 5264 xcb_input_change_keyboard_device_reply (xcb_connection_t *c,
jpayne@69 5265 xcb_input_change_keyboard_device_cookie_t cookie /**< */,
jpayne@69 5266 xcb_generic_error_t **e);
jpayne@69 5267
jpayne@69 5268 /**
jpayne@69 5269 *
jpayne@69 5270 * @param c The connection
jpayne@69 5271 * @return A cookie
jpayne@69 5272 *
jpayne@69 5273 * Delivers a request to the X server.
jpayne@69 5274 *
jpayne@69 5275 */
jpayne@69 5276 xcb_input_change_pointer_device_cookie_t
jpayne@69 5277 xcb_input_change_pointer_device (xcb_connection_t *c,
jpayne@69 5278 uint8_t x_axis,
jpayne@69 5279 uint8_t y_axis,
jpayne@69 5280 uint8_t device_id);
jpayne@69 5281
jpayne@69 5282 /**
jpayne@69 5283 *
jpayne@69 5284 * @param c The connection
jpayne@69 5285 * @return A cookie
jpayne@69 5286 *
jpayne@69 5287 * Delivers a request to the X server.
jpayne@69 5288 *
jpayne@69 5289 * This form can be used only if the request will cause
jpayne@69 5290 * a reply to be generated. Any returned error will be
jpayne@69 5291 * placed in the event queue.
jpayne@69 5292 */
jpayne@69 5293 xcb_input_change_pointer_device_cookie_t
jpayne@69 5294 xcb_input_change_pointer_device_unchecked (xcb_connection_t *c,
jpayne@69 5295 uint8_t x_axis,
jpayne@69 5296 uint8_t y_axis,
jpayne@69 5297 uint8_t device_id);
jpayne@69 5298
jpayne@69 5299 /**
jpayne@69 5300 * Return the reply
jpayne@69 5301 * @param c The connection
jpayne@69 5302 * @param cookie The cookie
jpayne@69 5303 * @param e The xcb_generic_error_t supplied
jpayne@69 5304 *
jpayne@69 5305 * Returns the reply of the request asked by
jpayne@69 5306 *
jpayne@69 5307 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5308 * xcb_input_change_pointer_device_unchecked(). is used.
jpayne@69 5309 * Otherwise, it stores the error if any.
jpayne@69 5310 *
jpayne@69 5311 * The returned value must be freed by the caller using free().
jpayne@69 5312 */
jpayne@69 5313 xcb_input_change_pointer_device_reply_t *
jpayne@69 5314 xcb_input_change_pointer_device_reply (xcb_connection_t *c,
jpayne@69 5315 xcb_input_change_pointer_device_cookie_t cookie /**< */,
jpayne@69 5316 xcb_generic_error_t **e);
jpayne@69 5317
jpayne@69 5318 int
jpayne@69 5319 xcb_input_grab_device_sizeof (const void *_buffer);
jpayne@69 5320
jpayne@69 5321 /**
jpayne@69 5322 *
jpayne@69 5323 * @param c The connection
jpayne@69 5324 * @return A cookie
jpayne@69 5325 *
jpayne@69 5326 * Delivers a request to the X server.
jpayne@69 5327 *
jpayne@69 5328 */
jpayne@69 5329 xcb_input_grab_device_cookie_t
jpayne@69 5330 xcb_input_grab_device (xcb_connection_t *c,
jpayne@69 5331 xcb_window_t grab_window,
jpayne@69 5332 xcb_timestamp_t time,
jpayne@69 5333 uint16_t num_classes,
jpayne@69 5334 uint8_t this_device_mode,
jpayne@69 5335 uint8_t other_device_mode,
jpayne@69 5336 uint8_t owner_events,
jpayne@69 5337 uint8_t device_id,
jpayne@69 5338 const xcb_input_event_class_t *classes);
jpayne@69 5339
jpayne@69 5340 /**
jpayne@69 5341 *
jpayne@69 5342 * @param c The connection
jpayne@69 5343 * @return A cookie
jpayne@69 5344 *
jpayne@69 5345 * Delivers a request to the X server.
jpayne@69 5346 *
jpayne@69 5347 * This form can be used only if the request will cause
jpayne@69 5348 * a reply to be generated. Any returned error will be
jpayne@69 5349 * placed in the event queue.
jpayne@69 5350 */
jpayne@69 5351 xcb_input_grab_device_cookie_t
jpayne@69 5352 xcb_input_grab_device_unchecked (xcb_connection_t *c,
jpayne@69 5353 xcb_window_t grab_window,
jpayne@69 5354 xcb_timestamp_t time,
jpayne@69 5355 uint16_t num_classes,
jpayne@69 5356 uint8_t this_device_mode,
jpayne@69 5357 uint8_t other_device_mode,
jpayne@69 5358 uint8_t owner_events,
jpayne@69 5359 uint8_t device_id,
jpayne@69 5360 const xcb_input_event_class_t *classes);
jpayne@69 5361
jpayne@69 5362 /**
jpayne@69 5363 * Return the reply
jpayne@69 5364 * @param c The connection
jpayne@69 5365 * @param cookie The cookie
jpayne@69 5366 * @param e The xcb_generic_error_t supplied
jpayne@69 5367 *
jpayne@69 5368 * Returns the reply of the request asked by
jpayne@69 5369 *
jpayne@69 5370 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5371 * xcb_input_grab_device_unchecked(). is used.
jpayne@69 5372 * Otherwise, it stores the error if any.
jpayne@69 5373 *
jpayne@69 5374 * The returned value must be freed by the caller using free().
jpayne@69 5375 */
jpayne@69 5376 xcb_input_grab_device_reply_t *
jpayne@69 5377 xcb_input_grab_device_reply (xcb_connection_t *c,
jpayne@69 5378 xcb_input_grab_device_cookie_t cookie /**< */,
jpayne@69 5379 xcb_generic_error_t **e);
jpayne@69 5380
jpayne@69 5381 /**
jpayne@69 5382 *
jpayne@69 5383 * @param c The connection
jpayne@69 5384 * @return A cookie
jpayne@69 5385 *
jpayne@69 5386 * Delivers a request to the X server.
jpayne@69 5387 *
jpayne@69 5388 * This form can be used only if the request will not cause
jpayne@69 5389 * a reply to be generated. Any returned error will be
jpayne@69 5390 * saved for handling by xcb_request_check().
jpayne@69 5391 */
jpayne@69 5392 xcb_void_cookie_t
jpayne@69 5393 xcb_input_ungrab_device_checked (xcb_connection_t *c,
jpayne@69 5394 xcb_timestamp_t time,
jpayne@69 5395 uint8_t device_id);
jpayne@69 5396
jpayne@69 5397 /**
jpayne@69 5398 *
jpayne@69 5399 * @param c The connection
jpayne@69 5400 * @return A cookie
jpayne@69 5401 *
jpayne@69 5402 * Delivers a request to the X server.
jpayne@69 5403 *
jpayne@69 5404 */
jpayne@69 5405 xcb_void_cookie_t
jpayne@69 5406 xcb_input_ungrab_device (xcb_connection_t *c,
jpayne@69 5407 xcb_timestamp_t time,
jpayne@69 5408 uint8_t device_id);
jpayne@69 5409
jpayne@69 5410 int
jpayne@69 5411 xcb_input_grab_device_key_sizeof (const void *_buffer);
jpayne@69 5412
jpayne@69 5413 /**
jpayne@69 5414 *
jpayne@69 5415 * @param c The connection
jpayne@69 5416 * @return A cookie
jpayne@69 5417 *
jpayne@69 5418 * Delivers a request to the X server.
jpayne@69 5419 *
jpayne@69 5420 * This form can be used only if the request will not cause
jpayne@69 5421 * a reply to be generated. Any returned error will be
jpayne@69 5422 * saved for handling by xcb_request_check().
jpayne@69 5423 */
jpayne@69 5424 xcb_void_cookie_t
jpayne@69 5425 xcb_input_grab_device_key_checked (xcb_connection_t *c,
jpayne@69 5426 xcb_window_t grab_window,
jpayne@69 5427 uint16_t num_classes,
jpayne@69 5428 uint16_t modifiers,
jpayne@69 5429 uint8_t modifier_device,
jpayne@69 5430 uint8_t grabbed_device,
jpayne@69 5431 uint8_t key,
jpayne@69 5432 uint8_t this_device_mode,
jpayne@69 5433 uint8_t other_device_mode,
jpayne@69 5434 uint8_t owner_events,
jpayne@69 5435 const xcb_input_event_class_t *classes);
jpayne@69 5436
jpayne@69 5437 /**
jpayne@69 5438 *
jpayne@69 5439 * @param c The connection
jpayne@69 5440 * @return A cookie
jpayne@69 5441 *
jpayne@69 5442 * Delivers a request to the X server.
jpayne@69 5443 *
jpayne@69 5444 */
jpayne@69 5445 xcb_void_cookie_t
jpayne@69 5446 xcb_input_grab_device_key (xcb_connection_t *c,
jpayne@69 5447 xcb_window_t grab_window,
jpayne@69 5448 uint16_t num_classes,
jpayne@69 5449 uint16_t modifiers,
jpayne@69 5450 uint8_t modifier_device,
jpayne@69 5451 uint8_t grabbed_device,
jpayne@69 5452 uint8_t key,
jpayne@69 5453 uint8_t this_device_mode,
jpayne@69 5454 uint8_t other_device_mode,
jpayne@69 5455 uint8_t owner_events,
jpayne@69 5456 const xcb_input_event_class_t *classes);
jpayne@69 5457
jpayne@69 5458 xcb_input_event_class_t *
jpayne@69 5459 xcb_input_grab_device_key_classes (const xcb_input_grab_device_key_request_t *R);
jpayne@69 5460
jpayne@69 5461 int
jpayne@69 5462 xcb_input_grab_device_key_classes_length (const xcb_input_grab_device_key_request_t *R);
jpayne@69 5463
jpayne@69 5464 xcb_generic_iterator_t
jpayne@69 5465 xcb_input_grab_device_key_classes_end (const xcb_input_grab_device_key_request_t *R);
jpayne@69 5466
jpayne@69 5467 /**
jpayne@69 5468 *
jpayne@69 5469 * @param c The connection
jpayne@69 5470 * @return A cookie
jpayne@69 5471 *
jpayne@69 5472 * Delivers a request to the X server.
jpayne@69 5473 *
jpayne@69 5474 * This form can be used only if the request will not cause
jpayne@69 5475 * a reply to be generated. Any returned error will be
jpayne@69 5476 * saved for handling by xcb_request_check().
jpayne@69 5477 */
jpayne@69 5478 xcb_void_cookie_t
jpayne@69 5479 xcb_input_ungrab_device_key_checked (xcb_connection_t *c,
jpayne@69 5480 xcb_window_t grabWindow,
jpayne@69 5481 uint16_t modifiers,
jpayne@69 5482 uint8_t modifier_device,
jpayne@69 5483 uint8_t key,
jpayne@69 5484 uint8_t grabbed_device);
jpayne@69 5485
jpayne@69 5486 /**
jpayne@69 5487 *
jpayne@69 5488 * @param c The connection
jpayne@69 5489 * @return A cookie
jpayne@69 5490 *
jpayne@69 5491 * Delivers a request to the X server.
jpayne@69 5492 *
jpayne@69 5493 */
jpayne@69 5494 xcb_void_cookie_t
jpayne@69 5495 xcb_input_ungrab_device_key (xcb_connection_t *c,
jpayne@69 5496 xcb_window_t grabWindow,
jpayne@69 5497 uint16_t modifiers,
jpayne@69 5498 uint8_t modifier_device,
jpayne@69 5499 uint8_t key,
jpayne@69 5500 uint8_t grabbed_device);
jpayne@69 5501
jpayne@69 5502 int
jpayne@69 5503 xcb_input_grab_device_button_sizeof (const void *_buffer);
jpayne@69 5504
jpayne@69 5505 /**
jpayne@69 5506 *
jpayne@69 5507 * @param c The connection
jpayne@69 5508 * @return A cookie
jpayne@69 5509 *
jpayne@69 5510 * Delivers a request to the X server.
jpayne@69 5511 *
jpayne@69 5512 * This form can be used only if the request will not cause
jpayne@69 5513 * a reply to be generated. Any returned error will be
jpayne@69 5514 * saved for handling by xcb_request_check().
jpayne@69 5515 */
jpayne@69 5516 xcb_void_cookie_t
jpayne@69 5517 xcb_input_grab_device_button_checked (xcb_connection_t *c,
jpayne@69 5518 xcb_window_t grab_window,
jpayne@69 5519 uint8_t grabbed_device,
jpayne@69 5520 uint8_t modifier_device,
jpayne@69 5521 uint16_t num_classes,
jpayne@69 5522 uint16_t modifiers,
jpayne@69 5523 uint8_t this_device_mode,
jpayne@69 5524 uint8_t other_device_mode,
jpayne@69 5525 uint8_t button,
jpayne@69 5526 uint8_t owner_events,
jpayne@69 5527 const xcb_input_event_class_t *classes);
jpayne@69 5528
jpayne@69 5529 /**
jpayne@69 5530 *
jpayne@69 5531 * @param c The connection
jpayne@69 5532 * @return A cookie
jpayne@69 5533 *
jpayne@69 5534 * Delivers a request to the X server.
jpayne@69 5535 *
jpayne@69 5536 */
jpayne@69 5537 xcb_void_cookie_t
jpayne@69 5538 xcb_input_grab_device_button (xcb_connection_t *c,
jpayne@69 5539 xcb_window_t grab_window,
jpayne@69 5540 uint8_t grabbed_device,
jpayne@69 5541 uint8_t modifier_device,
jpayne@69 5542 uint16_t num_classes,
jpayne@69 5543 uint16_t modifiers,
jpayne@69 5544 uint8_t this_device_mode,
jpayne@69 5545 uint8_t other_device_mode,
jpayne@69 5546 uint8_t button,
jpayne@69 5547 uint8_t owner_events,
jpayne@69 5548 const xcb_input_event_class_t *classes);
jpayne@69 5549
jpayne@69 5550 xcb_input_event_class_t *
jpayne@69 5551 xcb_input_grab_device_button_classes (const xcb_input_grab_device_button_request_t *R);
jpayne@69 5552
jpayne@69 5553 int
jpayne@69 5554 xcb_input_grab_device_button_classes_length (const xcb_input_grab_device_button_request_t *R);
jpayne@69 5555
jpayne@69 5556 xcb_generic_iterator_t
jpayne@69 5557 xcb_input_grab_device_button_classes_end (const xcb_input_grab_device_button_request_t *R);
jpayne@69 5558
jpayne@69 5559 /**
jpayne@69 5560 *
jpayne@69 5561 * @param c The connection
jpayne@69 5562 * @return A cookie
jpayne@69 5563 *
jpayne@69 5564 * Delivers a request to the X server.
jpayne@69 5565 *
jpayne@69 5566 * This form can be used only if the request will not cause
jpayne@69 5567 * a reply to be generated. Any returned error will be
jpayne@69 5568 * saved for handling by xcb_request_check().
jpayne@69 5569 */
jpayne@69 5570 xcb_void_cookie_t
jpayne@69 5571 xcb_input_ungrab_device_button_checked (xcb_connection_t *c,
jpayne@69 5572 xcb_window_t grab_window,
jpayne@69 5573 uint16_t modifiers,
jpayne@69 5574 uint8_t modifier_device,
jpayne@69 5575 uint8_t button,
jpayne@69 5576 uint8_t grabbed_device);
jpayne@69 5577
jpayne@69 5578 /**
jpayne@69 5579 *
jpayne@69 5580 * @param c The connection
jpayne@69 5581 * @return A cookie
jpayne@69 5582 *
jpayne@69 5583 * Delivers a request to the X server.
jpayne@69 5584 *
jpayne@69 5585 */
jpayne@69 5586 xcb_void_cookie_t
jpayne@69 5587 xcb_input_ungrab_device_button (xcb_connection_t *c,
jpayne@69 5588 xcb_window_t grab_window,
jpayne@69 5589 uint16_t modifiers,
jpayne@69 5590 uint8_t modifier_device,
jpayne@69 5591 uint8_t button,
jpayne@69 5592 uint8_t grabbed_device);
jpayne@69 5593
jpayne@69 5594 /**
jpayne@69 5595 *
jpayne@69 5596 * @param c The connection
jpayne@69 5597 * @return A cookie
jpayne@69 5598 *
jpayne@69 5599 * Delivers a request to the X server.
jpayne@69 5600 *
jpayne@69 5601 * This form can be used only if the request will not cause
jpayne@69 5602 * a reply to be generated. Any returned error will be
jpayne@69 5603 * saved for handling by xcb_request_check().
jpayne@69 5604 */
jpayne@69 5605 xcb_void_cookie_t
jpayne@69 5606 xcb_input_allow_device_events_checked (xcb_connection_t *c,
jpayne@69 5607 xcb_timestamp_t time,
jpayne@69 5608 uint8_t mode,
jpayne@69 5609 uint8_t device_id);
jpayne@69 5610
jpayne@69 5611 /**
jpayne@69 5612 *
jpayne@69 5613 * @param c The connection
jpayne@69 5614 * @return A cookie
jpayne@69 5615 *
jpayne@69 5616 * Delivers a request to the X server.
jpayne@69 5617 *
jpayne@69 5618 */
jpayne@69 5619 xcb_void_cookie_t
jpayne@69 5620 xcb_input_allow_device_events (xcb_connection_t *c,
jpayne@69 5621 xcb_timestamp_t time,
jpayne@69 5622 uint8_t mode,
jpayne@69 5623 uint8_t device_id);
jpayne@69 5624
jpayne@69 5625 /**
jpayne@69 5626 *
jpayne@69 5627 * @param c The connection
jpayne@69 5628 * @return A cookie
jpayne@69 5629 *
jpayne@69 5630 * Delivers a request to the X server.
jpayne@69 5631 *
jpayne@69 5632 */
jpayne@69 5633 xcb_input_get_device_focus_cookie_t
jpayne@69 5634 xcb_input_get_device_focus (xcb_connection_t *c,
jpayne@69 5635 uint8_t device_id);
jpayne@69 5636
jpayne@69 5637 /**
jpayne@69 5638 *
jpayne@69 5639 * @param c The connection
jpayne@69 5640 * @return A cookie
jpayne@69 5641 *
jpayne@69 5642 * Delivers a request to the X server.
jpayne@69 5643 *
jpayne@69 5644 * This form can be used only if the request will cause
jpayne@69 5645 * a reply to be generated. Any returned error will be
jpayne@69 5646 * placed in the event queue.
jpayne@69 5647 */
jpayne@69 5648 xcb_input_get_device_focus_cookie_t
jpayne@69 5649 xcb_input_get_device_focus_unchecked (xcb_connection_t *c,
jpayne@69 5650 uint8_t device_id);
jpayne@69 5651
jpayne@69 5652 /**
jpayne@69 5653 * Return the reply
jpayne@69 5654 * @param c The connection
jpayne@69 5655 * @param cookie The cookie
jpayne@69 5656 * @param e The xcb_generic_error_t supplied
jpayne@69 5657 *
jpayne@69 5658 * Returns the reply of the request asked by
jpayne@69 5659 *
jpayne@69 5660 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5661 * xcb_input_get_device_focus_unchecked(). is used.
jpayne@69 5662 * Otherwise, it stores the error if any.
jpayne@69 5663 *
jpayne@69 5664 * The returned value must be freed by the caller using free().
jpayne@69 5665 */
jpayne@69 5666 xcb_input_get_device_focus_reply_t *
jpayne@69 5667 xcb_input_get_device_focus_reply (xcb_connection_t *c,
jpayne@69 5668 xcb_input_get_device_focus_cookie_t cookie /**< */,
jpayne@69 5669 xcb_generic_error_t **e);
jpayne@69 5670
jpayne@69 5671 /**
jpayne@69 5672 *
jpayne@69 5673 * @param c The connection
jpayne@69 5674 * @return A cookie
jpayne@69 5675 *
jpayne@69 5676 * Delivers a request to the X server.
jpayne@69 5677 *
jpayne@69 5678 * This form can be used only if the request will not cause
jpayne@69 5679 * a reply to be generated. Any returned error will be
jpayne@69 5680 * saved for handling by xcb_request_check().
jpayne@69 5681 */
jpayne@69 5682 xcb_void_cookie_t
jpayne@69 5683 xcb_input_set_device_focus_checked (xcb_connection_t *c,
jpayne@69 5684 xcb_window_t focus,
jpayne@69 5685 xcb_timestamp_t time,
jpayne@69 5686 uint8_t revert_to,
jpayne@69 5687 uint8_t device_id);
jpayne@69 5688
jpayne@69 5689 /**
jpayne@69 5690 *
jpayne@69 5691 * @param c The connection
jpayne@69 5692 * @return A cookie
jpayne@69 5693 *
jpayne@69 5694 * Delivers a request to the X server.
jpayne@69 5695 *
jpayne@69 5696 */
jpayne@69 5697 xcb_void_cookie_t
jpayne@69 5698 xcb_input_set_device_focus (xcb_connection_t *c,
jpayne@69 5699 xcb_window_t focus,
jpayne@69 5700 xcb_timestamp_t time,
jpayne@69 5701 uint8_t revert_to,
jpayne@69 5702 uint8_t device_id);
jpayne@69 5703
jpayne@69 5704 /**
jpayne@69 5705 * Get the next element of the iterator
jpayne@69 5706 * @param i Pointer to a xcb_input_kbd_feedback_state_iterator_t
jpayne@69 5707 *
jpayne@69 5708 * Get the next element in the iterator. The member rem is
jpayne@69 5709 * decreased by one. The member data points to the next
jpayne@69 5710 * element. The member index is increased by sizeof(xcb_input_kbd_feedback_state_t)
jpayne@69 5711 */
jpayne@69 5712 void
jpayne@69 5713 xcb_input_kbd_feedback_state_next (xcb_input_kbd_feedback_state_iterator_t *i);
jpayne@69 5714
jpayne@69 5715 /**
jpayne@69 5716 * Return the iterator pointing to the last element
jpayne@69 5717 * @param i An xcb_input_kbd_feedback_state_iterator_t
jpayne@69 5718 * @return The iterator pointing to the last element
jpayne@69 5719 *
jpayne@69 5720 * Set the current element in the iterator to the last element.
jpayne@69 5721 * The member rem is set to 0. The member data points to the
jpayne@69 5722 * last element.
jpayne@69 5723 */
jpayne@69 5724 xcb_generic_iterator_t
jpayne@69 5725 xcb_input_kbd_feedback_state_end (xcb_input_kbd_feedback_state_iterator_t i);
jpayne@69 5726
jpayne@69 5727 /**
jpayne@69 5728 * Get the next element of the iterator
jpayne@69 5729 * @param i Pointer to a xcb_input_ptr_feedback_state_iterator_t
jpayne@69 5730 *
jpayne@69 5731 * Get the next element in the iterator. The member rem is
jpayne@69 5732 * decreased by one. The member data points to the next
jpayne@69 5733 * element. The member index is increased by sizeof(xcb_input_ptr_feedback_state_t)
jpayne@69 5734 */
jpayne@69 5735 void
jpayne@69 5736 xcb_input_ptr_feedback_state_next (xcb_input_ptr_feedback_state_iterator_t *i);
jpayne@69 5737
jpayne@69 5738 /**
jpayne@69 5739 * Return the iterator pointing to the last element
jpayne@69 5740 * @param i An xcb_input_ptr_feedback_state_iterator_t
jpayne@69 5741 * @return The iterator pointing to the last element
jpayne@69 5742 *
jpayne@69 5743 * Set the current element in the iterator to the last element.
jpayne@69 5744 * The member rem is set to 0. The member data points to the
jpayne@69 5745 * last element.
jpayne@69 5746 */
jpayne@69 5747 xcb_generic_iterator_t
jpayne@69 5748 xcb_input_ptr_feedback_state_end (xcb_input_ptr_feedback_state_iterator_t i);
jpayne@69 5749
jpayne@69 5750 /**
jpayne@69 5751 * Get the next element of the iterator
jpayne@69 5752 * @param i Pointer to a xcb_input_integer_feedback_state_iterator_t
jpayne@69 5753 *
jpayne@69 5754 * Get the next element in the iterator. The member rem is
jpayne@69 5755 * decreased by one. The member data points to the next
jpayne@69 5756 * element. The member index is increased by sizeof(xcb_input_integer_feedback_state_t)
jpayne@69 5757 */
jpayne@69 5758 void
jpayne@69 5759 xcb_input_integer_feedback_state_next (xcb_input_integer_feedback_state_iterator_t *i);
jpayne@69 5760
jpayne@69 5761 /**
jpayne@69 5762 * Return the iterator pointing to the last element
jpayne@69 5763 * @param i An xcb_input_integer_feedback_state_iterator_t
jpayne@69 5764 * @return The iterator pointing to the last element
jpayne@69 5765 *
jpayne@69 5766 * Set the current element in the iterator to the last element.
jpayne@69 5767 * The member rem is set to 0. The member data points to the
jpayne@69 5768 * last element.
jpayne@69 5769 */
jpayne@69 5770 xcb_generic_iterator_t
jpayne@69 5771 xcb_input_integer_feedback_state_end (xcb_input_integer_feedback_state_iterator_t i);
jpayne@69 5772
jpayne@69 5773 int
jpayne@69 5774 xcb_input_string_feedback_state_sizeof (const void *_buffer);
jpayne@69 5775
jpayne@69 5776 xcb_keysym_t *
jpayne@69 5777 xcb_input_string_feedback_state_keysyms (const xcb_input_string_feedback_state_t *R);
jpayne@69 5778
jpayne@69 5779 int
jpayne@69 5780 xcb_input_string_feedback_state_keysyms_length (const xcb_input_string_feedback_state_t *R);
jpayne@69 5781
jpayne@69 5782 xcb_generic_iterator_t
jpayne@69 5783 xcb_input_string_feedback_state_keysyms_end (const xcb_input_string_feedback_state_t *R);
jpayne@69 5784
jpayne@69 5785 /**
jpayne@69 5786 * Get the next element of the iterator
jpayne@69 5787 * @param i Pointer to a xcb_input_string_feedback_state_iterator_t
jpayne@69 5788 *
jpayne@69 5789 * Get the next element in the iterator. The member rem is
jpayne@69 5790 * decreased by one. The member data points to the next
jpayne@69 5791 * element. The member index is increased by sizeof(xcb_input_string_feedback_state_t)
jpayne@69 5792 */
jpayne@69 5793 void
jpayne@69 5794 xcb_input_string_feedback_state_next (xcb_input_string_feedback_state_iterator_t *i);
jpayne@69 5795
jpayne@69 5796 /**
jpayne@69 5797 * Return the iterator pointing to the last element
jpayne@69 5798 * @param i An xcb_input_string_feedback_state_iterator_t
jpayne@69 5799 * @return The iterator pointing to the last element
jpayne@69 5800 *
jpayne@69 5801 * Set the current element in the iterator to the last element.
jpayne@69 5802 * The member rem is set to 0. The member data points to the
jpayne@69 5803 * last element.
jpayne@69 5804 */
jpayne@69 5805 xcb_generic_iterator_t
jpayne@69 5806 xcb_input_string_feedback_state_end (xcb_input_string_feedback_state_iterator_t i);
jpayne@69 5807
jpayne@69 5808 /**
jpayne@69 5809 * Get the next element of the iterator
jpayne@69 5810 * @param i Pointer to a xcb_input_bell_feedback_state_iterator_t
jpayne@69 5811 *
jpayne@69 5812 * Get the next element in the iterator. The member rem is
jpayne@69 5813 * decreased by one. The member data points to the next
jpayne@69 5814 * element. The member index is increased by sizeof(xcb_input_bell_feedback_state_t)
jpayne@69 5815 */
jpayne@69 5816 void
jpayne@69 5817 xcb_input_bell_feedback_state_next (xcb_input_bell_feedback_state_iterator_t *i);
jpayne@69 5818
jpayne@69 5819 /**
jpayne@69 5820 * Return the iterator pointing to the last element
jpayne@69 5821 * @param i An xcb_input_bell_feedback_state_iterator_t
jpayne@69 5822 * @return The iterator pointing to the last element
jpayne@69 5823 *
jpayne@69 5824 * Set the current element in the iterator to the last element.
jpayne@69 5825 * The member rem is set to 0. The member data points to the
jpayne@69 5826 * last element.
jpayne@69 5827 */
jpayne@69 5828 xcb_generic_iterator_t
jpayne@69 5829 xcb_input_bell_feedback_state_end (xcb_input_bell_feedback_state_iterator_t i);
jpayne@69 5830
jpayne@69 5831 /**
jpayne@69 5832 * Get the next element of the iterator
jpayne@69 5833 * @param i Pointer to a xcb_input_led_feedback_state_iterator_t
jpayne@69 5834 *
jpayne@69 5835 * Get the next element in the iterator. The member rem is
jpayne@69 5836 * decreased by one. The member data points to the next
jpayne@69 5837 * element. The member index is increased by sizeof(xcb_input_led_feedback_state_t)
jpayne@69 5838 */
jpayne@69 5839 void
jpayne@69 5840 xcb_input_led_feedback_state_next (xcb_input_led_feedback_state_iterator_t *i);
jpayne@69 5841
jpayne@69 5842 /**
jpayne@69 5843 * Return the iterator pointing to the last element
jpayne@69 5844 * @param i An xcb_input_led_feedback_state_iterator_t
jpayne@69 5845 * @return The iterator pointing to the last element
jpayne@69 5846 *
jpayne@69 5847 * Set the current element in the iterator to the last element.
jpayne@69 5848 * The member rem is set to 0. The member data points to the
jpayne@69 5849 * last element.
jpayne@69 5850 */
jpayne@69 5851 xcb_generic_iterator_t
jpayne@69 5852 xcb_input_led_feedback_state_end (xcb_input_led_feedback_state_iterator_t i);
jpayne@69 5853
jpayne@69 5854 xcb_keysym_t *
jpayne@69 5855 xcb_input_feedback_state_data_string_keysyms (const xcb_input_feedback_state_data_t *S);
jpayne@69 5856
jpayne@69 5857 int
jpayne@69 5858 xcb_input_feedback_state_data_string_keysyms_length (const xcb_input_feedback_state_t *R,
jpayne@69 5859 const xcb_input_feedback_state_data_t *S);
jpayne@69 5860
jpayne@69 5861 xcb_generic_iterator_t
jpayne@69 5862 xcb_input_feedback_state_data_string_keysyms_end (const xcb_input_feedback_state_t *R,
jpayne@69 5863 const xcb_input_feedback_state_data_t *S);
jpayne@69 5864
jpayne@69 5865 int
jpayne@69 5866 xcb_input_feedback_state_data_serialize (void **_buffer,
jpayne@69 5867 uint8_t class_id,
jpayne@69 5868 const xcb_input_feedback_state_data_t *_aux);
jpayne@69 5869
jpayne@69 5870 int
jpayne@69 5871 xcb_input_feedback_state_data_unpack (const void *_buffer,
jpayne@69 5872 uint8_t class_id,
jpayne@69 5873 xcb_input_feedback_state_data_t *_aux);
jpayne@69 5874
jpayne@69 5875 int
jpayne@69 5876 xcb_input_feedback_state_data_sizeof (const void *_buffer,
jpayne@69 5877 uint8_t class_id);
jpayne@69 5878
jpayne@69 5879 int
jpayne@69 5880 xcb_input_feedback_state_sizeof (const void *_buffer);
jpayne@69 5881
jpayne@69 5882 /**
jpayne@69 5883 * Get the next element of the iterator
jpayne@69 5884 * @param i Pointer to a xcb_input_feedback_state_iterator_t
jpayne@69 5885 *
jpayne@69 5886 * Get the next element in the iterator. The member rem is
jpayne@69 5887 * decreased by one. The member data points to the next
jpayne@69 5888 * element. The member index is increased by sizeof(xcb_input_feedback_state_t)
jpayne@69 5889 */
jpayne@69 5890 void
jpayne@69 5891 xcb_input_feedback_state_next (xcb_input_feedback_state_iterator_t *i);
jpayne@69 5892
jpayne@69 5893 /**
jpayne@69 5894 * Return the iterator pointing to the last element
jpayne@69 5895 * @param i An xcb_input_feedback_state_iterator_t
jpayne@69 5896 * @return The iterator pointing to the last element
jpayne@69 5897 *
jpayne@69 5898 * Set the current element in the iterator to the last element.
jpayne@69 5899 * The member rem is set to 0. The member data points to the
jpayne@69 5900 * last element.
jpayne@69 5901 */
jpayne@69 5902 xcb_generic_iterator_t
jpayne@69 5903 xcb_input_feedback_state_end (xcb_input_feedback_state_iterator_t i);
jpayne@69 5904
jpayne@69 5905 int
jpayne@69 5906 xcb_input_get_feedback_control_sizeof (const void *_buffer);
jpayne@69 5907
jpayne@69 5908 /**
jpayne@69 5909 *
jpayne@69 5910 * @param c The connection
jpayne@69 5911 * @return A cookie
jpayne@69 5912 *
jpayne@69 5913 * Delivers a request to the X server.
jpayne@69 5914 *
jpayne@69 5915 */
jpayne@69 5916 xcb_input_get_feedback_control_cookie_t
jpayne@69 5917 xcb_input_get_feedback_control (xcb_connection_t *c,
jpayne@69 5918 uint8_t device_id);
jpayne@69 5919
jpayne@69 5920 /**
jpayne@69 5921 *
jpayne@69 5922 * @param c The connection
jpayne@69 5923 * @return A cookie
jpayne@69 5924 *
jpayne@69 5925 * Delivers a request to the X server.
jpayne@69 5926 *
jpayne@69 5927 * This form can be used only if the request will cause
jpayne@69 5928 * a reply to be generated. Any returned error will be
jpayne@69 5929 * placed in the event queue.
jpayne@69 5930 */
jpayne@69 5931 xcb_input_get_feedback_control_cookie_t
jpayne@69 5932 xcb_input_get_feedback_control_unchecked (xcb_connection_t *c,
jpayne@69 5933 uint8_t device_id);
jpayne@69 5934
jpayne@69 5935 int
jpayne@69 5936 xcb_input_get_feedback_control_feedbacks_length (const xcb_input_get_feedback_control_reply_t *R);
jpayne@69 5937
jpayne@69 5938 xcb_input_feedback_state_iterator_t
jpayne@69 5939 xcb_input_get_feedback_control_feedbacks_iterator (const xcb_input_get_feedback_control_reply_t *R);
jpayne@69 5940
jpayne@69 5941 /**
jpayne@69 5942 * Return the reply
jpayne@69 5943 * @param c The connection
jpayne@69 5944 * @param cookie The cookie
jpayne@69 5945 * @param e The xcb_generic_error_t supplied
jpayne@69 5946 *
jpayne@69 5947 * Returns the reply of the request asked by
jpayne@69 5948 *
jpayne@69 5949 * The parameter @p e supplied to this function must be NULL if
jpayne@69 5950 * xcb_input_get_feedback_control_unchecked(). is used.
jpayne@69 5951 * Otherwise, it stores the error if any.
jpayne@69 5952 *
jpayne@69 5953 * The returned value must be freed by the caller using free().
jpayne@69 5954 */
jpayne@69 5955 xcb_input_get_feedback_control_reply_t *
jpayne@69 5956 xcb_input_get_feedback_control_reply (xcb_connection_t *c,
jpayne@69 5957 xcb_input_get_feedback_control_cookie_t cookie /**< */,
jpayne@69 5958 xcb_generic_error_t **e);
jpayne@69 5959
jpayne@69 5960 /**
jpayne@69 5961 * Get the next element of the iterator
jpayne@69 5962 * @param i Pointer to a xcb_input_kbd_feedback_ctl_iterator_t
jpayne@69 5963 *
jpayne@69 5964 * Get the next element in the iterator. The member rem is
jpayne@69 5965 * decreased by one. The member data points to the next
jpayne@69 5966 * element. The member index is increased by sizeof(xcb_input_kbd_feedback_ctl_t)
jpayne@69 5967 */
jpayne@69 5968 void
jpayne@69 5969 xcb_input_kbd_feedback_ctl_next (xcb_input_kbd_feedback_ctl_iterator_t *i);
jpayne@69 5970
jpayne@69 5971 /**
jpayne@69 5972 * Return the iterator pointing to the last element
jpayne@69 5973 * @param i An xcb_input_kbd_feedback_ctl_iterator_t
jpayne@69 5974 * @return The iterator pointing to the last element
jpayne@69 5975 *
jpayne@69 5976 * Set the current element in the iterator to the last element.
jpayne@69 5977 * The member rem is set to 0. The member data points to the
jpayne@69 5978 * last element.
jpayne@69 5979 */
jpayne@69 5980 xcb_generic_iterator_t
jpayne@69 5981 xcb_input_kbd_feedback_ctl_end (xcb_input_kbd_feedback_ctl_iterator_t i);
jpayne@69 5982
jpayne@69 5983 /**
jpayne@69 5984 * Get the next element of the iterator
jpayne@69 5985 * @param i Pointer to a xcb_input_ptr_feedback_ctl_iterator_t
jpayne@69 5986 *
jpayne@69 5987 * Get the next element in the iterator. The member rem is
jpayne@69 5988 * decreased by one. The member data points to the next
jpayne@69 5989 * element. The member index is increased by sizeof(xcb_input_ptr_feedback_ctl_t)
jpayne@69 5990 */
jpayne@69 5991 void
jpayne@69 5992 xcb_input_ptr_feedback_ctl_next (xcb_input_ptr_feedback_ctl_iterator_t *i);
jpayne@69 5993
jpayne@69 5994 /**
jpayne@69 5995 * Return the iterator pointing to the last element
jpayne@69 5996 * @param i An xcb_input_ptr_feedback_ctl_iterator_t
jpayne@69 5997 * @return The iterator pointing to the last element
jpayne@69 5998 *
jpayne@69 5999 * Set the current element in the iterator to the last element.
jpayne@69 6000 * The member rem is set to 0. The member data points to the
jpayne@69 6001 * last element.
jpayne@69 6002 */
jpayne@69 6003 xcb_generic_iterator_t
jpayne@69 6004 xcb_input_ptr_feedback_ctl_end (xcb_input_ptr_feedback_ctl_iterator_t i);
jpayne@69 6005
jpayne@69 6006 /**
jpayne@69 6007 * Get the next element of the iterator
jpayne@69 6008 * @param i Pointer to a xcb_input_integer_feedback_ctl_iterator_t
jpayne@69 6009 *
jpayne@69 6010 * Get the next element in the iterator. The member rem is
jpayne@69 6011 * decreased by one. The member data points to the next
jpayne@69 6012 * element. The member index is increased by sizeof(xcb_input_integer_feedback_ctl_t)
jpayne@69 6013 */
jpayne@69 6014 void
jpayne@69 6015 xcb_input_integer_feedback_ctl_next (xcb_input_integer_feedback_ctl_iterator_t *i);
jpayne@69 6016
jpayne@69 6017 /**
jpayne@69 6018 * Return the iterator pointing to the last element
jpayne@69 6019 * @param i An xcb_input_integer_feedback_ctl_iterator_t
jpayne@69 6020 * @return The iterator pointing to the last element
jpayne@69 6021 *
jpayne@69 6022 * Set the current element in the iterator to the last element.
jpayne@69 6023 * The member rem is set to 0. The member data points to the
jpayne@69 6024 * last element.
jpayne@69 6025 */
jpayne@69 6026 xcb_generic_iterator_t
jpayne@69 6027 xcb_input_integer_feedback_ctl_end (xcb_input_integer_feedback_ctl_iterator_t i);
jpayne@69 6028
jpayne@69 6029 int
jpayne@69 6030 xcb_input_string_feedback_ctl_sizeof (const void *_buffer);
jpayne@69 6031
jpayne@69 6032 xcb_keysym_t *
jpayne@69 6033 xcb_input_string_feedback_ctl_keysyms (const xcb_input_string_feedback_ctl_t *R);
jpayne@69 6034
jpayne@69 6035 int
jpayne@69 6036 xcb_input_string_feedback_ctl_keysyms_length (const xcb_input_string_feedback_ctl_t *R);
jpayne@69 6037
jpayne@69 6038 xcb_generic_iterator_t
jpayne@69 6039 xcb_input_string_feedback_ctl_keysyms_end (const xcb_input_string_feedback_ctl_t *R);
jpayne@69 6040
jpayne@69 6041 /**
jpayne@69 6042 * Get the next element of the iterator
jpayne@69 6043 * @param i Pointer to a xcb_input_string_feedback_ctl_iterator_t
jpayne@69 6044 *
jpayne@69 6045 * Get the next element in the iterator. The member rem is
jpayne@69 6046 * decreased by one. The member data points to the next
jpayne@69 6047 * element. The member index is increased by sizeof(xcb_input_string_feedback_ctl_t)
jpayne@69 6048 */
jpayne@69 6049 void
jpayne@69 6050 xcb_input_string_feedback_ctl_next (xcb_input_string_feedback_ctl_iterator_t *i);
jpayne@69 6051
jpayne@69 6052 /**
jpayne@69 6053 * Return the iterator pointing to the last element
jpayne@69 6054 * @param i An xcb_input_string_feedback_ctl_iterator_t
jpayne@69 6055 * @return The iterator pointing to the last element
jpayne@69 6056 *
jpayne@69 6057 * Set the current element in the iterator to the last element.
jpayne@69 6058 * The member rem is set to 0. The member data points to the
jpayne@69 6059 * last element.
jpayne@69 6060 */
jpayne@69 6061 xcb_generic_iterator_t
jpayne@69 6062 xcb_input_string_feedback_ctl_end (xcb_input_string_feedback_ctl_iterator_t i);
jpayne@69 6063
jpayne@69 6064 /**
jpayne@69 6065 * Get the next element of the iterator
jpayne@69 6066 * @param i Pointer to a xcb_input_bell_feedback_ctl_iterator_t
jpayne@69 6067 *
jpayne@69 6068 * Get the next element in the iterator. The member rem is
jpayne@69 6069 * decreased by one. The member data points to the next
jpayne@69 6070 * element. The member index is increased by sizeof(xcb_input_bell_feedback_ctl_t)
jpayne@69 6071 */
jpayne@69 6072 void
jpayne@69 6073 xcb_input_bell_feedback_ctl_next (xcb_input_bell_feedback_ctl_iterator_t *i);
jpayne@69 6074
jpayne@69 6075 /**
jpayne@69 6076 * Return the iterator pointing to the last element
jpayne@69 6077 * @param i An xcb_input_bell_feedback_ctl_iterator_t
jpayne@69 6078 * @return The iterator pointing to the last element
jpayne@69 6079 *
jpayne@69 6080 * Set the current element in the iterator to the last element.
jpayne@69 6081 * The member rem is set to 0. The member data points to the
jpayne@69 6082 * last element.
jpayne@69 6083 */
jpayne@69 6084 xcb_generic_iterator_t
jpayne@69 6085 xcb_input_bell_feedback_ctl_end (xcb_input_bell_feedback_ctl_iterator_t i);
jpayne@69 6086
jpayne@69 6087 /**
jpayne@69 6088 * Get the next element of the iterator
jpayne@69 6089 * @param i Pointer to a xcb_input_led_feedback_ctl_iterator_t
jpayne@69 6090 *
jpayne@69 6091 * Get the next element in the iterator. The member rem is
jpayne@69 6092 * decreased by one. The member data points to the next
jpayne@69 6093 * element. The member index is increased by sizeof(xcb_input_led_feedback_ctl_t)
jpayne@69 6094 */
jpayne@69 6095 void
jpayne@69 6096 xcb_input_led_feedback_ctl_next (xcb_input_led_feedback_ctl_iterator_t *i);
jpayne@69 6097
jpayne@69 6098 /**
jpayne@69 6099 * Return the iterator pointing to the last element
jpayne@69 6100 * @param i An xcb_input_led_feedback_ctl_iterator_t
jpayne@69 6101 * @return The iterator pointing to the last element
jpayne@69 6102 *
jpayne@69 6103 * Set the current element in the iterator to the last element.
jpayne@69 6104 * The member rem is set to 0. The member data points to the
jpayne@69 6105 * last element.
jpayne@69 6106 */
jpayne@69 6107 xcb_generic_iterator_t
jpayne@69 6108 xcb_input_led_feedback_ctl_end (xcb_input_led_feedback_ctl_iterator_t i);
jpayne@69 6109
jpayne@69 6110 xcb_keysym_t *
jpayne@69 6111 xcb_input_feedback_ctl_data_string_keysyms (const xcb_input_feedback_ctl_data_t *S);
jpayne@69 6112
jpayne@69 6113 int
jpayne@69 6114 xcb_input_feedback_ctl_data_string_keysyms_length (const xcb_input_feedback_ctl_t *R,
jpayne@69 6115 const xcb_input_feedback_ctl_data_t *S);
jpayne@69 6116
jpayne@69 6117 xcb_generic_iterator_t
jpayne@69 6118 xcb_input_feedback_ctl_data_string_keysyms_end (const xcb_input_feedback_ctl_t *R,
jpayne@69 6119 const xcb_input_feedback_ctl_data_t *S);
jpayne@69 6120
jpayne@69 6121 int
jpayne@69 6122 xcb_input_feedback_ctl_data_serialize (void **_buffer,
jpayne@69 6123 uint8_t class_id,
jpayne@69 6124 const xcb_input_feedback_ctl_data_t *_aux);
jpayne@69 6125
jpayne@69 6126 int
jpayne@69 6127 xcb_input_feedback_ctl_data_unpack (const void *_buffer,
jpayne@69 6128 uint8_t class_id,
jpayne@69 6129 xcb_input_feedback_ctl_data_t *_aux);
jpayne@69 6130
jpayne@69 6131 int
jpayne@69 6132 xcb_input_feedback_ctl_data_sizeof (const void *_buffer,
jpayne@69 6133 uint8_t class_id);
jpayne@69 6134
jpayne@69 6135 int
jpayne@69 6136 xcb_input_feedback_ctl_sizeof (const void *_buffer);
jpayne@69 6137
jpayne@69 6138 /**
jpayne@69 6139 * Get the next element of the iterator
jpayne@69 6140 * @param i Pointer to a xcb_input_feedback_ctl_iterator_t
jpayne@69 6141 *
jpayne@69 6142 * Get the next element in the iterator. The member rem is
jpayne@69 6143 * decreased by one. The member data points to the next
jpayne@69 6144 * element. The member index is increased by sizeof(xcb_input_feedback_ctl_t)
jpayne@69 6145 */
jpayne@69 6146 void
jpayne@69 6147 xcb_input_feedback_ctl_next (xcb_input_feedback_ctl_iterator_t *i);
jpayne@69 6148
jpayne@69 6149 /**
jpayne@69 6150 * Return the iterator pointing to the last element
jpayne@69 6151 * @param i An xcb_input_feedback_ctl_iterator_t
jpayne@69 6152 * @return The iterator pointing to the last element
jpayne@69 6153 *
jpayne@69 6154 * Set the current element in the iterator to the last element.
jpayne@69 6155 * The member rem is set to 0. The member data points to the
jpayne@69 6156 * last element.
jpayne@69 6157 */
jpayne@69 6158 xcb_generic_iterator_t
jpayne@69 6159 xcb_input_feedback_ctl_end (xcb_input_feedback_ctl_iterator_t i);
jpayne@69 6160
jpayne@69 6161 int
jpayne@69 6162 xcb_input_change_feedback_control_sizeof (const void *_buffer);
jpayne@69 6163
jpayne@69 6164 /**
jpayne@69 6165 *
jpayne@69 6166 * @param c The connection
jpayne@69 6167 * @return A cookie
jpayne@69 6168 *
jpayne@69 6169 * Delivers a request to the X server.
jpayne@69 6170 *
jpayne@69 6171 * This form can be used only if the request will not cause
jpayne@69 6172 * a reply to be generated. Any returned error will be
jpayne@69 6173 * saved for handling by xcb_request_check().
jpayne@69 6174 */
jpayne@69 6175 xcb_void_cookie_t
jpayne@69 6176 xcb_input_change_feedback_control_checked (xcb_connection_t *c,
jpayne@69 6177 uint32_t mask,
jpayne@69 6178 uint8_t device_id,
jpayne@69 6179 uint8_t feedback_id,
jpayne@69 6180 xcb_input_feedback_ctl_t *feedback);
jpayne@69 6181
jpayne@69 6182 /**
jpayne@69 6183 *
jpayne@69 6184 * @param c The connection
jpayne@69 6185 * @return A cookie
jpayne@69 6186 *
jpayne@69 6187 * Delivers a request to the X server.
jpayne@69 6188 *
jpayne@69 6189 */
jpayne@69 6190 xcb_void_cookie_t
jpayne@69 6191 xcb_input_change_feedback_control (xcb_connection_t *c,
jpayne@69 6192 uint32_t mask,
jpayne@69 6193 uint8_t device_id,
jpayne@69 6194 uint8_t feedback_id,
jpayne@69 6195 xcb_input_feedback_ctl_t *feedback);
jpayne@69 6196
jpayne@69 6197 xcb_input_feedback_ctl_t *
jpayne@69 6198 xcb_input_change_feedback_control_feedback (const xcb_input_change_feedback_control_request_t *R);
jpayne@69 6199
jpayne@69 6200 int
jpayne@69 6201 xcb_input_get_device_key_mapping_sizeof (const void *_buffer);
jpayne@69 6202
jpayne@69 6203 /**
jpayne@69 6204 *
jpayne@69 6205 * @param c The connection
jpayne@69 6206 * @return A cookie
jpayne@69 6207 *
jpayne@69 6208 * Delivers a request to the X server.
jpayne@69 6209 *
jpayne@69 6210 */
jpayne@69 6211 xcb_input_get_device_key_mapping_cookie_t
jpayne@69 6212 xcb_input_get_device_key_mapping (xcb_connection_t *c,
jpayne@69 6213 uint8_t device_id,
jpayne@69 6214 xcb_input_key_code_t first_keycode,
jpayne@69 6215 uint8_t count);
jpayne@69 6216
jpayne@69 6217 /**
jpayne@69 6218 *
jpayne@69 6219 * @param c The connection
jpayne@69 6220 * @return A cookie
jpayne@69 6221 *
jpayne@69 6222 * Delivers a request to the X server.
jpayne@69 6223 *
jpayne@69 6224 * This form can be used only if the request will cause
jpayne@69 6225 * a reply to be generated. Any returned error will be
jpayne@69 6226 * placed in the event queue.
jpayne@69 6227 */
jpayne@69 6228 xcb_input_get_device_key_mapping_cookie_t
jpayne@69 6229 xcb_input_get_device_key_mapping_unchecked (xcb_connection_t *c,
jpayne@69 6230 uint8_t device_id,
jpayne@69 6231 xcb_input_key_code_t first_keycode,
jpayne@69 6232 uint8_t count);
jpayne@69 6233
jpayne@69 6234 xcb_keysym_t *
jpayne@69 6235 xcb_input_get_device_key_mapping_keysyms (const xcb_input_get_device_key_mapping_reply_t *R);
jpayne@69 6236
jpayne@69 6237 int
jpayne@69 6238 xcb_input_get_device_key_mapping_keysyms_length (const xcb_input_get_device_key_mapping_reply_t *R);
jpayne@69 6239
jpayne@69 6240 xcb_generic_iterator_t
jpayne@69 6241 xcb_input_get_device_key_mapping_keysyms_end (const xcb_input_get_device_key_mapping_reply_t *R);
jpayne@69 6242
jpayne@69 6243 /**
jpayne@69 6244 * Return the reply
jpayne@69 6245 * @param c The connection
jpayne@69 6246 * @param cookie The cookie
jpayne@69 6247 * @param e The xcb_generic_error_t supplied
jpayne@69 6248 *
jpayne@69 6249 * Returns the reply of the request asked by
jpayne@69 6250 *
jpayne@69 6251 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6252 * xcb_input_get_device_key_mapping_unchecked(). is used.
jpayne@69 6253 * Otherwise, it stores the error if any.
jpayne@69 6254 *
jpayne@69 6255 * The returned value must be freed by the caller using free().
jpayne@69 6256 */
jpayne@69 6257 xcb_input_get_device_key_mapping_reply_t *
jpayne@69 6258 xcb_input_get_device_key_mapping_reply (xcb_connection_t *c,
jpayne@69 6259 xcb_input_get_device_key_mapping_cookie_t cookie /**< */,
jpayne@69 6260 xcb_generic_error_t **e);
jpayne@69 6261
jpayne@69 6262 int
jpayne@69 6263 xcb_input_change_device_key_mapping_sizeof (const void *_buffer);
jpayne@69 6264
jpayne@69 6265 /**
jpayne@69 6266 *
jpayne@69 6267 * @param c The connection
jpayne@69 6268 * @return A cookie
jpayne@69 6269 *
jpayne@69 6270 * Delivers a request to the X server.
jpayne@69 6271 *
jpayne@69 6272 * This form can be used only if the request will not cause
jpayne@69 6273 * a reply to be generated. Any returned error will be
jpayne@69 6274 * saved for handling by xcb_request_check().
jpayne@69 6275 */
jpayne@69 6276 xcb_void_cookie_t
jpayne@69 6277 xcb_input_change_device_key_mapping_checked (xcb_connection_t *c,
jpayne@69 6278 uint8_t device_id,
jpayne@69 6279 xcb_input_key_code_t first_keycode,
jpayne@69 6280 uint8_t keysyms_per_keycode,
jpayne@69 6281 uint8_t keycode_count,
jpayne@69 6282 const xcb_keysym_t *keysyms);
jpayne@69 6283
jpayne@69 6284 /**
jpayne@69 6285 *
jpayne@69 6286 * @param c The connection
jpayne@69 6287 * @return A cookie
jpayne@69 6288 *
jpayne@69 6289 * Delivers a request to the X server.
jpayne@69 6290 *
jpayne@69 6291 */
jpayne@69 6292 xcb_void_cookie_t
jpayne@69 6293 xcb_input_change_device_key_mapping (xcb_connection_t *c,
jpayne@69 6294 uint8_t device_id,
jpayne@69 6295 xcb_input_key_code_t first_keycode,
jpayne@69 6296 uint8_t keysyms_per_keycode,
jpayne@69 6297 uint8_t keycode_count,
jpayne@69 6298 const xcb_keysym_t *keysyms);
jpayne@69 6299
jpayne@69 6300 xcb_keysym_t *
jpayne@69 6301 xcb_input_change_device_key_mapping_keysyms (const xcb_input_change_device_key_mapping_request_t *R);
jpayne@69 6302
jpayne@69 6303 int
jpayne@69 6304 xcb_input_change_device_key_mapping_keysyms_length (const xcb_input_change_device_key_mapping_request_t *R);
jpayne@69 6305
jpayne@69 6306 xcb_generic_iterator_t
jpayne@69 6307 xcb_input_change_device_key_mapping_keysyms_end (const xcb_input_change_device_key_mapping_request_t *R);
jpayne@69 6308
jpayne@69 6309 int
jpayne@69 6310 xcb_input_get_device_modifier_mapping_sizeof (const void *_buffer);
jpayne@69 6311
jpayne@69 6312 /**
jpayne@69 6313 *
jpayne@69 6314 * @param c The connection
jpayne@69 6315 * @return A cookie
jpayne@69 6316 *
jpayne@69 6317 * Delivers a request to the X server.
jpayne@69 6318 *
jpayne@69 6319 */
jpayne@69 6320 xcb_input_get_device_modifier_mapping_cookie_t
jpayne@69 6321 xcb_input_get_device_modifier_mapping (xcb_connection_t *c,
jpayne@69 6322 uint8_t device_id);
jpayne@69 6323
jpayne@69 6324 /**
jpayne@69 6325 *
jpayne@69 6326 * @param c The connection
jpayne@69 6327 * @return A cookie
jpayne@69 6328 *
jpayne@69 6329 * Delivers a request to the X server.
jpayne@69 6330 *
jpayne@69 6331 * This form can be used only if the request will cause
jpayne@69 6332 * a reply to be generated. Any returned error will be
jpayne@69 6333 * placed in the event queue.
jpayne@69 6334 */
jpayne@69 6335 xcb_input_get_device_modifier_mapping_cookie_t
jpayne@69 6336 xcb_input_get_device_modifier_mapping_unchecked (xcb_connection_t *c,
jpayne@69 6337 uint8_t device_id);
jpayne@69 6338
jpayne@69 6339 uint8_t *
jpayne@69 6340 xcb_input_get_device_modifier_mapping_keymaps (const xcb_input_get_device_modifier_mapping_reply_t *R);
jpayne@69 6341
jpayne@69 6342 int
jpayne@69 6343 xcb_input_get_device_modifier_mapping_keymaps_length (const xcb_input_get_device_modifier_mapping_reply_t *R);
jpayne@69 6344
jpayne@69 6345 xcb_generic_iterator_t
jpayne@69 6346 xcb_input_get_device_modifier_mapping_keymaps_end (const xcb_input_get_device_modifier_mapping_reply_t *R);
jpayne@69 6347
jpayne@69 6348 /**
jpayne@69 6349 * Return the reply
jpayne@69 6350 * @param c The connection
jpayne@69 6351 * @param cookie The cookie
jpayne@69 6352 * @param e The xcb_generic_error_t supplied
jpayne@69 6353 *
jpayne@69 6354 * Returns the reply of the request asked by
jpayne@69 6355 *
jpayne@69 6356 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6357 * xcb_input_get_device_modifier_mapping_unchecked(). is used.
jpayne@69 6358 * Otherwise, it stores the error if any.
jpayne@69 6359 *
jpayne@69 6360 * The returned value must be freed by the caller using free().
jpayne@69 6361 */
jpayne@69 6362 xcb_input_get_device_modifier_mapping_reply_t *
jpayne@69 6363 xcb_input_get_device_modifier_mapping_reply (xcb_connection_t *c,
jpayne@69 6364 xcb_input_get_device_modifier_mapping_cookie_t cookie /**< */,
jpayne@69 6365 xcb_generic_error_t **e);
jpayne@69 6366
jpayne@69 6367 int
jpayne@69 6368 xcb_input_set_device_modifier_mapping_sizeof (const void *_buffer);
jpayne@69 6369
jpayne@69 6370 /**
jpayne@69 6371 *
jpayne@69 6372 * @param c The connection
jpayne@69 6373 * @return A cookie
jpayne@69 6374 *
jpayne@69 6375 * Delivers a request to the X server.
jpayne@69 6376 *
jpayne@69 6377 */
jpayne@69 6378 xcb_input_set_device_modifier_mapping_cookie_t
jpayne@69 6379 xcb_input_set_device_modifier_mapping (xcb_connection_t *c,
jpayne@69 6380 uint8_t device_id,
jpayne@69 6381 uint8_t keycodes_per_modifier,
jpayne@69 6382 const uint8_t *keymaps);
jpayne@69 6383
jpayne@69 6384 /**
jpayne@69 6385 *
jpayne@69 6386 * @param c The connection
jpayne@69 6387 * @return A cookie
jpayne@69 6388 *
jpayne@69 6389 * Delivers a request to the X server.
jpayne@69 6390 *
jpayne@69 6391 * This form can be used only if the request will cause
jpayne@69 6392 * a reply to be generated. Any returned error will be
jpayne@69 6393 * placed in the event queue.
jpayne@69 6394 */
jpayne@69 6395 xcb_input_set_device_modifier_mapping_cookie_t
jpayne@69 6396 xcb_input_set_device_modifier_mapping_unchecked (xcb_connection_t *c,
jpayne@69 6397 uint8_t device_id,
jpayne@69 6398 uint8_t keycodes_per_modifier,
jpayne@69 6399 const uint8_t *keymaps);
jpayne@69 6400
jpayne@69 6401 /**
jpayne@69 6402 * Return the reply
jpayne@69 6403 * @param c The connection
jpayne@69 6404 * @param cookie The cookie
jpayne@69 6405 * @param e The xcb_generic_error_t supplied
jpayne@69 6406 *
jpayne@69 6407 * Returns the reply of the request asked by
jpayne@69 6408 *
jpayne@69 6409 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6410 * xcb_input_set_device_modifier_mapping_unchecked(). is used.
jpayne@69 6411 * Otherwise, it stores the error if any.
jpayne@69 6412 *
jpayne@69 6413 * The returned value must be freed by the caller using free().
jpayne@69 6414 */
jpayne@69 6415 xcb_input_set_device_modifier_mapping_reply_t *
jpayne@69 6416 xcb_input_set_device_modifier_mapping_reply (xcb_connection_t *c,
jpayne@69 6417 xcb_input_set_device_modifier_mapping_cookie_t cookie /**< */,
jpayne@69 6418 xcb_generic_error_t **e);
jpayne@69 6419
jpayne@69 6420 int
jpayne@69 6421 xcb_input_get_device_button_mapping_sizeof (const void *_buffer);
jpayne@69 6422
jpayne@69 6423 /**
jpayne@69 6424 *
jpayne@69 6425 * @param c The connection
jpayne@69 6426 * @return A cookie
jpayne@69 6427 *
jpayne@69 6428 * Delivers a request to the X server.
jpayne@69 6429 *
jpayne@69 6430 */
jpayne@69 6431 xcb_input_get_device_button_mapping_cookie_t
jpayne@69 6432 xcb_input_get_device_button_mapping (xcb_connection_t *c,
jpayne@69 6433 uint8_t device_id);
jpayne@69 6434
jpayne@69 6435 /**
jpayne@69 6436 *
jpayne@69 6437 * @param c The connection
jpayne@69 6438 * @return A cookie
jpayne@69 6439 *
jpayne@69 6440 * Delivers a request to the X server.
jpayne@69 6441 *
jpayne@69 6442 * This form can be used only if the request will cause
jpayne@69 6443 * a reply to be generated. Any returned error will be
jpayne@69 6444 * placed in the event queue.
jpayne@69 6445 */
jpayne@69 6446 xcb_input_get_device_button_mapping_cookie_t
jpayne@69 6447 xcb_input_get_device_button_mapping_unchecked (xcb_connection_t *c,
jpayne@69 6448 uint8_t device_id);
jpayne@69 6449
jpayne@69 6450 uint8_t *
jpayne@69 6451 xcb_input_get_device_button_mapping_map (const xcb_input_get_device_button_mapping_reply_t *R);
jpayne@69 6452
jpayne@69 6453 int
jpayne@69 6454 xcb_input_get_device_button_mapping_map_length (const xcb_input_get_device_button_mapping_reply_t *R);
jpayne@69 6455
jpayne@69 6456 xcb_generic_iterator_t
jpayne@69 6457 xcb_input_get_device_button_mapping_map_end (const xcb_input_get_device_button_mapping_reply_t *R);
jpayne@69 6458
jpayne@69 6459 /**
jpayne@69 6460 * Return the reply
jpayne@69 6461 * @param c The connection
jpayne@69 6462 * @param cookie The cookie
jpayne@69 6463 * @param e The xcb_generic_error_t supplied
jpayne@69 6464 *
jpayne@69 6465 * Returns the reply of the request asked by
jpayne@69 6466 *
jpayne@69 6467 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6468 * xcb_input_get_device_button_mapping_unchecked(). is used.
jpayne@69 6469 * Otherwise, it stores the error if any.
jpayne@69 6470 *
jpayne@69 6471 * The returned value must be freed by the caller using free().
jpayne@69 6472 */
jpayne@69 6473 xcb_input_get_device_button_mapping_reply_t *
jpayne@69 6474 xcb_input_get_device_button_mapping_reply (xcb_connection_t *c,
jpayne@69 6475 xcb_input_get_device_button_mapping_cookie_t cookie /**< */,
jpayne@69 6476 xcb_generic_error_t **e);
jpayne@69 6477
jpayne@69 6478 int
jpayne@69 6479 xcb_input_set_device_button_mapping_sizeof (const void *_buffer);
jpayne@69 6480
jpayne@69 6481 /**
jpayne@69 6482 *
jpayne@69 6483 * @param c The connection
jpayne@69 6484 * @return A cookie
jpayne@69 6485 *
jpayne@69 6486 * Delivers a request to the X server.
jpayne@69 6487 *
jpayne@69 6488 */
jpayne@69 6489 xcb_input_set_device_button_mapping_cookie_t
jpayne@69 6490 xcb_input_set_device_button_mapping (xcb_connection_t *c,
jpayne@69 6491 uint8_t device_id,
jpayne@69 6492 uint8_t map_size,
jpayne@69 6493 const uint8_t *map);
jpayne@69 6494
jpayne@69 6495 /**
jpayne@69 6496 *
jpayne@69 6497 * @param c The connection
jpayne@69 6498 * @return A cookie
jpayne@69 6499 *
jpayne@69 6500 * Delivers a request to the X server.
jpayne@69 6501 *
jpayne@69 6502 * This form can be used only if the request will cause
jpayne@69 6503 * a reply to be generated. Any returned error will be
jpayne@69 6504 * placed in the event queue.
jpayne@69 6505 */
jpayne@69 6506 xcb_input_set_device_button_mapping_cookie_t
jpayne@69 6507 xcb_input_set_device_button_mapping_unchecked (xcb_connection_t *c,
jpayne@69 6508 uint8_t device_id,
jpayne@69 6509 uint8_t map_size,
jpayne@69 6510 const uint8_t *map);
jpayne@69 6511
jpayne@69 6512 /**
jpayne@69 6513 * Return the reply
jpayne@69 6514 * @param c The connection
jpayne@69 6515 * @param cookie The cookie
jpayne@69 6516 * @param e The xcb_generic_error_t supplied
jpayne@69 6517 *
jpayne@69 6518 * Returns the reply of the request asked by
jpayne@69 6519 *
jpayne@69 6520 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6521 * xcb_input_set_device_button_mapping_unchecked(). is used.
jpayne@69 6522 * Otherwise, it stores the error if any.
jpayne@69 6523 *
jpayne@69 6524 * The returned value must be freed by the caller using free().
jpayne@69 6525 */
jpayne@69 6526 xcb_input_set_device_button_mapping_reply_t *
jpayne@69 6527 xcb_input_set_device_button_mapping_reply (xcb_connection_t *c,
jpayne@69 6528 xcb_input_set_device_button_mapping_cookie_t cookie /**< */,
jpayne@69 6529 xcb_generic_error_t **e);
jpayne@69 6530
jpayne@69 6531 /**
jpayne@69 6532 * Get the next element of the iterator
jpayne@69 6533 * @param i Pointer to a xcb_input_key_state_iterator_t
jpayne@69 6534 *
jpayne@69 6535 * Get the next element in the iterator. The member rem is
jpayne@69 6536 * decreased by one. The member data points to the next
jpayne@69 6537 * element. The member index is increased by sizeof(xcb_input_key_state_t)
jpayne@69 6538 */
jpayne@69 6539 void
jpayne@69 6540 xcb_input_key_state_next (xcb_input_key_state_iterator_t *i);
jpayne@69 6541
jpayne@69 6542 /**
jpayne@69 6543 * Return the iterator pointing to the last element
jpayne@69 6544 * @param i An xcb_input_key_state_iterator_t
jpayne@69 6545 * @return The iterator pointing to the last element
jpayne@69 6546 *
jpayne@69 6547 * Set the current element in the iterator to the last element.
jpayne@69 6548 * The member rem is set to 0. The member data points to the
jpayne@69 6549 * last element.
jpayne@69 6550 */
jpayne@69 6551 xcb_generic_iterator_t
jpayne@69 6552 xcb_input_key_state_end (xcb_input_key_state_iterator_t i);
jpayne@69 6553
jpayne@69 6554 /**
jpayne@69 6555 * Get the next element of the iterator
jpayne@69 6556 * @param i Pointer to a xcb_input_button_state_iterator_t
jpayne@69 6557 *
jpayne@69 6558 * Get the next element in the iterator. The member rem is
jpayne@69 6559 * decreased by one. The member data points to the next
jpayne@69 6560 * element. The member index is increased by sizeof(xcb_input_button_state_t)
jpayne@69 6561 */
jpayne@69 6562 void
jpayne@69 6563 xcb_input_button_state_next (xcb_input_button_state_iterator_t *i);
jpayne@69 6564
jpayne@69 6565 /**
jpayne@69 6566 * Return the iterator pointing to the last element
jpayne@69 6567 * @param i An xcb_input_button_state_iterator_t
jpayne@69 6568 * @return The iterator pointing to the last element
jpayne@69 6569 *
jpayne@69 6570 * Set the current element in the iterator to the last element.
jpayne@69 6571 * The member rem is set to 0. The member data points to the
jpayne@69 6572 * last element.
jpayne@69 6573 */
jpayne@69 6574 xcb_generic_iterator_t
jpayne@69 6575 xcb_input_button_state_end (xcb_input_button_state_iterator_t i);
jpayne@69 6576
jpayne@69 6577 int
jpayne@69 6578 xcb_input_valuator_state_sizeof (const void *_buffer);
jpayne@69 6579
jpayne@69 6580 int32_t *
jpayne@69 6581 xcb_input_valuator_state_valuators (const xcb_input_valuator_state_t *R);
jpayne@69 6582
jpayne@69 6583 int
jpayne@69 6584 xcb_input_valuator_state_valuators_length (const xcb_input_valuator_state_t *R);
jpayne@69 6585
jpayne@69 6586 xcb_generic_iterator_t
jpayne@69 6587 xcb_input_valuator_state_valuators_end (const xcb_input_valuator_state_t *R);
jpayne@69 6588
jpayne@69 6589 /**
jpayne@69 6590 * Get the next element of the iterator
jpayne@69 6591 * @param i Pointer to a xcb_input_valuator_state_iterator_t
jpayne@69 6592 *
jpayne@69 6593 * Get the next element in the iterator. The member rem is
jpayne@69 6594 * decreased by one. The member data points to the next
jpayne@69 6595 * element. The member index is increased by sizeof(xcb_input_valuator_state_t)
jpayne@69 6596 */
jpayne@69 6597 void
jpayne@69 6598 xcb_input_valuator_state_next (xcb_input_valuator_state_iterator_t *i);
jpayne@69 6599
jpayne@69 6600 /**
jpayne@69 6601 * Return the iterator pointing to the last element
jpayne@69 6602 * @param i An xcb_input_valuator_state_iterator_t
jpayne@69 6603 * @return The iterator pointing to the last element
jpayne@69 6604 *
jpayne@69 6605 * Set the current element in the iterator to the last element.
jpayne@69 6606 * The member rem is set to 0. The member data points to the
jpayne@69 6607 * last element.
jpayne@69 6608 */
jpayne@69 6609 xcb_generic_iterator_t
jpayne@69 6610 xcb_input_valuator_state_end (xcb_input_valuator_state_iterator_t i);
jpayne@69 6611
jpayne@69 6612 int32_t *
jpayne@69 6613 xcb_input_input_state_data_valuator_valuators (const xcb_input_input_state_data_t *S);
jpayne@69 6614
jpayne@69 6615 int
jpayne@69 6616 xcb_input_input_state_data_valuator_valuators_length (const xcb_input_input_state_t *R,
jpayne@69 6617 const xcb_input_input_state_data_t *S);
jpayne@69 6618
jpayne@69 6619 xcb_generic_iterator_t
jpayne@69 6620 xcb_input_input_state_data_valuator_valuators_end (const xcb_input_input_state_t *R,
jpayne@69 6621 const xcb_input_input_state_data_t *S);
jpayne@69 6622
jpayne@69 6623 int
jpayne@69 6624 xcb_input_input_state_data_serialize (void **_buffer,
jpayne@69 6625 uint8_t class_id,
jpayne@69 6626 const xcb_input_input_state_data_t *_aux);
jpayne@69 6627
jpayne@69 6628 int
jpayne@69 6629 xcb_input_input_state_data_unpack (const void *_buffer,
jpayne@69 6630 uint8_t class_id,
jpayne@69 6631 xcb_input_input_state_data_t *_aux);
jpayne@69 6632
jpayne@69 6633 int
jpayne@69 6634 xcb_input_input_state_data_sizeof (const void *_buffer,
jpayne@69 6635 uint8_t class_id);
jpayne@69 6636
jpayne@69 6637 int
jpayne@69 6638 xcb_input_input_state_sizeof (const void *_buffer);
jpayne@69 6639
jpayne@69 6640 /**
jpayne@69 6641 * Get the next element of the iterator
jpayne@69 6642 * @param i Pointer to a xcb_input_input_state_iterator_t
jpayne@69 6643 *
jpayne@69 6644 * Get the next element in the iterator. The member rem is
jpayne@69 6645 * decreased by one. The member data points to the next
jpayne@69 6646 * element. The member index is increased by sizeof(xcb_input_input_state_t)
jpayne@69 6647 */
jpayne@69 6648 void
jpayne@69 6649 xcb_input_input_state_next (xcb_input_input_state_iterator_t *i);
jpayne@69 6650
jpayne@69 6651 /**
jpayne@69 6652 * Return the iterator pointing to the last element
jpayne@69 6653 * @param i An xcb_input_input_state_iterator_t
jpayne@69 6654 * @return The iterator pointing to the last element
jpayne@69 6655 *
jpayne@69 6656 * Set the current element in the iterator to the last element.
jpayne@69 6657 * The member rem is set to 0. The member data points to the
jpayne@69 6658 * last element.
jpayne@69 6659 */
jpayne@69 6660 xcb_generic_iterator_t
jpayne@69 6661 xcb_input_input_state_end (xcb_input_input_state_iterator_t i);
jpayne@69 6662
jpayne@69 6663 int
jpayne@69 6664 xcb_input_query_device_state_sizeof (const void *_buffer);
jpayne@69 6665
jpayne@69 6666 /**
jpayne@69 6667 *
jpayne@69 6668 * @param c The connection
jpayne@69 6669 * @return A cookie
jpayne@69 6670 *
jpayne@69 6671 * Delivers a request to the X server.
jpayne@69 6672 *
jpayne@69 6673 */
jpayne@69 6674 xcb_input_query_device_state_cookie_t
jpayne@69 6675 xcb_input_query_device_state (xcb_connection_t *c,
jpayne@69 6676 uint8_t device_id);
jpayne@69 6677
jpayne@69 6678 /**
jpayne@69 6679 *
jpayne@69 6680 * @param c The connection
jpayne@69 6681 * @return A cookie
jpayne@69 6682 *
jpayne@69 6683 * Delivers a request to the X server.
jpayne@69 6684 *
jpayne@69 6685 * This form can be used only if the request will cause
jpayne@69 6686 * a reply to be generated. Any returned error will be
jpayne@69 6687 * placed in the event queue.
jpayne@69 6688 */
jpayne@69 6689 xcb_input_query_device_state_cookie_t
jpayne@69 6690 xcb_input_query_device_state_unchecked (xcb_connection_t *c,
jpayne@69 6691 uint8_t device_id);
jpayne@69 6692
jpayne@69 6693 int
jpayne@69 6694 xcb_input_query_device_state_classes_length (const xcb_input_query_device_state_reply_t *R);
jpayne@69 6695
jpayne@69 6696 xcb_input_input_state_iterator_t
jpayne@69 6697 xcb_input_query_device_state_classes_iterator (const xcb_input_query_device_state_reply_t *R);
jpayne@69 6698
jpayne@69 6699 /**
jpayne@69 6700 * Return the reply
jpayne@69 6701 * @param c The connection
jpayne@69 6702 * @param cookie The cookie
jpayne@69 6703 * @param e The xcb_generic_error_t supplied
jpayne@69 6704 *
jpayne@69 6705 * Returns the reply of the request asked by
jpayne@69 6706 *
jpayne@69 6707 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6708 * xcb_input_query_device_state_unchecked(). is used.
jpayne@69 6709 * Otherwise, it stores the error if any.
jpayne@69 6710 *
jpayne@69 6711 * The returned value must be freed by the caller using free().
jpayne@69 6712 */
jpayne@69 6713 xcb_input_query_device_state_reply_t *
jpayne@69 6714 xcb_input_query_device_state_reply (xcb_connection_t *c,
jpayne@69 6715 xcb_input_query_device_state_cookie_t cookie /**< */,
jpayne@69 6716 xcb_generic_error_t **e);
jpayne@69 6717
jpayne@69 6718 /**
jpayne@69 6719 *
jpayne@69 6720 * @param c The connection
jpayne@69 6721 * @return A cookie
jpayne@69 6722 *
jpayne@69 6723 * Delivers a request to the X server.
jpayne@69 6724 *
jpayne@69 6725 * This form can be used only if the request will not cause
jpayne@69 6726 * a reply to be generated. Any returned error will be
jpayne@69 6727 * saved for handling by xcb_request_check().
jpayne@69 6728 */
jpayne@69 6729 xcb_void_cookie_t
jpayne@69 6730 xcb_input_device_bell_checked (xcb_connection_t *c,
jpayne@69 6731 uint8_t device_id,
jpayne@69 6732 uint8_t feedback_id,
jpayne@69 6733 uint8_t feedback_class,
jpayne@69 6734 int8_t percent);
jpayne@69 6735
jpayne@69 6736 /**
jpayne@69 6737 *
jpayne@69 6738 * @param c The connection
jpayne@69 6739 * @return A cookie
jpayne@69 6740 *
jpayne@69 6741 * Delivers a request to the X server.
jpayne@69 6742 *
jpayne@69 6743 */
jpayne@69 6744 xcb_void_cookie_t
jpayne@69 6745 xcb_input_device_bell (xcb_connection_t *c,
jpayne@69 6746 uint8_t device_id,
jpayne@69 6747 uint8_t feedback_id,
jpayne@69 6748 uint8_t feedback_class,
jpayne@69 6749 int8_t percent);
jpayne@69 6750
jpayne@69 6751 int
jpayne@69 6752 xcb_input_set_device_valuators_sizeof (const void *_buffer);
jpayne@69 6753
jpayne@69 6754 /**
jpayne@69 6755 *
jpayne@69 6756 * @param c The connection
jpayne@69 6757 * @return A cookie
jpayne@69 6758 *
jpayne@69 6759 * Delivers a request to the X server.
jpayne@69 6760 *
jpayne@69 6761 */
jpayne@69 6762 xcb_input_set_device_valuators_cookie_t
jpayne@69 6763 xcb_input_set_device_valuators (xcb_connection_t *c,
jpayne@69 6764 uint8_t device_id,
jpayne@69 6765 uint8_t first_valuator,
jpayne@69 6766 uint8_t num_valuators,
jpayne@69 6767 const int32_t *valuators);
jpayne@69 6768
jpayne@69 6769 /**
jpayne@69 6770 *
jpayne@69 6771 * @param c The connection
jpayne@69 6772 * @return A cookie
jpayne@69 6773 *
jpayne@69 6774 * Delivers a request to the X server.
jpayne@69 6775 *
jpayne@69 6776 * This form can be used only if the request will cause
jpayne@69 6777 * a reply to be generated. Any returned error will be
jpayne@69 6778 * placed in the event queue.
jpayne@69 6779 */
jpayne@69 6780 xcb_input_set_device_valuators_cookie_t
jpayne@69 6781 xcb_input_set_device_valuators_unchecked (xcb_connection_t *c,
jpayne@69 6782 uint8_t device_id,
jpayne@69 6783 uint8_t first_valuator,
jpayne@69 6784 uint8_t num_valuators,
jpayne@69 6785 const int32_t *valuators);
jpayne@69 6786
jpayne@69 6787 /**
jpayne@69 6788 * Return the reply
jpayne@69 6789 * @param c The connection
jpayne@69 6790 * @param cookie The cookie
jpayne@69 6791 * @param e The xcb_generic_error_t supplied
jpayne@69 6792 *
jpayne@69 6793 * Returns the reply of the request asked by
jpayne@69 6794 *
jpayne@69 6795 * The parameter @p e supplied to this function must be NULL if
jpayne@69 6796 * xcb_input_set_device_valuators_unchecked(). is used.
jpayne@69 6797 * Otherwise, it stores the error if any.
jpayne@69 6798 *
jpayne@69 6799 * The returned value must be freed by the caller using free().
jpayne@69 6800 */
jpayne@69 6801 xcb_input_set_device_valuators_reply_t *
jpayne@69 6802 xcb_input_set_device_valuators_reply (xcb_connection_t *c,
jpayne@69 6803 xcb_input_set_device_valuators_cookie_t cookie /**< */,
jpayne@69 6804 xcb_generic_error_t **e);
jpayne@69 6805
jpayne@69 6806 int
jpayne@69 6807 xcb_input_device_resolution_state_sizeof (const void *_buffer);
jpayne@69 6808
jpayne@69 6809 uint32_t *
jpayne@69 6810 xcb_input_device_resolution_state_resolution_values (const xcb_input_device_resolution_state_t *R);
jpayne@69 6811
jpayne@69 6812 int
jpayne@69 6813 xcb_input_device_resolution_state_resolution_values_length (const xcb_input_device_resolution_state_t *R);
jpayne@69 6814
jpayne@69 6815 xcb_generic_iterator_t
jpayne@69 6816 xcb_input_device_resolution_state_resolution_values_end (const xcb_input_device_resolution_state_t *R);
jpayne@69 6817
jpayne@69 6818 uint32_t *
jpayne@69 6819 xcb_input_device_resolution_state_resolution_min (const xcb_input_device_resolution_state_t *R);
jpayne@69 6820
jpayne@69 6821 int
jpayne@69 6822 xcb_input_device_resolution_state_resolution_min_length (const xcb_input_device_resolution_state_t *R);
jpayne@69 6823
jpayne@69 6824 xcb_generic_iterator_t
jpayne@69 6825 xcb_input_device_resolution_state_resolution_min_end (const xcb_input_device_resolution_state_t *R);
jpayne@69 6826
jpayne@69 6827 uint32_t *
jpayne@69 6828 xcb_input_device_resolution_state_resolution_max (const xcb_input_device_resolution_state_t *R);
jpayne@69 6829
jpayne@69 6830 int
jpayne@69 6831 xcb_input_device_resolution_state_resolution_max_length (const xcb_input_device_resolution_state_t *R);
jpayne@69 6832
jpayne@69 6833 xcb_generic_iterator_t
jpayne@69 6834 xcb_input_device_resolution_state_resolution_max_end (const xcb_input_device_resolution_state_t *R);
jpayne@69 6835
jpayne@69 6836 /**
jpayne@69 6837 * Get the next element of the iterator
jpayne@69 6838 * @param i Pointer to a xcb_input_device_resolution_state_iterator_t
jpayne@69 6839 *
jpayne@69 6840 * Get the next element in the iterator. The member rem is
jpayne@69 6841 * decreased by one. The member data points to the next
jpayne@69 6842 * element. The member index is increased by sizeof(xcb_input_device_resolution_state_t)
jpayne@69 6843 */
jpayne@69 6844 void
jpayne@69 6845 xcb_input_device_resolution_state_next (xcb_input_device_resolution_state_iterator_t *i);
jpayne@69 6846
jpayne@69 6847 /**
jpayne@69 6848 * Return the iterator pointing to the last element
jpayne@69 6849 * @param i An xcb_input_device_resolution_state_iterator_t
jpayne@69 6850 * @return The iterator pointing to the last element
jpayne@69 6851 *
jpayne@69 6852 * Set the current element in the iterator to the last element.
jpayne@69 6853 * The member rem is set to 0. The member data points to the
jpayne@69 6854 * last element.
jpayne@69 6855 */
jpayne@69 6856 xcb_generic_iterator_t
jpayne@69 6857 xcb_input_device_resolution_state_end (xcb_input_device_resolution_state_iterator_t i);
jpayne@69 6858
jpayne@69 6859 /**
jpayne@69 6860 * Get the next element of the iterator
jpayne@69 6861 * @param i Pointer to a xcb_input_device_abs_calib_state_iterator_t
jpayne@69 6862 *
jpayne@69 6863 * Get the next element in the iterator. The member rem is
jpayne@69 6864 * decreased by one. The member data points to the next
jpayne@69 6865 * element. The member index is increased by sizeof(xcb_input_device_abs_calib_state_t)
jpayne@69 6866 */
jpayne@69 6867 void
jpayne@69 6868 xcb_input_device_abs_calib_state_next (xcb_input_device_abs_calib_state_iterator_t *i);
jpayne@69 6869
jpayne@69 6870 /**
jpayne@69 6871 * Return the iterator pointing to the last element
jpayne@69 6872 * @param i An xcb_input_device_abs_calib_state_iterator_t
jpayne@69 6873 * @return The iterator pointing to the last element
jpayne@69 6874 *
jpayne@69 6875 * Set the current element in the iterator to the last element.
jpayne@69 6876 * The member rem is set to 0. The member data points to the
jpayne@69 6877 * last element.
jpayne@69 6878 */
jpayne@69 6879 xcb_generic_iterator_t
jpayne@69 6880 xcb_input_device_abs_calib_state_end (xcb_input_device_abs_calib_state_iterator_t i);
jpayne@69 6881
jpayne@69 6882 /**
jpayne@69 6883 * Get the next element of the iterator
jpayne@69 6884 * @param i Pointer to a xcb_input_device_abs_area_state_iterator_t
jpayne@69 6885 *
jpayne@69 6886 * Get the next element in the iterator. The member rem is
jpayne@69 6887 * decreased by one. The member data points to the next
jpayne@69 6888 * element. The member index is increased by sizeof(xcb_input_device_abs_area_state_t)
jpayne@69 6889 */
jpayne@69 6890 void
jpayne@69 6891 xcb_input_device_abs_area_state_next (xcb_input_device_abs_area_state_iterator_t *i);
jpayne@69 6892
jpayne@69 6893 /**
jpayne@69 6894 * Return the iterator pointing to the last element
jpayne@69 6895 * @param i An xcb_input_device_abs_area_state_iterator_t
jpayne@69 6896 * @return The iterator pointing to the last element
jpayne@69 6897 *
jpayne@69 6898 * Set the current element in the iterator to the last element.
jpayne@69 6899 * The member rem is set to 0. The member data points to the
jpayne@69 6900 * last element.
jpayne@69 6901 */
jpayne@69 6902 xcb_generic_iterator_t
jpayne@69 6903 xcb_input_device_abs_area_state_end (xcb_input_device_abs_area_state_iterator_t i);
jpayne@69 6904
jpayne@69 6905 /**
jpayne@69 6906 * Get the next element of the iterator
jpayne@69 6907 * @param i Pointer to a xcb_input_device_core_state_iterator_t
jpayne@69 6908 *
jpayne@69 6909 * Get the next element in the iterator. The member rem is
jpayne@69 6910 * decreased by one. The member data points to the next
jpayne@69 6911 * element. The member index is increased by sizeof(xcb_input_device_core_state_t)
jpayne@69 6912 */
jpayne@69 6913 void
jpayne@69 6914 xcb_input_device_core_state_next (xcb_input_device_core_state_iterator_t *i);
jpayne@69 6915
jpayne@69 6916 /**
jpayne@69 6917 * Return the iterator pointing to the last element
jpayne@69 6918 * @param i An xcb_input_device_core_state_iterator_t
jpayne@69 6919 * @return The iterator pointing to the last element
jpayne@69 6920 *
jpayne@69 6921 * Set the current element in the iterator to the last element.
jpayne@69 6922 * The member rem is set to 0. The member data points to the
jpayne@69 6923 * last element.
jpayne@69 6924 */
jpayne@69 6925 xcb_generic_iterator_t
jpayne@69 6926 xcb_input_device_core_state_end (xcb_input_device_core_state_iterator_t i);
jpayne@69 6927
jpayne@69 6928 /**
jpayne@69 6929 * Get the next element of the iterator
jpayne@69 6930 * @param i Pointer to a xcb_input_device_enable_state_iterator_t
jpayne@69 6931 *
jpayne@69 6932 * Get the next element in the iterator. The member rem is
jpayne@69 6933 * decreased by one. The member data points to the next
jpayne@69 6934 * element. The member index is increased by sizeof(xcb_input_device_enable_state_t)
jpayne@69 6935 */
jpayne@69 6936 void
jpayne@69 6937 xcb_input_device_enable_state_next (xcb_input_device_enable_state_iterator_t *i);
jpayne@69 6938
jpayne@69 6939 /**
jpayne@69 6940 * Return the iterator pointing to the last element
jpayne@69 6941 * @param i An xcb_input_device_enable_state_iterator_t
jpayne@69 6942 * @return The iterator pointing to the last element
jpayne@69 6943 *
jpayne@69 6944 * Set the current element in the iterator to the last element.
jpayne@69 6945 * The member rem is set to 0. The member data points to the
jpayne@69 6946 * last element.
jpayne@69 6947 */
jpayne@69 6948 xcb_generic_iterator_t
jpayne@69 6949 xcb_input_device_enable_state_end (xcb_input_device_enable_state_iterator_t i);
jpayne@69 6950
jpayne@69 6951 uint32_t *
jpayne@69 6952 xcb_input_device_state_data_resolution_resolution_values (const xcb_input_device_state_data_t *S);
jpayne@69 6953
jpayne@69 6954 int
jpayne@69 6955 xcb_input_device_state_data_resolution_resolution_values_length (const xcb_input_device_state_t *R,
jpayne@69 6956 const xcb_input_device_state_data_t *S);
jpayne@69 6957
jpayne@69 6958 xcb_generic_iterator_t
jpayne@69 6959 xcb_input_device_state_data_resolution_resolution_values_end (const xcb_input_device_state_t *R,
jpayne@69 6960 const xcb_input_device_state_data_t *S);
jpayne@69 6961
jpayne@69 6962 uint32_t *
jpayne@69 6963 xcb_input_device_state_data_resolution_resolution_min (const xcb_input_device_state_data_t *S);
jpayne@69 6964
jpayne@69 6965 int
jpayne@69 6966 xcb_input_device_state_data_resolution_resolution_min_length (const xcb_input_device_state_t *R,
jpayne@69 6967 const xcb_input_device_state_data_t *S);
jpayne@69 6968
jpayne@69 6969 xcb_generic_iterator_t
jpayne@69 6970 xcb_input_device_state_data_resolution_resolution_min_end (const xcb_input_device_state_t *R,
jpayne@69 6971 const xcb_input_device_state_data_t *S);
jpayne@69 6972
jpayne@69 6973 uint32_t *
jpayne@69 6974 xcb_input_device_state_data_resolution_resolution_max (const xcb_input_device_state_data_t *S);
jpayne@69 6975
jpayne@69 6976 int
jpayne@69 6977 xcb_input_device_state_data_resolution_resolution_max_length (const xcb_input_device_state_t *R,
jpayne@69 6978 const xcb_input_device_state_data_t *S);
jpayne@69 6979
jpayne@69 6980 xcb_generic_iterator_t
jpayne@69 6981 xcb_input_device_state_data_resolution_resolution_max_end (const xcb_input_device_state_t *R,
jpayne@69 6982 const xcb_input_device_state_data_t *S);
jpayne@69 6983
jpayne@69 6984 int
jpayne@69 6985 xcb_input_device_state_data_serialize (void **_buffer,
jpayne@69 6986 uint16_t control_id,
jpayne@69 6987 const xcb_input_device_state_data_t *_aux);
jpayne@69 6988
jpayne@69 6989 int
jpayne@69 6990 xcb_input_device_state_data_unpack (const void *_buffer,
jpayne@69 6991 uint16_t control_id,
jpayne@69 6992 xcb_input_device_state_data_t *_aux);
jpayne@69 6993
jpayne@69 6994 int
jpayne@69 6995 xcb_input_device_state_data_sizeof (const void *_buffer,
jpayne@69 6996 uint16_t control_id);
jpayne@69 6997
jpayne@69 6998 int
jpayne@69 6999 xcb_input_device_state_sizeof (const void *_buffer);
jpayne@69 7000
jpayne@69 7001 /**
jpayne@69 7002 * Get the next element of the iterator
jpayne@69 7003 * @param i Pointer to a xcb_input_device_state_iterator_t
jpayne@69 7004 *
jpayne@69 7005 * Get the next element in the iterator. The member rem is
jpayne@69 7006 * decreased by one. The member data points to the next
jpayne@69 7007 * element. The member index is increased by sizeof(xcb_input_device_state_t)
jpayne@69 7008 */
jpayne@69 7009 void
jpayne@69 7010 xcb_input_device_state_next (xcb_input_device_state_iterator_t *i);
jpayne@69 7011
jpayne@69 7012 /**
jpayne@69 7013 * Return the iterator pointing to the last element
jpayne@69 7014 * @param i An xcb_input_device_state_iterator_t
jpayne@69 7015 * @return The iterator pointing to the last element
jpayne@69 7016 *
jpayne@69 7017 * Set the current element in the iterator to the last element.
jpayne@69 7018 * The member rem is set to 0. The member data points to the
jpayne@69 7019 * last element.
jpayne@69 7020 */
jpayne@69 7021 xcb_generic_iterator_t
jpayne@69 7022 xcb_input_device_state_end (xcb_input_device_state_iterator_t i);
jpayne@69 7023
jpayne@69 7024 int
jpayne@69 7025 xcb_input_get_device_control_sizeof (const void *_buffer);
jpayne@69 7026
jpayne@69 7027 /**
jpayne@69 7028 *
jpayne@69 7029 * @param c The connection
jpayne@69 7030 * @return A cookie
jpayne@69 7031 *
jpayne@69 7032 * Delivers a request to the X server.
jpayne@69 7033 *
jpayne@69 7034 */
jpayne@69 7035 xcb_input_get_device_control_cookie_t
jpayne@69 7036 xcb_input_get_device_control (xcb_connection_t *c,
jpayne@69 7037 uint16_t control_id,
jpayne@69 7038 uint8_t device_id);
jpayne@69 7039
jpayne@69 7040 /**
jpayne@69 7041 *
jpayne@69 7042 * @param c The connection
jpayne@69 7043 * @return A cookie
jpayne@69 7044 *
jpayne@69 7045 * Delivers a request to the X server.
jpayne@69 7046 *
jpayne@69 7047 * This form can be used only if the request will cause
jpayne@69 7048 * a reply to be generated. Any returned error will be
jpayne@69 7049 * placed in the event queue.
jpayne@69 7050 */
jpayne@69 7051 xcb_input_get_device_control_cookie_t
jpayne@69 7052 xcb_input_get_device_control_unchecked (xcb_connection_t *c,
jpayne@69 7053 uint16_t control_id,
jpayne@69 7054 uint8_t device_id);
jpayne@69 7055
jpayne@69 7056 xcb_input_device_state_t *
jpayne@69 7057 xcb_input_get_device_control_control (const xcb_input_get_device_control_reply_t *R);
jpayne@69 7058
jpayne@69 7059 /**
jpayne@69 7060 * Return the reply
jpayne@69 7061 * @param c The connection
jpayne@69 7062 * @param cookie The cookie
jpayne@69 7063 * @param e The xcb_generic_error_t supplied
jpayne@69 7064 *
jpayne@69 7065 * Returns the reply of the request asked by
jpayne@69 7066 *
jpayne@69 7067 * The parameter @p e supplied to this function must be NULL if
jpayne@69 7068 * xcb_input_get_device_control_unchecked(). is used.
jpayne@69 7069 * Otherwise, it stores the error if any.
jpayne@69 7070 *
jpayne@69 7071 * The returned value must be freed by the caller using free().
jpayne@69 7072 */
jpayne@69 7073 xcb_input_get_device_control_reply_t *
jpayne@69 7074 xcb_input_get_device_control_reply (xcb_connection_t *c,
jpayne@69 7075 xcb_input_get_device_control_cookie_t cookie /**< */,
jpayne@69 7076 xcb_generic_error_t **e);
jpayne@69 7077
jpayne@69 7078 int
jpayne@69 7079 xcb_input_device_resolution_ctl_sizeof (const void *_buffer);
jpayne@69 7080
jpayne@69 7081 uint32_t *
jpayne@69 7082 xcb_input_device_resolution_ctl_resolution_values (const xcb_input_device_resolution_ctl_t *R);
jpayne@69 7083
jpayne@69 7084 int
jpayne@69 7085 xcb_input_device_resolution_ctl_resolution_values_length (const xcb_input_device_resolution_ctl_t *R);
jpayne@69 7086
jpayne@69 7087 xcb_generic_iterator_t
jpayne@69 7088 xcb_input_device_resolution_ctl_resolution_values_end (const xcb_input_device_resolution_ctl_t *R);
jpayne@69 7089
jpayne@69 7090 /**
jpayne@69 7091 * Get the next element of the iterator
jpayne@69 7092 * @param i Pointer to a xcb_input_device_resolution_ctl_iterator_t
jpayne@69 7093 *
jpayne@69 7094 * Get the next element in the iterator. The member rem is
jpayne@69 7095 * decreased by one. The member data points to the next
jpayne@69 7096 * element. The member index is increased by sizeof(xcb_input_device_resolution_ctl_t)
jpayne@69 7097 */
jpayne@69 7098 void
jpayne@69 7099 xcb_input_device_resolution_ctl_next (xcb_input_device_resolution_ctl_iterator_t *i);
jpayne@69 7100
jpayne@69 7101 /**
jpayne@69 7102 * Return the iterator pointing to the last element
jpayne@69 7103 * @param i An xcb_input_device_resolution_ctl_iterator_t
jpayne@69 7104 * @return The iterator pointing to the last element
jpayne@69 7105 *
jpayne@69 7106 * Set the current element in the iterator to the last element.
jpayne@69 7107 * The member rem is set to 0. The member data points to the
jpayne@69 7108 * last element.
jpayne@69 7109 */
jpayne@69 7110 xcb_generic_iterator_t
jpayne@69 7111 xcb_input_device_resolution_ctl_end (xcb_input_device_resolution_ctl_iterator_t i);
jpayne@69 7112
jpayne@69 7113 /**
jpayne@69 7114 * Get the next element of the iterator
jpayne@69 7115 * @param i Pointer to a xcb_input_device_abs_calib_ctl_iterator_t
jpayne@69 7116 *
jpayne@69 7117 * Get the next element in the iterator. The member rem is
jpayne@69 7118 * decreased by one. The member data points to the next
jpayne@69 7119 * element. The member index is increased by sizeof(xcb_input_device_abs_calib_ctl_t)
jpayne@69 7120 */
jpayne@69 7121 void
jpayne@69 7122 xcb_input_device_abs_calib_ctl_next (xcb_input_device_abs_calib_ctl_iterator_t *i);
jpayne@69 7123
jpayne@69 7124 /**
jpayne@69 7125 * Return the iterator pointing to the last element
jpayne@69 7126 * @param i An xcb_input_device_abs_calib_ctl_iterator_t
jpayne@69 7127 * @return The iterator pointing to the last element
jpayne@69 7128 *
jpayne@69 7129 * Set the current element in the iterator to the last element.
jpayne@69 7130 * The member rem is set to 0. The member data points to the
jpayne@69 7131 * last element.
jpayne@69 7132 */
jpayne@69 7133 xcb_generic_iterator_t
jpayne@69 7134 xcb_input_device_abs_calib_ctl_end (xcb_input_device_abs_calib_ctl_iterator_t i);
jpayne@69 7135
jpayne@69 7136 /**
jpayne@69 7137 * Get the next element of the iterator
jpayne@69 7138 * @param i Pointer to a xcb_input_device_abs_area_ctrl_iterator_t
jpayne@69 7139 *
jpayne@69 7140 * Get the next element in the iterator. The member rem is
jpayne@69 7141 * decreased by one. The member data points to the next
jpayne@69 7142 * element. The member index is increased by sizeof(xcb_input_device_abs_area_ctrl_t)
jpayne@69 7143 */
jpayne@69 7144 void
jpayne@69 7145 xcb_input_device_abs_area_ctrl_next (xcb_input_device_abs_area_ctrl_iterator_t *i);
jpayne@69 7146
jpayne@69 7147 /**
jpayne@69 7148 * Return the iterator pointing to the last element
jpayne@69 7149 * @param i An xcb_input_device_abs_area_ctrl_iterator_t
jpayne@69 7150 * @return The iterator pointing to the last element
jpayne@69 7151 *
jpayne@69 7152 * Set the current element in the iterator to the last element.
jpayne@69 7153 * The member rem is set to 0. The member data points to the
jpayne@69 7154 * last element.
jpayne@69 7155 */
jpayne@69 7156 xcb_generic_iterator_t
jpayne@69 7157 xcb_input_device_abs_area_ctrl_end (xcb_input_device_abs_area_ctrl_iterator_t i);
jpayne@69 7158
jpayne@69 7159 /**
jpayne@69 7160 * Get the next element of the iterator
jpayne@69 7161 * @param i Pointer to a xcb_input_device_core_ctrl_iterator_t
jpayne@69 7162 *
jpayne@69 7163 * Get the next element in the iterator. The member rem is
jpayne@69 7164 * decreased by one. The member data points to the next
jpayne@69 7165 * element. The member index is increased by sizeof(xcb_input_device_core_ctrl_t)
jpayne@69 7166 */
jpayne@69 7167 void
jpayne@69 7168 xcb_input_device_core_ctrl_next (xcb_input_device_core_ctrl_iterator_t *i);
jpayne@69 7169
jpayne@69 7170 /**
jpayne@69 7171 * Return the iterator pointing to the last element
jpayne@69 7172 * @param i An xcb_input_device_core_ctrl_iterator_t
jpayne@69 7173 * @return The iterator pointing to the last element
jpayne@69 7174 *
jpayne@69 7175 * Set the current element in the iterator to the last element.
jpayne@69 7176 * The member rem is set to 0. The member data points to the
jpayne@69 7177 * last element.
jpayne@69 7178 */
jpayne@69 7179 xcb_generic_iterator_t
jpayne@69 7180 xcb_input_device_core_ctrl_end (xcb_input_device_core_ctrl_iterator_t i);
jpayne@69 7181
jpayne@69 7182 /**
jpayne@69 7183 * Get the next element of the iterator
jpayne@69 7184 * @param i Pointer to a xcb_input_device_enable_ctrl_iterator_t
jpayne@69 7185 *
jpayne@69 7186 * Get the next element in the iterator. The member rem is
jpayne@69 7187 * decreased by one. The member data points to the next
jpayne@69 7188 * element. The member index is increased by sizeof(xcb_input_device_enable_ctrl_t)
jpayne@69 7189 */
jpayne@69 7190 void
jpayne@69 7191 xcb_input_device_enable_ctrl_next (xcb_input_device_enable_ctrl_iterator_t *i);
jpayne@69 7192
jpayne@69 7193 /**
jpayne@69 7194 * Return the iterator pointing to the last element
jpayne@69 7195 * @param i An xcb_input_device_enable_ctrl_iterator_t
jpayne@69 7196 * @return The iterator pointing to the last element
jpayne@69 7197 *
jpayne@69 7198 * Set the current element in the iterator to the last element.
jpayne@69 7199 * The member rem is set to 0. The member data points to the
jpayne@69 7200 * last element.
jpayne@69 7201 */
jpayne@69 7202 xcb_generic_iterator_t
jpayne@69 7203 xcb_input_device_enable_ctrl_end (xcb_input_device_enable_ctrl_iterator_t i);
jpayne@69 7204
jpayne@69 7205 uint32_t *
jpayne@69 7206 xcb_input_device_ctl_data_resolution_resolution_values (const xcb_input_device_ctl_data_t *S);
jpayne@69 7207
jpayne@69 7208 int
jpayne@69 7209 xcb_input_device_ctl_data_resolution_resolution_values_length (const xcb_input_device_ctl_t *R,
jpayne@69 7210 const xcb_input_device_ctl_data_t *S);
jpayne@69 7211
jpayne@69 7212 xcb_generic_iterator_t
jpayne@69 7213 xcb_input_device_ctl_data_resolution_resolution_values_end (const xcb_input_device_ctl_t *R,
jpayne@69 7214 const xcb_input_device_ctl_data_t *S);
jpayne@69 7215
jpayne@69 7216 int
jpayne@69 7217 xcb_input_device_ctl_data_serialize (void **_buffer,
jpayne@69 7218 uint16_t control_id,
jpayne@69 7219 const xcb_input_device_ctl_data_t *_aux);
jpayne@69 7220
jpayne@69 7221 int
jpayne@69 7222 xcb_input_device_ctl_data_unpack (const void *_buffer,
jpayne@69 7223 uint16_t control_id,
jpayne@69 7224 xcb_input_device_ctl_data_t *_aux);
jpayne@69 7225
jpayne@69 7226 int
jpayne@69 7227 xcb_input_device_ctl_data_sizeof (const void *_buffer,
jpayne@69 7228 uint16_t control_id);
jpayne@69 7229
jpayne@69 7230 int
jpayne@69 7231 xcb_input_device_ctl_sizeof (const void *_buffer);
jpayne@69 7232
jpayne@69 7233 /**
jpayne@69 7234 * Get the next element of the iterator
jpayne@69 7235 * @param i Pointer to a xcb_input_device_ctl_iterator_t
jpayne@69 7236 *
jpayne@69 7237 * Get the next element in the iterator. The member rem is
jpayne@69 7238 * decreased by one. The member data points to the next
jpayne@69 7239 * element. The member index is increased by sizeof(xcb_input_device_ctl_t)
jpayne@69 7240 */
jpayne@69 7241 void
jpayne@69 7242 xcb_input_device_ctl_next (xcb_input_device_ctl_iterator_t *i);
jpayne@69 7243
jpayne@69 7244 /**
jpayne@69 7245 * Return the iterator pointing to the last element
jpayne@69 7246 * @param i An xcb_input_device_ctl_iterator_t
jpayne@69 7247 * @return The iterator pointing to the last element
jpayne@69 7248 *
jpayne@69 7249 * Set the current element in the iterator to the last element.
jpayne@69 7250 * The member rem is set to 0. The member data points to the
jpayne@69 7251 * last element.
jpayne@69 7252 */
jpayne@69 7253 xcb_generic_iterator_t
jpayne@69 7254 xcb_input_device_ctl_end (xcb_input_device_ctl_iterator_t i);
jpayne@69 7255
jpayne@69 7256 int
jpayne@69 7257 xcb_input_change_device_control_sizeof (const void *_buffer);
jpayne@69 7258
jpayne@69 7259 /**
jpayne@69 7260 *
jpayne@69 7261 * @param c The connection
jpayne@69 7262 * @return A cookie
jpayne@69 7263 *
jpayne@69 7264 * Delivers a request to the X server.
jpayne@69 7265 *
jpayne@69 7266 */
jpayne@69 7267 xcb_input_change_device_control_cookie_t
jpayne@69 7268 xcb_input_change_device_control (xcb_connection_t *c,
jpayne@69 7269 uint16_t control_id,
jpayne@69 7270 uint8_t device_id,
jpayne@69 7271 xcb_input_device_ctl_t *control);
jpayne@69 7272
jpayne@69 7273 /**
jpayne@69 7274 *
jpayne@69 7275 * @param c The connection
jpayne@69 7276 * @return A cookie
jpayne@69 7277 *
jpayne@69 7278 * Delivers a request to the X server.
jpayne@69 7279 *
jpayne@69 7280 * This form can be used only if the request will cause
jpayne@69 7281 * a reply to be generated. Any returned error will be
jpayne@69 7282 * placed in the event queue.
jpayne@69 7283 */
jpayne@69 7284 xcb_input_change_device_control_cookie_t
jpayne@69 7285 xcb_input_change_device_control_unchecked (xcb_connection_t *c,
jpayne@69 7286 uint16_t control_id,
jpayne@69 7287 uint8_t device_id,
jpayne@69 7288 xcb_input_device_ctl_t *control);
jpayne@69 7289
jpayne@69 7290 /**
jpayne@69 7291 * Return the reply
jpayne@69 7292 * @param c The connection
jpayne@69 7293 * @param cookie The cookie
jpayne@69 7294 * @param e The xcb_generic_error_t supplied
jpayne@69 7295 *
jpayne@69 7296 * Returns the reply of the request asked by
jpayne@69 7297 *
jpayne@69 7298 * The parameter @p e supplied to this function must be NULL if
jpayne@69 7299 * xcb_input_change_device_control_unchecked(). is used.
jpayne@69 7300 * Otherwise, it stores the error if any.
jpayne@69 7301 *
jpayne@69 7302 * The returned value must be freed by the caller using free().
jpayne@69 7303 */
jpayne@69 7304 xcb_input_change_device_control_reply_t *
jpayne@69 7305 xcb_input_change_device_control_reply (xcb_connection_t *c,
jpayne@69 7306 xcb_input_change_device_control_cookie_t cookie /**< */,
jpayne@69 7307 xcb_generic_error_t **e);
jpayne@69 7308
jpayne@69 7309 int
jpayne@69 7310 xcb_input_list_device_properties_sizeof (const void *_buffer);
jpayne@69 7311
jpayne@69 7312 /**
jpayne@69 7313 *
jpayne@69 7314 * @param c The connection
jpayne@69 7315 * @return A cookie
jpayne@69 7316 *
jpayne@69 7317 * Delivers a request to the X server.
jpayne@69 7318 *
jpayne@69 7319 */
jpayne@69 7320 xcb_input_list_device_properties_cookie_t
jpayne@69 7321 xcb_input_list_device_properties (xcb_connection_t *c,
jpayne@69 7322 uint8_t device_id);
jpayne@69 7323
jpayne@69 7324 /**
jpayne@69 7325 *
jpayne@69 7326 * @param c The connection
jpayne@69 7327 * @return A cookie
jpayne@69 7328 *
jpayne@69 7329 * Delivers a request to the X server.
jpayne@69 7330 *
jpayne@69 7331 * This form can be used only if the request will cause
jpayne@69 7332 * a reply to be generated. Any returned error will be
jpayne@69 7333 * placed in the event queue.
jpayne@69 7334 */
jpayne@69 7335 xcb_input_list_device_properties_cookie_t
jpayne@69 7336 xcb_input_list_device_properties_unchecked (xcb_connection_t *c,
jpayne@69 7337 uint8_t device_id);
jpayne@69 7338
jpayne@69 7339 xcb_atom_t *
jpayne@69 7340 xcb_input_list_device_properties_atoms (const xcb_input_list_device_properties_reply_t *R);
jpayne@69 7341
jpayne@69 7342 int
jpayne@69 7343 xcb_input_list_device_properties_atoms_length (const xcb_input_list_device_properties_reply_t *R);
jpayne@69 7344
jpayne@69 7345 xcb_generic_iterator_t
jpayne@69 7346 xcb_input_list_device_properties_atoms_end (const xcb_input_list_device_properties_reply_t *R);
jpayne@69 7347
jpayne@69 7348 /**
jpayne@69 7349 * Return the reply
jpayne@69 7350 * @param c The connection
jpayne@69 7351 * @param cookie The cookie
jpayne@69 7352 * @param e The xcb_generic_error_t supplied
jpayne@69 7353 *
jpayne@69 7354 * Returns the reply of the request asked by
jpayne@69 7355 *
jpayne@69 7356 * The parameter @p e supplied to this function must be NULL if
jpayne@69 7357 * xcb_input_list_device_properties_unchecked(). is used.
jpayne@69 7358 * Otherwise, it stores the error if any.
jpayne@69 7359 *
jpayne@69 7360 * The returned value must be freed by the caller using free().
jpayne@69 7361 */
jpayne@69 7362 xcb_input_list_device_properties_reply_t *
jpayne@69 7363 xcb_input_list_device_properties_reply (xcb_connection_t *c,
jpayne@69 7364 xcb_input_list_device_properties_cookie_t cookie /**< */,
jpayne@69 7365 xcb_generic_error_t **e);
jpayne@69 7366
jpayne@69 7367 uint8_t *
jpayne@69 7368 xcb_input_change_device_property_items_data_8 (const xcb_input_change_device_property_items_t *S);
jpayne@69 7369
jpayne@69 7370 int
jpayne@69 7371 xcb_input_change_device_property_items_data_8_length (const xcb_input_change_device_property_request_t *R,
jpayne@69 7372 const xcb_input_change_device_property_items_t *S);
jpayne@69 7373
jpayne@69 7374 xcb_generic_iterator_t
jpayne@69 7375 xcb_input_change_device_property_items_data_8_end (const xcb_input_change_device_property_request_t *R,
jpayne@69 7376 const xcb_input_change_device_property_items_t *S);
jpayne@69 7377
jpayne@69 7378 uint16_t *
jpayne@69 7379 xcb_input_change_device_property_items_data_16 (const xcb_input_change_device_property_items_t *S);
jpayne@69 7380
jpayne@69 7381 int
jpayne@69 7382 xcb_input_change_device_property_items_data_16_length (const xcb_input_change_device_property_request_t *R,
jpayne@69 7383 const xcb_input_change_device_property_items_t *S);
jpayne@69 7384
jpayne@69 7385 xcb_generic_iterator_t
jpayne@69 7386 xcb_input_change_device_property_items_data_16_end (const xcb_input_change_device_property_request_t *R,
jpayne@69 7387 const xcb_input_change_device_property_items_t *S);
jpayne@69 7388
jpayne@69 7389 uint32_t *
jpayne@69 7390 xcb_input_change_device_property_items_data_32 (const xcb_input_change_device_property_items_t *S);
jpayne@69 7391
jpayne@69 7392 int
jpayne@69 7393 xcb_input_change_device_property_items_data_32_length (const xcb_input_change_device_property_request_t *R,
jpayne@69 7394 const xcb_input_change_device_property_items_t *S);
jpayne@69 7395
jpayne@69 7396 xcb_generic_iterator_t
jpayne@69 7397 xcb_input_change_device_property_items_data_32_end (const xcb_input_change_device_property_request_t *R,
jpayne@69 7398 const xcb_input_change_device_property_items_t *S);
jpayne@69 7399
jpayne@69 7400 int
jpayne@69 7401 xcb_input_change_device_property_items_serialize (void **_buffer,
jpayne@69 7402 uint32_t num_items,
jpayne@69 7403 uint8_t format,
jpayne@69 7404 const xcb_input_change_device_property_items_t *_aux);
jpayne@69 7405
jpayne@69 7406 int
jpayne@69 7407 xcb_input_change_device_property_items_unpack (const void *_buffer,
jpayne@69 7408 uint32_t num_items,
jpayne@69 7409 uint8_t format,
jpayne@69 7410 xcb_input_change_device_property_items_t *_aux);
jpayne@69 7411
jpayne@69 7412 int
jpayne@69 7413 xcb_input_change_device_property_items_sizeof (const void *_buffer,
jpayne@69 7414 uint32_t num_items,
jpayne@69 7415 uint8_t format);
jpayne@69 7416
jpayne@69 7417 int
jpayne@69 7418 xcb_input_change_device_property_sizeof (const void *_buffer);
jpayne@69 7419
jpayne@69 7420 /**
jpayne@69 7421 *
jpayne@69 7422 * @param c The connection
jpayne@69 7423 * @return A cookie
jpayne@69 7424 *
jpayne@69 7425 * Delivers a request to the X server.
jpayne@69 7426 *
jpayne@69 7427 * This form can be used only if the request will not cause
jpayne@69 7428 * a reply to be generated. Any returned error will be
jpayne@69 7429 * saved for handling by xcb_request_check().
jpayne@69 7430 */
jpayne@69 7431 xcb_void_cookie_t
jpayne@69 7432 xcb_input_change_device_property_checked (xcb_connection_t *c,
jpayne@69 7433 xcb_atom_t property,
jpayne@69 7434 xcb_atom_t type,
jpayne@69 7435 uint8_t device_id,
jpayne@69 7436 uint8_t format,
jpayne@69 7437 uint8_t mode,
jpayne@69 7438 uint32_t num_items,
jpayne@69 7439 const void *items);
jpayne@69 7440
jpayne@69 7441 /**
jpayne@69 7442 *
jpayne@69 7443 * @param c The connection
jpayne@69 7444 * @return A cookie
jpayne@69 7445 *
jpayne@69 7446 * Delivers a request to the X server.
jpayne@69 7447 *
jpayne@69 7448 */
jpayne@69 7449 xcb_void_cookie_t
jpayne@69 7450 xcb_input_change_device_property (xcb_connection_t *c,
jpayne@69 7451 xcb_atom_t property,
jpayne@69 7452 xcb_atom_t type,
jpayne@69 7453 uint8_t device_id,
jpayne@69 7454 uint8_t format,
jpayne@69 7455 uint8_t mode,
jpayne@69 7456 uint32_t num_items,
jpayne@69 7457 const void *items);
jpayne@69 7458
jpayne@69 7459 /**
jpayne@69 7460 *
jpayne@69 7461 * @param c The connection
jpayne@69 7462 * @return A cookie
jpayne@69 7463 *
jpayne@69 7464 * Delivers a request to the X server.
jpayne@69 7465 *
jpayne@69 7466 * This form can be used only if the request will not cause
jpayne@69 7467 * a reply to be generated. Any returned error will be
jpayne@69 7468 * saved for handling by xcb_request_check().
jpayne@69 7469 */
jpayne@69 7470 xcb_void_cookie_t
jpayne@69 7471 xcb_input_change_device_property_aux_checked (xcb_connection_t *c,
jpayne@69 7472 xcb_atom_t property,
jpayne@69 7473 xcb_atom_t type,
jpayne@69 7474 uint8_t device_id,
jpayne@69 7475 uint8_t format,
jpayne@69 7476 uint8_t mode,
jpayne@69 7477 uint32_t num_items,
jpayne@69 7478 const xcb_input_change_device_property_items_t *items);
jpayne@69 7479
jpayne@69 7480 /**
jpayne@69 7481 *
jpayne@69 7482 * @param c The connection
jpayne@69 7483 * @return A cookie
jpayne@69 7484 *
jpayne@69 7485 * Delivers a request to the X server.
jpayne@69 7486 *
jpayne@69 7487 */
jpayne@69 7488 xcb_void_cookie_t
jpayne@69 7489 xcb_input_change_device_property_aux (xcb_connection_t *c,
jpayne@69 7490 xcb_atom_t property,
jpayne@69 7491 xcb_atom_t type,
jpayne@69 7492 uint8_t device_id,
jpayne@69 7493 uint8_t format,
jpayne@69 7494 uint8_t mode,
jpayne@69 7495 uint32_t num_items,
jpayne@69 7496 const xcb_input_change_device_property_items_t *items);
jpayne@69 7497
jpayne@69 7498 void *
jpayne@69 7499 xcb_input_change_device_property_items (const xcb_input_change_device_property_request_t *R);
jpayne@69 7500
jpayne@69 7501 /**
jpayne@69 7502 *
jpayne@69 7503 * @param c The connection
jpayne@69 7504 * @return A cookie
jpayne@69 7505 *
jpayne@69 7506 * Delivers a request to the X server.
jpayne@69 7507 *
jpayne@69 7508 * This form can be used only if the request will not cause
jpayne@69 7509 * a reply to be generated. Any returned error will be
jpayne@69 7510 * saved for handling by xcb_request_check().
jpayne@69 7511 */
jpayne@69 7512 xcb_void_cookie_t
jpayne@69 7513 xcb_input_delete_device_property_checked (xcb_connection_t *c,
jpayne@69 7514 xcb_atom_t property,
jpayne@69 7515 uint8_t device_id);
jpayne@69 7516
jpayne@69 7517 /**
jpayne@69 7518 *
jpayne@69 7519 * @param c The connection
jpayne@69 7520 * @return A cookie
jpayne@69 7521 *
jpayne@69 7522 * Delivers a request to the X server.
jpayne@69 7523 *
jpayne@69 7524 */
jpayne@69 7525 xcb_void_cookie_t
jpayne@69 7526 xcb_input_delete_device_property (xcb_connection_t *c,
jpayne@69 7527 xcb_atom_t property,
jpayne@69 7528 uint8_t device_id);
jpayne@69 7529
jpayne@69 7530 uint8_t *
jpayne@69 7531 xcb_input_get_device_property_items_data_8 (const xcb_input_get_device_property_items_t *S);
jpayne@69 7532
jpayne@69 7533 int
jpayne@69 7534 xcb_input_get_device_property_items_data_8_length (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7535 const xcb_input_get_device_property_items_t *S);
jpayne@69 7536
jpayne@69 7537 xcb_generic_iterator_t
jpayne@69 7538 xcb_input_get_device_property_items_data_8_end (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7539 const xcb_input_get_device_property_items_t *S);
jpayne@69 7540
jpayne@69 7541 uint16_t *
jpayne@69 7542 xcb_input_get_device_property_items_data_16 (const xcb_input_get_device_property_items_t *S);
jpayne@69 7543
jpayne@69 7544 int
jpayne@69 7545 xcb_input_get_device_property_items_data_16_length (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7546 const xcb_input_get_device_property_items_t *S);
jpayne@69 7547
jpayne@69 7548 xcb_generic_iterator_t
jpayne@69 7549 xcb_input_get_device_property_items_data_16_end (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7550 const xcb_input_get_device_property_items_t *S);
jpayne@69 7551
jpayne@69 7552 uint32_t *
jpayne@69 7553 xcb_input_get_device_property_items_data_32 (const xcb_input_get_device_property_items_t *S);
jpayne@69 7554
jpayne@69 7555 int
jpayne@69 7556 xcb_input_get_device_property_items_data_32_length (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7557 const xcb_input_get_device_property_items_t *S);
jpayne@69 7558
jpayne@69 7559 xcb_generic_iterator_t
jpayne@69 7560 xcb_input_get_device_property_items_data_32_end (const xcb_input_get_device_property_reply_t *R,
jpayne@69 7561 const xcb_input_get_device_property_items_t *S);
jpayne@69 7562
jpayne@69 7563 int
jpayne@69 7564 xcb_input_get_device_property_items_serialize (void **_buffer,
jpayne@69 7565 uint32_t num_items,
jpayne@69 7566 uint8_t format,
jpayne@69 7567 const xcb_input_get_device_property_items_t *_aux);
jpayne@69 7568
jpayne@69 7569 int
jpayne@69 7570 xcb_input_get_device_property_items_unpack (const void *_buffer,
jpayne@69 7571 uint32_t num_items,
jpayne@69 7572 uint8_t format,
jpayne@69 7573 xcb_input_get_device_property_items_t *_aux);
jpayne@69 7574
jpayne@69 7575 int
jpayne@69 7576 xcb_input_get_device_property_items_sizeof (const void *_buffer,
jpayne@69 7577 uint32_t num_items,
jpayne@69 7578 uint8_t format);
jpayne@69 7579
jpayne@69 7580 int
jpayne@69 7581 xcb_input_get_device_property_sizeof (const void *_buffer);
jpayne@69 7582
jpayne@69 7583 /**
jpayne@69 7584 *
jpayne@69 7585 * @param c The connection
jpayne@69 7586 * @return A cookie
jpayne@69 7587 *
jpayne@69 7588 * Delivers a request to the X server.
jpayne@69 7589 *
jpayne@69 7590 */
jpayne@69 7591 xcb_input_get_device_property_cookie_t
jpayne@69 7592 xcb_input_get_device_property (xcb_connection_t *c,
jpayne@69 7593 xcb_atom_t property,
jpayne@69 7594 xcb_atom_t type,
jpayne@69 7595 uint32_t offset,
jpayne@69 7596 uint32_t len,
jpayne@69 7597 uint8_t device_id,
jpayne@69 7598 uint8_t _delete);
jpayne@69 7599
jpayne@69 7600 /**
jpayne@69 7601 *
jpayne@69 7602 * @param c The connection
jpayne@69 7603 * @return A cookie
jpayne@69 7604 *
jpayne@69 7605 * Delivers a request to the X server.
jpayne@69 7606 *
jpayne@69 7607 * This form can be used only if the request will cause
jpayne@69 7608 * a reply to be generated. Any returned error will be
jpayne@69 7609 * placed in the event queue.
jpayne@69 7610 */
jpayne@69 7611 xcb_input_get_device_property_cookie_t
jpayne@69 7612 xcb_input_get_device_property_unchecked (xcb_connection_t *c,
jpayne@69 7613 xcb_atom_t property,
jpayne@69 7614 xcb_atom_t type,
jpayne@69 7615 uint32_t offset,
jpayne@69 7616 uint32_t len,
jpayne@69 7617 uint8_t device_id,
jpayne@69 7618 uint8_t _delete);
jpayne@69 7619
jpayne@69 7620 void *
jpayne@69 7621 xcb_input_get_device_property_items (const xcb_input_get_device_property_reply_t *R);
jpayne@69 7622
jpayne@69 7623 /**
jpayne@69 7624 * Return the reply
jpayne@69 7625 * @param c The connection
jpayne@69 7626 * @param cookie The cookie
jpayne@69 7627 * @param e The xcb_generic_error_t supplied
jpayne@69 7628 *
jpayne@69 7629 * Returns the reply of the request asked by
jpayne@69 7630 *
jpayne@69 7631 * The parameter @p e supplied to this function must be NULL if
jpayne@69 7632 * xcb_input_get_device_property_unchecked(). is used.
jpayne@69 7633 * Otherwise, it stores the error if any.
jpayne@69 7634 *
jpayne@69 7635 * The returned value must be freed by the caller using free().
jpayne@69 7636 */
jpayne@69 7637 xcb_input_get_device_property_reply_t *
jpayne@69 7638 xcb_input_get_device_property_reply (xcb_connection_t *c,
jpayne@69 7639 xcb_input_get_device_property_cookie_t cookie /**< */,
jpayne@69 7640 xcb_generic_error_t **e);
jpayne@69 7641
jpayne@69 7642 /**
jpayne@69 7643 * Get the next element of the iterator
jpayne@69 7644 * @param i Pointer to a xcb_input_group_info_iterator_t
jpayne@69 7645 *
jpayne@69 7646 * Get the next element in the iterator. The member rem is
jpayne@69 7647 * decreased by one. The member data points to the next
jpayne@69 7648 * element. The member index is increased by sizeof(xcb_input_group_info_t)
jpayne@69 7649 */
jpayne@69 7650 void
jpayne@69 7651 xcb_input_group_info_next (xcb_input_group_info_iterator_t *i);
jpayne@69 7652
jpayne@69 7653 /**
jpayne@69 7654 * Return the iterator pointing to the last element
jpayne@69 7655 * @param i An xcb_input_group_info_iterator_t
jpayne@69 7656 * @return The iterator pointing to the last element
jpayne@69 7657 *
jpayne@69 7658 * Set the current element in the iterator to the last element.
jpayne@69 7659 * The member rem is set to 0. The member data points to the
jpayne@69 7660 * last element.
jpayne@69 7661 */
jpayne@69 7662 xcb_generic_iterator_t
jpayne@69 7663 xcb_input_group_info_end (xcb_input_group_info_iterator_t i);
jpayne@69 7664
jpayne@69 7665 /**
jpayne@69 7666 * Get the next element of the iterator
jpayne@69 7667 * @param i Pointer to a xcb_input_modifier_info_iterator_t
jpayne@69 7668 *
jpayne@69 7669 * Get the next element in the iterator. The member rem is
jpayne@69 7670 * decreased by one. The member data points to the next
jpayne@69 7671 * element. The member index is increased by sizeof(xcb_input_modifier_info_t)
jpayne@69 7672 */
jpayne@69 7673 void
jpayne@69 7674 xcb_input_modifier_info_next (xcb_input_modifier_info_iterator_t *i);
jpayne@69 7675
jpayne@69 7676 /**
jpayne@69 7677 * Return the iterator pointing to the last element
jpayne@69 7678 * @param i An xcb_input_modifier_info_iterator_t
jpayne@69 7679 * @return The iterator pointing to the last element
jpayne@69 7680 *
jpayne@69 7681 * Set the current element in the iterator to the last element.
jpayne@69 7682 * The member rem is set to 0. The member data points to the
jpayne@69 7683 * last element.
jpayne@69 7684 */
jpayne@69 7685 xcb_generic_iterator_t
jpayne@69 7686 xcb_input_modifier_info_end (xcb_input_modifier_info_iterator_t i);
jpayne@69 7687
jpayne@69 7688 int
jpayne@69 7689 xcb_input_xi_query_pointer_sizeof (const void *_buffer);
jpayne@69 7690
jpayne@69 7691 /**
jpayne@69 7692 *
jpayne@69 7693 * @param c The connection
jpayne@69 7694 * @return A cookie
jpayne@69 7695 *
jpayne@69 7696 * Delivers a request to the X server.
jpayne@69 7697 *
jpayne@69 7698 */
jpayne@69 7699 xcb_input_xi_query_pointer_cookie_t
jpayne@69 7700 xcb_input_xi_query_pointer (xcb_connection_t *c,
jpayne@69 7701 xcb_window_t window,
jpayne@69 7702 xcb_input_device_id_t deviceid);
jpayne@69 7703
jpayne@69 7704 /**
jpayne@69 7705 *
jpayne@69 7706 * @param c The connection
jpayne@69 7707 * @return A cookie
jpayne@69 7708 *
jpayne@69 7709 * Delivers a request to the X server.
jpayne@69 7710 *
jpayne@69 7711 * This form can be used only if the request will cause
jpayne@69 7712 * a reply to be generated. Any returned error will be
jpayne@69 7713 * placed in the event queue.
jpayne@69 7714 */
jpayne@69 7715 xcb_input_xi_query_pointer_cookie_t
jpayne@69 7716 xcb_input_xi_query_pointer_unchecked (xcb_connection_t *c,
jpayne@69 7717 xcb_window_t window,
jpayne@69 7718 xcb_input_device_id_t deviceid);
jpayne@69 7719
jpayne@69 7720 uint32_t *
jpayne@69 7721 xcb_input_xi_query_pointer_buttons (const xcb_input_xi_query_pointer_reply_t *R);
jpayne@69 7722
jpayne@69 7723 int
jpayne@69 7724 xcb_input_xi_query_pointer_buttons_length (const xcb_input_xi_query_pointer_reply_t *R);
jpayne@69 7725
jpayne@69 7726 xcb_generic_iterator_t
jpayne@69 7727 xcb_input_xi_query_pointer_buttons_end (const xcb_input_xi_query_pointer_reply_t *R);
jpayne@69 7728
jpayne@69 7729 /**
jpayne@69 7730 * Return the reply
jpayne@69 7731 * @param c The connection
jpayne@69 7732 * @param cookie The cookie
jpayne@69 7733 * @param e The xcb_generic_error_t supplied
jpayne@69 7734 *
jpayne@69 7735 * Returns the reply of the request asked by
jpayne@69 7736 *
jpayne@69 7737 * The parameter @p e supplied to this function must be NULL if
jpayne@69 7738 * xcb_input_xi_query_pointer_unchecked(). is used.
jpayne@69 7739 * Otherwise, it stores the error if any.
jpayne@69 7740 *
jpayne@69 7741 * The returned value must be freed by the caller using free().
jpayne@69 7742 */
jpayne@69 7743 xcb_input_xi_query_pointer_reply_t *
jpayne@69 7744 xcb_input_xi_query_pointer_reply (xcb_connection_t *c,
jpayne@69 7745 xcb_input_xi_query_pointer_cookie_t cookie /**< */,
jpayne@69 7746 xcb_generic_error_t **e);
jpayne@69 7747
jpayne@69 7748 /**
jpayne@69 7749 *
jpayne@69 7750 * @param c The connection
jpayne@69 7751 * @return A cookie
jpayne@69 7752 *
jpayne@69 7753 * Delivers a request to the X server.
jpayne@69 7754 *
jpayne@69 7755 * This form can be used only if the request will not cause
jpayne@69 7756 * a reply to be generated. Any returned error will be
jpayne@69 7757 * saved for handling by xcb_request_check().
jpayne@69 7758 */
jpayne@69 7759 xcb_void_cookie_t
jpayne@69 7760 xcb_input_xi_warp_pointer_checked (xcb_connection_t *c,
jpayne@69 7761 xcb_window_t src_win,
jpayne@69 7762 xcb_window_t dst_win,
jpayne@69 7763 xcb_input_fp1616_t src_x,
jpayne@69 7764 xcb_input_fp1616_t src_y,
jpayne@69 7765 uint16_t src_width,
jpayne@69 7766 uint16_t src_height,
jpayne@69 7767 xcb_input_fp1616_t dst_x,
jpayne@69 7768 xcb_input_fp1616_t dst_y,
jpayne@69 7769 xcb_input_device_id_t deviceid);
jpayne@69 7770
jpayne@69 7771 /**
jpayne@69 7772 *
jpayne@69 7773 * @param c The connection
jpayne@69 7774 * @return A cookie
jpayne@69 7775 *
jpayne@69 7776 * Delivers a request to the X server.
jpayne@69 7777 *
jpayne@69 7778 */
jpayne@69 7779 xcb_void_cookie_t
jpayne@69 7780 xcb_input_xi_warp_pointer (xcb_connection_t *c,
jpayne@69 7781 xcb_window_t src_win,
jpayne@69 7782 xcb_window_t dst_win,
jpayne@69 7783 xcb_input_fp1616_t src_x,
jpayne@69 7784 xcb_input_fp1616_t src_y,
jpayne@69 7785 uint16_t src_width,
jpayne@69 7786 uint16_t src_height,
jpayne@69 7787 xcb_input_fp1616_t dst_x,
jpayne@69 7788 xcb_input_fp1616_t dst_y,
jpayne@69 7789 xcb_input_device_id_t deviceid);
jpayne@69 7790
jpayne@69 7791 /**
jpayne@69 7792 *
jpayne@69 7793 * @param c The connection
jpayne@69 7794 * @return A cookie
jpayne@69 7795 *
jpayne@69 7796 * Delivers a request to the X server.
jpayne@69 7797 *
jpayne@69 7798 * This form can be used only if the request will not cause
jpayne@69 7799 * a reply to be generated. Any returned error will be
jpayne@69 7800 * saved for handling by xcb_request_check().
jpayne@69 7801 */
jpayne@69 7802 xcb_void_cookie_t
jpayne@69 7803 xcb_input_xi_change_cursor_checked (xcb_connection_t *c,
jpayne@69 7804 xcb_window_t window,
jpayne@69 7805 xcb_cursor_t cursor,
jpayne@69 7806 xcb_input_device_id_t deviceid);
jpayne@69 7807
jpayne@69 7808 /**
jpayne@69 7809 *
jpayne@69 7810 * @param c The connection
jpayne@69 7811 * @return A cookie
jpayne@69 7812 *
jpayne@69 7813 * Delivers a request to the X server.
jpayne@69 7814 *
jpayne@69 7815 */
jpayne@69 7816 xcb_void_cookie_t
jpayne@69 7817 xcb_input_xi_change_cursor (xcb_connection_t *c,
jpayne@69 7818 xcb_window_t window,
jpayne@69 7819 xcb_cursor_t cursor,
jpayne@69 7820 xcb_input_device_id_t deviceid);
jpayne@69 7821
jpayne@69 7822 int
jpayne@69 7823 xcb_input_add_master_sizeof (const void *_buffer);
jpayne@69 7824
jpayne@69 7825 char *
jpayne@69 7826 xcb_input_add_master_name (const xcb_input_add_master_t *R);
jpayne@69 7827
jpayne@69 7828 int
jpayne@69 7829 xcb_input_add_master_name_length (const xcb_input_add_master_t *R);
jpayne@69 7830
jpayne@69 7831 xcb_generic_iterator_t
jpayne@69 7832 xcb_input_add_master_name_end (const xcb_input_add_master_t *R);
jpayne@69 7833
jpayne@69 7834 /**
jpayne@69 7835 * Get the next element of the iterator
jpayne@69 7836 * @param i Pointer to a xcb_input_add_master_iterator_t
jpayne@69 7837 *
jpayne@69 7838 * Get the next element in the iterator. The member rem is
jpayne@69 7839 * decreased by one. The member data points to the next
jpayne@69 7840 * element. The member index is increased by sizeof(xcb_input_add_master_t)
jpayne@69 7841 */
jpayne@69 7842 void
jpayne@69 7843 xcb_input_add_master_next (xcb_input_add_master_iterator_t *i);
jpayne@69 7844
jpayne@69 7845 /**
jpayne@69 7846 * Return the iterator pointing to the last element
jpayne@69 7847 * @param i An xcb_input_add_master_iterator_t
jpayne@69 7848 * @return The iterator pointing to the last element
jpayne@69 7849 *
jpayne@69 7850 * Set the current element in the iterator to the last element.
jpayne@69 7851 * The member rem is set to 0. The member data points to the
jpayne@69 7852 * last element.
jpayne@69 7853 */
jpayne@69 7854 xcb_generic_iterator_t
jpayne@69 7855 xcb_input_add_master_end (xcb_input_add_master_iterator_t i);
jpayne@69 7856
jpayne@69 7857 /**
jpayne@69 7858 * Get the next element of the iterator
jpayne@69 7859 * @param i Pointer to a xcb_input_remove_master_iterator_t
jpayne@69 7860 *
jpayne@69 7861 * Get the next element in the iterator. The member rem is
jpayne@69 7862 * decreased by one. The member data points to the next
jpayne@69 7863 * element. The member index is increased by sizeof(xcb_input_remove_master_t)
jpayne@69 7864 */
jpayne@69 7865 void
jpayne@69 7866 xcb_input_remove_master_next (xcb_input_remove_master_iterator_t *i);
jpayne@69 7867
jpayne@69 7868 /**
jpayne@69 7869 * Return the iterator pointing to the last element
jpayne@69 7870 * @param i An xcb_input_remove_master_iterator_t
jpayne@69 7871 * @return The iterator pointing to the last element
jpayne@69 7872 *
jpayne@69 7873 * Set the current element in the iterator to the last element.
jpayne@69 7874 * The member rem is set to 0. The member data points to the
jpayne@69 7875 * last element.
jpayne@69 7876 */
jpayne@69 7877 xcb_generic_iterator_t
jpayne@69 7878 xcb_input_remove_master_end (xcb_input_remove_master_iterator_t i);
jpayne@69 7879
jpayne@69 7880 /**
jpayne@69 7881 * Get the next element of the iterator
jpayne@69 7882 * @param i Pointer to a xcb_input_attach_slave_iterator_t
jpayne@69 7883 *
jpayne@69 7884 * Get the next element in the iterator. The member rem is
jpayne@69 7885 * decreased by one. The member data points to the next
jpayne@69 7886 * element. The member index is increased by sizeof(xcb_input_attach_slave_t)
jpayne@69 7887 */
jpayne@69 7888 void
jpayne@69 7889 xcb_input_attach_slave_next (xcb_input_attach_slave_iterator_t *i);
jpayne@69 7890
jpayne@69 7891 /**
jpayne@69 7892 * Return the iterator pointing to the last element
jpayne@69 7893 * @param i An xcb_input_attach_slave_iterator_t
jpayne@69 7894 * @return The iterator pointing to the last element
jpayne@69 7895 *
jpayne@69 7896 * Set the current element in the iterator to the last element.
jpayne@69 7897 * The member rem is set to 0. The member data points to the
jpayne@69 7898 * last element.
jpayne@69 7899 */
jpayne@69 7900 xcb_generic_iterator_t
jpayne@69 7901 xcb_input_attach_slave_end (xcb_input_attach_slave_iterator_t i);
jpayne@69 7902
jpayne@69 7903 /**
jpayne@69 7904 * Get the next element of the iterator
jpayne@69 7905 * @param i Pointer to a xcb_input_detach_slave_iterator_t
jpayne@69 7906 *
jpayne@69 7907 * Get the next element in the iterator. The member rem is
jpayne@69 7908 * decreased by one. The member data points to the next
jpayne@69 7909 * element. The member index is increased by sizeof(xcb_input_detach_slave_t)
jpayne@69 7910 */
jpayne@69 7911 void
jpayne@69 7912 xcb_input_detach_slave_next (xcb_input_detach_slave_iterator_t *i);
jpayne@69 7913
jpayne@69 7914 /**
jpayne@69 7915 * Return the iterator pointing to the last element
jpayne@69 7916 * @param i An xcb_input_detach_slave_iterator_t
jpayne@69 7917 * @return The iterator pointing to the last element
jpayne@69 7918 *
jpayne@69 7919 * Set the current element in the iterator to the last element.
jpayne@69 7920 * The member rem is set to 0. The member data points to the
jpayne@69 7921 * last element.
jpayne@69 7922 */
jpayne@69 7923 xcb_generic_iterator_t
jpayne@69 7924 xcb_input_detach_slave_end (xcb_input_detach_slave_iterator_t i);
jpayne@69 7925
jpayne@69 7926 char *
jpayne@69 7927 xcb_input_hierarchy_change_data_add_master_name (const xcb_input_hierarchy_change_data_t *S);
jpayne@69 7928
jpayne@69 7929 int
jpayne@69 7930 xcb_input_hierarchy_change_data_add_master_name_length (const xcb_input_hierarchy_change_t *R,
jpayne@69 7931 const xcb_input_hierarchy_change_data_t *S);
jpayne@69 7932
jpayne@69 7933 xcb_generic_iterator_t
jpayne@69 7934 xcb_input_hierarchy_change_data_add_master_name_end (const xcb_input_hierarchy_change_t *R,
jpayne@69 7935 const xcb_input_hierarchy_change_data_t *S);
jpayne@69 7936
jpayne@69 7937 int
jpayne@69 7938 xcb_input_hierarchy_change_data_serialize (void **_buffer,
jpayne@69 7939 uint16_t type,
jpayne@69 7940 const xcb_input_hierarchy_change_data_t *_aux);
jpayne@69 7941
jpayne@69 7942 int
jpayne@69 7943 xcb_input_hierarchy_change_data_unpack (const void *_buffer,
jpayne@69 7944 uint16_t type,
jpayne@69 7945 xcb_input_hierarchy_change_data_t *_aux);
jpayne@69 7946
jpayne@69 7947 int
jpayne@69 7948 xcb_input_hierarchy_change_data_sizeof (const void *_buffer,
jpayne@69 7949 uint16_t type);
jpayne@69 7950
jpayne@69 7951 int
jpayne@69 7952 xcb_input_hierarchy_change_sizeof (const void *_buffer);
jpayne@69 7953
jpayne@69 7954 /**
jpayne@69 7955 * Get the next element of the iterator
jpayne@69 7956 * @param i Pointer to a xcb_input_hierarchy_change_iterator_t
jpayne@69 7957 *
jpayne@69 7958 * Get the next element in the iterator. The member rem is
jpayne@69 7959 * decreased by one. The member data points to the next
jpayne@69 7960 * element. The member index is increased by sizeof(xcb_input_hierarchy_change_t)
jpayne@69 7961 */
jpayne@69 7962 void
jpayne@69 7963 xcb_input_hierarchy_change_next (xcb_input_hierarchy_change_iterator_t *i);
jpayne@69 7964
jpayne@69 7965 /**
jpayne@69 7966 * Return the iterator pointing to the last element
jpayne@69 7967 * @param i An xcb_input_hierarchy_change_iterator_t
jpayne@69 7968 * @return The iterator pointing to the last element
jpayne@69 7969 *
jpayne@69 7970 * Set the current element in the iterator to the last element.
jpayne@69 7971 * The member rem is set to 0. The member data points to the
jpayne@69 7972 * last element.
jpayne@69 7973 */
jpayne@69 7974 xcb_generic_iterator_t
jpayne@69 7975 xcb_input_hierarchy_change_end (xcb_input_hierarchy_change_iterator_t i);
jpayne@69 7976
jpayne@69 7977 int
jpayne@69 7978 xcb_input_xi_change_hierarchy_sizeof (const void *_buffer);
jpayne@69 7979
jpayne@69 7980 /**
jpayne@69 7981 *
jpayne@69 7982 * @param c The connection
jpayne@69 7983 * @return A cookie
jpayne@69 7984 *
jpayne@69 7985 * Delivers a request to the X server.
jpayne@69 7986 *
jpayne@69 7987 * This form can be used only if the request will not cause
jpayne@69 7988 * a reply to be generated. Any returned error will be
jpayne@69 7989 * saved for handling by xcb_request_check().
jpayne@69 7990 */
jpayne@69 7991 xcb_void_cookie_t
jpayne@69 7992 xcb_input_xi_change_hierarchy_checked (xcb_connection_t *c,
jpayne@69 7993 uint8_t num_changes,
jpayne@69 7994 const xcb_input_hierarchy_change_t *changes);
jpayne@69 7995
jpayne@69 7996 /**
jpayne@69 7997 *
jpayne@69 7998 * @param c The connection
jpayne@69 7999 * @return A cookie
jpayne@69 8000 *
jpayne@69 8001 * Delivers a request to the X server.
jpayne@69 8002 *
jpayne@69 8003 */
jpayne@69 8004 xcb_void_cookie_t
jpayne@69 8005 xcb_input_xi_change_hierarchy (xcb_connection_t *c,
jpayne@69 8006 uint8_t num_changes,
jpayne@69 8007 const xcb_input_hierarchy_change_t *changes);
jpayne@69 8008
jpayne@69 8009 int
jpayne@69 8010 xcb_input_xi_change_hierarchy_changes_length (const xcb_input_xi_change_hierarchy_request_t *R);
jpayne@69 8011
jpayne@69 8012 xcb_input_hierarchy_change_iterator_t
jpayne@69 8013 xcb_input_xi_change_hierarchy_changes_iterator (const xcb_input_xi_change_hierarchy_request_t *R);
jpayne@69 8014
jpayne@69 8015 /**
jpayne@69 8016 *
jpayne@69 8017 * @param c The connection
jpayne@69 8018 * @return A cookie
jpayne@69 8019 *
jpayne@69 8020 * Delivers a request to the X server.
jpayne@69 8021 *
jpayne@69 8022 * This form can be used only if the request will not cause
jpayne@69 8023 * a reply to be generated. Any returned error will be
jpayne@69 8024 * saved for handling by xcb_request_check().
jpayne@69 8025 */
jpayne@69 8026 xcb_void_cookie_t
jpayne@69 8027 xcb_input_xi_set_client_pointer_checked (xcb_connection_t *c,
jpayne@69 8028 xcb_window_t window,
jpayne@69 8029 xcb_input_device_id_t deviceid);
jpayne@69 8030
jpayne@69 8031 /**
jpayne@69 8032 *
jpayne@69 8033 * @param c The connection
jpayne@69 8034 * @return A cookie
jpayne@69 8035 *
jpayne@69 8036 * Delivers a request to the X server.
jpayne@69 8037 *
jpayne@69 8038 */
jpayne@69 8039 xcb_void_cookie_t
jpayne@69 8040 xcb_input_xi_set_client_pointer (xcb_connection_t *c,
jpayne@69 8041 xcb_window_t window,
jpayne@69 8042 xcb_input_device_id_t deviceid);
jpayne@69 8043
jpayne@69 8044 /**
jpayne@69 8045 *
jpayne@69 8046 * @param c The connection
jpayne@69 8047 * @return A cookie
jpayne@69 8048 *
jpayne@69 8049 * Delivers a request to the X server.
jpayne@69 8050 *
jpayne@69 8051 */
jpayne@69 8052 xcb_input_xi_get_client_pointer_cookie_t
jpayne@69 8053 xcb_input_xi_get_client_pointer (xcb_connection_t *c,
jpayne@69 8054 xcb_window_t window);
jpayne@69 8055
jpayne@69 8056 /**
jpayne@69 8057 *
jpayne@69 8058 * @param c The connection
jpayne@69 8059 * @return A cookie
jpayne@69 8060 *
jpayne@69 8061 * Delivers a request to the X server.
jpayne@69 8062 *
jpayne@69 8063 * This form can be used only if the request will cause
jpayne@69 8064 * a reply to be generated. Any returned error will be
jpayne@69 8065 * placed in the event queue.
jpayne@69 8066 */
jpayne@69 8067 xcb_input_xi_get_client_pointer_cookie_t
jpayne@69 8068 xcb_input_xi_get_client_pointer_unchecked (xcb_connection_t *c,
jpayne@69 8069 xcb_window_t window);
jpayne@69 8070
jpayne@69 8071 /**
jpayne@69 8072 * Return the reply
jpayne@69 8073 * @param c The connection
jpayne@69 8074 * @param cookie The cookie
jpayne@69 8075 * @param e The xcb_generic_error_t supplied
jpayne@69 8076 *
jpayne@69 8077 * Returns the reply of the request asked by
jpayne@69 8078 *
jpayne@69 8079 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8080 * xcb_input_xi_get_client_pointer_unchecked(). is used.
jpayne@69 8081 * Otherwise, it stores the error if any.
jpayne@69 8082 *
jpayne@69 8083 * The returned value must be freed by the caller using free().
jpayne@69 8084 */
jpayne@69 8085 xcb_input_xi_get_client_pointer_reply_t *
jpayne@69 8086 xcb_input_xi_get_client_pointer_reply (xcb_connection_t *c,
jpayne@69 8087 xcb_input_xi_get_client_pointer_cookie_t cookie /**< */,
jpayne@69 8088 xcb_generic_error_t **e);
jpayne@69 8089
jpayne@69 8090 int
jpayne@69 8091 xcb_input_event_mask_sizeof (const void *_buffer);
jpayne@69 8092
jpayne@69 8093 uint32_t *
jpayne@69 8094 xcb_input_event_mask_mask (const xcb_input_event_mask_t *R);
jpayne@69 8095
jpayne@69 8096 int
jpayne@69 8097 xcb_input_event_mask_mask_length (const xcb_input_event_mask_t *R);
jpayne@69 8098
jpayne@69 8099 xcb_generic_iterator_t
jpayne@69 8100 xcb_input_event_mask_mask_end (const xcb_input_event_mask_t *R);
jpayne@69 8101
jpayne@69 8102 /**
jpayne@69 8103 * Get the next element of the iterator
jpayne@69 8104 * @param i Pointer to a xcb_input_event_mask_iterator_t
jpayne@69 8105 *
jpayne@69 8106 * Get the next element in the iterator. The member rem is
jpayne@69 8107 * decreased by one. The member data points to the next
jpayne@69 8108 * element. The member index is increased by sizeof(xcb_input_event_mask_t)
jpayne@69 8109 */
jpayne@69 8110 void
jpayne@69 8111 xcb_input_event_mask_next (xcb_input_event_mask_iterator_t *i);
jpayne@69 8112
jpayne@69 8113 /**
jpayne@69 8114 * Return the iterator pointing to the last element
jpayne@69 8115 * @param i An xcb_input_event_mask_iterator_t
jpayne@69 8116 * @return The iterator pointing to the last element
jpayne@69 8117 *
jpayne@69 8118 * Set the current element in the iterator to the last element.
jpayne@69 8119 * The member rem is set to 0. The member data points to the
jpayne@69 8120 * last element.
jpayne@69 8121 */
jpayne@69 8122 xcb_generic_iterator_t
jpayne@69 8123 xcb_input_event_mask_end (xcb_input_event_mask_iterator_t i);
jpayne@69 8124
jpayne@69 8125 int
jpayne@69 8126 xcb_input_xi_select_events_sizeof (const void *_buffer);
jpayne@69 8127
jpayne@69 8128 /**
jpayne@69 8129 *
jpayne@69 8130 * @param c The connection
jpayne@69 8131 * @return A cookie
jpayne@69 8132 *
jpayne@69 8133 * Delivers a request to the X server.
jpayne@69 8134 *
jpayne@69 8135 * This form can be used only if the request will not cause
jpayne@69 8136 * a reply to be generated. Any returned error will be
jpayne@69 8137 * saved for handling by xcb_request_check().
jpayne@69 8138 */
jpayne@69 8139 xcb_void_cookie_t
jpayne@69 8140 xcb_input_xi_select_events_checked (xcb_connection_t *c,
jpayne@69 8141 xcb_window_t window,
jpayne@69 8142 uint16_t num_mask,
jpayne@69 8143 const xcb_input_event_mask_t *masks);
jpayne@69 8144
jpayne@69 8145 /**
jpayne@69 8146 *
jpayne@69 8147 * @param c The connection
jpayne@69 8148 * @return A cookie
jpayne@69 8149 *
jpayne@69 8150 * Delivers a request to the X server.
jpayne@69 8151 *
jpayne@69 8152 */
jpayne@69 8153 xcb_void_cookie_t
jpayne@69 8154 xcb_input_xi_select_events (xcb_connection_t *c,
jpayne@69 8155 xcb_window_t window,
jpayne@69 8156 uint16_t num_mask,
jpayne@69 8157 const xcb_input_event_mask_t *masks);
jpayne@69 8158
jpayne@69 8159 int
jpayne@69 8160 xcb_input_xi_select_events_masks_length (const xcb_input_xi_select_events_request_t *R);
jpayne@69 8161
jpayne@69 8162 xcb_input_event_mask_iterator_t
jpayne@69 8163 xcb_input_xi_select_events_masks_iterator (const xcb_input_xi_select_events_request_t *R);
jpayne@69 8164
jpayne@69 8165 /**
jpayne@69 8166 *
jpayne@69 8167 * @param c The connection
jpayne@69 8168 * @return A cookie
jpayne@69 8169 *
jpayne@69 8170 * Delivers a request to the X server.
jpayne@69 8171 *
jpayne@69 8172 */
jpayne@69 8173 xcb_input_xi_query_version_cookie_t
jpayne@69 8174 xcb_input_xi_query_version (xcb_connection_t *c,
jpayne@69 8175 uint16_t major_version,
jpayne@69 8176 uint16_t minor_version);
jpayne@69 8177
jpayne@69 8178 /**
jpayne@69 8179 *
jpayne@69 8180 * @param c The connection
jpayne@69 8181 * @return A cookie
jpayne@69 8182 *
jpayne@69 8183 * Delivers a request to the X server.
jpayne@69 8184 *
jpayne@69 8185 * This form can be used only if the request will cause
jpayne@69 8186 * a reply to be generated. Any returned error will be
jpayne@69 8187 * placed in the event queue.
jpayne@69 8188 */
jpayne@69 8189 xcb_input_xi_query_version_cookie_t
jpayne@69 8190 xcb_input_xi_query_version_unchecked (xcb_connection_t *c,
jpayne@69 8191 uint16_t major_version,
jpayne@69 8192 uint16_t minor_version);
jpayne@69 8193
jpayne@69 8194 /**
jpayne@69 8195 * Return the reply
jpayne@69 8196 * @param c The connection
jpayne@69 8197 * @param cookie The cookie
jpayne@69 8198 * @param e The xcb_generic_error_t supplied
jpayne@69 8199 *
jpayne@69 8200 * Returns the reply of the request asked by
jpayne@69 8201 *
jpayne@69 8202 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8203 * xcb_input_xi_query_version_unchecked(). is used.
jpayne@69 8204 * Otherwise, it stores the error if any.
jpayne@69 8205 *
jpayne@69 8206 * The returned value must be freed by the caller using free().
jpayne@69 8207 */
jpayne@69 8208 xcb_input_xi_query_version_reply_t *
jpayne@69 8209 xcb_input_xi_query_version_reply (xcb_connection_t *c,
jpayne@69 8210 xcb_input_xi_query_version_cookie_t cookie /**< */,
jpayne@69 8211 xcb_generic_error_t **e);
jpayne@69 8212
jpayne@69 8213 int
jpayne@69 8214 xcb_input_button_class_sizeof (const void *_buffer);
jpayne@69 8215
jpayne@69 8216 uint32_t *
jpayne@69 8217 xcb_input_button_class_state (const xcb_input_button_class_t *R);
jpayne@69 8218
jpayne@69 8219 int
jpayne@69 8220 xcb_input_button_class_state_length (const xcb_input_button_class_t *R);
jpayne@69 8221
jpayne@69 8222 xcb_generic_iterator_t
jpayne@69 8223 xcb_input_button_class_state_end (const xcb_input_button_class_t *R);
jpayne@69 8224
jpayne@69 8225 xcb_atom_t *
jpayne@69 8226 xcb_input_button_class_labels (const xcb_input_button_class_t *R);
jpayne@69 8227
jpayne@69 8228 int
jpayne@69 8229 xcb_input_button_class_labels_length (const xcb_input_button_class_t *R);
jpayne@69 8230
jpayne@69 8231 xcb_generic_iterator_t
jpayne@69 8232 xcb_input_button_class_labels_end (const xcb_input_button_class_t *R);
jpayne@69 8233
jpayne@69 8234 /**
jpayne@69 8235 * Get the next element of the iterator
jpayne@69 8236 * @param i Pointer to a xcb_input_button_class_iterator_t
jpayne@69 8237 *
jpayne@69 8238 * Get the next element in the iterator. The member rem is
jpayne@69 8239 * decreased by one. The member data points to the next
jpayne@69 8240 * element. The member index is increased by sizeof(xcb_input_button_class_t)
jpayne@69 8241 */
jpayne@69 8242 void
jpayne@69 8243 xcb_input_button_class_next (xcb_input_button_class_iterator_t *i);
jpayne@69 8244
jpayne@69 8245 /**
jpayne@69 8246 * Return the iterator pointing to the last element
jpayne@69 8247 * @param i An xcb_input_button_class_iterator_t
jpayne@69 8248 * @return The iterator pointing to the last element
jpayne@69 8249 *
jpayne@69 8250 * Set the current element in the iterator to the last element.
jpayne@69 8251 * The member rem is set to 0. The member data points to the
jpayne@69 8252 * last element.
jpayne@69 8253 */
jpayne@69 8254 xcb_generic_iterator_t
jpayne@69 8255 xcb_input_button_class_end (xcb_input_button_class_iterator_t i);
jpayne@69 8256
jpayne@69 8257 int
jpayne@69 8258 xcb_input_key_class_sizeof (const void *_buffer);
jpayne@69 8259
jpayne@69 8260 uint32_t *
jpayne@69 8261 xcb_input_key_class_keys (const xcb_input_key_class_t *R);
jpayne@69 8262
jpayne@69 8263 int
jpayne@69 8264 xcb_input_key_class_keys_length (const xcb_input_key_class_t *R);
jpayne@69 8265
jpayne@69 8266 xcb_generic_iterator_t
jpayne@69 8267 xcb_input_key_class_keys_end (const xcb_input_key_class_t *R);
jpayne@69 8268
jpayne@69 8269 /**
jpayne@69 8270 * Get the next element of the iterator
jpayne@69 8271 * @param i Pointer to a xcb_input_key_class_iterator_t
jpayne@69 8272 *
jpayne@69 8273 * Get the next element in the iterator. The member rem is
jpayne@69 8274 * decreased by one. The member data points to the next
jpayne@69 8275 * element. The member index is increased by sizeof(xcb_input_key_class_t)
jpayne@69 8276 */
jpayne@69 8277 void
jpayne@69 8278 xcb_input_key_class_next (xcb_input_key_class_iterator_t *i);
jpayne@69 8279
jpayne@69 8280 /**
jpayne@69 8281 * Return the iterator pointing to the last element
jpayne@69 8282 * @param i An xcb_input_key_class_iterator_t
jpayne@69 8283 * @return The iterator pointing to the last element
jpayne@69 8284 *
jpayne@69 8285 * Set the current element in the iterator to the last element.
jpayne@69 8286 * The member rem is set to 0. The member data points to the
jpayne@69 8287 * last element.
jpayne@69 8288 */
jpayne@69 8289 xcb_generic_iterator_t
jpayne@69 8290 xcb_input_key_class_end (xcb_input_key_class_iterator_t i);
jpayne@69 8291
jpayne@69 8292 /**
jpayne@69 8293 * Get the next element of the iterator
jpayne@69 8294 * @param i Pointer to a xcb_input_scroll_class_iterator_t
jpayne@69 8295 *
jpayne@69 8296 * Get the next element in the iterator. The member rem is
jpayne@69 8297 * decreased by one. The member data points to the next
jpayne@69 8298 * element. The member index is increased by sizeof(xcb_input_scroll_class_t)
jpayne@69 8299 */
jpayne@69 8300 void
jpayne@69 8301 xcb_input_scroll_class_next (xcb_input_scroll_class_iterator_t *i);
jpayne@69 8302
jpayne@69 8303 /**
jpayne@69 8304 * Return the iterator pointing to the last element
jpayne@69 8305 * @param i An xcb_input_scroll_class_iterator_t
jpayne@69 8306 * @return The iterator pointing to the last element
jpayne@69 8307 *
jpayne@69 8308 * Set the current element in the iterator to the last element.
jpayne@69 8309 * The member rem is set to 0. The member data points to the
jpayne@69 8310 * last element.
jpayne@69 8311 */
jpayne@69 8312 xcb_generic_iterator_t
jpayne@69 8313 xcb_input_scroll_class_end (xcb_input_scroll_class_iterator_t i);
jpayne@69 8314
jpayne@69 8315 /**
jpayne@69 8316 * Get the next element of the iterator
jpayne@69 8317 * @param i Pointer to a xcb_input_touch_class_iterator_t
jpayne@69 8318 *
jpayne@69 8319 * Get the next element in the iterator. The member rem is
jpayne@69 8320 * decreased by one. The member data points to the next
jpayne@69 8321 * element. The member index is increased by sizeof(xcb_input_touch_class_t)
jpayne@69 8322 */
jpayne@69 8323 void
jpayne@69 8324 xcb_input_touch_class_next (xcb_input_touch_class_iterator_t *i);
jpayne@69 8325
jpayne@69 8326 /**
jpayne@69 8327 * Return the iterator pointing to the last element
jpayne@69 8328 * @param i An xcb_input_touch_class_iterator_t
jpayne@69 8329 * @return The iterator pointing to the last element
jpayne@69 8330 *
jpayne@69 8331 * Set the current element in the iterator to the last element.
jpayne@69 8332 * The member rem is set to 0. The member data points to the
jpayne@69 8333 * last element.
jpayne@69 8334 */
jpayne@69 8335 xcb_generic_iterator_t
jpayne@69 8336 xcb_input_touch_class_end (xcb_input_touch_class_iterator_t i);
jpayne@69 8337
jpayne@69 8338 /**
jpayne@69 8339 * Get the next element of the iterator
jpayne@69 8340 * @param i Pointer to a xcb_input_gesture_class_iterator_t
jpayne@69 8341 *
jpayne@69 8342 * Get the next element in the iterator. The member rem is
jpayne@69 8343 * decreased by one. The member data points to the next
jpayne@69 8344 * element. The member index is increased by sizeof(xcb_input_gesture_class_t)
jpayne@69 8345 */
jpayne@69 8346 void
jpayne@69 8347 xcb_input_gesture_class_next (xcb_input_gesture_class_iterator_t *i);
jpayne@69 8348
jpayne@69 8349 /**
jpayne@69 8350 * Return the iterator pointing to the last element
jpayne@69 8351 * @param i An xcb_input_gesture_class_iterator_t
jpayne@69 8352 * @return The iterator pointing to the last element
jpayne@69 8353 *
jpayne@69 8354 * Set the current element in the iterator to the last element.
jpayne@69 8355 * The member rem is set to 0. The member data points to the
jpayne@69 8356 * last element.
jpayne@69 8357 */
jpayne@69 8358 xcb_generic_iterator_t
jpayne@69 8359 xcb_input_gesture_class_end (xcb_input_gesture_class_iterator_t i);
jpayne@69 8360
jpayne@69 8361 /**
jpayne@69 8362 * Get the next element of the iterator
jpayne@69 8363 * @param i Pointer to a xcb_input_valuator_class_iterator_t
jpayne@69 8364 *
jpayne@69 8365 * Get the next element in the iterator. The member rem is
jpayne@69 8366 * decreased by one. The member data points to the next
jpayne@69 8367 * element. The member index is increased by sizeof(xcb_input_valuator_class_t)
jpayne@69 8368 */
jpayne@69 8369 void
jpayne@69 8370 xcb_input_valuator_class_next (xcb_input_valuator_class_iterator_t *i);
jpayne@69 8371
jpayne@69 8372 /**
jpayne@69 8373 * Return the iterator pointing to the last element
jpayne@69 8374 * @param i An xcb_input_valuator_class_iterator_t
jpayne@69 8375 * @return The iterator pointing to the last element
jpayne@69 8376 *
jpayne@69 8377 * Set the current element in the iterator to the last element.
jpayne@69 8378 * The member rem is set to 0. The member data points to the
jpayne@69 8379 * last element.
jpayne@69 8380 */
jpayne@69 8381 xcb_generic_iterator_t
jpayne@69 8382 xcb_input_valuator_class_end (xcb_input_valuator_class_iterator_t i);
jpayne@69 8383
jpayne@69 8384 uint32_t *
jpayne@69 8385 xcb_input_device_class_data_key_keys (const xcb_input_device_class_data_t *S);
jpayne@69 8386
jpayne@69 8387 int
jpayne@69 8388 xcb_input_device_class_data_key_keys_length (const xcb_input_device_class_t *R,
jpayne@69 8389 const xcb_input_device_class_data_t *S);
jpayne@69 8390
jpayne@69 8391 xcb_generic_iterator_t
jpayne@69 8392 xcb_input_device_class_data_key_keys_end (const xcb_input_device_class_t *R,
jpayne@69 8393 const xcb_input_device_class_data_t *S);
jpayne@69 8394
jpayne@69 8395 uint32_t *
jpayne@69 8396 xcb_input_device_class_data_button_state (const xcb_input_device_class_data_t *S);
jpayne@69 8397
jpayne@69 8398 int
jpayne@69 8399 xcb_input_device_class_data_button_state_length (const xcb_input_device_class_t *R,
jpayne@69 8400 const xcb_input_device_class_data_t *S);
jpayne@69 8401
jpayne@69 8402 xcb_generic_iterator_t
jpayne@69 8403 xcb_input_device_class_data_button_state_end (const xcb_input_device_class_t *R,
jpayne@69 8404 const xcb_input_device_class_data_t *S);
jpayne@69 8405
jpayne@69 8406 xcb_atom_t *
jpayne@69 8407 xcb_input_device_class_data_button_labels (const xcb_input_device_class_data_t *S);
jpayne@69 8408
jpayne@69 8409 int
jpayne@69 8410 xcb_input_device_class_data_button_labels_length (const xcb_input_device_class_t *R,
jpayne@69 8411 const xcb_input_device_class_data_t *S);
jpayne@69 8412
jpayne@69 8413 xcb_generic_iterator_t
jpayne@69 8414 xcb_input_device_class_data_button_labels_end (const xcb_input_device_class_t *R,
jpayne@69 8415 const xcb_input_device_class_data_t *S);
jpayne@69 8416
jpayne@69 8417 int
jpayne@69 8418 xcb_input_device_class_data_serialize (void **_buffer,
jpayne@69 8419 uint16_t type,
jpayne@69 8420 const xcb_input_device_class_data_t *_aux);
jpayne@69 8421
jpayne@69 8422 int
jpayne@69 8423 xcb_input_device_class_data_unpack (const void *_buffer,
jpayne@69 8424 uint16_t type,
jpayne@69 8425 xcb_input_device_class_data_t *_aux);
jpayne@69 8426
jpayne@69 8427 int
jpayne@69 8428 xcb_input_device_class_data_sizeof (const void *_buffer,
jpayne@69 8429 uint16_t type);
jpayne@69 8430
jpayne@69 8431 int
jpayne@69 8432 xcb_input_device_class_sizeof (const void *_buffer);
jpayne@69 8433
jpayne@69 8434 /**
jpayne@69 8435 * Get the next element of the iterator
jpayne@69 8436 * @param i Pointer to a xcb_input_device_class_iterator_t
jpayne@69 8437 *
jpayne@69 8438 * Get the next element in the iterator. The member rem is
jpayne@69 8439 * decreased by one. The member data points to the next
jpayne@69 8440 * element. The member index is increased by sizeof(xcb_input_device_class_t)
jpayne@69 8441 */
jpayne@69 8442 void
jpayne@69 8443 xcb_input_device_class_next (xcb_input_device_class_iterator_t *i);
jpayne@69 8444
jpayne@69 8445 /**
jpayne@69 8446 * Return the iterator pointing to the last element
jpayne@69 8447 * @param i An xcb_input_device_class_iterator_t
jpayne@69 8448 * @return The iterator pointing to the last element
jpayne@69 8449 *
jpayne@69 8450 * Set the current element in the iterator to the last element.
jpayne@69 8451 * The member rem is set to 0. The member data points to the
jpayne@69 8452 * last element.
jpayne@69 8453 */
jpayne@69 8454 xcb_generic_iterator_t
jpayne@69 8455 xcb_input_device_class_end (xcb_input_device_class_iterator_t i);
jpayne@69 8456
jpayne@69 8457 int
jpayne@69 8458 xcb_input_xi_device_info_sizeof (const void *_buffer);
jpayne@69 8459
jpayne@69 8460 char *
jpayne@69 8461 xcb_input_xi_device_info_name (const xcb_input_xi_device_info_t *R);
jpayne@69 8462
jpayne@69 8463 int
jpayne@69 8464 xcb_input_xi_device_info_name_length (const xcb_input_xi_device_info_t *R);
jpayne@69 8465
jpayne@69 8466 xcb_generic_iterator_t
jpayne@69 8467 xcb_input_xi_device_info_name_end (const xcb_input_xi_device_info_t *R);
jpayne@69 8468
jpayne@69 8469 int
jpayne@69 8470 xcb_input_xi_device_info_classes_length (const xcb_input_xi_device_info_t *R);
jpayne@69 8471
jpayne@69 8472 xcb_input_device_class_iterator_t
jpayne@69 8473 xcb_input_xi_device_info_classes_iterator (const xcb_input_xi_device_info_t *R);
jpayne@69 8474
jpayne@69 8475 /**
jpayne@69 8476 * Get the next element of the iterator
jpayne@69 8477 * @param i Pointer to a xcb_input_xi_device_info_iterator_t
jpayne@69 8478 *
jpayne@69 8479 * Get the next element in the iterator. The member rem is
jpayne@69 8480 * decreased by one. The member data points to the next
jpayne@69 8481 * element. The member index is increased by sizeof(xcb_input_xi_device_info_t)
jpayne@69 8482 */
jpayne@69 8483 void
jpayne@69 8484 xcb_input_xi_device_info_next (xcb_input_xi_device_info_iterator_t *i);
jpayne@69 8485
jpayne@69 8486 /**
jpayne@69 8487 * Return the iterator pointing to the last element
jpayne@69 8488 * @param i An xcb_input_xi_device_info_iterator_t
jpayne@69 8489 * @return The iterator pointing to the last element
jpayne@69 8490 *
jpayne@69 8491 * Set the current element in the iterator to the last element.
jpayne@69 8492 * The member rem is set to 0. The member data points to the
jpayne@69 8493 * last element.
jpayne@69 8494 */
jpayne@69 8495 xcb_generic_iterator_t
jpayne@69 8496 xcb_input_xi_device_info_end (xcb_input_xi_device_info_iterator_t i);
jpayne@69 8497
jpayne@69 8498 int
jpayne@69 8499 xcb_input_xi_query_device_sizeof (const void *_buffer);
jpayne@69 8500
jpayne@69 8501 /**
jpayne@69 8502 *
jpayne@69 8503 * @param c The connection
jpayne@69 8504 * @return A cookie
jpayne@69 8505 *
jpayne@69 8506 * Delivers a request to the X server.
jpayne@69 8507 *
jpayne@69 8508 */
jpayne@69 8509 xcb_input_xi_query_device_cookie_t
jpayne@69 8510 xcb_input_xi_query_device (xcb_connection_t *c,
jpayne@69 8511 xcb_input_device_id_t deviceid);
jpayne@69 8512
jpayne@69 8513 /**
jpayne@69 8514 *
jpayne@69 8515 * @param c The connection
jpayne@69 8516 * @return A cookie
jpayne@69 8517 *
jpayne@69 8518 * Delivers a request to the X server.
jpayne@69 8519 *
jpayne@69 8520 * This form can be used only if the request will cause
jpayne@69 8521 * a reply to be generated. Any returned error will be
jpayne@69 8522 * placed in the event queue.
jpayne@69 8523 */
jpayne@69 8524 xcb_input_xi_query_device_cookie_t
jpayne@69 8525 xcb_input_xi_query_device_unchecked (xcb_connection_t *c,
jpayne@69 8526 xcb_input_device_id_t deviceid);
jpayne@69 8527
jpayne@69 8528 int
jpayne@69 8529 xcb_input_xi_query_device_infos_length (const xcb_input_xi_query_device_reply_t *R);
jpayne@69 8530
jpayne@69 8531 xcb_input_xi_device_info_iterator_t
jpayne@69 8532 xcb_input_xi_query_device_infos_iterator (const xcb_input_xi_query_device_reply_t *R);
jpayne@69 8533
jpayne@69 8534 /**
jpayne@69 8535 * Return the reply
jpayne@69 8536 * @param c The connection
jpayne@69 8537 * @param cookie The cookie
jpayne@69 8538 * @param e The xcb_generic_error_t supplied
jpayne@69 8539 *
jpayne@69 8540 * Returns the reply of the request asked by
jpayne@69 8541 *
jpayne@69 8542 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8543 * xcb_input_xi_query_device_unchecked(). is used.
jpayne@69 8544 * Otherwise, it stores the error if any.
jpayne@69 8545 *
jpayne@69 8546 * The returned value must be freed by the caller using free().
jpayne@69 8547 */
jpayne@69 8548 xcb_input_xi_query_device_reply_t *
jpayne@69 8549 xcb_input_xi_query_device_reply (xcb_connection_t *c,
jpayne@69 8550 xcb_input_xi_query_device_cookie_t cookie /**< */,
jpayne@69 8551 xcb_generic_error_t **e);
jpayne@69 8552
jpayne@69 8553 /**
jpayne@69 8554 *
jpayne@69 8555 * @param c The connection
jpayne@69 8556 * @return A cookie
jpayne@69 8557 *
jpayne@69 8558 * Delivers a request to the X server.
jpayne@69 8559 *
jpayne@69 8560 * This form can be used only if the request will not cause
jpayne@69 8561 * a reply to be generated. Any returned error will be
jpayne@69 8562 * saved for handling by xcb_request_check().
jpayne@69 8563 */
jpayne@69 8564 xcb_void_cookie_t
jpayne@69 8565 xcb_input_xi_set_focus_checked (xcb_connection_t *c,
jpayne@69 8566 xcb_window_t window,
jpayne@69 8567 xcb_timestamp_t time,
jpayne@69 8568 xcb_input_device_id_t deviceid);
jpayne@69 8569
jpayne@69 8570 /**
jpayne@69 8571 *
jpayne@69 8572 * @param c The connection
jpayne@69 8573 * @return A cookie
jpayne@69 8574 *
jpayne@69 8575 * Delivers a request to the X server.
jpayne@69 8576 *
jpayne@69 8577 */
jpayne@69 8578 xcb_void_cookie_t
jpayne@69 8579 xcb_input_xi_set_focus (xcb_connection_t *c,
jpayne@69 8580 xcb_window_t window,
jpayne@69 8581 xcb_timestamp_t time,
jpayne@69 8582 xcb_input_device_id_t deviceid);
jpayne@69 8583
jpayne@69 8584 /**
jpayne@69 8585 *
jpayne@69 8586 * @param c The connection
jpayne@69 8587 * @return A cookie
jpayne@69 8588 *
jpayne@69 8589 * Delivers a request to the X server.
jpayne@69 8590 *
jpayne@69 8591 */
jpayne@69 8592 xcb_input_xi_get_focus_cookie_t
jpayne@69 8593 xcb_input_xi_get_focus (xcb_connection_t *c,
jpayne@69 8594 xcb_input_device_id_t deviceid);
jpayne@69 8595
jpayne@69 8596 /**
jpayne@69 8597 *
jpayne@69 8598 * @param c The connection
jpayne@69 8599 * @return A cookie
jpayne@69 8600 *
jpayne@69 8601 * Delivers a request to the X server.
jpayne@69 8602 *
jpayne@69 8603 * This form can be used only if the request will cause
jpayne@69 8604 * a reply to be generated. Any returned error will be
jpayne@69 8605 * placed in the event queue.
jpayne@69 8606 */
jpayne@69 8607 xcb_input_xi_get_focus_cookie_t
jpayne@69 8608 xcb_input_xi_get_focus_unchecked (xcb_connection_t *c,
jpayne@69 8609 xcb_input_device_id_t deviceid);
jpayne@69 8610
jpayne@69 8611 /**
jpayne@69 8612 * Return the reply
jpayne@69 8613 * @param c The connection
jpayne@69 8614 * @param cookie The cookie
jpayne@69 8615 * @param e The xcb_generic_error_t supplied
jpayne@69 8616 *
jpayne@69 8617 * Returns the reply of the request asked by
jpayne@69 8618 *
jpayne@69 8619 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8620 * xcb_input_xi_get_focus_unchecked(). is used.
jpayne@69 8621 * Otherwise, it stores the error if any.
jpayne@69 8622 *
jpayne@69 8623 * The returned value must be freed by the caller using free().
jpayne@69 8624 */
jpayne@69 8625 xcb_input_xi_get_focus_reply_t *
jpayne@69 8626 xcb_input_xi_get_focus_reply (xcb_connection_t *c,
jpayne@69 8627 xcb_input_xi_get_focus_cookie_t cookie /**< */,
jpayne@69 8628 xcb_generic_error_t **e);
jpayne@69 8629
jpayne@69 8630 int
jpayne@69 8631 xcb_input_xi_grab_device_sizeof (const void *_buffer);
jpayne@69 8632
jpayne@69 8633 /**
jpayne@69 8634 *
jpayne@69 8635 * @param c The connection
jpayne@69 8636 * @return A cookie
jpayne@69 8637 *
jpayne@69 8638 * Delivers a request to the X server.
jpayne@69 8639 *
jpayne@69 8640 */
jpayne@69 8641 xcb_input_xi_grab_device_cookie_t
jpayne@69 8642 xcb_input_xi_grab_device (xcb_connection_t *c,
jpayne@69 8643 xcb_window_t window,
jpayne@69 8644 xcb_timestamp_t time,
jpayne@69 8645 xcb_cursor_t cursor,
jpayne@69 8646 xcb_input_device_id_t deviceid,
jpayne@69 8647 uint8_t mode,
jpayne@69 8648 uint8_t paired_device_mode,
jpayne@69 8649 uint8_t owner_events,
jpayne@69 8650 uint16_t mask_len,
jpayne@69 8651 const uint32_t *mask);
jpayne@69 8652
jpayne@69 8653 /**
jpayne@69 8654 *
jpayne@69 8655 * @param c The connection
jpayne@69 8656 * @return A cookie
jpayne@69 8657 *
jpayne@69 8658 * Delivers a request to the X server.
jpayne@69 8659 *
jpayne@69 8660 * This form can be used only if the request will cause
jpayne@69 8661 * a reply to be generated. Any returned error will be
jpayne@69 8662 * placed in the event queue.
jpayne@69 8663 */
jpayne@69 8664 xcb_input_xi_grab_device_cookie_t
jpayne@69 8665 xcb_input_xi_grab_device_unchecked (xcb_connection_t *c,
jpayne@69 8666 xcb_window_t window,
jpayne@69 8667 xcb_timestamp_t time,
jpayne@69 8668 xcb_cursor_t cursor,
jpayne@69 8669 xcb_input_device_id_t deviceid,
jpayne@69 8670 uint8_t mode,
jpayne@69 8671 uint8_t paired_device_mode,
jpayne@69 8672 uint8_t owner_events,
jpayne@69 8673 uint16_t mask_len,
jpayne@69 8674 const uint32_t *mask);
jpayne@69 8675
jpayne@69 8676 /**
jpayne@69 8677 * Return the reply
jpayne@69 8678 * @param c The connection
jpayne@69 8679 * @param cookie The cookie
jpayne@69 8680 * @param e The xcb_generic_error_t supplied
jpayne@69 8681 *
jpayne@69 8682 * Returns the reply of the request asked by
jpayne@69 8683 *
jpayne@69 8684 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8685 * xcb_input_xi_grab_device_unchecked(). is used.
jpayne@69 8686 * Otherwise, it stores the error if any.
jpayne@69 8687 *
jpayne@69 8688 * The returned value must be freed by the caller using free().
jpayne@69 8689 */
jpayne@69 8690 xcb_input_xi_grab_device_reply_t *
jpayne@69 8691 xcb_input_xi_grab_device_reply (xcb_connection_t *c,
jpayne@69 8692 xcb_input_xi_grab_device_cookie_t cookie /**< */,
jpayne@69 8693 xcb_generic_error_t **e);
jpayne@69 8694
jpayne@69 8695 /**
jpayne@69 8696 *
jpayne@69 8697 * @param c The connection
jpayne@69 8698 * @return A cookie
jpayne@69 8699 *
jpayne@69 8700 * Delivers a request to the X server.
jpayne@69 8701 *
jpayne@69 8702 * This form can be used only if the request will not cause
jpayne@69 8703 * a reply to be generated. Any returned error will be
jpayne@69 8704 * saved for handling by xcb_request_check().
jpayne@69 8705 */
jpayne@69 8706 xcb_void_cookie_t
jpayne@69 8707 xcb_input_xi_ungrab_device_checked (xcb_connection_t *c,
jpayne@69 8708 xcb_timestamp_t time,
jpayne@69 8709 xcb_input_device_id_t deviceid);
jpayne@69 8710
jpayne@69 8711 /**
jpayne@69 8712 *
jpayne@69 8713 * @param c The connection
jpayne@69 8714 * @return A cookie
jpayne@69 8715 *
jpayne@69 8716 * Delivers a request to the X server.
jpayne@69 8717 *
jpayne@69 8718 */
jpayne@69 8719 xcb_void_cookie_t
jpayne@69 8720 xcb_input_xi_ungrab_device (xcb_connection_t *c,
jpayne@69 8721 xcb_timestamp_t time,
jpayne@69 8722 xcb_input_device_id_t deviceid);
jpayne@69 8723
jpayne@69 8724 /**
jpayne@69 8725 *
jpayne@69 8726 * @param c The connection
jpayne@69 8727 * @return A cookie
jpayne@69 8728 *
jpayne@69 8729 * Delivers a request to the X server.
jpayne@69 8730 *
jpayne@69 8731 * This form can be used only if the request will not cause
jpayne@69 8732 * a reply to be generated. Any returned error will be
jpayne@69 8733 * saved for handling by xcb_request_check().
jpayne@69 8734 */
jpayne@69 8735 xcb_void_cookie_t
jpayne@69 8736 xcb_input_xi_allow_events_checked (xcb_connection_t *c,
jpayne@69 8737 xcb_timestamp_t time,
jpayne@69 8738 xcb_input_device_id_t deviceid,
jpayne@69 8739 uint8_t event_mode,
jpayne@69 8740 uint32_t touchid,
jpayne@69 8741 xcb_window_t grab_window);
jpayne@69 8742
jpayne@69 8743 /**
jpayne@69 8744 *
jpayne@69 8745 * @param c The connection
jpayne@69 8746 * @return A cookie
jpayne@69 8747 *
jpayne@69 8748 * Delivers a request to the X server.
jpayne@69 8749 *
jpayne@69 8750 */
jpayne@69 8751 xcb_void_cookie_t
jpayne@69 8752 xcb_input_xi_allow_events (xcb_connection_t *c,
jpayne@69 8753 xcb_timestamp_t time,
jpayne@69 8754 xcb_input_device_id_t deviceid,
jpayne@69 8755 uint8_t event_mode,
jpayne@69 8756 uint32_t touchid,
jpayne@69 8757 xcb_window_t grab_window);
jpayne@69 8758
jpayne@69 8759 /**
jpayne@69 8760 * Get the next element of the iterator
jpayne@69 8761 * @param i Pointer to a xcb_input_grab_modifier_info_iterator_t
jpayne@69 8762 *
jpayne@69 8763 * Get the next element in the iterator. The member rem is
jpayne@69 8764 * decreased by one. The member data points to the next
jpayne@69 8765 * element. The member index is increased by sizeof(xcb_input_grab_modifier_info_t)
jpayne@69 8766 */
jpayne@69 8767 void
jpayne@69 8768 xcb_input_grab_modifier_info_next (xcb_input_grab_modifier_info_iterator_t *i);
jpayne@69 8769
jpayne@69 8770 /**
jpayne@69 8771 * Return the iterator pointing to the last element
jpayne@69 8772 * @param i An xcb_input_grab_modifier_info_iterator_t
jpayne@69 8773 * @return The iterator pointing to the last element
jpayne@69 8774 *
jpayne@69 8775 * Set the current element in the iterator to the last element.
jpayne@69 8776 * The member rem is set to 0. The member data points to the
jpayne@69 8777 * last element.
jpayne@69 8778 */
jpayne@69 8779 xcb_generic_iterator_t
jpayne@69 8780 xcb_input_grab_modifier_info_end (xcb_input_grab_modifier_info_iterator_t i);
jpayne@69 8781
jpayne@69 8782 int
jpayne@69 8783 xcb_input_xi_passive_grab_device_sizeof (const void *_buffer);
jpayne@69 8784
jpayne@69 8785 /**
jpayne@69 8786 *
jpayne@69 8787 * @param c The connection
jpayne@69 8788 * @return A cookie
jpayne@69 8789 *
jpayne@69 8790 * Delivers a request to the X server.
jpayne@69 8791 *
jpayne@69 8792 */
jpayne@69 8793 xcb_input_xi_passive_grab_device_cookie_t
jpayne@69 8794 xcb_input_xi_passive_grab_device (xcb_connection_t *c,
jpayne@69 8795 xcb_timestamp_t time,
jpayne@69 8796 xcb_window_t grab_window,
jpayne@69 8797 xcb_cursor_t cursor,
jpayne@69 8798 uint32_t detail,
jpayne@69 8799 xcb_input_device_id_t deviceid,
jpayne@69 8800 uint16_t num_modifiers,
jpayne@69 8801 uint16_t mask_len,
jpayne@69 8802 uint8_t grab_type,
jpayne@69 8803 uint8_t grab_mode,
jpayne@69 8804 uint8_t paired_device_mode,
jpayne@69 8805 uint8_t owner_events,
jpayne@69 8806 const uint32_t *mask,
jpayne@69 8807 const uint32_t *modifiers);
jpayne@69 8808
jpayne@69 8809 /**
jpayne@69 8810 *
jpayne@69 8811 * @param c The connection
jpayne@69 8812 * @return A cookie
jpayne@69 8813 *
jpayne@69 8814 * Delivers a request to the X server.
jpayne@69 8815 *
jpayne@69 8816 * This form can be used only if the request will cause
jpayne@69 8817 * a reply to be generated. Any returned error will be
jpayne@69 8818 * placed in the event queue.
jpayne@69 8819 */
jpayne@69 8820 xcb_input_xi_passive_grab_device_cookie_t
jpayne@69 8821 xcb_input_xi_passive_grab_device_unchecked (xcb_connection_t *c,
jpayne@69 8822 xcb_timestamp_t time,
jpayne@69 8823 xcb_window_t grab_window,
jpayne@69 8824 xcb_cursor_t cursor,
jpayne@69 8825 uint32_t detail,
jpayne@69 8826 xcb_input_device_id_t deviceid,
jpayne@69 8827 uint16_t num_modifiers,
jpayne@69 8828 uint16_t mask_len,
jpayne@69 8829 uint8_t grab_type,
jpayne@69 8830 uint8_t grab_mode,
jpayne@69 8831 uint8_t paired_device_mode,
jpayne@69 8832 uint8_t owner_events,
jpayne@69 8833 const uint32_t *mask,
jpayne@69 8834 const uint32_t *modifiers);
jpayne@69 8835
jpayne@69 8836 xcb_input_grab_modifier_info_t *
jpayne@69 8837 xcb_input_xi_passive_grab_device_modifiers (const xcb_input_xi_passive_grab_device_reply_t *R);
jpayne@69 8838
jpayne@69 8839 int
jpayne@69 8840 xcb_input_xi_passive_grab_device_modifiers_length (const xcb_input_xi_passive_grab_device_reply_t *R);
jpayne@69 8841
jpayne@69 8842 xcb_input_grab_modifier_info_iterator_t
jpayne@69 8843 xcb_input_xi_passive_grab_device_modifiers_iterator (const xcb_input_xi_passive_grab_device_reply_t *R);
jpayne@69 8844
jpayne@69 8845 /**
jpayne@69 8846 * Return the reply
jpayne@69 8847 * @param c The connection
jpayne@69 8848 * @param cookie The cookie
jpayne@69 8849 * @param e The xcb_generic_error_t supplied
jpayne@69 8850 *
jpayne@69 8851 * Returns the reply of the request asked by
jpayne@69 8852 *
jpayne@69 8853 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8854 * xcb_input_xi_passive_grab_device_unchecked(). is used.
jpayne@69 8855 * Otherwise, it stores the error if any.
jpayne@69 8856 *
jpayne@69 8857 * The returned value must be freed by the caller using free().
jpayne@69 8858 */
jpayne@69 8859 xcb_input_xi_passive_grab_device_reply_t *
jpayne@69 8860 xcb_input_xi_passive_grab_device_reply (xcb_connection_t *c,
jpayne@69 8861 xcb_input_xi_passive_grab_device_cookie_t cookie /**< */,
jpayne@69 8862 xcb_generic_error_t **e);
jpayne@69 8863
jpayne@69 8864 int
jpayne@69 8865 xcb_input_xi_passive_ungrab_device_sizeof (const void *_buffer);
jpayne@69 8866
jpayne@69 8867 /**
jpayne@69 8868 *
jpayne@69 8869 * @param c The connection
jpayne@69 8870 * @return A cookie
jpayne@69 8871 *
jpayne@69 8872 * Delivers a request to the X server.
jpayne@69 8873 *
jpayne@69 8874 * This form can be used only if the request will not cause
jpayne@69 8875 * a reply to be generated. Any returned error will be
jpayne@69 8876 * saved for handling by xcb_request_check().
jpayne@69 8877 */
jpayne@69 8878 xcb_void_cookie_t
jpayne@69 8879 xcb_input_xi_passive_ungrab_device_checked (xcb_connection_t *c,
jpayne@69 8880 xcb_window_t grab_window,
jpayne@69 8881 uint32_t detail,
jpayne@69 8882 xcb_input_device_id_t deviceid,
jpayne@69 8883 uint16_t num_modifiers,
jpayne@69 8884 uint8_t grab_type,
jpayne@69 8885 const uint32_t *modifiers);
jpayne@69 8886
jpayne@69 8887 /**
jpayne@69 8888 *
jpayne@69 8889 * @param c The connection
jpayne@69 8890 * @return A cookie
jpayne@69 8891 *
jpayne@69 8892 * Delivers a request to the X server.
jpayne@69 8893 *
jpayne@69 8894 */
jpayne@69 8895 xcb_void_cookie_t
jpayne@69 8896 xcb_input_xi_passive_ungrab_device (xcb_connection_t *c,
jpayne@69 8897 xcb_window_t grab_window,
jpayne@69 8898 uint32_t detail,
jpayne@69 8899 xcb_input_device_id_t deviceid,
jpayne@69 8900 uint16_t num_modifiers,
jpayne@69 8901 uint8_t grab_type,
jpayne@69 8902 const uint32_t *modifiers);
jpayne@69 8903
jpayne@69 8904 uint32_t *
jpayne@69 8905 xcb_input_xi_passive_ungrab_device_modifiers (const xcb_input_xi_passive_ungrab_device_request_t *R);
jpayne@69 8906
jpayne@69 8907 int
jpayne@69 8908 xcb_input_xi_passive_ungrab_device_modifiers_length (const xcb_input_xi_passive_ungrab_device_request_t *R);
jpayne@69 8909
jpayne@69 8910 xcb_generic_iterator_t
jpayne@69 8911 xcb_input_xi_passive_ungrab_device_modifiers_end (const xcb_input_xi_passive_ungrab_device_request_t *R);
jpayne@69 8912
jpayne@69 8913 int
jpayne@69 8914 xcb_input_xi_list_properties_sizeof (const void *_buffer);
jpayne@69 8915
jpayne@69 8916 /**
jpayne@69 8917 *
jpayne@69 8918 * @param c The connection
jpayne@69 8919 * @return A cookie
jpayne@69 8920 *
jpayne@69 8921 * Delivers a request to the X server.
jpayne@69 8922 *
jpayne@69 8923 */
jpayne@69 8924 xcb_input_xi_list_properties_cookie_t
jpayne@69 8925 xcb_input_xi_list_properties (xcb_connection_t *c,
jpayne@69 8926 xcb_input_device_id_t deviceid);
jpayne@69 8927
jpayne@69 8928 /**
jpayne@69 8929 *
jpayne@69 8930 * @param c The connection
jpayne@69 8931 * @return A cookie
jpayne@69 8932 *
jpayne@69 8933 * Delivers a request to the X server.
jpayne@69 8934 *
jpayne@69 8935 * This form can be used only if the request will cause
jpayne@69 8936 * a reply to be generated. Any returned error will be
jpayne@69 8937 * placed in the event queue.
jpayne@69 8938 */
jpayne@69 8939 xcb_input_xi_list_properties_cookie_t
jpayne@69 8940 xcb_input_xi_list_properties_unchecked (xcb_connection_t *c,
jpayne@69 8941 xcb_input_device_id_t deviceid);
jpayne@69 8942
jpayne@69 8943 xcb_atom_t *
jpayne@69 8944 xcb_input_xi_list_properties_properties (const xcb_input_xi_list_properties_reply_t *R);
jpayne@69 8945
jpayne@69 8946 int
jpayne@69 8947 xcb_input_xi_list_properties_properties_length (const xcb_input_xi_list_properties_reply_t *R);
jpayne@69 8948
jpayne@69 8949 xcb_generic_iterator_t
jpayne@69 8950 xcb_input_xi_list_properties_properties_end (const xcb_input_xi_list_properties_reply_t *R);
jpayne@69 8951
jpayne@69 8952 /**
jpayne@69 8953 * Return the reply
jpayne@69 8954 * @param c The connection
jpayne@69 8955 * @param cookie The cookie
jpayne@69 8956 * @param e The xcb_generic_error_t supplied
jpayne@69 8957 *
jpayne@69 8958 * Returns the reply of the request asked by
jpayne@69 8959 *
jpayne@69 8960 * The parameter @p e supplied to this function must be NULL if
jpayne@69 8961 * xcb_input_xi_list_properties_unchecked(). is used.
jpayne@69 8962 * Otherwise, it stores the error if any.
jpayne@69 8963 *
jpayne@69 8964 * The returned value must be freed by the caller using free().
jpayne@69 8965 */
jpayne@69 8966 xcb_input_xi_list_properties_reply_t *
jpayne@69 8967 xcb_input_xi_list_properties_reply (xcb_connection_t *c,
jpayne@69 8968 xcb_input_xi_list_properties_cookie_t cookie /**< */,
jpayne@69 8969 xcb_generic_error_t **e);
jpayne@69 8970
jpayne@69 8971 uint8_t *
jpayne@69 8972 xcb_input_xi_change_property_items_data_8 (const xcb_input_xi_change_property_items_t *S);
jpayne@69 8973
jpayne@69 8974 int
jpayne@69 8975 xcb_input_xi_change_property_items_data_8_length (const xcb_input_xi_change_property_request_t *R,
jpayne@69 8976 const xcb_input_xi_change_property_items_t *S);
jpayne@69 8977
jpayne@69 8978 xcb_generic_iterator_t
jpayne@69 8979 xcb_input_xi_change_property_items_data_8_end (const xcb_input_xi_change_property_request_t *R,
jpayne@69 8980 const xcb_input_xi_change_property_items_t *S);
jpayne@69 8981
jpayne@69 8982 uint16_t *
jpayne@69 8983 xcb_input_xi_change_property_items_data_16 (const xcb_input_xi_change_property_items_t *S);
jpayne@69 8984
jpayne@69 8985 int
jpayne@69 8986 xcb_input_xi_change_property_items_data_16_length (const xcb_input_xi_change_property_request_t *R,
jpayne@69 8987 const xcb_input_xi_change_property_items_t *S);
jpayne@69 8988
jpayne@69 8989 xcb_generic_iterator_t
jpayne@69 8990 xcb_input_xi_change_property_items_data_16_end (const xcb_input_xi_change_property_request_t *R,
jpayne@69 8991 const xcb_input_xi_change_property_items_t *S);
jpayne@69 8992
jpayne@69 8993 uint32_t *
jpayne@69 8994 xcb_input_xi_change_property_items_data_32 (const xcb_input_xi_change_property_items_t *S);
jpayne@69 8995
jpayne@69 8996 int
jpayne@69 8997 xcb_input_xi_change_property_items_data_32_length (const xcb_input_xi_change_property_request_t *R,
jpayne@69 8998 const xcb_input_xi_change_property_items_t *S);
jpayne@69 8999
jpayne@69 9000 xcb_generic_iterator_t
jpayne@69 9001 xcb_input_xi_change_property_items_data_32_end (const xcb_input_xi_change_property_request_t *R,
jpayne@69 9002 const xcb_input_xi_change_property_items_t *S);
jpayne@69 9003
jpayne@69 9004 int
jpayne@69 9005 xcb_input_xi_change_property_items_serialize (void **_buffer,
jpayne@69 9006 uint32_t num_items,
jpayne@69 9007 uint8_t format,
jpayne@69 9008 const xcb_input_xi_change_property_items_t *_aux);
jpayne@69 9009
jpayne@69 9010 int
jpayne@69 9011 xcb_input_xi_change_property_items_unpack (const void *_buffer,
jpayne@69 9012 uint32_t num_items,
jpayne@69 9013 uint8_t format,
jpayne@69 9014 xcb_input_xi_change_property_items_t *_aux);
jpayne@69 9015
jpayne@69 9016 int
jpayne@69 9017 xcb_input_xi_change_property_items_sizeof (const void *_buffer,
jpayne@69 9018 uint32_t num_items,
jpayne@69 9019 uint8_t format);
jpayne@69 9020
jpayne@69 9021 int
jpayne@69 9022 xcb_input_xi_change_property_sizeof (const void *_buffer);
jpayne@69 9023
jpayne@69 9024 /**
jpayne@69 9025 *
jpayne@69 9026 * @param c The connection
jpayne@69 9027 * @return A cookie
jpayne@69 9028 *
jpayne@69 9029 * Delivers a request to the X server.
jpayne@69 9030 *
jpayne@69 9031 * This form can be used only if the request will not cause
jpayne@69 9032 * a reply to be generated. Any returned error will be
jpayne@69 9033 * saved for handling by xcb_request_check().
jpayne@69 9034 */
jpayne@69 9035 xcb_void_cookie_t
jpayne@69 9036 xcb_input_xi_change_property_checked (xcb_connection_t *c,
jpayne@69 9037 xcb_input_device_id_t deviceid,
jpayne@69 9038 uint8_t mode,
jpayne@69 9039 uint8_t format,
jpayne@69 9040 xcb_atom_t property,
jpayne@69 9041 xcb_atom_t type,
jpayne@69 9042 uint32_t num_items,
jpayne@69 9043 const void *items);
jpayne@69 9044
jpayne@69 9045 /**
jpayne@69 9046 *
jpayne@69 9047 * @param c The connection
jpayne@69 9048 * @return A cookie
jpayne@69 9049 *
jpayne@69 9050 * Delivers a request to the X server.
jpayne@69 9051 *
jpayne@69 9052 */
jpayne@69 9053 xcb_void_cookie_t
jpayne@69 9054 xcb_input_xi_change_property (xcb_connection_t *c,
jpayne@69 9055 xcb_input_device_id_t deviceid,
jpayne@69 9056 uint8_t mode,
jpayne@69 9057 uint8_t format,
jpayne@69 9058 xcb_atom_t property,
jpayne@69 9059 xcb_atom_t type,
jpayne@69 9060 uint32_t num_items,
jpayne@69 9061 const void *items);
jpayne@69 9062
jpayne@69 9063 /**
jpayne@69 9064 *
jpayne@69 9065 * @param c The connection
jpayne@69 9066 * @return A cookie
jpayne@69 9067 *
jpayne@69 9068 * Delivers a request to the X server.
jpayne@69 9069 *
jpayne@69 9070 * This form can be used only if the request will not cause
jpayne@69 9071 * a reply to be generated. Any returned error will be
jpayne@69 9072 * saved for handling by xcb_request_check().
jpayne@69 9073 */
jpayne@69 9074 xcb_void_cookie_t
jpayne@69 9075 xcb_input_xi_change_property_aux_checked (xcb_connection_t *c,
jpayne@69 9076 xcb_input_device_id_t deviceid,
jpayne@69 9077 uint8_t mode,
jpayne@69 9078 uint8_t format,
jpayne@69 9079 xcb_atom_t property,
jpayne@69 9080 xcb_atom_t type,
jpayne@69 9081 uint32_t num_items,
jpayne@69 9082 const xcb_input_xi_change_property_items_t *items);
jpayne@69 9083
jpayne@69 9084 /**
jpayne@69 9085 *
jpayne@69 9086 * @param c The connection
jpayne@69 9087 * @return A cookie
jpayne@69 9088 *
jpayne@69 9089 * Delivers a request to the X server.
jpayne@69 9090 *
jpayne@69 9091 */
jpayne@69 9092 xcb_void_cookie_t
jpayne@69 9093 xcb_input_xi_change_property_aux (xcb_connection_t *c,
jpayne@69 9094 xcb_input_device_id_t deviceid,
jpayne@69 9095 uint8_t mode,
jpayne@69 9096 uint8_t format,
jpayne@69 9097 xcb_atom_t property,
jpayne@69 9098 xcb_atom_t type,
jpayne@69 9099 uint32_t num_items,
jpayne@69 9100 const xcb_input_xi_change_property_items_t *items);
jpayne@69 9101
jpayne@69 9102 void *
jpayne@69 9103 xcb_input_xi_change_property_items (const xcb_input_xi_change_property_request_t *R);
jpayne@69 9104
jpayne@69 9105 /**
jpayne@69 9106 *
jpayne@69 9107 * @param c The connection
jpayne@69 9108 * @return A cookie
jpayne@69 9109 *
jpayne@69 9110 * Delivers a request to the X server.
jpayne@69 9111 *
jpayne@69 9112 * This form can be used only if the request will not cause
jpayne@69 9113 * a reply to be generated. Any returned error will be
jpayne@69 9114 * saved for handling by xcb_request_check().
jpayne@69 9115 */
jpayne@69 9116 xcb_void_cookie_t
jpayne@69 9117 xcb_input_xi_delete_property_checked (xcb_connection_t *c,
jpayne@69 9118 xcb_input_device_id_t deviceid,
jpayne@69 9119 xcb_atom_t property);
jpayne@69 9120
jpayne@69 9121 /**
jpayne@69 9122 *
jpayne@69 9123 * @param c The connection
jpayne@69 9124 * @return A cookie
jpayne@69 9125 *
jpayne@69 9126 * Delivers a request to the X server.
jpayne@69 9127 *
jpayne@69 9128 */
jpayne@69 9129 xcb_void_cookie_t
jpayne@69 9130 xcb_input_xi_delete_property (xcb_connection_t *c,
jpayne@69 9131 xcb_input_device_id_t deviceid,
jpayne@69 9132 xcb_atom_t property);
jpayne@69 9133
jpayne@69 9134 uint8_t *
jpayne@69 9135 xcb_input_xi_get_property_items_data_8 (const xcb_input_xi_get_property_items_t *S);
jpayne@69 9136
jpayne@69 9137 int
jpayne@69 9138 xcb_input_xi_get_property_items_data_8_length (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9139 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9140
jpayne@69 9141 xcb_generic_iterator_t
jpayne@69 9142 xcb_input_xi_get_property_items_data_8_end (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9143 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9144
jpayne@69 9145 uint16_t *
jpayne@69 9146 xcb_input_xi_get_property_items_data_16 (const xcb_input_xi_get_property_items_t *S);
jpayne@69 9147
jpayne@69 9148 int
jpayne@69 9149 xcb_input_xi_get_property_items_data_16_length (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9150 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9151
jpayne@69 9152 xcb_generic_iterator_t
jpayne@69 9153 xcb_input_xi_get_property_items_data_16_end (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9154 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9155
jpayne@69 9156 uint32_t *
jpayne@69 9157 xcb_input_xi_get_property_items_data_32 (const xcb_input_xi_get_property_items_t *S);
jpayne@69 9158
jpayne@69 9159 int
jpayne@69 9160 xcb_input_xi_get_property_items_data_32_length (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9161 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9162
jpayne@69 9163 xcb_generic_iterator_t
jpayne@69 9164 xcb_input_xi_get_property_items_data_32_end (const xcb_input_xi_get_property_reply_t *R,
jpayne@69 9165 const xcb_input_xi_get_property_items_t *S);
jpayne@69 9166
jpayne@69 9167 int
jpayne@69 9168 xcb_input_xi_get_property_items_serialize (void **_buffer,
jpayne@69 9169 uint32_t num_items,
jpayne@69 9170 uint8_t format,
jpayne@69 9171 const xcb_input_xi_get_property_items_t *_aux);
jpayne@69 9172
jpayne@69 9173 int
jpayne@69 9174 xcb_input_xi_get_property_items_unpack (const void *_buffer,
jpayne@69 9175 uint32_t num_items,
jpayne@69 9176 uint8_t format,
jpayne@69 9177 xcb_input_xi_get_property_items_t *_aux);
jpayne@69 9178
jpayne@69 9179 int
jpayne@69 9180 xcb_input_xi_get_property_items_sizeof (const void *_buffer,
jpayne@69 9181 uint32_t num_items,
jpayne@69 9182 uint8_t format);
jpayne@69 9183
jpayne@69 9184 int
jpayne@69 9185 xcb_input_xi_get_property_sizeof (const void *_buffer);
jpayne@69 9186
jpayne@69 9187 /**
jpayne@69 9188 *
jpayne@69 9189 * @param c The connection
jpayne@69 9190 * @return A cookie
jpayne@69 9191 *
jpayne@69 9192 * Delivers a request to the X server.
jpayne@69 9193 *
jpayne@69 9194 */
jpayne@69 9195 xcb_input_xi_get_property_cookie_t
jpayne@69 9196 xcb_input_xi_get_property (xcb_connection_t *c,
jpayne@69 9197 xcb_input_device_id_t deviceid,
jpayne@69 9198 uint8_t _delete,
jpayne@69 9199 xcb_atom_t property,
jpayne@69 9200 xcb_atom_t type,
jpayne@69 9201 uint32_t offset,
jpayne@69 9202 uint32_t len);
jpayne@69 9203
jpayne@69 9204 /**
jpayne@69 9205 *
jpayne@69 9206 * @param c The connection
jpayne@69 9207 * @return A cookie
jpayne@69 9208 *
jpayne@69 9209 * Delivers a request to the X server.
jpayne@69 9210 *
jpayne@69 9211 * This form can be used only if the request will cause
jpayne@69 9212 * a reply to be generated. Any returned error will be
jpayne@69 9213 * placed in the event queue.
jpayne@69 9214 */
jpayne@69 9215 xcb_input_xi_get_property_cookie_t
jpayne@69 9216 xcb_input_xi_get_property_unchecked (xcb_connection_t *c,
jpayne@69 9217 xcb_input_device_id_t deviceid,
jpayne@69 9218 uint8_t _delete,
jpayne@69 9219 xcb_atom_t property,
jpayne@69 9220 xcb_atom_t type,
jpayne@69 9221 uint32_t offset,
jpayne@69 9222 uint32_t len);
jpayne@69 9223
jpayne@69 9224 void *
jpayne@69 9225 xcb_input_xi_get_property_items (const xcb_input_xi_get_property_reply_t *R);
jpayne@69 9226
jpayne@69 9227 /**
jpayne@69 9228 * Return the reply
jpayne@69 9229 * @param c The connection
jpayne@69 9230 * @param cookie The cookie
jpayne@69 9231 * @param e The xcb_generic_error_t supplied
jpayne@69 9232 *
jpayne@69 9233 * Returns the reply of the request asked by
jpayne@69 9234 *
jpayne@69 9235 * The parameter @p e supplied to this function must be NULL if
jpayne@69 9236 * xcb_input_xi_get_property_unchecked(). is used.
jpayne@69 9237 * Otherwise, it stores the error if any.
jpayne@69 9238 *
jpayne@69 9239 * The returned value must be freed by the caller using free().
jpayne@69 9240 */
jpayne@69 9241 xcb_input_xi_get_property_reply_t *
jpayne@69 9242 xcb_input_xi_get_property_reply (xcb_connection_t *c,
jpayne@69 9243 xcb_input_xi_get_property_cookie_t cookie /**< */,
jpayne@69 9244 xcb_generic_error_t **e);
jpayne@69 9245
jpayne@69 9246 int
jpayne@69 9247 xcb_input_xi_get_selected_events_sizeof (const void *_buffer);
jpayne@69 9248
jpayne@69 9249 /**
jpayne@69 9250 *
jpayne@69 9251 * @param c The connection
jpayne@69 9252 * @return A cookie
jpayne@69 9253 *
jpayne@69 9254 * Delivers a request to the X server.
jpayne@69 9255 *
jpayne@69 9256 */
jpayne@69 9257 xcb_input_xi_get_selected_events_cookie_t
jpayne@69 9258 xcb_input_xi_get_selected_events (xcb_connection_t *c,
jpayne@69 9259 xcb_window_t window);
jpayne@69 9260
jpayne@69 9261 /**
jpayne@69 9262 *
jpayne@69 9263 * @param c The connection
jpayne@69 9264 * @return A cookie
jpayne@69 9265 *
jpayne@69 9266 * Delivers a request to the X server.
jpayne@69 9267 *
jpayne@69 9268 * This form can be used only if the request will cause
jpayne@69 9269 * a reply to be generated. Any returned error will be
jpayne@69 9270 * placed in the event queue.
jpayne@69 9271 */
jpayne@69 9272 xcb_input_xi_get_selected_events_cookie_t
jpayne@69 9273 xcb_input_xi_get_selected_events_unchecked (xcb_connection_t *c,
jpayne@69 9274 xcb_window_t window);
jpayne@69 9275
jpayne@69 9276 int
jpayne@69 9277 xcb_input_xi_get_selected_events_masks_length (const xcb_input_xi_get_selected_events_reply_t *R);
jpayne@69 9278
jpayne@69 9279 xcb_input_event_mask_iterator_t
jpayne@69 9280 xcb_input_xi_get_selected_events_masks_iterator (const xcb_input_xi_get_selected_events_reply_t *R);
jpayne@69 9281
jpayne@69 9282 /**
jpayne@69 9283 * Return the reply
jpayne@69 9284 * @param c The connection
jpayne@69 9285 * @param cookie The cookie
jpayne@69 9286 * @param e The xcb_generic_error_t supplied
jpayne@69 9287 *
jpayne@69 9288 * Returns the reply of the request asked by
jpayne@69 9289 *
jpayne@69 9290 * The parameter @p e supplied to this function must be NULL if
jpayne@69 9291 * xcb_input_xi_get_selected_events_unchecked(). is used.
jpayne@69 9292 * Otherwise, it stores the error if any.
jpayne@69 9293 *
jpayne@69 9294 * The returned value must be freed by the caller using free().
jpayne@69 9295 */
jpayne@69 9296 xcb_input_xi_get_selected_events_reply_t *
jpayne@69 9297 xcb_input_xi_get_selected_events_reply (xcb_connection_t *c,
jpayne@69 9298 xcb_input_xi_get_selected_events_cookie_t cookie /**< */,
jpayne@69 9299 xcb_generic_error_t **e);
jpayne@69 9300
jpayne@69 9301 /**
jpayne@69 9302 * Get the next element of the iterator
jpayne@69 9303 * @param i Pointer to a xcb_input_barrier_release_pointer_info_iterator_t
jpayne@69 9304 *
jpayne@69 9305 * Get the next element in the iterator. The member rem is
jpayne@69 9306 * decreased by one. The member data points to the next
jpayne@69 9307 * element. The member index is increased by sizeof(xcb_input_barrier_release_pointer_info_t)
jpayne@69 9308 */
jpayne@69 9309 void
jpayne@69 9310 xcb_input_barrier_release_pointer_info_next (xcb_input_barrier_release_pointer_info_iterator_t *i);
jpayne@69 9311
jpayne@69 9312 /**
jpayne@69 9313 * Return the iterator pointing to the last element
jpayne@69 9314 * @param i An xcb_input_barrier_release_pointer_info_iterator_t
jpayne@69 9315 * @return The iterator pointing to the last element
jpayne@69 9316 *
jpayne@69 9317 * Set the current element in the iterator to the last element.
jpayne@69 9318 * The member rem is set to 0. The member data points to the
jpayne@69 9319 * last element.
jpayne@69 9320 */
jpayne@69 9321 xcb_generic_iterator_t
jpayne@69 9322 xcb_input_barrier_release_pointer_info_end (xcb_input_barrier_release_pointer_info_iterator_t i);
jpayne@69 9323
jpayne@69 9324 int
jpayne@69 9325 xcb_input_xi_barrier_release_pointer_sizeof (const void *_buffer);
jpayne@69 9326
jpayne@69 9327 /**
jpayne@69 9328 *
jpayne@69 9329 * @param c The connection
jpayne@69 9330 * @return A cookie
jpayne@69 9331 *
jpayne@69 9332 * Delivers a request to the X server.
jpayne@69 9333 *
jpayne@69 9334 * This form can be used only if the request will not cause
jpayne@69 9335 * a reply to be generated. Any returned error will be
jpayne@69 9336 * saved for handling by xcb_request_check().
jpayne@69 9337 */
jpayne@69 9338 xcb_void_cookie_t
jpayne@69 9339 xcb_input_xi_barrier_release_pointer_checked (xcb_connection_t *c,
jpayne@69 9340 uint32_t num_barriers,
jpayne@69 9341 const xcb_input_barrier_release_pointer_info_t *barriers);
jpayne@69 9342
jpayne@69 9343 /**
jpayne@69 9344 *
jpayne@69 9345 * @param c The connection
jpayne@69 9346 * @return A cookie
jpayne@69 9347 *
jpayne@69 9348 * Delivers a request to the X server.
jpayne@69 9349 *
jpayne@69 9350 */
jpayne@69 9351 xcb_void_cookie_t
jpayne@69 9352 xcb_input_xi_barrier_release_pointer (xcb_connection_t *c,
jpayne@69 9353 uint32_t num_barriers,
jpayne@69 9354 const xcb_input_barrier_release_pointer_info_t *barriers);
jpayne@69 9355
jpayne@69 9356 xcb_input_barrier_release_pointer_info_t *
jpayne@69 9357 xcb_input_xi_barrier_release_pointer_barriers (const xcb_input_xi_barrier_release_pointer_request_t *R);
jpayne@69 9358
jpayne@69 9359 int
jpayne@69 9360 xcb_input_xi_barrier_release_pointer_barriers_length (const xcb_input_xi_barrier_release_pointer_request_t *R);
jpayne@69 9361
jpayne@69 9362 xcb_input_barrier_release_pointer_info_iterator_t
jpayne@69 9363 xcb_input_xi_barrier_release_pointer_barriers_iterator (const xcb_input_xi_barrier_release_pointer_request_t *R);
jpayne@69 9364
jpayne@69 9365 int
jpayne@69 9366 xcb_input_device_changed_sizeof (const void *_buffer);
jpayne@69 9367
jpayne@69 9368 int
jpayne@69 9369 xcb_input_device_changed_classes_length (const xcb_input_device_changed_event_t *R);
jpayne@69 9370
jpayne@69 9371 xcb_input_device_class_iterator_t
jpayne@69 9372 xcb_input_device_changed_classes_iterator (const xcb_input_device_changed_event_t *R);
jpayne@69 9373
jpayne@69 9374 int
jpayne@69 9375 xcb_input_key_press_sizeof (const void *_buffer);
jpayne@69 9376
jpayne@69 9377 uint32_t *
jpayne@69 9378 xcb_input_key_press_button_mask (const xcb_input_key_press_event_t *R);
jpayne@69 9379
jpayne@69 9380 int
jpayne@69 9381 xcb_input_key_press_button_mask_length (const xcb_input_key_press_event_t *R);
jpayne@69 9382
jpayne@69 9383 xcb_generic_iterator_t
jpayne@69 9384 xcb_input_key_press_button_mask_end (const xcb_input_key_press_event_t *R);
jpayne@69 9385
jpayne@69 9386 uint32_t *
jpayne@69 9387 xcb_input_key_press_valuator_mask (const xcb_input_key_press_event_t *R);
jpayne@69 9388
jpayne@69 9389 int
jpayne@69 9390 xcb_input_key_press_valuator_mask_length (const xcb_input_key_press_event_t *R);
jpayne@69 9391
jpayne@69 9392 xcb_generic_iterator_t
jpayne@69 9393 xcb_input_key_press_valuator_mask_end (const xcb_input_key_press_event_t *R);
jpayne@69 9394
jpayne@69 9395 xcb_input_fp3232_t *
jpayne@69 9396 xcb_input_key_press_axisvalues (const xcb_input_key_press_event_t *R);
jpayne@69 9397
jpayne@69 9398 int
jpayne@69 9399 xcb_input_key_press_axisvalues_length (const xcb_input_key_press_event_t *R);
jpayne@69 9400
jpayne@69 9401 xcb_input_fp3232_iterator_t
jpayne@69 9402 xcb_input_key_press_axisvalues_iterator (const xcb_input_key_press_event_t *R);
jpayne@69 9403
jpayne@69 9404 int
jpayne@69 9405 xcb_input_key_release_sizeof (const void *_buffer /**< */);
jpayne@69 9406
jpayne@69 9407 int
jpayne@69 9408 xcb_input_button_press_sizeof (const void *_buffer);
jpayne@69 9409
jpayne@69 9410 uint32_t *
jpayne@69 9411 xcb_input_button_press_button_mask (const xcb_input_button_press_event_t *R);
jpayne@69 9412
jpayne@69 9413 int
jpayne@69 9414 xcb_input_button_press_button_mask_length (const xcb_input_button_press_event_t *R);
jpayne@69 9415
jpayne@69 9416 xcb_generic_iterator_t
jpayne@69 9417 xcb_input_button_press_button_mask_end (const xcb_input_button_press_event_t *R);
jpayne@69 9418
jpayne@69 9419 uint32_t *
jpayne@69 9420 xcb_input_button_press_valuator_mask (const xcb_input_button_press_event_t *R);
jpayne@69 9421
jpayne@69 9422 int
jpayne@69 9423 xcb_input_button_press_valuator_mask_length (const xcb_input_button_press_event_t *R);
jpayne@69 9424
jpayne@69 9425 xcb_generic_iterator_t
jpayne@69 9426 xcb_input_button_press_valuator_mask_end (const xcb_input_button_press_event_t *R);
jpayne@69 9427
jpayne@69 9428 xcb_input_fp3232_t *
jpayne@69 9429 xcb_input_button_press_axisvalues (const xcb_input_button_press_event_t *R);
jpayne@69 9430
jpayne@69 9431 int
jpayne@69 9432 xcb_input_button_press_axisvalues_length (const xcb_input_button_press_event_t *R);
jpayne@69 9433
jpayne@69 9434 xcb_input_fp3232_iterator_t
jpayne@69 9435 xcb_input_button_press_axisvalues_iterator (const xcb_input_button_press_event_t *R);
jpayne@69 9436
jpayne@69 9437 int
jpayne@69 9438 xcb_input_button_release_sizeof (const void *_buffer /**< */);
jpayne@69 9439
jpayne@69 9440 int
jpayne@69 9441 xcb_input_motion_sizeof (const void *_buffer /**< */);
jpayne@69 9442
jpayne@69 9443 int
jpayne@69 9444 xcb_input_enter_sizeof (const void *_buffer);
jpayne@69 9445
jpayne@69 9446 uint32_t *
jpayne@69 9447 xcb_input_enter_buttons (const xcb_input_enter_event_t *R);
jpayne@69 9448
jpayne@69 9449 int
jpayne@69 9450 xcb_input_enter_buttons_length (const xcb_input_enter_event_t *R);
jpayne@69 9451
jpayne@69 9452 xcb_generic_iterator_t
jpayne@69 9453 xcb_input_enter_buttons_end (const xcb_input_enter_event_t *R);
jpayne@69 9454
jpayne@69 9455 int
jpayne@69 9456 xcb_input_leave_sizeof (const void *_buffer /**< */);
jpayne@69 9457
jpayne@69 9458 int
jpayne@69 9459 xcb_input_focus_in_sizeof (const void *_buffer /**< */);
jpayne@69 9460
jpayne@69 9461 int
jpayne@69 9462 xcb_input_focus_out_sizeof (const void *_buffer /**< */);
jpayne@69 9463
jpayne@69 9464 /**
jpayne@69 9465 * Get the next element of the iterator
jpayne@69 9466 * @param i Pointer to a xcb_input_hierarchy_info_iterator_t
jpayne@69 9467 *
jpayne@69 9468 * Get the next element in the iterator. The member rem is
jpayne@69 9469 * decreased by one. The member data points to the next
jpayne@69 9470 * element. The member index is increased by sizeof(xcb_input_hierarchy_info_t)
jpayne@69 9471 */
jpayne@69 9472 void
jpayne@69 9473 xcb_input_hierarchy_info_next (xcb_input_hierarchy_info_iterator_t *i);
jpayne@69 9474
jpayne@69 9475 /**
jpayne@69 9476 * Return the iterator pointing to the last element
jpayne@69 9477 * @param i An xcb_input_hierarchy_info_iterator_t
jpayne@69 9478 * @return The iterator pointing to the last element
jpayne@69 9479 *
jpayne@69 9480 * Set the current element in the iterator to the last element.
jpayne@69 9481 * The member rem is set to 0. The member data points to the
jpayne@69 9482 * last element.
jpayne@69 9483 */
jpayne@69 9484 xcb_generic_iterator_t
jpayne@69 9485 xcb_input_hierarchy_info_end (xcb_input_hierarchy_info_iterator_t i);
jpayne@69 9486
jpayne@69 9487 int
jpayne@69 9488 xcb_input_hierarchy_sizeof (const void *_buffer);
jpayne@69 9489
jpayne@69 9490 xcb_input_hierarchy_info_t *
jpayne@69 9491 xcb_input_hierarchy_infos (const xcb_input_hierarchy_event_t *R);
jpayne@69 9492
jpayne@69 9493 int
jpayne@69 9494 xcb_input_hierarchy_infos_length (const xcb_input_hierarchy_event_t *R);
jpayne@69 9495
jpayne@69 9496 xcb_input_hierarchy_info_iterator_t
jpayne@69 9497 xcb_input_hierarchy_infos_iterator (const xcb_input_hierarchy_event_t *R);
jpayne@69 9498
jpayne@69 9499 int
jpayne@69 9500 xcb_input_raw_key_press_sizeof (const void *_buffer);
jpayne@69 9501
jpayne@69 9502 uint32_t *
jpayne@69 9503 xcb_input_raw_key_press_valuator_mask (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9504
jpayne@69 9505 int
jpayne@69 9506 xcb_input_raw_key_press_valuator_mask_length (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9507
jpayne@69 9508 xcb_generic_iterator_t
jpayne@69 9509 xcb_input_raw_key_press_valuator_mask_end (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9510
jpayne@69 9511 xcb_input_fp3232_t *
jpayne@69 9512 xcb_input_raw_key_press_axisvalues (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9513
jpayne@69 9514 int
jpayne@69 9515 xcb_input_raw_key_press_axisvalues_length (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9516
jpayne@69 9517 xcb_input_fp3232_iterator_t
jpayne@69 9518 xcb_input_raw_key_press_axisvalues_iterator (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9519
jpayne@69 9520 xcb_input_fp3232_t *
jpayne@69 9521 xcb_input_raw_key_press_axisvalues_raw (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9522
jpayne@69 9523 int
jpayne@69 9524 xcb_input_raw_key_press_axisvalues_raw_length (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9525
jpayne@69 9526 xcb_input_fp3232_iterator_t
jpayne@69 9527 xcb_input_raw_key_press_axisvalues_raw_iterator (const xcb_input_raw_key_press_event_t *R);
jpayne@69 9528
jpayne@69 9529 int
jpayne@69 9530 xcb_input_raw_key_release_sizeof (const void *_buffer /**< */);
jpayne@69 9531
jpayne@69 9532 int
jpayne@69 9533 xcb_input_raw_button_press_sizeof (const void *_buffer);
jpayne@69 9534
jpayne@69 9535 uint32_t *
jpayne@69 9536 xcb_input_raw_button_press_valuator_mask (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9537
jpayne@69 9538 int
jpayne@69 9539 xcb_input_raw_button_press_valuator_mask_length (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9540
jpayne@69 9541 xcb_generic_iterator_t
jpayne@69 9542 xcb_input_raw_button_press_valuator_mask_end (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9543
jpayne@69 9544 xcb_input_fp3232_t *
jpayne@69 9545 xcb_input_raw_button_press_axisvalues (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9546
jpayne@69 9547 int
jpayne@69 9548 xcb_input_raw_button_press_axisvalues_length (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9549
jpayne@69 9550 xcb_input_fp3232_iterator_t
jpayne@69 9551 xcb_input_raw_button_press_axisvalues_iterator (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9552
jpayne@69 9553 xcb_input_fp3232_t *
jpayne@69 9554 xcb_input_raw_button_press_axisvalues_raw (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9555
jpayne@69 9556 int
jpayne@69 9557 xcb_input_raw_button_press_axisvalues_raw_length (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9558
jpayne@69 9559 xcb_input_fp3232_iterator_t
jpayne@69 9560 xcb_input_raw_button_press_axisvalues_raw_iterator (const xcb_input_raw_button_press_event_t *R);
jpayne@69 9561
jpayne@69 9562 int
jpayne@69 9563 xcb_input_raw_button_release_sizeof (const void *_buffer /**< */);
jpayne@69 9564
jpayne@69 9565 int
jpayne@69 9566 xcb_input_raw_motion_sizeof (const void *_buffer /**< */);
jpayne@69 9567
jpayne@69 9568 int
jpayne@69 9569 xcb_input_touch_begin_sizeof (const void *_buffer);
jpayne@69 9570
jpayne@69 9571 uint32_t *
jpayne@69 9572 xcb_input_touch_begin_button_mask (const xcb_input_touch_begin_event_t *R);
jpayne@69 9573
jpayne@69 9574 int
jpayne@69 9575 xcb_input_touch_begin_button_mask_length (const xcb_input_touch_begin_event_t *R);
jpayne@69 9576
jpayne@69 9577 xcb_generic_iterator_t
jpayne@69 9578 xcb_input_touch_begin_button_mask_end (const xcb_input_touch_begin_event_t *R);
jpayne@69 9579
jpayne@69 9580 uint32_t *
jpayne@69 9581 xcb_input_touch_begin_valuator_mask (const xcb_input_touch_begin_event_t *R);
jpayne@69 9582
jpayne@69 9583 int
jpayne@69 9584 xcb_input_touch_begin_valuator_mask_length (const xcb_input_touch_begin_event_t *R);
jpayne@69 9585
jpayne@69 9586 xcb_generic_iterator_t
jpayne@69 9587 xcb_input_touch_begin_valuator_mask_end (const xcb_input_touch_begin_event_t *R);
jpayne@69 9588
jpayne@69 9589 xcb_input_fp3232_t *
jpayne@69 9590 xcb_input_touch_begin_axisvalues (const xcb_input_touch_begin_event_t *R);
jpayne@69 9591
jpayne@69 9592 int
jpayne@69 9593 xcb_input_touch_begin_axisvalues_length (const xcb_input_touch_begin_event_t *R);
jpayne@69 9594
jpayne@69 9595 xcb_input_fp3232_iterator_t
jpayne@69 9596 xcb_input_touch_begin_axisvalues_iterator (const xcb_input_touch_begin_event_t *R);
jpayne@69 9597
jpayne@69 9598 int
jpayne@69 9599 xcb_input_touch_update_sizeof (const void *_buffer /**< */);
jpayne@69 9600
jpayne@69 9601 int
jpayne@69 9602 xcb_input_touch_end_sizeof (const void *_buffer /**< */);
jpayne@69 9603
jpayne@69 9604 int
jpayne@69 9605 xcb_input_raw_touch_begin_sizeof (const void *_buffer);
jpayne@69 9606
jpayne@69 9607 uint32_t *
jpayne@69 9608 xcb_input_raw_touch_begin_valuator_mask (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9609
jpayne@69 9610 int
jpayne@69 9611 xcb_input_raw_touch_begin_valuator_mask_length (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9612
jpayne@69 9613 xcb_generic_iterator_t
jpayne@69 9614 xcb_input_raw_touch_begin_valuator_mask_end (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9615
jpayne@69 9616 xcb_input_fp3232_t *
jpayne@69 9617 xcb_input_raw_touch_begin_axisvalues (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9618
jpayne@69 9619 int
jpayne@69 9620 xcb_input_raw_touch_begin_axisvalues_length (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9621
jpayne@69 9622 xcb_input_fp3232_iterator_t
jpayne@69 9623 xcb_input_raw_touch_begin_axisvalues_iterator (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9624
jpayne@69 9625 xcb_input_fp3232_t *
jpayne@69 9626 xcb_input_raw_touch_begin_axisvalues_raw (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9627
jpayne@69 9628 int
jpayne@69 9629 xcb_input_raw_touch_begin_axisvalues_raw_length (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9630
jpayne@69 9631 xcb_input_fp3232_iterator_t
jpayne@69 9632 xcb_input_raw_touch_begin_axisvalues_raw_iterator (const xcb_input_raw_touch_begin_event_t *R);
jpayne@69 9633
jpayne@69 9634 int
jpayne@69 9635 xcb_input_raw_touch_update_sizeof (const void *_buffer /**< */);
jpayne@69 9636
jpayne@69 9637 int
jpayne@69 9638 xcb_input_raw_touch_end_sizeof (const void *_buffer /**< */);
jpayne@69 9639
jpayne@69 9640 /**
jpayne@69 9641 * Get the next element of the iterator
jpayne@69 9642 * @param i Pointer to a xcb_input_event_for_send_iterator_t
jpayne@69 9643 *
jpayne@69 9644 * Get the next element in the iterator. The member rem is
jpayne@69 9645 * decreased by one. The member data points to the next
jpayne@69 9646 * element. The member index is increased by sizeof(xcb_input_event_for_send_t)
jpayne@69 9647 */
jpayne@69 9648 void
jpayne@69 9649 xcb_input_event_for_send_next (xcb_input_event_for_send_iterator_t *i);
jpayne@69 9650
jpayne@69 9651 /**
jpayne@69 9652 * Return the iterator pointing to the last element
jpayne@69 9653 * @param i An xcb_input_event_for_send_iterator_t
jpayne@69 9654 * @return The iterator pointing to the last element
jpayne@69 9655 *
jpayne@69 9656 * Set the current element in the iterator to the last element.
jpayne@69 9657 * The member rem is set to 0. The member data points to the
jpayne@69 9658 * last element.
jpayne@69 9659 */
jpayne@69 9660 xcb_generic_iterator_t
jpayne@69 9661 xcb_input_event_for_send_end (xcb_input_event_for_send_iterator_t i);
jpayne@69 9662
jpayne@69 9663 int
jpayne@69 9664 xcb_input_send_extension_event_sizeof (const void *_buffer);
jpayne@69 9665
jpayne@69 9666 /**
jpayne@69 9667 *
jpayne@69 9668 * @param c The connection
jpayne@69 9669 * @return A cookie
jpayne@69 9670 *
jpayne@69 9671 * Delivers a request to the X server.
jpayne@69 9672 *
jpayne@69 9673 * This form can be used only if the request will not cause
jpayne@69 9674 * a reply to be generated. Any returned error will be
jpayne@69 9675 * saved for handling by xcb_request_check().
jpayne@69 9676 */
jpayne@69 9677 xcb_void_cookie_t
jpayne@69 9678 xcb_input_send_extension_event_checked (xcb_connection_t *c,
jpayne@69 9679 xcb_window_t destination,
jpayne@69 9680 uint8_t device_id,
jpayne@69 9681 uint8_t propagate,
jpayne@69 9682 uint16_t num_classes,
jpayne@69 9683 uint8_t num_events,
jpayne@69 9684 const xcb_input_event_for_send_t *events,
jpayne@69 9685 const xcb_input_event_class_t *classes);
jpayne@69 9686
jpayne@69 9687 /**
jpayne@69 9688 *
jpayne@69 9689 * @param c The connection
jpayne@69 9690 * @return A cookie
jpayne@69 9691 *
jpayne@69 9692 * Delivers a request to the X server.
jpayne@69 9693 *
jpayne@69 9694 */
jpayne@69 9695 xcb_void_cookie_t
jpayne@69 9696 xcb_input_send_extension_event (xcb_connection_t *c,
jpayne@69 9697 xcb_window_t destination,
jpayne@69 9698 uint8_t device_id,
jpayne@69 9699 uint8_t propagate,
jpayne@69 9700 uint16_t num_classes,
jpayne@69 9701 uint8_t num_events,
jpayne@69 9702 const xcb_input_event_for_send_t *events,
jpayne@69 9703 const xcb_input_event_class_t *classes);
jpayne@69 9704
jpayne@69 9705 xcb_input_event_for_send_t *
jpayne@69 9706 xcb_input_send_extension_event_events (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9707
jpayne@69 9708 int
jpayne@69 9709 xcb_input_send_extension_event_events_length (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9710
jpayne@69 9711 xcb_input_event_for_send_iterator_t
jpayne@69 9712 xcb_input_send_extension_event_events_iterator (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9713
jpayne@69 9714 xcb_input_event_class_t *
jpayne@69 9715 xcb_input_send_extension_event_classes (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9716
jpayne@69 9717 int
jpayne@69 9718 xcb_input_send_extension_event_classes_length (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9719
jpayne@69 9720 xcb_generic_iterator_t
jpayne@69 9721 xcb_input_send_extension_event_classes_end (const xcb_input_send_extension_event_request_t *R);
jpayne@69 9722
jpayne@69 9723
jpayne@69 9724 #ifdef __cplusplus
jpayne@69 9725 }
jpayne@69 9726 #endif
jpayne@69 9727
jpayne@69 9728 #endif
jpayne@69 9729
jpayne@69 9730 /**
jpayne@69 9731 * @}
jpayne@69 9732 */