From 96f9db0d0c0ef9073be894162e5c6ea2db726b44 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Wed, 17 Sep 2003 06:21:35 +0000 Subject: [PATCH] api cleanups for render/theme.h --- openbox/menuframe.c | 2 +- render/theme.c | 45 ++++++++++++++++++++++++--------------------- render/theme.h | 15 ++++++++------- 3 files changed, 33 insertions(+), 29 deletions(-) diff --git a/openbox/menuframe.c b/openbox/menuframe.c index 212a8d9a..5c502d84 100644 --- a/openbox/menuframe.c +++ b/openbox/menuframe.c @@ -401,7 +401,7 @@ static void menu_frame_render(ObMenuFrame *self) tw = MIN(tw, MAX_MENU_WIDTH) + ob_rr_theme->padding * 2; w = MAX(w, tw); - th = ob_rr_theme->mtitlefont_height + ob_rr_theme->padding * 2; + th = ob_rr_theme->menu_title_height; h += (self->title_h = th + ob_rr_theme->bwidth); XSetWindowBorderWidth(ob_display, self->title, ob_rr_theme->bwidth); diff --git a/render/theme.c b/render/theme.c index c30acc2d..c446ec11 100644 --- a/render/theme.c +++ b/render/theme.c @@ -101,21 +101,21 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) if (!read_string(db, "window.active.label.text.font", &font_str)) font_str = "arial,sans:bold:pixelsize=10:shadow=y:shadowtint=50"; - if (!(theme->winfont_focused = RrFontOpen(inst, font_str))) { + if (!(theme->win_font_focused = RrFontOpen(inst, font_str))) { RrThemeFree(theme); return NULL; } - theme->winfont_height = RrFontHeight(theme->winfont_focused); + theme->win_font_height = RrFontHeight(theme->win_font_focused); if (!read_string(db, "window.inactive.label.text.font", &font_str)) /* font_str will already be set to the last one */; - if (!(theme->winfont_unfocused = RrFontOpen(inst, font_str))) { + if (!(theme->win_font_unfocused = RrFontOpen(inst, font_str))) { RrThemeFree(theme); return NULL; } - theme->winfont_height = MAX(theme->winfont_height, - RrFontHeight(theme->winfont_unfocused)); + theme->win_font_height = MAX(theme->win_font_height, + RrFontHeight(theme->win_font_unfocused)); winjust = RR_JUSTIFY_LEFT; if (read_string(db, "window.label.text.justify", &str)) { @@ -128,11 +128,11 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) if (!read_string(db, "menu.title.text.font", &font_str)) font_str = "arial,sans:bold:pixelsize=12:shadow=y"; - if (!(theme->mtitlefont = RrFontOpen(inst, font_str))) { + if (!(theme->menu_title_font = RrFontOpen(inst, font_str))) { RrThemeFree(theme); return NULL; } - theme->mtitlefont_height = RrFontHeight(theme->mtitlefont); + theme->menu_title_font_height = RrFontHeight(theme->menu_title_font); mtitlejust = RR_JUSTIFY_LEFT; if (read_string(db, "menu.title.text.justify", &str)) { @@ -145,11 +145,11 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) if (!read_string(db, "menu.items.font", &font_str)) font_str = "arial,sans:bold:pixelsize=11:shadow=y"; - if (!(theme->mfont = RrFontOpen(inst, font_str))) { + if (!(theme->menu_font = RrFontOpen(inst, font_str))) { RrThemeFree(theme); return NULL; } - theme->mfont_height = RrFontHeight(theme->mfont); + theme->menu_font_height = RrFontHeight(theme->menu_font); /* load direct dimensions */ if (!read_int(db, "menu.overlap", &theme->menu_overlap) || @@ -672,7 +672,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) theme->app_hilite_label->texture[0].data.text.justify = RR_JUSTIFY_LEFT; theme->a_focused_label->texture[0].data.text.font = theme->app_hilite_label->texture[0].data.text.font = - theme->winfont_focused; + theme->win_font_focused; theme->a_focused_label->texture[0].data.text.color = theme->app_hilite_label->texture[0].data.text.color = theme->title_focused_color; @@ -684,14 +684,14 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) RR_JUSTIFY_LEFT; theme->a_unfocused_label->texture[0].data.text.font = theme->app_unhilite_label->texture[0].data.text.font = - theme->winfont_unfocused; + theme->win_font_unfocused; theme->a_unfocused_label->texture[0].data.text.color = theme->app_unhilite_label->texture[0].data.text.color = theme->title_unfocused_color; theme->a_menu_title->texture[0].type = RR_TEXTURE_TEXT; theme->a_menu_title->texture[0].data.text.justify = mtitlejust; - theme->a_menu_title->texture[0].data.text.font = theme->mtitlefont; + theme->a_menu_title->texture[0].data.text.font = theme->menu_title_font; theme->a_menu_title->texture[0].data.text.color = theme->menu_title_color; theme->a_menu_text_normal->texture[0].type = @@ -703,7 +703,8 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) RR_JUSTIFY_LEFT; theme->a_menu_text_normal->texture[0].data.text.font = theme->a_menu_text_disabled->texture[0].data.text.font = - theme->a_menu_text_selected->texture[0].data.text.font = theme->mfont; + theme->a_menu_text_selected->texture[0].data.text.font = + theme->menu_font; theme->a_menu_text_normal->texture[0].data.text.color = theme->menu_color; theme->a_menu_text_disabled->texture[0].data.text.color = theme->menu_disabled_color; @@ -895,13 +896,11 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) XrmDestroyDatabase(db); { - gint fl, ft, fr, fb; - gint ul, ut, ur, ub; + gint ft, fb, fl, fr, ut, ub, ul, ur; RrMargins(theme->a_focused_label, &fl, &ft, &fr, &fb); RrMargins(theme->a_unfocused_label, &ul, &ut, &ur, &ub); - theme->label_height = theme->winfont_height - + MAX(ft + fb, ut + ub); + theme->label_height = theme->win_font_height + MAX(ft + fb, ut + ub); /* this would be nice I think, since padding.width can now be 0, but it breaks frame.c horribly and I don't feel like fixing that @@ -915,6 +914,10 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name) MAX(theme->padding * 2, ut + ub)); */ theme->title_height = theme->label_height + theme->padding * 2; + /* this should match the above title_height given the same font size + for both. */ + theme->menu_title_height = theme->menu_title_font_height + + theme->padding * 2; } theme->button_size = theme->label_height - 2; theme->grip_width = theme->title_height * 1.5; @@ -975,10 +978,10 @@ void RrThemeFree(RrTheme *theme) RrPixmapMaskFree(theme->close_pressed_mask); RrPixmapMaskFree(theme->menu_bullet_mask); - RrFontClose(theme->winfont_focused); - RrFontClose(theme->winfont_unfocused); - RrFontClose(theme->mtitlefont); - RrFontClose(theme->mfont); + RrFontClose(theme->win_font_focused); + RrFontClose(theme->win_font_unfocused); + RrFontClose(theme->menu_title_font); + RrFontClose(theme->menu_font); RrAppearanceFree(theme->a_disabled_focused_max); RrAppearanceFree(theme->a_disabled_unfocused_max); diff --git a/render/theme.h b/render/theme.h index 23eead31..5b7b932a 100644 --- a/render/theme.h +++ b/render/theme.h @@ -21,6 +21,7 @@ struct _RrTheme { gint cbwidth; gint label_height; gint title_height; + gint menu_title_height; gint button_size; gint grip_width; gint menu_overlap; @@ -47,13 +48,13 @@ struct _RrTheme { RrColor *menu_selected_color; /* style settings - fonts */ - gint winfont_height; - RrFont *winfont_focused; - RrFont *winfont_unfocused; - gint mtitlefont_height; - RrFont *mtitlefont; - gint mfont_height; - RrFont *mfont; + gint win_font_height; + RrFont *win_font_focused; + RrFont *win_font_unfocused; + gint menu_title_font_height; + RrFont *menu_title_font; + gint menu_font_height; + RrFont *menu_font; /* style settings - pics */ RrPixel32 *def_win_icon; /* 48x48 RGBA */ -- 2.45.2