diff options
-rw-r--r-- | dmenu.c | 52 |
1 files changed, 27 insertions, 25 deletions
@@ -20,10 +20,12 @@ | |||
20 | enum { ColFG, ColBG, ColLast }; | 20 | enum { ColFG, ColBG, ColLast }; |
21 | 21 | ||
22 | /* typedefs */ | 22 | /* typedefs */ |
23 | typedef unsigned int uint; | ||
24 | typedef unsigned long ulong; | ||
23 | typedef struct { | 25 | typedef struct { |
24 | int x, y, w, h; | 26 | int x, y, w, h; |
25 | unsigned long norm[ColLast]; | 27 | ulong norm[ColLast]; |
26 | unsigned long sel[ColLast]; | 28 | ulong sel[ColLast]; |
27 | Drawable drawable; | 29 | Drawable drawable; |
28 | GC gc; | 30 | GC gc; |
29 | struct { | 31 | struct { |
@@ -48,11 +50,11 @@ void calcoffsets(void); | |||
48 | char *cistrstr(const char *s, const char *sub); | 50 | char *cistrstr(const char *s, const char *sub); |
49 | void cleanup(void); | 51 | void cleanup(void); |
50 | void drawmenu(void); | 52 | void drawmenu(void); |
51 | void drawtext(const char *text, unsigned long col[ColLast]); | 53 | void drawtext(const char *text, ulong col[ColLast]); |
52 | void *emalloc(unsigned int size); | 54 | void *emalloc(uint size); |
53 | void eprint(const char *errstr, ...); | 55 | void eprint(const char *errstr, ...); |
54 | char *estrdup(const char *str); | 56 | char *estrdup(const char *str); |
55 | unsigned long getcolor(const char *colstr); | 57 | ulong getcolor(const char *colstr); |
56 | Bool grabkeyboard(void); | 58 | Bool grabkeyboard(void); |
57 | void initfont(const char *fontstr); | 59 | void initfont(const char *fontstr); |
58 | void kpress(XKeyEvent * e); | 60 | void kpress(XKeyEvent * e); |
@@ -60,8 +62,8 @@ void match(char *pattern); | |||
60 | void readstdin(void); | 62 | void readstdin(void); |
61 | void run(void); | 63 | void run(void); |
62 | void setup(Bool topbar); | 64 | void setup(Bool topbar); |
63 | unsigned int textnw(const char *text, unsigned int len); | 65 | uint textnw(const char *text, uint len); |
64 | unsigned int textw(const char *text); | 66 | uint textw(const char *text); |
65 | 67 | ||
66 | #include "config.h" | 68 | #include "config.h" |
67 | 69 | ||
@@ -76,10 +78,10 @@ char *selfg = SELFGCOLOR; | |||
76 | char text[4096]; | 78 | char text[4096]; |
77 | int screen; | 79 | int screen; |
78 | int ret = 0; | 80 | int ret = 0; |
79 | unsigned int cmdw = 0; | 81 | uint cmdw = 0; |
80 | unsigned int mw, mh; | 82 | uint mw, mh; |
81 | unsigned int promptw = 0; | 83 | uint promptw = 0; |
82 | unsigned int numlockmask = 0; | 84 | uint numlockmask = 0; |
83 | Bool running = True; | 85 | Bool running = True; |
84 | Display *dpy; | 86 | Display *dpy; |
85 | DC dc = {0}; | 87 | DC dc = {0}; |
@@ -106,7 +108,7 @@ appenditem(Item *i, Item **list, Item **last) { | |||
106 | 108 | ||
107 | void | 109 | void |
108 | calcoffsets(void) { | 110 | calcoffsets(void) { |
109 | unsigned int tw, w; | 111 | uint tw, w; |
110 | 112 | ||
111 | if(!curr) | 113 | if(!curr) |
112 | return; | 114 | return; |
@@ -133,7 +135,7 @@ calcoffsets(void) { | |||
133 | char * | 135 | char * |
134 | cistrstr(const char *s, const char *sub) { | 136 | cistrstr(const char *s, const char *sub) { |
135 | int c, csub; | 137 | int c, csub; |
136 | unsigned int len; | 138 | uint len; |
137 | 139 | ||
138 | if(!sub) | 140 | if(!sub) |
139 | return (char *)s; | 141 | return (char *)s; |
@@ -215,10 +217,10 @@ drawmenu(void) { | |||
215 | } | 217 | } |
216 | 218 | ||
217 | void | 219 | void |
218 | drawtext(const char *text, unsigned long col[ColLast]) { | 220 | drawtext(const char *text, ulong col[ColLast]) { |
219 | int x, y, w, h; | 221 | int x, y, w, h; |
220 | static char buf[256]; | 222 | static char buf[256]; |
221 | unsigned int len, olen; | 223 | uint len, olen; |
222 | XRectangle r = { dc.x, dc.y, dc.w, dc.h }; | 224 | XRectangle r = { dc.x, dc.y, dc.w, dc.h }; |
223 | 225 | ||
224 | XSetForeground(dpy, dc.gc, col[ColBG]); | 226 | XSetForeground(dpy, dc.gc, col[ColBG]); |
@@ -255,7 +257,7 @@ drawtext(const char *text, unsigned long col[ColLast]) { | |||
255 | } | 257 | } |
256 | 258 | ||
257 | void * | 259 | void * |
258 | emalloc(unsigned int size) { | 260 | emalloc(uint size) { |
259 | void *res = malloc(size); | 261 | void *res = malloc(size); |
260 | 262 | ||
261 | if(!res) | 263 | if(!res) |
@@ -282,7 +284,7 @@ estrdup(const char *str) { | |||
282 | return res; | 284 | return res; |
283 | } | 285 | } |
284 | 286 | ||
285 | unsigned long | 287 | ulong |
286 | getcolor(const char *colstr) { | 288 | getcolor(const char *colstr) { |
287 | Colormap cmap = DefaultColormap(dpy, screen); | 289 | Colormap cmap = DefaultColormap(dpy, screen); |
288 | XColor color; | 290 | XColor color; |
@@ -294,7 +296,7 @@ getcolor(const char *colstr) { | |||
294 | 296 | ||
295 | Bool | 297 | Bool |
296 | grabkeyboard(void) { | 298 | grabkeyboard(void) { |
297 | unsigned int len; | 299 | uint len; |
298 | 300 | ||
299 | for(len = 1000; len; len--) { | 301 | for(len = 1000; len; len--) { |
300 | if(XGrabKeyboard(dpy, root, True, GrabModeAsync, GrabModeAsync, CurrentTime) | 302 | if(XGrabKeyboard(dpy, root, True, GrabModeAsync, GrabModeAsync, CurrentTime) |
@@ -350,7 +352,7 @@ void | |||
350 | kpress(XKeyEvent * e) { | 352 | kpress(XKeyEvent * e) { |
351 | char buf[32]; | 353 | char buf[32]; |
352 | int i, num; | 354 | int i, num; |
353 | unsigned int len; | 355 | uint len; |
354 | KeySym ksym; | 356 | KeySym ksym; |
355 | 357 | ||
356 | len = strlen(text); | 358 | len = strlen(text); |
@@ -517,7 +519,7 @@ kpress(XKeyEvent * e) { | |||
517 | 519 | ||
518 | void | 520 | void |
519 | match(char *pattern) { | 521 | match(char *pattern) { |
520 | unsigned int plen; | 522 | uint plen; |
521 | Item *i, *itemend, *lexact, *lprefix, *lsubstr, *exactend, *prefixend, *substrend; | 523 | Item *i, *itemend, *lexact, *lprefix, *lsubstr, *exactend, *prefixend, *substrend; |
522 | 524 | ||
523 | if(!pattern) | 525 | if(!pattern) |
@@ -559,7 +561,7 @@ match(char *pattern) { | |||
559 | void | 561 | void |
560 | readstdin(void) { | 562 | readstdin(void) { |
561 | char *p, buf[1024]; | 563 | char *p, buf[1024]; |
562 | unsigned int len = 0, max = 0; | 564 | uint len = 0, max = 0; |
563 | Item *i, *new; | 565 | Item *i, *new; |
564 | 566 | ||
565 | i = 0; | 567 | i = 0; |
@@ -675,8 +677,8 @@ setup(Bool topbar) { | |||
675 | XMapRaised(dpy, win); | 677 | XMapRaised(dpy, win); |
676 | } | 678 | } |
677 | 679 | ||
678 | unsigned int | 680 | uint |
679 | textnw(const char *text, unsigned int len) { | 681 | textnw(const char *text, uint len) { |
680 | XRectangle r; | 682 | XRectangle r; |
681 | 683 | ||
682 | if(dc.font.set) { | 684 | if(dc.font.set) { |
@@ -686,14 +688,14 @@ textnw(const char *text, unsigned int len) { | |||
686 | return XTextWidth(dc.font.xfont, text, len); | 688 | return XTextWidth(dc.font.xfont, text, len); |
687 | } | 689 | } |
688 | 690 | ||
689 | unsigned int | 691 | uint |
690 | textw(const char *text) { | 692 | textw(const char *text) { |
691 | return textnw(text, strlen(text)) + dc.font.height; | 693 | return textnw(text, strlen(text)) + dc.font.height; |
692 | } | 694 | } |
693 | 695 | ||
694 | int | 696 | int |
695 | main(int argc, char *argv[]) { | 697 | main(int argc, char *argv[]) { |
696 | unsigned int i; | 698 | uint i; |
697 | Bool topbar = True; | 699 | Bool topbar = True; |
698 | 700 | ||
699 | /* command line args */ | 701 | /* command line args */ |