3->4 colors
This commit is contained in:
		
							parent
							
								
									a5379e901c
								
							
						
					
					
						commit
						2e0c767d74
					
				| @ -8,9 +8,10 @@ const char *tags[] = { "work", "net", "fnord", NULL }; | |||||||
| 
 | 
 | ||||||
| #define DEFMODE			dotile /* dofloat */ | #define DEFMODE			dotile /* dofloat */ | ||||||
| #define FONT			"-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" | #define FONT			"-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" | ||||||
| #define BGCOLOR			"#666699" | #define NORMBGCOLOR		"#666699" | ||||||
| #define FGCOLOR			"#eeeeee" | #define NORMFGCOLOR		"#eeeeee" | ||||||
| #define BORDERCOLOR		"#9999CC" | #define SELBGCOLOR		"#eeeeee" | ||||||
|  | #define SELFGCOLOR		"#000088" | ||||||
| #define MODKEY			Mod1Mask | #define MODKEY			Mod1Mask | ||||||
| #define MASTERW			60 /* percent */ | #define MASTERW			60 /* percent */ | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -8,9 +8,10 @@ const char *tags[] = { "1", "2", "3", "4", "5", NULL }; | |||||||
| 
 | 
 | ||||||
| #define DEFMODE			dotile /* dofloat */ | #define DEFMODE			dotile /* dofloat */ | ||||||
| #define FONT			"fixed" | #define FONT			"fixed" | ||||||
| #define BGCOLOR			"#666699" | #define NORMBGCOLOR		"#666699" | ||||||
| #define FGCOLOR			"#eeeeee" | #define NORMFGCOLOR		"#eeeeee" | ||||||
| #define BORDERCOLOR		"#9999CC" | #define SELBGCOLOR		"#eeeeee" | ||||||
|  | #define SELFGCOLOR		"#666699" | ||||||
| #define MODKEY			Mod1Mask | #define MODKEY			Mod1Mask | ||||||
| #define MASTERW			60 /* percent */ | #define MASTERW			60 /* percent */ | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| # dwm version
 | # dwm version
 | ||||||
| VERSION = 1.0 | VERSION = 1.1 | ||||||
| 
 | 
 | ||||||
| # Customize below to fit your system
 | # Customize below to fit your system
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										20
									
								
								draw.c
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								draw.c
									
									
									
									
									
								
							| @ -22,16 +22,15 @@ textnw(const char *text, unsigned int len) | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void | static void | ||||||
| drawtext(const char *text, Bool invert, Bool highlight) | drawtext(const char *text, unsigned int colidx, Bool highlight) | ||||||
| { | { | ||||||
| 	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; |  | ||||||
| 	XPoint points[5]; | 	XPoint points[5]; | ||||||
| 	XRectangle r = { dc.x, dc.y, dc.w, dc.h }; | 	XRectangle r = { dc.x, dc.y, dc.w, dc.h }; | ||||||
| 
 | 
 | ||||||
| 	XSetForeground(dpy, dc.gc, invert ? dc.fg : dc.bg); | 	XSetForeground(dpy, dc.gc, dc.bg[colidx]); | ||||||
| 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); | 	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); | ||||||
| 	points[0].x = dc.x; | 	points[0].x = dc.x; | ||||||
| 	points[0].y = dc.y; | 	points[0].y = dc.y; | ||||||
| @ -43,7 +42,7 @@ drawtext(const char *text, Bool invert, Bool highlight) | |||||||
| 	points[3].y = 0; | 	points[3].y = 0; | ||||||
| 	points[4].x = 0; | 	points[4].x = 0; | ||||||
| 	points[4].y = -(dc.h - 1); | 	points[4].y = -(dc.h - 1); | ||||||
| 	XSetForeground(dpy, dc.gc, dc.border); | 	XSetForeground(dpy, dc.gc, dc.fg[colidx]); | ||||||
| 	XDrawLines(dpy, dc.drawable, dc.gc, points, 5, CoordModePrevious); | 	XDrawLines(dpy, dc.drawable, dc.gc, points, 5, CoordModePrevious); | ||||||
| 
 | 
 | ||||||
| 	if(!text) | 	if(!text) | ||||||
| @ -74,15 +73,10 @@ drawtext(const char *text, Bool invert, Bool highlight) | |||||||
| 
 | 
 | ||||||
| 	if(w > dc.w) | 	if(w > dc.w) | ||||||
| 		return; /* too long */ | 		return; /* too long */ | ||||||
| 	gcv.foreground = invert ? dc.bg : dc.fg; | 	if(dc.font.set) | ||||||
| 	gcv.background = invert ? dc.fg : dc.bg; |  | ||||||
| 	if(dc.font.set) { |  | ||||||
| 		XChangeGC(dpy, dc.gc, GCForeground | GCBackground, &gcv); |  | ||||||
| 		XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len); | 		XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len); | ||||||
| 	} |  | ||||||
| 	else { | 	else { | ||||||
| 		gcv.font = dc.font.xfont->fid; | 		XSetFont(dpy, dc.gc, dc.font.xfont->fid); | ||||||
| 		XChangeGC(dpy, dc.gc, GCForeground | GCBackground | GCFont, &gcv); |  | ||||||
| 		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len); | 		XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len); | ||||||
| 	} | 	} | ||||||
| 	if(highlight) { | 	if(highlight) { | ||||||
| @ -157,11 +151,11 @@ drawtitle(Client *c) | |||||||
| 	if(c == sel && issel) { | 	if(c == sel && issel) { | ||||||
| 		drawstatus(); | 		drawstatus(); | ||||||
| 		XUnmapWindow(dpy, c->twin); | 		XUnmapWindow(dpy, c->twin); | ||||||
| 		XSetWindowBorder(dpy, c->win, dc.fg); | 		XSetWindowBorder(dpy, c->win, dc.fg[1]); | ||||||
| 		return; | 		return; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	XSetWindowBorder(dpy, c->win, dc.bg); | 	XSetWindowBorder(dpy, c->win, dc.bg[0]); | ||||||
| 	XMapWindow(dpy, c->twin); | 	XMapWindow(dpy, c->twin); | ||||||
| 	dc.x = dc.y = 0; | 	dc.x = dc.y = 0; | ||||||
| 	dc.w = c->tw; | 	dc.w = c->tw; | ||||||
|  | |||||||
							
								
								
									
										5
									
								
								dwm.h
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								dwm.h
									
									
									
									
									
								
							| @ -36,9 +36,8 @@ typedef struct { | |||||||
| 
 | 
 | ||||||
| typedef struct { /* draw context */ | typedef struct { /* draw context */ | ||||||
| 	int x, y, w, h; | 	int x, y, w, h; | ||||||
| 	unsigned long bg; | 	unsigned long bg[2]; | ||||||
| 	unsigned long fg; | 	unsigned long fg[2]; | ||||||
| 	unsigned long border; |  | ||||||
| 	Drawable drawable; | 	Drawable drawable; | ||||||
| 	Fnt font; | 	Fnt font; | ||||||
| 	GC gc; | 	GC gc; | ||||||
|  | |||||||
							
								
								
									
										7
									
								
								main.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								main.c
									
									
									
									
									
								
							| @ -121,9 +121,10 @@ setup() | |||||||
| 	seltag[0] = True; | 	seltag[0] = True; | ||||||
| 
 | 
 | ||||||
| 	/* style */ | 	/* style */ | ||||||
| 	dc.bg = getcolor(BGCOLOR); | 	dc.bg[0] = getcolor(NORMBGCOLOR); | ||||||
| 	dc.fg = getcolor(FGCOLOR); | 	dc.fg[0] = getcolor(NORMFGCOLOR); | ||||||
| 	dc.border = getcolor(BORDERCOLOR); | 	dc.bg[1] = getcolor(SELBGCOLOR); | ||||||
|  | 	dc.fg[1] = getcolor(SELFGCOLOR); | ||||||
| 	setfont(FONT); | 	setfont(FONT); | ||||||
| 
 | 
 | ||||||
| 	sx = sy = 0; | 	sx = sy = 0; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user