Escape -s in dmenu.1
[dmenu.git] / dmenu.h
1 /* (C)opyright MMVI-MMVII Anselm R. Garbe <garbeam at gmail dot com>
2  * See LICENSE file for license details.
3  */
4
5 #include <X11/Xlib.h>
6
7 #define FONT                    "-*-fixed-medium-r-normal-*-13-*-*-*-*-*-*-*"
8 #define NORMBGCOLOR             "#eeeeee"
9 #define NORMFGCOLOR             "#222222"
10 #define SELBGCOLOR              "#006699"
11 #define SELFGCOLOR              "#ffffff"
12 #define SPACE                   30 /* px */
13
14 /* color */
15 enum { ColFG, ColBG, ColLast };
16
17 typedef struct {
18         int x, y, w, h;
19         unsigned long norm[ColLast];
20         unsigned long sel[ColLast];
21         Drawable drawable;
22         GC gc;
23         struct {
24                 XFontStruct *xfont;
25                 XFontSet set;
26                 int ascent;
27                 int descent;
28                 int height;
29         } font;
30 } DC; /* draw context */
31
32 int screen;
33 Display *dpy;
34 DC dc;                  /* global drawing context */
35
36 /* draw.c */
37 void drawtext(const char *text, unsigned long col[ColLast]);
38 unsigned int textw(const char *text);
39 unsigned int textnw(const char *text, unsigned int len);
40
41 /* util.c */
42 void *emalloc(unsigned int size);               /* allocates memory, exits on error */
43 void eprint(const char *errstr, ...);           /* prints errstr and exits with 1 */
44 char *estrdup(const char *str);                 /* duplicates str, exits on allocation error */