removed a bunch of lines through swap removal e7fa504c
Anselm R. Garbe · 2006-07-14 17:43 5 file(s) · +11 −28
bar.c +4 −12
25 25
	int i;
26 26
	dc.x = dc.y = 0;
27 27
	dc.w = bw;
28 -
	drawtext(NULL, False);
28 +
	drawtext(NULL, False, False);
29 29
30 30
	dc.w = 0;
31 31
	for(i = 0; i < TLast; i++) {
32 32
		dc.x += dc.w;
33 33
		dc.w = textw(tags[i]) + dc.font.height;
34 -
		if(i == tsel) {
35 -
			swap((void **)&dc.fg, (void **)&dc.bg);
36 -
			drawtext(tags[i], True);
37 -
			swap((void **)&dc.fg, (void **)&dc.bg);
38 -
		}
39 -
		else
40 -
			drawtext(tags[i], True);
34 +
		drawtext(tags[i], i == tsel, True);
41 35
	}
42 36
	if(sel) {
43 -
		swap((void **)&dc.fg, (void **)&dc.bg);
44 37
		dc.x += dc.w;
45 38
		dc.w = textw(sel->name) + dc.font.height;
46 -
		drawtext(sel->name, True);
47 -
		swap((void **)&dc.fg, (void **)&dc.bg);
39 +
		drawtext(sel->name, True, True);
48 40
	}
49 41
	dc.w = textw(stext) + dc.font.height;
50 42
	dc.x = bx + bw - dc.w;
51 -
	drawtext(stext, False);
43 +
	drawtext(stext, False, False);
52 44
	XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0);
53 45
	XFlush(dpy);
54 46
}
client.c +2 −2
598 598
		if(c->tags[i]) {
599 599
			dc.x += dc.w;
600 600
			dc.w = textw(c->tags[i]) + dc.font.height;
601 -
			drawtext(c->tags[i], True);
601 +
			drawtext(c->tags[i], False, True);
602 602
		}
603 603
	}
604 604
	dc.x += dc.w;
605 605
	dc.w = textw(c->name) + dc.font.height;
606 -
	drawtext(c->name, True);
606 +
	drawtext(c->name, False, True);
607 607
	XCopyArea(dpy, dc.drawable, c->title, dc.gc,
608 608
			0, 0, c->tw, c->th, 0, 0);
609 609
	XFlush(dpy);
draw.c +4 −4
30 30
}
31 31
32 32
void
33 -
drawtext(const char *text, Bool border)
33 +
drawtext(const char *text, Bool invert, Bool border)
34 34
{
35 35
	int x, y, w, h;
36 36
	unsigned int len;
38 38
	XGCValues gcv;
39 39
	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
40 40
41 -
	XSetForeground(dpy, dc.gc, dc.bg);
41 +
	XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg);
42 42
	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
43 43
44 44
	w = 0;
65 65
	if(w > dc.w)
66 66
		return; /* too long */
67 67
68 -
	gcv.foreground = dc.fg;
69 -
	gcv.background = dc.bg;
68 +
	gcv.foreground = invert ? dc.bg : dc.fg;
69 +
	gcv.background = invert ? dc.fg : dc.bg;
70 70
	if(dc.font.set) {
71 71
		XChangeGC(dpy, dc.gc, GCForeground | GCBackground, &gcv);
72 72
		XmbDrawImageString(dpy, dc.drawable, dc.font.set, dc.gc,
dwm.h +1 −2
130 130
extern void gravitate(Client *c, Bool invert);
131 131
132 132
/* draw.c */
133 -
extern void drawtext(const char *text, Bool border);
133 +
extern void drawtext(const char *text, Bool invert, Bool border);
134 134
extern unsigned long initcolor(const char *colstr);
135 135
extern void initfont(const char *fontstr);
136 136
extern unsigned int textnw(char *text, unsigned int len);
153 153
extern void error(const char *errstr, ...);
154 154
extern void *emallocz(unsigned int size);
155 155
extern void spawn(Arg *arg);
156 -
extern void swap(void **p1, void **p2);
util.c +0 −8
39 39
}
40 40
41 41
void
42 -
swap(void **p1, void **p2)
43 -
{
44 -
	void *tmp = *p1;
45 -
	*p1 = *p2;
46 -
	*p2 = tmp;
47 -
}
48 -
49 -
void
50 42
spawn(Arg *arg)
51 43
{
52 44
	char **argv = (char **)arg->argv;