removed colors from dc
This commit is contained in:
		
							
								
								
									
										18
									
								
								dinput.c
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								dinput.c
									
									
									
									
									
								
							@@ -42,6 +42,8 @@ static int screen;
 | 
				
			|||||||
static unsigned int cursor = 0;
 | 
					static unsigned int cursor = 0;
 | 
				
			||||||
static unsigned int numlockmask = 0;
 | 
					static unsigned int numlockmask = 0;
 | 
				
			||||||
static unsigned int mw, mh;
 | 
					static unsigned int mw, mh;
 | 
				
			||||||
 | 
					static unsigned long normcol[ColLast];
 | 
				
			||||||
 | 
					static unsigned long selcol[ColLast];
 | 
				
			||||||
static Bool running = True;
 | 
					static Bool running = True;
 | 
				
			||||||
static DC dc;
 | 
					static DC dc;
 | 
				
			||||||
static Display *dpy;
 | 
					static Display *dpy;
 | 
				
			||||||
@@ -60,7 +62,7 @@ drawcursor(void) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	r.x += textnw(&dc, text, cursor) + dc.font.height / 2;
 | 
						r.x += textnw(&dc, text, cursor) + dc.font.height / 2;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	XSetForeground(dpy, dc.gc, dc.norm[ColFG]);
 | 
						XSetForeground(dpy, dc.gc, normcol[ColFG]);
 | 
				
			||||||
	XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
 | 
						XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -71,15 +73,15 @@ drawinput(void)
 | 
				
			|||||||
	dc.y = 0;
 | 
						dc.y = 0;
 | 
				
			||||||
	dc.w = mw;
 | 
						dc.w = mw;
 | 
				
			||||||
	dc.h = mh;
 | 
						dc.h = mh;
 | 
				
			||||||
	drawtext(&dc, NULL, dc.norm);
 | 
						drawtext(&dc, NULL, normcol);
 | 
				
			||||||
	/* print prompt? */
 | 
						/* print prompt? */
 | 
				
			||||||
	if(prompt) {
 | 
						if(prompt) {
 | 
				
			||||||
		dc.w = promptw;
 | 
							dc.w = promptw;
 | 
				
			||||||
		drawtext(&dc, prompt, dc.sel);
 | 
							drawtext(&dc, prompt, selcol);
 | 
				
			||||||
		dc.x += dc.w;
 | 
							dc.x += dc.w;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	dc.w = mw - dc.x;
 | 
						dc.w = mw - dc.x;
 | 
				
			||||||
	drawtext(&dc, *text ? text : NULL, dc.norm);
 | 
						drawtext(&dc, *text ? text : NULL, normcol);
 | 
				
			||||||
	drawcursor();
 | 
						drawcursor();
 | 
				
			||||||
	XCopyArea(dpy, dc.drawable, win, dc.gc, 0, 0, mw, mh, 0, 0);
 | 
						XCopyArea(dpy, dc.drawable, win, dc.gc, 0, 0, mw, mh, 0, 0);
 | 
				
			||||||
	XFlush(dpy);
 | 
						XFlush(dpy);
 | 
				
			||||||
@@ -268,10 +270,10 @@ setup(Bool topbar) {
 | 
				
			|||||||
	XFreeModifiermap(modmap);
 | 
						XFreeModifiermap(modmap);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dc.dpy = dpy;
 | 
						dc.dpy = dpy;
 | 
				
			||||||
	dc.norm[ColBG] = getcolor(&dc, normbgcolor);
 | 
						normcol[ColBG] = getcolor(&dc, normbgcolor);
 | 
				
			||||||
	dc.norm[ColFG] = getcolor(&dc, normfgcolor);
 | 
						normcol[ColFG] = getcolor(&dc, normfgcolor);
 | 
				
			||||||
	dc.sel[ColBG] = getcolor(&dc, selbgcolor);
 | 
						selcol[ColBG] = getcolor(&dc, selbgcolor);
 | 
				
			||||||
	dc.sel[ColFG] = getcolor(&dc, selfgcolor);
 | 
						selcol[ColFG] = getcolor(&dc, selfgcolor);
 | 
				
			||||||
	initfont(&dc, font);
 | 
						initfont(&dc, font);
 | 
				
			||||||
	fprintf(stderr, "dc.font.xfont: %u\n", (size_t)dc.font.xfont);
 | 
						fprintf(stderr, "dc.font.xfont: %u\n", (size_t)dc.font.xfont);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										26
									
								
								dmenu.c
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								dmenu.c
									
									
									
									
									
								
							@@ -59,6 +59,8 @@ static int screen;
 | 
				
			|||||||
static unsigned int lines = 0;
 | 
					static unsigned int lines = 0;
 | 
				
			||||||
static unsigned int numlockmask = 0;
 | 
					static unsigned int numlockmask = 0;
 | 
				
			||||||
static unsigned int mw, mh;
 | 
					static unsigned int mw, mh;
 | 
				
			||||||
 | 
					static unsigned long normcol[ColLast];
 | 
				
			||||||
 | 
					static unsigned long selcol[ColLast];
 | 
				
			||||||
static Bool running = True;
 | 
					static Bool running = True;
 | 
				
			||||||
static DC dc;
 | 
					static DC dc;
 | 
				
			||||||
static Display *dpy;
 | 
					static Display *dpy;
 | 
				
			||||||
@@ -159,18 +161,18 @@ drawmenu(void) {
 | 
				
			|||||||
	dc.y = 0;
 | 
						dc.y = 0;
 | 
				
			||||||
	dc.w = mw;
 | 
						dc.w = mw;
 | 
				
			||||||
	dc.h = mh;
 | 
						dc.h = mh;
 | 
				
			||||||
	drawtext(&dc, NULL, dc.norm);
 | 
						drawtext(&dc, NULL, normcol);
 | 
				
			||||||
	/* print prompt? */
 | 
						/* print prompt? */
 | 
				
			||||||
	if(prompt) {
 | 
						if(prompt) {
 | 
				
			||||||
		dc.w = promptw;
 | 
							dc.w = promptw;
 | 
				
			||||||
		drawtext(&dc, prompt, dc.sel);
 | 
							drawtext(&dc, prompt, selcol);
 | 
				
			||||||
		dc.x += dc.w;
 | 
							dc.x += dc.w;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	dc.w = mw - dc.x;
 | 
						dc.w = mw - dc.x;
 | 
				
			||||||
	/* print command */
 | 
						/* print command */
 | 
				
			||||||
	if(cmdw && item && lines == 0)
 | 
						if(cmdw && item && lines == 0)
 | 
				
			||||||
		dc.w = cmdw;
 | 
							dc.w = cmdw;
 | 
				
			||||||
	drawtext(&dc, *text ? text : NULL, dc.norm);
 | 
						drawtext(&dc, *text ? text : NULL, normcol);
 | 
				
			||||||
	if(curr) {
 | 
						if(curr) {
 | 
				
			||||||
		if(lines > 0)
 | 
							if(lines > 0)
 | 
				
			||||||
			drawmenuv();
 | 
								drawmenuv();
 | 
				
			||||||
@@ -187,16 +189,16 @@ drawmenuh(void) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	dc.x += cmdw;
 | 
						dc.x += cmdw;
 | 
				
			||||||
	dc.w = spaceitem;
 | 
						dc.w = spaceitem;
 | 
				
			||||||
	drawtext(&dc, curr->left ? "<" : NULL, dc.norm);
 | 
						drawtext(&dc, curr->left ? "<" : NULL, normcol);
 | 
				
			||||||
	dc.x += dc.w;
 | 
						dc.x += dc.w;
 | 
				
			||||||
	for(i = curr; i != next; i=i->right) {
 | 
						for(i = curr; i != next; i=i->right) {
 | 
				
			||||||
		dc.w = MIN(textw(&dc, i->text), mw / 3);
 | 
							dc.w = MIN(textw(&dc, i->text), mw / 3);
 | 
				
			||||||
		drawtext(&dc, i->text, (sel == i) ? dc.sel : dc.norm);
 | 
							drawtext(&dc, i->text, (sel == i) ? selcol : normcol);
 | 
				
			||||||
		dc.x += dc.w;
 | 
							dc.x += dc.w;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	dc.w = spaceitem;
 | 
						dc.w = spaceitem;
 | 
				
			||||||
	dc.x = mw - dc.w;
 | 
						dc.x = mw - dc.w;
 | 
				
			||||||
	drawtext(&dc, next ? ">" : NULL, dc.norm);
 | 
						drawtext(&dc, next ? ">" : NULL, normcol);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
@@ -207,11 +209,11 @@ drawmenuv(void) {
 | 
				
			|||||||
	dc.h = dc.font.height + 2;
 | 
						dc.h = dc.font.height + 2;
 | 
				
			||||||
	dc.y = dc.h;
 | 
						dc.y = dc.h;
 | 
				
			||||||
	for(i = curr; i != next; i=i->right) {
 | 
						for(i = curr; i != next; i=i->right) {
 | 
				
			||||||
		drawtext(&dc, i->text, (sel == i) ? dc.sel : dc.norm);
 | 
							drawtext(&dc, i->text, (sel == i) ? selcol : normcol);
 | 
				
			||||||
		dc.y += dc.h;
 | 
							dc.y += dc.h;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	dc.h = mh - dc.y;
 | 
						dc.h = mh - dc.y;
 | 
				
			||||||
	drawtext(&dc, NULL, dc.norm);
 | 
						drawtext(&dc, NULL, normcol);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Bool
 | 
					Bool
 | 
				
			||||||
@@ -490,10 +492,10 @@ setup(Bool topbar) {
 | 
				
			|||||||
	XFreeModifiermap(modmap);
 | 
						XFreeModifiermap(modmap);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dc.dpy = dpy;
 | 
						dc.dpy = dpy;
 | 
				
			||||||
	dc.norm[ColBG] = getcolor(&dc, normbgcolor);
 | 
						normcol[ColBG] = getcolor(&dc, normbgcolor);
 | 
				
			||||||
	dc.norm[ColFG] = getcolor(&dc, normfgcolor);
 | 
						normcol[ColFG] = getcolor(&dc, normfgcolor);
 | 
				
			||||||
	dc.sel[ColBG] = getcolor(&dc, selbgcolor);
 | 
						selcol[ColBG] = getcolor(&dc, selbgcolor);
 | 
				
			||||||
	dc.sel[ColFG] = getcolor(&dc, selfgcolor);
 | 
						selcol[ColFG] = getcolor(&dc, selfgcolor);
 | 
				
			||||||
	initfont(&dc, font);
 | 
						initfont(&dc, font);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* menu window */
 | 
						/* menu window */
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user