X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Ftheme.c;h=ece4037c3e8c50acf26b82d71b529f72956168ad;hb=163950b23bf796a39870044417ca54d667b6b470;hp=a6931be664923a4980c23d736592671976917766;hpb=3167fc223ea82851ae954b348a5ff1c0ce6b6d79;p=chaz%2Fopenbox diff --git a/render/theme.c b/render/theme.c index a6931be6..ece4037c 100644 --- a/render/theme.c +++ b/render/theme.c @@ -177,9 +177,14 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, theme->osd_font = RrFontOpenDefault(inst); /* load direct dimensions */ - if (!read_int(db, "menu.overlap", &theme->menu_overlap) || - theme->menu_overlap < -100 || theme->menu_overlap > 100) - theme->menu_overlap = 0; + if ((!read_int(db, "menu.overlap.x", &theme->menu_overlap_x) && + !read_int(db, "menu.overlap", &theme->menu_overlap_x)) || + theme->menu_overlap_x < -100 || theme->menu_overlap_x > 100) + theme->menu_overlap_x = 0; + if ((!read_int(db, "menu.overlap.y", &theme->menu_overlap_y) && + !read_int(db, "menu.overlap", &theme->menu_overlap_y)) || + theme->menu_overlap_y < -100 || theme->menu_overlap_y > 100) + theme->menu_overlap_y = 0; if (!read_int(db, "window.handle.width", &theme->handle_height) || theme->handle_height < 0 || theme->handle_height > 100) theme->handle_height = 6; @@ -206,6 +211,17 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, if (!read_int(db, "window.client.padding.height", &theme->cbwidthy) || theme->cbwidthy < 0 || theme->cbwidthy > 100) theme->cbwidthy = theme->cbwidthx; + if (!read_int(db, "menu.separator.width", &theme->menu_sep_width) || + theme->menu_sep_width < 1 || theme->menu_sep_width > 100) + theme->menu_sep_width = 1; + if (!read_int(db, "menu.separator.padding.width", + &theme->menu_sep_paddingx) || + theme->menu_sep_paddingx < 0 || theme->menu_sep_paddingx > 100) + theme->menu_sep_paddingx = 6; + if (!read_int(db, "menu.separator.padding.height", + &theme->menu_sep_paddingy) || + theme->menu_sep_paddingy < 0 || theme->menu_sep_paddingy > 100) + theme->menu_sep_paddingy = 3; /* load colors */ if (!read_color(db, inst, @@ -215,7 +231,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, "border.color", &theme->frame_focused_border_color)) theme->frame_focused_border_color = RrColorNew(inst, 0, 0, 0); - /* title separator focused color inherits from focused boder color */ + /* title separator focused color inherits from focused border color */ if (!read_color(db, inst, "window.active.title.separator.color", &theme->title_separator_focused_color)) @@ -232,7 +248,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, RrColorNew(inst, theme->frame_focused_border_color->r, theme->frame_focused_border_color->g, theme->frame_focused_border_color->b); - /* title separator unfocused color inherits from unfocused boder color */ + /* title separator unfocused color inherits from unfocused border color */ if (!read_color(db, inst, "window.inactive.title.separator.color", &theme->title_separator_unfocused_color)) @@ -403,6 +419,12 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, "menu.items.active.text.color", &theme->menu_selected_color)) theme->menu_selected_color = RrColorNew(inst, 0, 0, 0); + if (!read_color(db, inst, + "menu.separator.color", &theme->menu_sep_color)) + theme->menu_sep_color = RrColorNew(inst, + theme->menu_color->r, + theme->menu_color->g, + theme->menu_color->b); /* load the image masks */ @@ -552,6 +574,9 @@ RrTheme* RrThemeNew(const RrInstance *inst, const gchar *name, theme->def_win_icon = read_c_image(OB_DEFAULT_ICON_WIDTH, OB_DEFAULT_ICON_HEIGHT, OB_DEFAULT_ICON_pixel_data); + theme->def_win_icon_w = OB_DEFAULT_ICON_WIDTH; + theme->def_win_icon_h = OB_DEFAULT_ICON_HEIGHT; + /* read the decoration textures */ if (!read_appearance(db, inst, @@ -1410,6 +1435,7 @@ void RrThemeFree(RrTheme *theme) RrColorFree(theme->titlebut_focused_unpressed_color); RrColorFree(theme->titlebut_unfocused_unpressed_color); RrColorFree(theme->menu_title_color); + RrColorFree(theme->menu_sep_color); RrColorFree(theme->menu_color); RrColorFree(theme->menu_selected_color); RrColorFree(theme->menu_disabled_color);