cleaner drawing 2255bf46
Connor Lane Smith · 2011-06-04 10:17 1 file(s) · +6 −16
dwm.c +6 −16
780 780
void
781 781
drawsquare(Bool filled, Bool empty, Bool invert, unsigned long col[ColLast]) {
782 782
	int x;
783 -
	XGCValues gcv;
784 -
	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
785 783
786 -
	gcv.foreground = col[invert ? ColBG : ColFG];
787 -
	XChangeGC(dpy, dc.gc, GCForeground, &gcv);
784 +
	XSetForeground(dpy, dc.gc, col[invert ? ColFG : ColBG]);
788 785
	x = (dc.font.ascent + dc.font.descent + 2) / 4;
789 -
	r.x = dc.x + 1;
790 -
	r.y = dc.y + 1;
791 -
	if(filled) {
792 -
		r.width = r.height = x + 1;
793 -
		XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
794 -
	}
795 -
	else if(empty) {
796 -
		r.width = r.height = x;
797 -
		XDrawRectangles(dpy, dc.drawable, dc.gc, &r, 1);
798 -
	}
786 +
	if(filled)
787 +
		XFillRectangle(dpy, dc.drawable, dc.gc, dc.x+1, dc.y+1, x+1, x+1);
788 +
	else if(empty)
789 +
		XDrawRectangle(dpy, dc.drawable, dc.gc, dc.x+1, dc.y+1, x, x);
799 790
}
800 791
801 792
void
802 793
drawtext(const char *text, unsigned long col[ColLast], Bool invert) {
803 794
	char buf[256];
804 795
	int i, x, y, h, len, olen;
805 -
	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
806 796
807 797
	XSetForeground(dpy, dc.gc, col[invert ? ColFG : ColBG]);
808 -
	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
798 +
	XFillRectangle(dpy, dc.drawable, dc.gc, dc.x, dc.y, dc.w, dc.h);
809 799
	if(!text)
810 800
		return;
811 801
	olen = strlen(text);