mirror of
https://github.com/labwc/labwc.git
synced 2025-10-29 05:40:24 -04:00
Add basic menu theme options
This commit is contained in:
parent
f3a95d65ad
commit
bc04f50d14
6 changed files with 42 additions and 5 deletions
|
|
@ -54,6 +54,22 @@ compatibility.
|
|||
: Color of the images in titlebar buttons in their default, unpressed,
|
||||
state. This element is for non-focused windows.
|
||||
|
||||
`menu.items.bg.color`
|
||||
|
||||
: Background color of inactive menu items
|
||||
|
||||
`menu.items.text.color`
|
||||
|
||||
: Text color of inactive menu item
|
||||
|
||||
`menu.items.active.bg.color`
|
||||
|
||||
: Background color of active menu items
|
||||
|
||||
`menu.items.active.text.color`
|
||||
|
||||
: Text color of active menu item
|
||||
|
||||
# DEFINITIONS
|
||||
|
||||
The `handle` is the window decoration placed on the bottom of the window.
|
||||
|
|
|
|||
|
|
@ -6,3 +6,7 @@ window.inactive.title.bg.color: #efece6
|
|||
window.active.button.unpressed.image.color = #ffffff
|
||||
window.inactive.button.unpressed.image.color = #000000
|
||||
|
||||
menu.items.bg.color = #fcfbfa
|
||||
menu.items.text.color = #000000
|
||||
menu.items.active.bg.color = #4a90d9
|
||||
menu.items.active.text.color = #ffffff
|
||||
|
|
|
|||
|
|
@ -19,6 +19,11 @@ struct theme {
|
|||
float window_active_button_unpressed_image_color[4];
|
||||
float window_inactive_button_unpressed_image_color[4];
|
||||
|
||||
float menu_items_bg_color[4];
|
||||
float menu_items_text_color[4];
|
||||
float menu_items_active_bg_color[4];
|
||||
float menu_items_active_text_color[4];
|
||||
|
||||
struct wlr_texture *xbm_close_active_unpressed;
|
||||
struct wlr_texture *xbm_maximize_active_unpressed;
|
||||
struct wlr_texture *xbm_iconify_active_unpressed;
|
||||
|
|
|
|||
|
|
@ -7,10 +7,9 @@
|
|||
#include "common/font.h"
|
||||
#include "labwc.h"
|
||||
#include "menu/menu.h"
|
||||
#include "theme/theme.h"
|
||||
|
||||
static float background[4] = { 0.3f, 0.1f, 0.1f, 1.0f };
|
||||
static float foreground[4] = { 1.0f, 1.0f, 1.0f, 1.0f };
|
||||
static const char font[] = "Sans 10";
|
||||
static const char font[] = "Sans 8";
|
||||
|
||||
#define MENUWIDTH (100)
|
||||
#define MENUHEIGHT (25)
|
||||
|
|
@ -70,9 +69,10 @@ menuitem_create(struct server *server, struct menu *menu, const char *text,
|
|||
menuitem->geo_box.width = MENUWIDTH;
|
||||
menuitem->geo_box.height = MENUHEIGHT;
|
||||
menuitem->active_texture = texture_create(server, &menuitem->geo_box,
|
||||
text, background, foreground);
|
||||
text, theme.menu_items_active_bg_color,
|
||||
theme.menu_items_active_text_color);
|
||||
menuitem->inactive_texture = texture_create(server, &menuitem->geo_box,
|
||||
text, foreground, background);
|
||||
text, theme.menu_items_bg_color, theme.menu_items_text_color);
|
||||
wl_list_insert(&menu->menuitems, &menuitem->link);
|
||||
return menuitem;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,4 +18,8 @@ void theme_builtin(void)
|
|||
parse_hexstr("#efece6", theme.window_inactive_title_bg_color);
|
||||
parse_hexstr("#ffffff", theme.window_active_button_unpressed_image_color);
|
||||
parse_hexstr("#000000", theme.window_inactive_button_unpressed_image_color);
|
||||
parse_hexstr("#fcfbfa", theme.menu_items_bg_color);
|
||||
parse_hexstr("#000000", theme.menu_items_text_color);
|
||||
parse_hexstr("#4a90d9", theme.menu_items_active_bg_color);
|
||||
parse_hexstr("#ffffff", theme.menu_items_active_text_color);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,6 +63,14 @@ static void entry(const char *key, const char *value)
|
|||
parse_hexstr(value, theme.window_active_button_unpressed_image_color);
|
||||
} else if (match(key, "window.inactive.button.unpressed.image.color")) {
|
||||
parse_hexstr(value, theme.window_inactive_button_unpressed_image_color);
|
||||
} else if (match(key, "menu.items.bg.color")) {
|
||||
parse_hexstr(value, theme.menu_items_bg_color);
|
||||
} else if (match(key, "menu.items.text.color")) {
|
||||
parse_hexstr(value, theme.menu_items_text_color);
|
||||
} else if (match(key, "menu.items.active.bg.color")) {
|
||||
parse_hexstr(value, theme.menu_items_active_bg_color);
|
||||
} else if (match(key, "menu.items.active.text.color")) {
|
||||
parse_hexstr(value, theme.menu_items_active_text_color);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue