sander1 proposal 6458803d
arg@mig29 · 2006-12-01 17:36 1 file(s) · +15 −7
draw.c +15 −7
30 30
}
31 31
32 32
static void
33 -
drawtext(const char *text, unsigned long col[ColLast], Bool hborder, Bool vborder) {
33 +
drawtext(const char *text, unsigned long col[ColLast], Bool dot, Bool corner) {
34 34
	int x, y, w, h;
35 35
	static char buf[256];
36 36
	unsigned int len, olen;
37 37
	XGCValues gcv;
38 38
	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
39 +
	XPoint pt[3];
39 40
40 41
	XSetForeground(dpy, dc.gc, col[ColBG]);
41 42
	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
73 74
		XChangeGC(dpy, dc.gc, GCForeground | GCFont, &gcv);
74 75
		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
75 76
	}
76 -
	if(vborder) {
77 -
		XDrawLine(dpy, dc.drawable, dc.gc, dc.x + 1, dc.y + 1, dc.x + 1, dc.y + dc.h - 1);
78 -
		XDrawLine(dpy, dc.drawable, dc.gc, dc.x + dc.w - 2, dc.y + 1, dc.x + dc.w - 2, dc.y + dc.h - 1);
77 +
	if(dot) {
78 +
		r.x = dc.x + 2;
79 +
		r.y = dc.y + 2;
80 +
		r.width = r.height = (h + 2) / 4;
81 +
		XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
79 82
	}
80 -
	if(hborder) {
81 -
		XDrawLine(dpy, dc.drawable, dc.gc, dc.x + 1, dc.y + 1, dc.x + dc.w - 2, dc.y + 1);
82 -
		XDrawLine(dpy, dc.drawable, dc.gc, dc.x + 1, dc.y + dc.h - 2, dc.x + dc.w - 2, dc.y + dc.h - 2);
83 +
	if(corner) {
84 +
		pt[0].x = dc.x + 1;
85 +
		pt[0].y = dc.y + dc.h / 2 + 1;
86 +
		pt[1].x = 0;
87 +
		pt[1].y = - dc.h / 2;
88 +
		pt[2].x = dc.h / 2;
89 +
		pt[2].y = 0;
90 +
		XDrawLines(dpy, dc.drawable, dc.gc, pt, 3, CoordModePrevious);
83 91
	}
84 92
}
85 93