non-trivial menu drawing rewrite, moving to Xft and solving various
font/color drawing issues; from Alexander Polakov
This commit is contained in:
23
parse.y
23
parse.y
@@ -73,7 +73,8 @@ typedef struct {
|
||||
%token COLOR SNAPDIST
|
||||
%token ACTIVEBORDER INACTIVEBORDER
|
||||
%token GROUPBORDER UNGROUPBORDER
|
||||
%token MENUBG MENUFG FONTCOLOR
|
||||
%token MENUBG MENUFG
|
||||
%token FONTCOLOR FONTSELCOLOR
|
||||
%token ERROR
|
||||
%token <v.string> STRING
|
||||
%token <v.number> NUMBER
|
||||
@@ -186,16 +187,20 @@ colors : ACTIVEBORDER STRING {
|
||||
conf->color[CWM_COLOR_BORDER_UNGROUP].name = $2;
|
||||
}
|
||||
| MENUBG STRING {
|
||||
free(conf->color[CWM_COLOR_BG_MENU].name);
|
||||
conf->color[CWM_COLOR_BG_MENU].name = $2;
|
||||
free(conf->menucolor[CWM_COLOR_MENU_BG]);
|
||||
conf->menucolor[CWM_COLOR_MENU_BG] = $2;
|
||||
}
|
||||
| MENUFG STRING {
|
||||
free(conf->color[CWM_COLOR_FG_MENU].name);
|
||||
conf->color[CWM_COLOR_FG_MENU].name = $2;
|
||||
free(conf->menucolor[CWM_COLOR_MENU_FG]);
|
||||
conf->menucolor[CWM_COLOR_MENU_FG] = $2;
|
||||
}
|
||||
| FONTCOLOR STRING {
|
||||
free(conf->color[CWM_COLOR_FONT].name);
|
||||
conf->color[CWM_COLOR_FONT].name = $2;
|
||||
free(conf->menucolor[CWM_COLOR_MENU_FONT]);
|
||||
conf->menucolor[CWM_COLOR_MENU_FONT] = $2;
|
||||
}
|
||||
| FONTSELCOLOR STRING {
|
||||
free(conf->menucolor[CWM_COLOR_MENU_FONT_SEL]);
|
||||
conf->menucolor[CWM_COLOR_MENU_FONT_SEL] = $2;
|
||||
}
|
||||
;
|
||||
%%
|
||||
@@ -247,6 +252,7 @@ lookup(char *s)
|
||||
{ "mousebind", MOUSEBIND},
|
||||
{ "moveamount", MOVEAMOUNT},
|
||||
{ "no", NO},
|
||||
{ "selfont", FONTSELCOLOR},
|
||||
{ "snapdist", SNAPDIST},
|
||||
{ "sticky", STICKY},
|
||||
{ "ungroupborder", UNGROUPBORDER},
|
||||
@@ -575,6 +581,9 @@ parse_config(const char *filename, struct conf *xconf)
|
||||
for (i = 0; i < CWM_COLOR_MAX; i++)
|
||||
xconf->color[i].name = conf->color[i].name;
|
||||
|
||||
for (i = 0; i < CWM_COLOR_MENU_MAX; i++)
|
||||
xconf->menucolor[i]= conf->menucolor[i];
|
||||
|
||||
xconf->font = conf->font;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user