2 * vim:ts=4:sw=4:expandtab
4 * i3bar - an xcb-based status- and ws-bar for i3
5 * © 2010 Axel Wagner and contributors (see also: LICENSE)
14 #include <xcb/xproto.h>
18 typedef struct rect_t rect;
20 struct ev_loop *main_loop;
30 /* First value to make it the default. */
36 /* This data structure describes the way a status block should be rendered. These
37 * variables are updated each time the statusline is re-rendered. */
38 struct status_block_render_desc {
44 /* This data structure represents one JSON dictionary, multiple of these make
45 * up one status line. */
54 /* min_width can be specified either as a numeric value (in pixels) or as a
55 * string. For strings, we set min_width to the measured text width of
66 /* The amount of pixels necessary to render a separater after the block. */
67 uint32_t sep_block_width;
69 /* Continuously-updated information on how to render this status block. */
70 struct status_block_render_desc full_render;
71 struct status_block_render_desc short_render;
77 TAILQ_ENTRY(status_block)
81 TAILQ_HEAD(statusline_head, status_block)
88 #include "workspaces.h"
90 #include "trayclients.h"
92 #include "configuration.h"
94 #include "parse_json_header.h"