From e7fa504c3e095db65853afd39d2d1324d439dcf4 Mon Sep 17 00:00:00 2001 From: "Anselm R. Garbe" Date: Fri, 14 Jul 2006 17:43:56 +0200 Subject: [PATCH] removed a bunch of lines through swap removal --- bar.c | 16 ++++------------ client.c | 4 ++-- draw.c | 8 ++++---- dwm.h | 3 +-- util.c | 8 -------- 5 files changed, 11 insertions(+), 28 deletions(-) diff --git a/bar.c b/bar.c index ea4b946..611c669 100644 --- a/bar.c +++ b/bar.c @@ -25,30 +25,22 @@ draw_bar() int i; dc.x = dc.y = 0; dc.w = bw; - drawtext(NULL, False); + drawtext(NULL, False, False); dc.w = 0; for(i = 0; i < TLast; i++) { dc.x += dc.w; dc.w = textw(tags[i]) + dc.font.height; - if(i == tsel) { - swap((void **)&dc.fg, (void **)&dc.bg); - drawtext(tags[i], True); - swap((void **)&dc.fg, (void **)&dc.bg); - } - else - drawtext(tags[i], True); + drawtext(tags[i], i == tsel, True); } if(sel) { - swap((void **)&dc.fg, (void **)&dc.bg); dc.x += dc.w; dc.w = textw(sel->name) + dc.font.height; - drawtext(sel->name, True); - swap((void **)&dc.fg, (void **)&dc.bg); + drawtext(sel->name, True, True); } dc.w = textw(stext) + dc.font.height; dc.x = bx + bw - dc.w; - drawtext(stext, False); + drawtext(stext, False, False); XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0); XFlush(dpy); } diff --git a/client.c b/client.c index 2a981fc..e3e31b6 100644 --- a/client.c +++ b/client.c @@ -598,12 +598,12 @@ draw_client(Client *c) if(c->tags[i]) { dc.x += dc.w; dc.w = textw(c->tags[i]) + dc.font.height; - drawtext(c->tags[i], True); + drawtext(c->tags[i], False, True); } } dc.x += dc.w; dc.w = textw(c->name) + dc.font.height; - drawtext(c->name, True); + drawtext(c->name, False, True); XCopyArea(dpy, dc.drawable, c->title, dc.gc, 0, 0, c->tw, c->th, 0, 0); XFlush(dpy); diff --git a/draw.c b/draw.c index ec7a3cd..3fbc85c 100644 --- a/draw.c +++ b/draw.c @@ -30,7 +30,7 @@ drawborder(void) } void -drawtext(const char *text, Bool border) +drawtext(const char *text, Bool invert, Bool border) { int x, y, w, h; unsigned int len; @@ -38,7 +38,7 @@ drawtext(const char *text, Bool border) XGCValues gcv; XRectangle r = { dc.x, dc.y, dc.w, dc.h }; - XSetForeground(dpy, dc.gc, dc.bg); + XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); w = 0; @@ -65,8 +65,8 @@ drawtext(const char *text, Bool border) if(w > dc.w) return; /* too long */ - gcv.foreground = dc.fg; - gcv.background = dc.bg; + gcv.foreground = invert ? dc.bg : dc.fg; + gcv.background = invert ? dc.fg : dc.bg; if(dc.font.set) { XChangeGC(dpy, dc.gc, GCForeground | GCBackground, &gcv); XmbDrawImageString(dpy, dc.drawable, dc.font.set, dc.gc, diff --git a/dwm.h b/dwm.h index 113e861..6843870 100644 --- a/dwm.h +++ b/dwm.h @@ -130,7 +130,7 @@ extern void zoom(Arg *arg); extern void gravitate(Client *c, Bool invert); /* draw.c */ -extern void drawtext(const char *text, Bool border); +extern void drawtext(const char *text, Bool invert, Bool border); extern unsigned long initcolor(const char *colstr); extern void initfont(const char *fontstr); extern unsigned int textnw(char *text, unsigned int len); @@ -153,4 +153,3 @@ extern void quit(Arg *arg); extern void error(const char *errstr, ...); extern void *emallocz(unsigned int size); extern void spawn(Arg *arg); -extern void swap(void **p1, void **p2); diff --git a/util.c b/util.c index e95dfc5..eba8416 100644 --- a/util.c +++ b/util.c @@ -38,14 +38,6 @@ emallocz(unsigned int size) return res; } -void -swap(void **p1, void **p2) -{ - void *tmp = *p1; - *p1 = *p2; - *p2 = tmp; -} - void spawn(Arg *arg) {