10 #define LENGTH(x) (sizeof(x) / sizeof(*x))
11 #define MAX(A, B) ((A) > (B) ? (A) : (B))
12 #define MIN(A, B) ((A) < (B) ? (A) : (B))
13 #define BOOLSTR(A) ((A) ? "true" : "false")
15 #define XCB_CONFIG_WINDOW_X_Y XCB_CONFIG_WINDOW_X | XCB_CONFIG_WINDOW_Y
16 #define XCB_CONFIG_WINDOW_WIDTH_HEIGHT XCB_CONFIG_WINDOW_WIDTH | XCB_CONFIG_WINDOW_HEIGHT
17 #define XCB_CONFIG_WINDOW_X_Y_WIDTH_HEIGHT XCB_CONFIG_WINDOW_X | XCB_CONFIG_WINDOW_Y | XCB_CONFIG_WINDOW_WIDTH | XCB_CONFIG_WINDOW_HEIGHT
22 #define REMLEN(x) (BUFSIZ - strlen(x) - 1)
23 #define streq(s1, s2) (strcmp((s1), (s2)) == 0)
26 # define PUTS(x) puts(x)
27 # define PRINTF(x,...) printf(x, __VA_ARGS__)
29 # define PUTS(x) ((void)0)
30 # define PRINTF(x,...) ((void)0)
33 void warn(char *, ...);
34 __attribute__((noreturn))
35 void err(char *, ...);
36 bool get_color(char *, xcb_window_t, uint32_t *);
37 double distance(xcb_point_t, xcb_point_t);