let specify theme in the rc3 file. rm the other old engine options

This commit is contained in:
Dana Jansens 2003-04-13 07:27:21 +00:00
parent 159423ff17
commit d6ef215583
3 changed files with 12 additions and 66 deletions

View file

@ -6,13 +6,7 @@ gboolean config_focus_follow;
gboolean config_focus_last; gboolean config_focus_last;
gboolean config_focus_last_on_desktop; gboolean config_focus_last_on_desktop;
char *config_engine_name; char *config_theme;
char *config_engine_theme;
char *config_engine_layout;
char *config_engine_font;
gboolean config_engine_shadow;
int config_engine_shadow_offset;
int config_engine_shadow_tint;
int config_desktops_num; int config_desktops_num;
GSList *config_desktops_names; GSList *config_desktops_names;
@ -48,57 +42,14 @@ static void parse_focus(char *name, ParseToken *value)
parse_free_token(value); parse_free_token(value);
} }
static void parse_engine(char *name, ParseToken *value) static void parse_theme(char *name, ParseToken *value)
{ {
if (!g_ascii_strcasecmp(name, "engine")) { if (!g_ascii_strcasecmp(name, "theme")) {
if (value->type != TOKEN_STRING) if (value->type != TOKEN_STRING)
yyerror("invalid value"); yyerror("invalid value");
else { else {
g_free(config_engine_name); g_free(config_theme);
config_engine_name = g_strdup(value->data.string); config_theme = g_strdup(value->data.string);
}
} else if (!g_ascii_strcasecmp(name, "theme")) {
if (value->type != TOKEN_STRING)
yyerror("invalid value");
else {
g_free(config_engine_theme);
config_engine_theme = g_strdup(value->data.string);
}
} else if (!g_ascii_strcasecmp(name, "titlebarlayout")) {
if (value->type != TOKEN_STRING)
yyerror("invalid value");
else {
g_free(config_engine_layout);
config_engine_layout = g_strdup(value->data.string);
}
} else if (!g_ascii_strcasecmp(name, "font.title")) {
if (value->type != TOKEN_STRING)
yyerror("invalid value");
else {
g_free(config_engine_font);
config_engine_font = g_strdup(value->data.string);
}
} else if (!g_ascii_strcasecmp(name, "font.title.shadow")) {
if (value->type != TOKEN_BOOL)
yyerror("invalid value");
else {
config_engine_shadow = value->data.bool;
}
} else if (!g_ascii_strcasecmp(name, "font.title.shadow.offset")) {
if (value->type != TOKEN_INTEGER)
yyerror("invalid value");
else {
config_engine_shadow_offset = value->data.integer;
}
} else if (!g_ascii_strcasecmp(name, "font.title.shadow.tint")) {
if (value->type != TOKEN_INTEGER)
yyerror("invalid value");
else {
config_engine_shadow_tint = value->data.integer;
if (config_engine_shadow_tint < -100)
config_engine_shadow_tint = -100;
else if (config_engine_shadow_tint > 100)
config_engine_shadow_tint = 100;
} }
} else } else
yyerror("invalid option"); yyerror("invalid option");
@ -147,15 +98,9 @@ void config_startup()
parse_reg_section("focus", NULL, parse_focus); parse_reg_section("focus", NULL, parse_focus);
config_engine_name = g_strdup(DEFAULT_ENGINE); config_theme = NULL;
config_engine_theme = NULL;
config_engine_layout = g_strdup("NLIMC");
config_engine_font = g_strdup("Sans-7");
config_engine_shadow = FALSE;
config_engine_shadow_offset = 1;
config_engine_shadow_tint = 25;
parse_reg_section("engine", NULL, parse_engine); parse_reg_section("theme", NULL, parse_theme);
config_desktops_num = 4; config_desktops_num = 4;
config_desktops_names = NULL; config_desktops_names = NULL;
@ -167,9 +112,7 @@ void config_shutdown()
{ {
GSList *it; GSList *it;
g_free(config_engine_name); g_free(config_theme);
g_free(config_engine_layout);
g_free(config_engine_font);
for (it = config_desktops_names; it; it = it->next) for (it = config_desktops_names; it; it = it->next)
g_free(it->data); g_free(it->data);

View file

@ -12,6 +12,9 @@ extern gboolean config_focus_last;
/*! Focus the last focused window as a fallback when switching desktops */ /*! Focus the last focused window as a fallback when switching desktops */
extern gboolean config_focus_last_on_desktop; extern gboolean config_focus_last_on_desktop;
/* The name of the theme */
char *config_theme;
/*! The number of desktops */ /*! The number of desktops */
extern int config_desktops_num; extern int config_desktops_num;
/*! Names for the desktops */ /*! Names for the desktops */

View file

@ -174,7 +174,7 @@ int main(int argc, char **argv)
parse_shutdown(); parse_shutdown();
/* load the theme specified in the rc file */ /* load the theme specified in the rc file */
theme = theme_load("ebox"); /* woot i like this theme :) */ theme = theme_load(config_theme);
g_free(theme); g_free(theme);
if (!theme) return 1; if (!theme) return 1;