diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-06-22 08:32:35 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-06-22 08:32:35 +0000 |
| commit | 76aeb9b231fdd82ffe7f3d39b515c468d2029c4c (patch) | |
| tree | b1f1ef086d57880a72e94e61b15871be47e699ed /openbox/menu_render.c | |
| parent | 197988af674da27837f7a9e930e7a6d5c7a48c60 (diff) | |
add a simple menu parser.
while menu parsing, the theme does not exist so we can't do any theme stuff while creating menu stuff, so put that off for later, i.e when the menu is shown.
Diffstat (limited to 'openbox/menu_render.c')
| -rw-r--r-- | openbox/menu_render.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/openbox/menu_render.c b/openbox/menu_render.c index 2ca1c773..73a539e8 100644 --- a/openbox/menu_render.c +++ b/openbox/menu_render.c @@ -26,6 +26,18 @@ void menu_render_full(Menu *self) { self->size.width = 1; self->item_h = 1; + if (self->a_title == NULL) { + XSetWindowBorderWidth(ob_display, self->frame, ob_rr_theme->bwidth); + XSetWindowBackground(ob_display, self->frame, + ob_rr_theme->b_color->pixel); + XSetWindowBorderWidth(ob_display, self->title, ob_rr_theme->bwidth); + XSetWindowBorder(ob_display, self->frame, ob_rr_theme->b_color->pixel); + XSetWindowBorder(ob_display, self->title, ob_rr_theme->b_color->pixel); + + self->a_title = RrAppearanceCopy(ob_rr_theme->a_menu_title); + self->a_items = RrAppearanceCopy(ob_rr_theme->a_menu); + } + /* set texture data and size them mofos out */ if (self->label) { self->a_title->texture[0].data.text.string = self->label; @@ -39,6 +51,12 @@ void menu_render_full(Menu *self) { MenuEntry *e = it->data; int h; + if (e->a_item == NULL) { + e->a_item = RrAppearanceCopy(ob_rr_theme->a_menu_item); + e->a_disabled = RrAppearanceCopy(ob_rr_theme->a_menu_disabled); + e->a_hilite = RrAppearanceCopy(ob_rr_theme->a_menu_hilite); + } + e->a_item->texture[0].data.text.string = e->label; RrMinsize(e->a_item, &e->min_w, &self->item_h); self->size.width = MAX(self->size.width, e->min_w); |
