Browse Source

and the winner is

arg@mig29 19 years ago
parent
commit
c73d5cb7b6
2 changed files with 20 additions and 14 deletions
  1. 17 12
      draw.c
  2. 3 2
      dwm.1

+ 17 - 12
draw.c

@@ -30,13 +30,13 @@ textnw(const char *text, unsigned int len) {
 }
 }
 
 
 static void
 static void
-drawtext(const char *text, unsigned long col[ColLast], Bool dot, Bool corner) {
+drawtext(const char *text, unsigned long col[ColLast], Bool filleddot, Bool emptydot) {
 	int x, y, w, h;
 	int x, y, w, h;
 	static char buf[256];
 	static char buf[256];
 	unsigned int len, olen;
 	unsigned int len, olen;
 	XGCValues gcv;
 	XGCValues gcv;
 	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
 	XRectangle r = { dc.x, dc.y, dc.w, dc.h };
-	XPoint pt[3];
+	XPoint pt[5];
 
 
 	XSetForeground(dpy, dc.gc, col[ColBG]);
 	XSetForeground(dpy, dc.gc, col[ColBG]);
 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
@@ -74,20 +74,25 @@ drawtext(const char *text, unsigned long col[ColLast], Bool dot, Bool corner) {
 		XChangeGC(dpy, dc.gc, GCForeground | GCFont, &gcv);
 		XChangeGC(dpy, dc.gc, GCForeground | GCFont, &gcv);
 		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
 		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len);
 	}
 	}
-	if(dot) {
+	x = (h + 2) / 4;
+	if(filleddot) {
 		r.x = dc.x + 2;
 		r.x = dc.x + 2;
 		r.y = dc.y + 2;
 		r.y = dc.y + 2;
-		r.width = r.height = (h + 2) / 4;
+		r.width = r.height = x;
 		XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
 		XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
 	}
 	}
-	if(corner) {
-		pt[0].x = dc.x + 1;
-		pt[0].y = dc.y + dc.h / 2 + 1;
-		pt[1].x = 0;
-		pt[1].y = - dc.h / 2;
-		pt[2].x = dc.h / 2;
-		pt[2].y = 0;
-		XDrawLines(dpy, dc.drawable, dc.gc, pt, 3, CoordModePrevious);
+	if(emptydot) {
+		pt[0].x = dc.x + 2;
+		pt[0].y = dc.y + 2;
+		pt[1].x = x;
+		pt[1].y = 0;
+		pt[2].x = 0;
+		pt[2].y = x;
+		pt[3].x = -x;
+		pt[3].y = 0;
+		pt[4].x = 0;
+		pt[4].y = -x;
+		XDrawLines(dpy, dc.drawable, dc.gc, pt, 5, CoordModePrevious);
 	}
 	}
 }
 }
 
 

+ 3 - 2
dwm.1

@@ -21,8 +21,9 @@ tags. Selecting certain tags displays all windows with these tags.
 dwm contains a small status bar which displays all available tags, the mode,
 dwm contains a small status bar which displays all available tags, the mode,
 the title of the focused window, and the text read from standard input. The
 the title of the focused window, and the text read from standard input. The
 selected tags are indicated with a different color. The tags of the focused
 selected tags are indicated with a different color. The tags of the focused
-window are indicated with a small point in the top left corner.  The tags which
-are applied to one or more clients are indicated with a top line.
+window are indicated with a filled square in the top left corner.  The tags
+which are applied to one or more clients are indicated with an empty square in
+the top left corner.
 .P
 .P
 dwm draws a 1-pixel border around windows to indicate the focus state.
 dwm draws a 1-pixel border around windows to indicate the focus state.
 Unfocused windows contain a small bar in front of them displaying their title.
 Unfocused windows contain a small bar in front of them displaying their title.