00001
00002
00003
00004
00005
00012 #ifndef __SCREENSAVER_H
00013 #define __SCREENSAVER_H
00014
00015 #include "xcb.h"
00016 #include "xproto.h"
00017
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021
00022 #define XCB_SCREENSAVER_MAJOR_VERSION 1
00023 #define XCB_SCREENSAVER_MINOR_VERSION 1
00024
00025 extern xcb_extension_t xcb_screensaver_id;
00026
00027 typedef enum xcb_screensaver_kind_t {
00028 XCB_SCREENSAVER_KIND_BLANKED = 0,
00029 XCB_SCREENSAVER_KIND_INTERNAL = 1,
00030 XCB_SCREENSAVER_KIND_EXTERNAL = 2
00031 } xcb_screensaver_kind_t;
00032
00033 typedef enum xcb_screensaver_event_t {
00034 XCB_SCREENSAVER_EVENT_NOTIFY_MASK = 1,
00035 XCB_SCREENSAVER_EVENT_CYCLE_MASK = 2
00036 } xcb_screensaver_event_t;
00037
00038 typedef enum xcb_screensaver_state_t {
00039 XCB_SCREENSAVER_STATE_OFF = 0,
00040 XCB_SCREENSAVER_STATE_ON = 1,
00041 XCB_SCREENSAVER_STATE_CYCLE = 2,
00042 XCB_SCREENSAVER_STATE_DISABLED = 3
00043 } xcb_screensaver_state_t;
00044
00048 typedef struct xcb_screensaver_query_version_cookie_t {
00049 unsigned int sequence;
00050 } xcb_screensaver_query_version_cookie_t;
00051
00053 #define XCB_SCREENSAVER_QUERY_VERSION 0
00054
00058 typedef struct xcb_screensaver_query_version_request_t {
00059 uint8_t major_opcode;
00060 uint8_t minor_opcode;
00061 uint16_t length;
00062 uint8_t client_major_version;
00063 uint8_t client_minor_version;
00064 uint8_t pad0[2];
00065 } xcb_screensaver_query_version_request_t;
00066
00070 typedef struct xcb_screensaver_query_version_reply_t {
00071 uint8_t response_type;
00072 uint8_t pad0;
00073 uint16_t sequence;
00074 uint32_t length;
00075 uint16_t server_major_version;
00076 uint16_t server_minor_version;
00077 uint8_t pad1[20];
00078 } xcb_screensaver_query_version_reply_t;
00079
00083 typedef struct xcb_screensaver_query_info_cookie_t {
00084 unsigned int sequence;
00085 } xcb_screensaver_query_info_cookie_t;
00086
00088 #define XCB_SCREENSAVER_QUERY_INFO 1
00089
00093 typedef struct xcb_screensaver_query_info_request_t {
00094 uint8_t major_opcode;
00095 uint8_t minor_opcode;
00096 uint16_t length;
00097 xcb_drawable_t drawable;
00098 } xcb_screensaver_query_info_request_t;
00099
00103 typedef struct xcb_screensaver_query_info_reply_t {
00104 uint8_t response_type;
00105 uint8_t state;
00106 uint16_t sequence;
00107 uint32_t length;
00108 xcb_window_t saver_window;
00109 uint32_t ms_until_server;
00110 uint32_t ms_since_user_input;
00111 uint32_t event_mask;
00112 uint8_t kind;
00113 uint8_t pad0[7];
00114 } xcb_screensaver_query_info_reply_t;
00115
00117 #define XCB_SCREENSAVER_SELECT_INPUT 2
00118
00122 typedef struct xcb_screensaver_select_input_request_t {
00123 uint8_t major_opcode;
00124 uint8_t minor_opcode;
00125 uint16_t length;
00126 xcb_drawable_t drawable;
00127 uint32_t event_mask;
00128 } xcb_screensaver_select_input_request_t;
00129
00133 typedef struct xcb_screensaver_set_attributes_value_list_t {
00134 xcb_pixmap_t background_pixmap;
00135 uint32_t background_pixel;
00136 xcb_pixmap_t border_pixmap;
00137 uint32_t border_pixel;
00138 uint32_t bit_gravity;
00139 uint32_t win_gravity;
00140 uint32_t backing_store;
00141 uint32_t backing_planes;
00142 uint32_t backing_pixel;
00143 xcb_bool32_t override_redirect;
00144 xcb_bool32_t save_under;
00145 uint32_t event_mask;
00146 uint32_t do_not_propogate_mask;
00147 xcb_colormap_t colormap;
00148 xcb_cursor_t cursor;
00149 } xcb_screensaver_set_attributes_value_list_t;
00150
00152 #define XCB_SCREENSAVER_SET_ATTRIBUTES 3
00153
00157 typedef struct xcb_screensaver_set_attributes_request_t {
00158 uint8_t major_opcode;
00159 uint8_t minor_opcode;
00160 uint16_t length;
00161 xcb_drawable_t drawable;
00162 int16_t x;
00163 int16_t y;
00164 uint16_t width;
00165 uint16_t height;
00166 uint16_t border_width;
00167 uint8_t _class;
00168 uint8_t depth;
00169 xcb_visualid_t visual;
00170 uint32_t value_mask;
00171 } xcb_screensaver_set_attributes_request_t;
00172
00174 #define XCB_SCREENSAVER_UNSET_ATTRIBUTES 4
00175
00179 typedef struct xcb_screensaver_unset_attributes_request_t {
00180 uint8_t major_opcode;
00181 uint8_t minor_opcode;
00182 uint16_t length;
00183 xcb_drawable_t drawable;
00184 } xcb_screensaver_unset_attributes_request_t;
00185
00187 #define XCB_SCREENSAVER_SUSPEND 5
00188
00192 typedef struct xcb_screensaver_suspend_request_t {
00193 uint8_t major_opcode;
00194 uint8_t minor_opcode;
00195 uint16_t length;
00196 uint8_t suspend;
00197 uint8_t pad0[3];
00198 } xcb_screensaver_suspend_request_t;
00199
00201 #define XCB_SCREENSAVER_NOTIFY 0
00202
00206 typedef struct xcb_screensaver_notify_event_t {
00207 uint8_t response_type;
00208 uint8_t state;
00209 uint16_t sequence;
00210 xcb_timestamp_t time;
00211 xcb_window_t root;
00212 xcb_window_t window;
00213 uint8_t kind;
00214 uint8_t forced;
00215 uint8_t pad0[14];
00216 } xcb_screensaver_notify_event_t;
00217
00226 xcb_screensaver_query_version_cookie_t
00227 xcb_screensaver_query_version (xcb_connection_t *c,
00228 uint8_t client_major_version,
00229 uint8_t client_minor_version);
00230
00242 xcb_screensaver_query_version_cookie_t
00243 xcb_screensaver_query_version_unchecked (xcb_connection_t *c,
00244 uint8_t client_major_version,
00245 uint8_t client_minor_version);
00246
00261 xcb_screensaver_query_version_reply_t *
00262 xcb_screensaver_query_version_reply (xcb_connection_t *c,
00263 xcb_screensaver_query_version_cookie_t cookie ,
00264 xcb_generic_error_t **e);
00265
00274 xcb_screensaver_query_info_cookie_t
00275 xcb_screensaver_query_info (xcb_connection_t *c,
00276 xcb_drawable_t drawable);
00277
00289 xcb_screensaver_query_info_cookie_t
00290 xcb_screensaver_query_info_unchecked (xcb_connection_t *c,
00291 xcb_drawable_t drawable);
00292
00307 xcb_screensaver_query_info_reply_t *
00308 xcb_screensaver_query_info_reply (xcb_connection_t *c,
00309 xcb_screensaver_query_info_cookie_t cookie ,
00310 xcb_generic_error_t **e);
00311
00323 xcb_void_cookie_t
00324 xcb_screensaver_select_input_checked (xcb_connection_t *c,
00325 xcb_drawable_t drawable,
00326 uint32_t event_mask);
00327
00336 xcb_void_cookie_t
00337 xcb_screensaver_select_input (xcb_connection_t *c,
00338 xcb_drawable_t drawable,
00339 uint32_t event_mask);
00340
00341 int
00342 xcb_screensaver_set_attributes_value_list_serialize (void **_buffer,
00343 uint32_t value_mask,
00344 const xcb_screensaver_set_attributes_value_list_t *_aux);
00345
00346 int
00347 xcb_screensaver_set_attributes_value_list_unpack (const void *_buffer,
00348 uint32_t value_mask,
00349 xcb_screensaver_set_attributes_value_list_t *_aux);
00350
00351 int
00352 xcb_screensaver_set_attributes_value_list_sizeof (const void *_buffer,
00353 uint32_t value_mask);
00354
00355 int
00356 xcb_screensaver_set_attributes_sizeof (const void *_buffer);
00357
00369 xcb_void_cookie_t
00370 xcb_screensaver_set_attributes_checked (xcb_connection_t *c,
00371 xcb_drawable_t drawable,
00372 int16_t x,
00373 int16_t y,
00374 uint16_t width,
00375 uint16_t height,
00376 uint16_t border_width,
00377 uint8_t _class,
00378 uint8_t depth,
00379 xcb_visualid_t visual,
00380 uint32_t value_mask,
00381 const void *value_list);
00382
00391 xcb_void_cookie_t
00392 xcb_screensaver_set_attributes (xcb_connection_t *c,
00393 xcb_drawable_t drawable,
00394 int16_t x,
00395 int16_t y,
00396 uint16_t width,
00397 uint16_t height,
00398 uint16_t border_width,
00399 uint8_t _class,
00400 uint8_t depth,
00401 xcb_visualid_t visual,
00402 uint32_t value_mask,
00403 const void *value_list);
00404
00416 xcb_void_cookie_t
00417 xcb_screensaver_set_attributes_aux_checked (xcb_connection_t *c,
00418 xcb_drawable_t drawable,
00419 int16_t x,
00420 int16_t y,
00421 uint16_t width,
00422 uint16_t height,
00423 uint16_t border_width,
00424 uint8_t _class,
00425 uint8_t depth,
00426 xcb_visualid_t visual,
00427 uint32_t value_mask,
00428 const xcb_screensaver_set_attributes_value_list_t *value_list);
00429
00438 xcb_void_cookie_t
00439 xcb_screensaver_set_attributes_aux (xcb_connection_t *c,
00440 xcb_drawable_t drawable,
00441 int16_t x,
00442 int16_t y,
00443 uint16_t width,
00444 uint16_t height,
00445 uint16_t border_width,
00446 uint8_t _class,
00447 uint8_t depth,
00448 xcb_visualid_t visual,
00449 uint32_t value_mask,
00450 const xcb_screensaver_set_attributes_value_list_t *value_list);
00451
00452 void *
00453 xcb_screensaver_set_attributes_value_list (const xcb_screensaver_set_attributes_request_t *R);
00454
00466 xcb_void_cookie_t
00467 xcb_screensaver_unset_attributes_checked (xcb_connection_t *c,
00468 xcb_drawable_t drawable);
00469
00478 xcb_void_cookie_t
00479 xcb_screensaver_unset_attributes (xcb_connection_t *c,
00480 xcb_drawable_t drawable);
00481
00493 xcb_void_cookie_t
00494 xcb_screensaver_suspend_checked (xcb_connection_t *c,
00495 uint8_t suspend);
00496
00505 xcb_void_cookie_t
00506 xcb_screensaver_suspend (xcb_connection_t *c,
00507 uint8_t suspend);
00508
00509
00510 #ifdef __cplusplus
00511 }
00512 #endif
00513
00514 #endif
00515