drawborder(void)
{
XPoint points[5];
+
XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter);
XSetForeground(dpy, dc.gc, dc.border);
points[0].x = dc.x;
textnw(char *text, unsigned int len)
{
XRectangle r;
+
if(dc.font.set) {
XmbTextExtents(dc.font.set, text, len, NULL, &r);
return r.width;
drawtext(const char *text, Bool invert, Bool border)
{
int x, y, w, h;
- unsigned int len;
static char buf[256];
+ unsigned int len;
XGCValues gcv;
XRectangle r = { dc.x, dc.y, dc.w, dc.h };
void
drawstatus()
{
- int i;
+ int i, x;
Bool istile = arrange == dotile;
dc.x = dc.y = 0;
else
drawtext(tags[i], (i != tsel), True);
}
- if(sel) {
- dc.x += dc.w;
- dc.w = textw(sel->name);
- drawtext(sel->name, istile, True);
- }
+ x = dc.x + dc.w;
dc.w = textw(stext);
dc.x = bx + bw - dc.w;
drawtext(stext, !istile, False);
-
+ if(sel && ((dc.w = dc.x - x) >= bh)) {
+ dc.x = x;
+ drawtext(sel->name, istile, True);
+ }
XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, bw, bh, 0, 0);
XSync(dpy, False);
}
unsigned long
getcolor(const char *colstr)
{
- XColor color;
Colormap cmap = DefaultColormap(dpy, screen);
+ XColor color;
XAllocNamedColor(dpy, cmap, colstr, &color, &color);
return color.pixel;