@@ -6,4 +6,3 @@ | |||||
#define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" | #define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" | ||||
#define BGCOLOR "#eeeeee" | #define BGCOLOR "#eeeeee" | ||||
#define FGCOLOR "#666699" | #define FGCOLOR "#666699" | ||||
#define BORDERCOLOR "#9999CC" |
@@ -6,4 +6,3 @@ | |||||
#define FONT "fixed" | #define FONT "fixed" | ||||
#define BGCOLOR "#666699" | #define BGCOLOR "#666699" | ||||
#define FGCOLOR "#eeeeee" | #define FGCOLOR "#eeeeee" | ||||
#define BORDERCOLOR "#9999CC" |
@@ -24,7 +24,6 @@ struct DC { /* draw context */ | |||||
int x, y, w, h; | int x, y, w, h; | ||||
unsigned long bg; | unsigned long bg; | ||||
unsigned long fg; | unsigned long fg; | ||||
unsigned long border; | |||||
Drawable drawable; | Drawable drawable; | ||||
Fnt font; | Fnt font; | ||||
GC gc; | GC gc; | ||||
@@ -35,7 +34,7 @@ extern Display *dpy; | |||||
extern DC dc; | extern DC dc; | ||||
/* draw.c */ | /* draw.c */ | ||||
extern void drawtext(const char *text, Bool invert, Bool border); | |||||
extern void drawtext(const char *text, Bool invert); | |||||
extern unsigned long getcolor(const char *colstr); | extern unsigned long getcolor(const char *colstr); | ||||
extern void setfont(const char *fontstr); | extern void setfont(const char *fontstr); | ||||
extern unsigned int textw(const char *text); | extern unsigned int textw(const char *text); | ||||
@@ -9,26 +9,6 @@ | |||||
/* static */ | /* static */ | ||||
static void | |||||
drawborder(void) | |||||
{ | |||||
XPoint points[5]; | |||||
XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter); | |||||
XSetForeground(dpy, dc.gc, dc.border); | |||||
points[0].x = dc.x; | |||||
points[0].y = dc.y; | |||||
points[1].x = dc.w - 1; | |||||
points[1].y = 0; | |||||
points[2].x = 0; | |||||
points[2].y = dc.h - 1; | |||||
points[3].x = -(dc.w - 1); | |||||
points[3].y = 0; | |||||
points[4].x = 0; | |||||
points[4].y = -(dc.h - 1); | |||||
XDrawLines(dpy, dc.drawable, dc.gc, points, 5, CoordModePrevious); | |||||
} | |||||
static unsigned int | static unsigned int | ||||
textnw(const char *text, unsigned int len) | textnw(const char *text, unsigned int len) | ||||
{ | { | ||||
@@ -44,7 +24,7 @@ textnw(const char *text, unsigned int len) | |||||
/* extern */ | /* extern */ | ||||
void | void | ||||
drawtext(const char *text, Bool invert, Bool border) | |||||
drawtext(const char *text, Bool invert) | |||||
{ | { | ||||
int x, y, w, h; | int x, y, w, h; | ||||
static char buf[256]; | static char buf[256]; | ||||
@@ -54,10 +34,7 @@ drawtext(const char *text, Bool invert, Bool border) | |||||
XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); | XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); | ||||
XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); | XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); | ||||
w = 0; | w = 0; | ||||
if(border) | |||||
drawborder(); | |||||
if(!text) | if(!text) | ||||
return; | return; | ||||
@@ -77,17 +77,17 @@ drawmenu() | |||||
dc.y = 0; | dc.y = 0; | ||||
dc.w = mw; | dc.w = mw; | ||||
dc.h = mh; | dc.h = mh; | ||||
drawtext(NULL, False, False); | |||||
drawtext(NULL, False); | |||||
/* print command */ | /* print command */ | ||||
if(cmdw && item) | if(cmdw && item) | ||||
dc.w = cmdw; | dc.w = cmdw; | ||||
drawtext(text[0] ? text : NULL, False, False); | |||||
drawtext(text[0] ? text : NULL, False); | |||||
dc.x += cmdw; | dc.x += cmdw; | ||||
if(curr) { | if(curr) { | ||||
dc.w = SPACE; | dc.w = SPACE; | ||||
drawtext((curr && curr->left) ? "<" : NULL, False, False); | |||||
drawtext((curr && curr->left) ? "<" : NULL, False); | |||||
dc.x += dc.w; | dc.x += dc.w; | ||||
/* determine maximum items */ | /* determine maximum items */ | ||||
@@ -95,13 +95,13 @@ drawmenu() | |||||
dc.w = textw(i->text); | dc.w = textw(i->text); | ||||
if(dc.w > mw / 3) | if(dc.w > mw / 3) | ||||
dc.w = mw / 3; | dc.w = mw / 3; | ||||
drawtext(i->text, sel == i, sel == i); | |||||
drawtext(i->text, sel == i); | |||||
dc.x += dc.w; | dc.x += dc.w; | ||||
} | } | ||||
dc.x = mw - SPACE; | dc.x = mw - SPACE; | ||||
dc.w = SPACE; | dc.w = SPACE; | ||||
drawtext(next ? ">" : NULL, False, False); | |||||
drawtext(next ? ">" : NULL, False); | |||||
} | } | ||||
XCopyArea(dpy, dc.drawable, win, dc.gc, 0, 0, mw, mh, 0, 0); | XCopyArea(dpy, dc.drawable, win, dc.gc, 0, 0, mw, mh, 0, 0); | ||||
XFlush(dpy); | XFlush(dpy); | ||||
@@ -316,7 +316,6 @@ main(int argc, char *argv[]) | |||||
/* style */ | /* style */ | ||||
dc.bg = getcolor(BGCOLOR); | dc.bg = getcolor(BGCOLOR); | ||||
dc.fg = getcolor(FGCOLOR); | dc.fg = getcolor(FGCOLOR); | ||||
dc.border = getcolor(BORDERCOLOR); | |||||
setfont(FONT); | setfont(FONT); | ||||
wa.override_redirect = 1; | wa.override_redirect = 1; | ||||