diff --git a/calmwm.h b/calmwm.h index cbf58a2..1256437 100644 --- a/calmwm.h +++ b/calmwm.h @@ -90,8 +90,8 @@ enum cwmcolor { }; struct color { - unsigned long pixel; char *name; + unsigned long pixel; }; struct gap { @@ -277,12 +277,6 @@ struct conf { #define CONF_SNAPDIST 0 int snapdist; struct gap gap; -#define CONF_COLOR_ACTIVEBORDER "#CCCCCC" -#define CONF_COLOR_INACTIVEBORDER "#666666" -#define CONF_COLOR_GROUPBORDER "blue" -#define CONF_COLOR_UNGROUPBORDER "red" -#define CONF_COLOR_MENUFG "black" -#define CONF_COLOR_MENUBG "white" struct color color[CWM_COLOR_MAX]; char termpath[MAXPATHLEN]; char lockpath[MAXPATHLEN]; diff --git a/conf.c b/conf.c index f44113a..5c921a4 100644 --- a/conf.c +++ b/conf.c @@ -65,6 +65,15 @@ conf_font(struct conf *c, struct screen_ctx *sc) sc->font = font_make(sc, c->font); } +static struct color color_binds[] = { + { "#CCCCCC", 0 }, /* CWM_COLOR_BORDOR_ACTIVE */ + { "#666666", 0 }, /* CWM_COLOR_BORDOR_INACTIVE */ + { "blue", 0 }, /* CWM_COLOR_BORDOR_GROUP */ + { "red", 0 }, /* CWM_COLOR_BORDOR_UNGROUP */ + { "black", 0 }, /* CWM_COLOR_FG_MENU */ + { "white", 0 }, /* CWM_COLOR_BG_MENU */ +}; + void conf_color(struct conf *c, struct screen_ctx *sc) { @@ -191,23 +200,13 @@ conf_init(struct conf *c) for (i = 0; i < nitems(m_binds); i++) conf_mousebind(c, m_binds[i].key, m_binds[i].func); + for (i = 0; i < nitems(color_binds); i++) + c->color[i].name = xstrdup(color_binds[i].name); + /* Default term/lock */ (void)strlcpy(c->termpath, "xterm", sizeof(c->termpath)); (void)strlcpy(c->lockpath, "xlock", sizeof(c->lockpath)); - c->color[CWM_COLOR_BORDER_ACTIVE].name = - xstrdup(CONF_COLOR_ACTIVEBORDER); - c->color[CWM_COLOR_BORDER_INACTIVE].name = - xstrdup(CONF_COLOR_INACTIVEBORDER); - c->color[CWM_COLOR_BORDER_GROUP].name = - xstrdup(CONF_COLOR_GROUPBORDER); - c->color[CWM_COLOR_BORDER_UNGROUP].name = - xstrdup(CONF_COLOR_UNGROUPBORDER); - c->color[CWM_COLOR_FG_MENU].name = - xstrdup(CONF_COLOR_MENUFG); - c->color[CWM_COLOR_BG_MENU].name = - xstrdup(CONF_COLOR_MENUBG); - c->font = xstrdup(CONF_FONT); }