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
00131 #define XCB_SCREENSAVER_SET_ATTRIBUTES 3
00132
00136 typedef struct xcb_screensaver_set_attributes_request_t {
00137 uint8_t major_opcode;
00138 uint8_t minor_opcode;
00139 uint16_t length;
00140 xcb_drawable_t drawable;
00141 int16_t x;
00142 int16_t y;
00143 uint16_t width;
00144 uint16_t height;
00145 uint16_t border_width;
00146 uint8_t _class;
00147 uint8_t depth;
00148 xcb_visualid_t visual;
00149 uint32_t value_mask;
00150 } xcb_screensaver_set_attributes_request_t;
00151
00153 #define XCB_SCREENSAVER_UNSET_ATTRIBUTES 4
00154
00158 typedef struct xcb_screensaver_unset_attributes_request_t {
00159 uint8_t major_opcode;
00160 uint8_t minor_opcode;
00161 uint16_t length;
00162 xcb_drawable_t drawable;
00163 } xcb_screensaver_unset_attributes_request_t;
00164
00166 #define XCB_SCREENSAVER_SUSPEND 5
00167
00171 typedef struct xcb_screensaver_suspend_request_t {
00172 uint8_t major_opcode;
00173 uint8_t minor_opcode;
00174 uint16_t length;
00175 uint8_t suspend;
00176 uint8_t pad0[3];
00177 } xcb_screensaver_suspend_request_t;
00178
00180 #define XCB_SCREENSAVER_NOTIFY 0
00181
00185 typedef struct xcb_screensaver_notify_event_t {
00186 uint8_t response_type;
00187 uint8_t state;
00188 uint16_t sequence;
00189 xcb_timestamp_t time;
00190 xcb_window_t root;
00191 xcb_window_t window;
00192 uint8_t kind;
00193 uint8_t forced;
00194 uint8_t pad0[14];
00195 } xcb_screensaver_notify_event_t;
00196
00205 xcb_screensaver_query_version_cookie_t
00206 xcb_screensaver_query_version (xcb_connection_t *c ,
00207 uint8_t client_major_version ,
00208 uint8_t client_minor_version );
00209
00221 xcb_screensaver_query_version_cookie_t
00222 xcb_screensaver_query_version_unchecked (xcb_connection_t *c ,
00223 uint8_t client_major_version ,
00224 uint8_t client_minor_version );
00225
00240 xcb_screensaver_query_version_reply_t *
00241 xcb_screensaver_query_version_reply (xcb_connection_t *c ,
00242 xcb_screensaver_query_version_cookie_t cookie ,
00243 xcb_generic_error_t **e );
00244
00253 xcb_screensaver_query_info_cookie_t
00254 xcb_screensaver_query_info (xcb_connection_t *c ,
00255 xcb_drawable_t drawable );
00256
00268 xcb_screensaver_query_info_cookie_t
00269 xcb_screensaver_query_info_unchecked (xcb_connection_t *c ,
00270 xcb_drawable_t drawable );
00271
00286 xcb_screensaver_query_info_reply_t *
00287 xcb_screensaver_query_info_reply (xcb_connection_t *c ,
00288 xcb_screensaver_query_info_cookie_t cookie ,
00289 xcb_generic_error_t **e );
00290
00302 xcb_void_cookie_t
00303 xcb_screensaver_select_input_checked (xcb_connection_t *c ,
00304 xcb_drawable_t drawable ,
00305 uint32_t event_mask );
00306
00315 xcb_void_cookie_t
00316 xcb_screensaver_select_input (xcb_connection_t *c ,
00317 xcb_drawable_t drawable ,
00318 uint32_t event_mask );
00319
00320 int
00321 xcb_screensaver_set_attributes_sizeof (const void *_buffer );
00322
00334 xcb_void_cookie_t
00335 xcb_screensaver_set_attributes_checked (xcb_connection_t *c ,
00336 xcb_drawable_t drawable ,
00337 int16_t x ,
00338 int16_t y ,
00339 uint16_t width ,
00340 uint16_t height ,
00341 uint16_t border_width ,
00342 uint8_t _class ,
00343 uint8_t depth ,
00344 xcb_visualid_t visual ,
00345 uint32_t value_mask ,
00346 const uint32_t *value_list );
00347
00356 xcb_void_cookie_t
00357 xcb_screensaver_set_attributes (xcb_connection_t *c ,
00358 xcb_drawable_t drawable ,
00359 int16_t x ,
00360 int16_t y ,
00361 uint16_t width ,
00362 uint16_t height ,
00363 uint16_t border_width ,
00364 uint8_t _class ,
00365 uint8_t depth ,
00366 xcb_visualid_t visual ,
00367 uint32_t value_mask ,
00368 const uint32_t *value_list );
00369
00381 xcb_void_cookie_t
00382 xcb_screensaver_unset_attributes_checked (xcb_connection_t *c ,
00383 xcb_drawable_t drawable );
00384
00393 xcb_void_cookie_t
00394 xcb_screensaver_unset_attributes (xcb_connection_t *c ,
00395 xcb_drawable_t drawable );
00396
00408 xcb_void_cookie_t
00409 xcb_screensaver_suspend_checked (xcb_connection_t *c ,
00410 uint8_t suspend );
00411
00420 xcb_void_cookie_t
00421 xcb_screensaver_suspend (xcb_connection_t *c ,
00422 uint8_t suspend );
00423
00424
00425 #ifdef __cplusplus
00426 }
00427 #endif
00428
00429 #endif
00430