comparison bar.c @ 16:359b6e563b95

several changes, new stuff
author Anselm R. Garbe <garbeam@wmii.de>
date Tue, 11 Jul 2006 18:53:41 +0200
parents 5c078b66347b
children bd3a44353916
comparison
equal deleted inserted replaced
15:00d4d52b231f 16:359b6e563b95
3 * See LICENSE file for license details. 3 * See LICENSE file for license details.
4 */ 4 */
5 5
6 #include "wm.h" 6 #include "wm.h"
7 7
8 static const char *status[] = {
9 "sh", "-c", "echo -n `date` `uptime | sed 's/.*://; s/,//g'`"
10 " `acpi | awk '{print $4}' | sed 's/,//'`", 0 \
11 };
12
13 void 8 void
14 draw_bar() 9 draw_bar()
15 { 10 {
16 static char buf[1024];
17
18 buf[0] = 0;
19 pipe_spawn(buf, sizeof(buf), dpy, (char **)status);
20
21 brush.rect = barrect; 11 brush.rect = barrect;
22 brush.rect.x = brush.rect.y = 0; 12 brush.rect.x = brush.rect.y = 0;
23 draw(dpy, &brush, False, buf); 13 draw(dpy, &brush, False, NULL);
14
15 if(stack) {
16 brush.rect.width = textwidth(&brush.font, stack->name) + labelheight(&brush.font);
17 swap((void **)&brush.fg, (void **)&brush.bg);
18 draw(dpy, &brush, False, stack->name);
19 swap((void **)&brush.fg, (void **)&brush.bg);
20 brush.rect.x += brush.rect.width;
21 }
22
23 brush.rect.width = textwidth(&brush.font, statustext) + labelheight(&brush.font);
24 brush.rect.x = barrect.x + barrect.width - brush.rect.width;
25 draw(dpy, &brush, False, statustext);
24 26
25 XCopyArea(dpy, brush.drawable, barwin, brush.gc, 0, 0, barrect.width, 27 XCopyArea(dpy, brush.drawable, barwin, brush.gc, 0, 0, barrect.width,
26 barrect.height, 0, 0); 28 barrect.height, 0, 0);
27 XFlush(dpy); 29 XFlush(dpy);
28 } 30 }