equal
deleted
inserted
replaced
7 #include <string.h> |
7 #include <string.h> |
8 #include <X11/Xlocale.h> |
8 #include <X11/Xlocale.h> |
9 |
9 |
10 /* static */ |
10 /* static */ |
11 |
11 |
12 static void |
|
13 drawborder(void) |
|
14 { |
|
15 XPoint points[5]; |
|
16 |
|
17 XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter); |
|
18 XSetForeground(dpy, dc.gc, dc.border); |
|
19 points[0].x = dc.x; |
|
20 points[0].y = dc.y; |
|
21 points[1].x = dc.w - 1; |
|
22 points[1].y = 0; |
|
23 points[2].x = 0; |
|
24 points[2].y = dc.h - 1; |
|
25 points[3].x = -(dc.w - 1); |
|
26 points[3].y = 0; |
|
27 points[4].x = 0; |
|
28 points[4].y = -(dc.h - 1); |
|
29 XDrawLines(dpy, dc.drawable, dc.gc, points, 5, CoordModePrevious); |
|
30 } |
|
31 |
|
32 static unsigned int |
12 static unsigned int |
33 textnw(const char *text, unsigned int len) |
13 textnw(const char *text, unsigned int len) |
34 { |
14 { |
35 XRectangle r; |
15 XRectangle r; |
36 |
16 |
50 XGCValues gcv; |
30 XGCValues gcv; |
51 XRectangle r = { dc.x, dc.y, dc.w, dc.h }; |
31 XRectangle r = { dc.x, dc.y, dc.w, dc.h }; |
52 |
32 |
53 XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); |
33 XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); |
54 XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); |
34 XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); |
55 drawborder(); |
|
56 |
35 |
57 if(!text) |
36 if(!text) |
58 return; |
37 return; |
59 |
38 |
60 w = 0; |
39 w = 0; |