From d6ef215583e6293477f674bde75d9a22d0c91d26 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sun, 13 Apr 2003 07:27:21 +0000 Subject: [PATCH] let specify theme in the rc3 file. rm the other old engine options --- openbox/config.c | 73 ++++++----------------------------------------- openbox/config.h | 3 ++ openbox/openbox.c | 2 +- 3 files changed, 12 insertions(+), 66 deletions(-) diff --git a/openbox/config.c b/openbox/config.c index 12255906..db8856e6 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -6,13 +6,7 @@ gboolean config_focus_follow; gboolean config_focus_last; gboolean config_focus_last_on_desktop; -char *config_engine_name; -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; +char *config_theme; int config_desktops_num; GSList *config_desktops_names; @@ -48,57 +42,14 @@ static void parse_focus(char *name, ParseToken *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) yyerror("invalid value"); else { - g_free(config_engine_name); - config_engine_name = 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; + g_free(config_theme); + config_theme = g_strdup(value->data.string); } } else yyerror("invalid option"); @@ -147,15 +98,9 @@ void config_startup() parse_reg_section("focus", NULL, parse_focus); - config_engine_name = g_strdup(DEFAULT_ENGINE); - 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; + config_theme = NULL; - parse_reg_section("engine", NULL, parse_engine); + parse_reg_section("theme", NULL, parse_theme); config_desktops_num = 4; config_desktops_names = NULL; @@ -167,9 +112,7 @@ void config_shutdown() { GSList *it; - g_free(config_engine_name); - g_free(config_engine_layout); - g_free(config_engine_font); + g_free(config_theme); for (it = config_desktops_names; it; it = it->next) g_free(it->data); diff --git a/openbox/config.h b/openbox/config.h index b69f74a1..27b00dd7 100644 --- a/openbox/config.h +++ b/openbox/config.h @@ -12,6 +12,9 @@ extern gboolean config_focus_last; /*! Focus the last focused window as a fallback when switching desktops */ extern gboolean config_focus_last_on_desktop; +/* The name of the theme */ +char *config_theme; + /*! The number of desktops */ extern int config_desktops_num; /*! Names for the desktops */ diff --git a/openbox/openbox.c b/openbox/openbox.c index afe43f27..134070ad 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -174,7 +174,7 @@ int main(int argc, char **argv) parse_shutdown(); /* 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); if (!theme) return 1; -- 2.39.2