about summary refs log tree commit diff stats
path: root/draw.c
diff options
context:
space:
mode:
authorAnselm R. Garbe <garbeam@wmii.de>2006-07-12 15:17:22 +0200
committerAnselm R. Garbe <garbeam@wmii.de>2006-07-12 15:17:22 +0200
commitdfd84f9bf3b9d949412a73bc62a43109b340d395 (patch)
treeebeac582951e2ef574f50018298c4bc928849d64 /draw.c
parent7696c89c90c926f6371b1ee3ec1b13dd2414aa40 (diff)
downloaddwm-dfd84f9bf3b9d949412a73bc62a43109b340d395.tar.gz
simplified several portions of code through replacing rect structs with x,y,h,w counterparts (much more readable)
Diffstat (limited to 'draw.c')
-rw-r--r--draw.c45
1 files changed, 23 insertions, 22 deletions
diff --git a/draw.c b/draw.c
index a3c526e..c148362 100644
--- a/draw.c
+++ b/draw.c
@@ -15,16 +15,16 @@ drawborder(Display *dpy, Brush *b)
 	XPoint points[5];
 	XSetLineAttributes(dpy, b->gc, 1, LineSolid, CapButt, JoinMiter);
 	XSetForeground(dpy, b->gc, b->border);
-	points[0].x = b->rect.x;
-	points[0].y = b->rect.y;
-	points[1].x = b->rect.width - 1;
+	points[0].x = b->x;
+	points[0].y = b->y;
+	points[1].x = b->w - 1;
 	points[1].y = 0;
 	points[2].x = 0;
-	points[2].y = b->rect.height - 1;
-	points[3].x = -(b->rect.width - 1);
+	points[2].y = b->h - 1;
+	points[3].x = -(b->w - 1);
 	points[3].y = 0;
 	points[4].x = 0;
-	points[4].y = -(b->rect.height - 1);
+	points[4].y = -(b->h - 1);
 	XDrawLines(dpy, b->drawable, b->gc, points, 5, CoordModePrevious);
 }
 
@@ -34,9 +34,10 @@ draw(Display *dpy, Brush *b, Bool border, const char *text)
 	unsigned int x, y, w, h, len;
 	static char buf[256];
 	XGCValues gcv;
+	XRectangle r = { b->x, b->y, b->w, b->h };
 
 	XSetForeground(dpy, b->gc, b->bg);
-	XFillRectangles(dpy, b->drawable, b->gc, &b->rect, 1);
+	XFillRectangles(dpy, b->drawable, b->gc, &r, 1);
 
 	if(border)
 		drawborder(dpy, b);
@@ -51,14 +52,14 @@ draw(Display *dpy, Brush *b, Bool border, const char *text)
 	buf[len] = 0;
 
 	h = b->font.ascent + b->font.descent;
-	y = b->rect.y + (b->rect.height / 2) - (h / 2) + b->font.ascent;
-	x = b->rect.x + (h / 2);
+	y = b->y + (b->h / 2) - (h / 2) + b->font.ascent;
+	x = b->x + (h / 2);
 
 	/* shorten text if necessary */
-	while(len && (w = textwidth_l(&b->font, buf, len)) > b->rect.width - h)
+	while(len && (w = textnw(&b->font, buf, len)) > b->w - h)
 		buf[--len] = 0;
 
-	if(w > b->rect.width)
+	if(w > b->w)
 		return; /* too long */
 
 	gcv.foreground = b->fg;
@@ -94,20 +95,26 @@ loadcolors(Display *dpy, int screen, Brush *b,
 }
 
 unsigned int
-textwidth_l(Fnt *font, char *text, unsigned int len)
+textnw(Fnt *font, char *text, unsigned int len)
 {
+	XRectangle r;
 	if(font->set) {
-		XRectangle r;
-		XmbTextExtents(font->set, text, len, 0, &r);
+		XmbTextExtents(font->set, text, len, NULL, &r);
 		return r.width;
 	}
 	return XTextWidth(font->xfont, text, len);
 }
 
 unsigned int
-textwidth(Fnt *font, char *text)
+textw(Fnt *font, char *text)
 {
-	return textwidth_l(font, text, strlen(text));
+	return textnw(font, text, strlen(text));
+}
+
+unsigned int
+texth(Fnt *font)
+{
+	return font->height + 4;
 }
 
 void
@@ -162,9 +169,3 @@ loadfont(Display *dpy, Fnt *font, const char *fontstr)
 	}
 	font->height = font->ascent + font->descent;
 }
-
-unsigned int
-labelheight(Fnt *font)
-{
-	return font->height + 4;
-}