blob: 7b30ee117bfbbe103d9ddfc321d2a6bc5d36b8e6 (
plain) (
tree)
|
|
/* See LICENSE file for copyright and license details. */
#define LIBAXL_REPLY 1 /* TODO man */
struct libaxl_reply_get_window_attributes {
uint8_t __one;
uint8_t backing_store; /* LIBAXL_NOT_USEFUL, LIBAXL_WHEN_MAPPED, or LIBAXL_ALWAYS */
uint16_t sequence_number;
uint32_t _reply_length; /* = 3 */
libaxl_visual_id_t visual;
uint16_t class; /* LIBAXL_INPUT_OUTPUT (= 1) or LIBAXL_INPUT_ONLY (= 2) */
uint8_t bit_gravity;
uint8_t win_gravity;
uint32_t backing_planes;
uint32_t backing_pixel;
libaxl_bool_t save_under;
libaxl_bool_t map_is_installed;
uint8_t map_state; /* LIBAXL_UNMAPPED, LIBAXL_UNVIEWABLE, or LIBAXL_VIEWABLE */
libaxl_bool_t override_redirect;
libaxl_colormap_t colormap; /* Can be LIBAXL_NONE */
uint32_t all_event_masks; /* TODO SETofEVENT */
uint32_t your_event_mask; /* TODO SETofEVENT */
uint16_t do_not_propagate_mask; /* TODO SETofDEVICEEVENT */
uint16_t __pad;
};
struct libaxl_reply_get_geometry {
uint8_t __one;
uint8_t depth;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_window_t root;
int16_t x;
int16_t y;
uint16_t width;
uint16_t height;
uint16_t border_width;
uint8_t __unused[10];
};
struct libaxl_reply_query_tree {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = .number_of_children */
libaxl_window_t root;
libaxl_window_t parent; /* Can be LIBAXL_NONE */
uint16_t number_of_children;
uint8_t __unused[14];
libaxl_window_t *children;
};
struct libaxl_reply_intern_atom {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_atom_t atom; /* Can be LIBAXL_NONE */
uint8_t __unused[20];
};
struct libaxl_reply_get_atom_name {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
uint16_t length_of_name;
uint8_t __unused[22];
char *name;
};
struct libaxl_reply_get_property {
uint8_t __one;
uint8_t format; /* {0 = 0, 8 = 8, 16 = 16, 32 = 32}*/
uint16_t sequence_number;
uint32_t _reply_length;
libaxl_atom_t type; /* Can be LIBAXL_NONE */
uint32_t bytes_after;
uint32_t length_of_value; /* in format units */
uint8_t __unused[12];
union {
char *value;
uint8_t *value8;
uint16_t *value16;
uint32_t *value32;
};
};
struct libaxl_reply_list_properties {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
uint16_t number_of_atoms;
uint8_t __unused[22];
libaxl_atom_t *atoms;
};
struct libaxl_reply_get_selection_owner {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_window_t owner; /* Can be LIBAXL_NONE */
uint8_t __unused[20];
};
struct libaxl_reply_grab_pointer {
uint8_t __one;
uint8_t status; /* See "grab status" in libaxl-consts.h */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint8_t __unused[24];
};
struct libaxl_reply_grab_keyboard {
uint8_t __one;
uint8_t status; /* See "grab status" in libaxl-consts.h */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint8_t __unused[24];
};
struct libaxl_reply_query_pointer {
uint8_t __one;
libaxl_bool_t same_screen;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_window_t root;
libaxl_window_t child; /* Can be LIBAXL_NONE */
int16_t root_x;
int16_t root_y;
int16_t win_x;
int16_t win_y;
libaxl_keybutmask_t mask; /* TODO ? SETofKEYBUTMASK shouldn't have its own type */
uint8_t __unused[6];
};
struct libaxl_reply_get_motion_events {
uint8_t __one;
libaxl_bool_t same_screen;
uint16_t sequence_number;
uint32_t _reply_length; /* = 2 * .number_of_events */
uint32_t number_of_events;
uint8_t __unused[20];
struct libaxl_timecoord *events;
};
struct libaxl_reply_translate_coordinates {
uint8_t __one;
libaxl_bool_t same_screen;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_window_t child; /* Can be LIBAXL_NONE */
int16_t dest_x;
int16_t dest_y;
int8_t __unused[16];
};
struct libaxl_reply_get_input_focus {
uint8_t __one;
uint8_t revert_to; /* LIBAXL_NONE, LIBAXL_POINTER_ROOT, or LIBAXL_PARENT */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_window_t focus; /* Can be LIBAXL_NONE or LIBAXL_POINTER_ROOT */
int8_t __unused[20];
};
struct libaxl_reply_query_keymap {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 2 */
uint8_t keys[32];
};
struct libaxl_reply_query_font {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
struct libaxl_charinfo min_bounds;
uint32_t __unused1;
struct libaxl_charinfo max_bounds;
uint32_t __unused2;
uint16_t min_char_or_byte2;
uint16_t max_char_or_byte2;
uint16_t default_char;
uint16_t number_of_properties;
uint8_t draw_direction; /* LIBAXL_LEFT_TO_RIGHT or LIBAXL_RIGHT_TO_LEFT */
uint8_t min_byte1;
uint8_t max_byte1;
libaxl_bool_t all_chars_exist;
int16_t font_ascent;
int16_t font_descent;
uint32_t number_of_char_infos;
struct libaxl_fontprop *properties;
struct libaxl_charinfo *char_infos;
};
struct libaxl_reply_query_text_extents {
uint8_t __one;
uint8_t draw_direction; /* LIBAXL_LEFT_TO_RIGHT or LIBAXL_RIGHT_TO_LEFT */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
int16_t font_ascent;
int16_t font_descent;
int16_t overall_ascent;
int16_t overall_descent;
int32_t overall_width;
int32_t overall_left;
int32_t overall_right;
uint8_t __unused[4];
};
struct libaxl_reply_list_fonts {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
uint16_t number_of_names;
uint8_t __unused[22];
struct libaxl_str8 *names;
};
struct libaxl_reply_list_fonts_with_info {
uint8_t __one;
uint8_t length_of_name; /* 0 = end of series */
uint16_t sequence_number;
uint32_t _reply_length; /* = 7 if .length_of_name = 0 */
/* the rest (52 bytes) are unused if .length_of_name = 0 */
struct libaxl_charinfo min_bounds;
uint32_t __unused1;
struct libaxl_charinfo max_bounds;
uint32_t __unused2;
uint16_t min_char_or_byte2;
uint16_t max_char_or_byte2;
uint16_t default_char;
uint16_t number_of_properties;
uint8_t draw_direction; /* LIBAXL_LEFT_TO_RIGHT or LIBAXL_RIGHT_TO_LEFT */
uint8_t min_byte1;
uint8_t max_byte1;
libaxl_bool_t all_chars_exist;
int16_t font_ascent;
int16_t font_descent;
uint32_t replies_hint;
struct libaxl_fontprop *properties;
char *name;
};
struct libaxl_reply_get_font_path {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
uint16_t number_of_strs;
uint8_t __unused[22];
struct libaxl_str8 *path;
};
struct libaxl_reply_get_image {
uint8_t __one;
uint8_t depth;
uint16_t sequence_number;
uint32_t _reply_length;
libaxl_visual_id_t visual; /* Can be LIBAXL_NONE */
uint8_t __unused[20];
size_t size_of_data;
uint8_t *data;
};
struct libaxl_reply_list_installed_colormaps {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = .number_of_cmaps */
uint16_t number_of_cmaps;
uint8_t __unused[22];
libaxl_colormap_t *cmaps;
};
struct libaxl_reply_alloc_color {
uint8_t __one;
uint8_t __pad1;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t red;
uint16_t green;
uint16_t blue;
uint16_t __pad2;
uint32_t pixel;
uint8_t __unused[12];
};
struct libaxl_reply_alloc_named_color {
uint8_t __one;
uint8_t __pad1;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint32_t pixel;
uint16_t exact_red;
uint16_t exact_green;
uint16_t exact_blue;
uint16_t visual_red;
uint16_t visual_green;
uint16_t visual_blue;
uint8_t __unused[8];
};
struct libaxl_reply_alloc_color_cells {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length;
uint16_t number_of_pixels;
uint16_t number_of_masks;
uint8_t __used[20];
uint32_t *pixels;
uint32_t *mask;
};
struct libaxl_reply_alloc_color_planes {
uint8_t __one;
uint8_t __pad1;
uint16_t sequence_number;
uint32_t _reply_length; /* = .number_of_pixels */
uint16_t number_of_pixels;
uint16_t __pad2;
uint32_t red_mask;
uint32_t green_mask;
uint32_t blue_mask;
uint8_t __unused[8];
uint32_t *pixels;
};
struct libaxl_reply_query_colors {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 2 * .number_of_colors */
uint16_t number_of_colors;
uint8_t __unused[22];
struct libaxl_rgb16 *colors;
};
struct libaxl_reply_lookup_color {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t exact_red;
uint16_t exact_green;
uint16_t exact_blue;
uint16_t visual_red;
uint16_t visual_green;
uint16_t visual_blue;
uint8_t __unused[12];
};
struct libaxl_reply_query_best_size {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t width;
uint16_t height;
uint8_t __unused[20];
};
struct libaxl_reply_query_extension {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
libaxl_bool_t present;
uint8_t major_opcode;
uint8_t first_event;
uint8_t first_error;
uint8_t __unused[20];
};
struct libaxl_reply_list_extensions {
uint8_t __one;
uint8_t number_of_names;
uint16_t sequence_number;
uint32_t _reply_length;
uint8_t __unused[24];
struct libaxl_str8 *names;
};
struct libaxl_reply_get_keyboard_mapping {
uint8_t __one;
uint8_t keysyms_per_keycode;
uint16_t sequence_number;
uint32_t _reply_length; /* = count field from the request divided by .keysyms_per_keycode */
uint8_t __unused[24];
libaxl_keysym_t *keysyms;
};
struct libaxl_reply_get_keyboard_control {
uint8_t __one;
uint8_t global_auto_repeat; /* LIBAXL_OFF or LIBAXL_ON */
uint16_t sequence_number;
uint32_t _reply_length; /* = 5 */
uint32_t led_mask;
uint8_t key_click_percent;
uint8_t bell_percent;
uint16_t bell_pitch;
uint16_t bell_duration;
uint16_t __unused;
uint8_t auto_repeats[32];
};
struct libaxl_reply_get_pointer_control {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t acceleration_numerator;
uint16_t acceleration_denominator;
uint16_t threshold;
uint8_t __unused[18];
};
struct libaxl_reply_get_screen_saver {
uint8_t __one;
uint8_t __pad;
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t timeout;
uint16_t interval;
uint8_t prefer_blanking; /* LIBAXL_NO or LIBAXL_YES */
uint8_t allow_exposures; /* LIBAXL_NO or LIBAXL_YES */
uint8_t __unused[18];
};
struct libaxl_reply_list_hosts {
uint8_t __one;
uint8_t mode; /* LIBAXL_DISABLED or LIBAXL_ENABLED */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint16_t number_of_hosts;
uint8_t __unused[22];
struct libaxl_host *hosts;
};
struct libaxl_reply_set_pointer_mapping {
uint8_t __one;
uint8_t status; /* LIBAXL_SUCCESS or LIBAXL_BUSY */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint8_t __unused[24];
};
struct libaxl_reply_get_pointer_mapping {
uint8_t __one;
uint8_t length_of_map;
uint16_t sequence_number;
uint32_t _reply_length;
uint8_t __unused[24];
uint8_t *map;
};
struct libaxl_reply_set_modifier_mapping {
uint8_t __one;
uint8_t status; /* LIBAXL_SUCCESS, LIBAXL_BUSY, or LIBAXL_FAILED */
uint16_t sequence_number;
uint32_t _reply_length; /* = 0 */
uint8_t __unused[24];
};
struct libaxl_reply_get_modifier_mapping {
uint8_t __one;
uint8_t keycodes_per_modifier; /* pairs */
uint16_t sequence_number;
uint32_t _reply_length; /* = 2 * .keycodes_per_modifier */
uint8_t __unused[24];
libaxl_keycode_t *keycodes;
};
union libaxl_reply {
struct {
uint8_t __one;
uint8_t __data;
uint16_t sequence_number;
uint32_t _reply_length;
};
#include "libaxl-replies-structs.h"
};
|