From 267a60af3236a85be28a650878c35477a5921217 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Madar=C3=A1sz?= Date: Mon, 16 Jan 2023 16:37:26 +0100 Subject: [PATCH] custom UI style --- art/anonymous_pro_bold.ttf | Bin 0 -> 153616 bytes art/skins/gwen.png | Bin 0 -> 24565 bytes code/foundation/src/core/game.c | 3 +- code/foundation/src/dev/debug_ui.c | 4 + code/foundation/src/gui/notifications.c | 2 +- code/foundation/src/gui/tooltip.c | 4 +- code/foundation/src/gui/ui_skin.c | 483 ++++++++++++++++++ code/games/sandbox/src/platform.c | 4 +- .../raylib-nuklear/include/raylib-nuklear.h | 1 + 9 files changed, 496 insertions(+), 5 deletions(-) create mode 100644 art/anonymous_pro_bold.ttf create mode 100644 art/skins/gwen.png create mode 100644 code/foundation/src/gui/ui_skin.c diff --git a/art/anonymous_pro_bold.ttf b/art/anonymous_pro_bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..badb0aad69b64f4e3459774e3638e437a98f85ae GIT binary patch literal 153616 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%0ASMd71L*8NUh&SL3dPlt>Z`ga6cb8Z6j(H>A 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 V-`+z~6wChGGn)SQXAHx#{{vE;*bx8# literal 0 HcmV?d00001 diff --git a/art/skins/gwen.png b/art/skins/gwen.png new file mode 100644 index 0000000000000000000000000000000000000000..40956c9411c4c59a9b5001589ae0fa2a6e2258c9 GIT binary patch literal 24565 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 G-~10fwS(yZ literal 0 HcmV?d00001 diff --git a/code/foundation/src/core/game.c b/code/foundation/src/core/game.c index 0ec7190..5c848aa 100644 --- a/code/foundation/src/core/game.c +++ b/code/foundation/src/core/game.c @@ -156,7 +156,8 @@ void game_init(const char *ip, uint16_t port, game_kind play_mode, uint32_t num_ active_viewer = &world_viewers[0]; camera_reset(); - game_ui = InitNuklear(10); + Font font = LoadFontEx("art/anonymous_pro_bold.ttf", 14, 0, 0); + game_ui = InitNuklearEx(font, 14); } if (game_mode != GAMEKIND_SINGLE) { diff --git a/code/foundation/src/dev/debug_ui.c b/code/foundation/src/dev/debug_ui.c index 3546367..de6a66d 100644 --- a/code/foundation/src/dev/debug_ui.c +++ b/code/foundation/src/dev/debug_ui.c @@ -97,6 +97,8 @@ static int UIMeasureText(const char *text, int fontSize); #include "dev/debug_replay.c" +#include "gui/ui_skin.c" + #include "dev/debug_ui_actions.c" #include "dev/debug_ui_widgets.c" #include "dev/debug_ui_tools.c" @@ -406,6 +408,8 @@ void debug_draw(void) { // NOTE(zaklaus): Flush old debug samples debug_draw_flush(); + set_style(dev_ui, THEME_RED); + static zpl_u8 first_run=0; if (!first_run) { first_run = 1; diff --git a/code/foundation/src/gui/notifications.c b/code/foundation/src/gui/notifications.c index 587145a..db7c400 100644 --- a/code/foundation/src/gui/notifications.c +++ b/code/foundation/src/gui/notifications.c @@ -46,7 +46,7 @@ void notification_draw(void) { for (zpl_isize i = cnt; i >= 0; --i) { notification *notif = (notifications + i); - if (nk_begin_titled(game_ui, zpl_bprintf("%dnotif%s", i, notif->title), notif->title, nk_rect(width - 220, ypos, 200, 1200), + if (nk_begin_titled(game_ui, zpl_bprintf("%dnotif%s", i, notif->title), notif->title, nk_rect(width - 320, ypos, 300, 1200), NK_WINDOW_DYNAMIC|NK_WINDOW_NO_SCROLLBAR)) { { if (nk_tree_push_id(game_ui, NK_TREE_TAB, notif->title, NK_MAXIMIZED, (int)i)) { diff --git a/code/foundation/src/gui/tooltip.c b/code/foundation/src/gui/tooltip.c index d3c3286..a2fdf3e 100644 --- a/code/foundation/src/gui/tooltip.c +++ b/code/foundation/src/gui/tooltip.c @@ -148,13 +148,13 @@ void tooltip__draw_node(tooltip_node *node) { tooltip *desc = node->desc; Vector2 mpos = GetMousePosition(); - if (nk_begin_titled(game_ui, zpl_bprintf("%d%s", (int)node->xpos, desc->name), desc->name, nk_rect(node->xpos, node->ypos, 300, 3200), + if (nk_begin_titled(game_ui, zpl_bprintf("%d%s", (int)node->xpos, desc->name), desc->name, nk_rect(node->xpos, node->ypos, 500, 3200), NK_WINDOW_BORDER | NK_WINDOW_NO_SCROLLBAR | NK_WINDOW_DYNAMIC | NK_WINDOW_TITLE | NK_WINDOW_MOVABLE)) { tooltip_draw_contents(desc); if (desc->links) { nk_label(game_ui, "See Also:", NK_TEXT_LEFT); - nk_layout_row_dynamic(game_ui, 10, 2); + nk_layout_row_dynamic(game_ui, 20, 2); for (zpl_isize i = 0; i < zpl_array_count(desc->links); ++i) { // todo styling diff --git a/code/foundation/src/gui/ui_skin.c b/code/foundation/src/gui/ui_skin.c new file mode 100644 index 0000000..25ce875 --- /dev/null +++ b/code/foundation/src/gui/ui_skin.c @@ -0,0 +1,483 @@ +enum theme {THEME_BLACK, THEME_WHITE, THEME_RED, THEME_BLUE, THEME_DARK, THEME_ECO}; + +static void set_style(struct nk_context *ctx, enum theme theme) +{ + struct nk_color table[NK_COLOR_COUNT]; + if (theme == THEME_WHITE) { + table[NK_COLOR_TEXT] = nk_rgba(70, 70, 70, 255); + table[NK_COLOR_WINDOW] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_HEADER] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_BORDER] = nk_rgba(0, 0, 0, 255); + table[NK_COLOR_BUTTON] = nk_rgba(185, 185, 185, 255); + table[NK_COLOR_BUTTON_HOVER] = nk_rgba(170, 170, 170, 255); + table[NK_COLOR_BUTTON_ACTIVE] = nk_rgba(160, 160, 160, 255); + table[NK_COLOR_TOGGLE] = nk_rgba(150, 150, 150, 255); + table[NK_COLOR_TOGGLE_HOVER] = nk_rgba(120, 120, 120, 255); + table[NK_COLOR_TOGGLE_CURSOR] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_SELECT] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_SELECT_ACTIVE] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_SLIDER] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_SLIDER_CURSOR] = nk_rgba(80, 80, 80, 255); + table[NK_COLOR_SLIDER_CURSOR_HOVER] = nk_rgba(70, 70, 70, 255); + table[NK_COLOR_SLIDER_CURSOR_ACTIVE] = nk_rgba(60, 60, 60, 255); + table[NK_COLOR_PROPERTY] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_EDIT] = nk_rgba(150, 150, 150, 255); + table[NK_COLOR_EDIT_CURSOR] = nk_rgba(0, 0, 0, 255); + table[NK_COLOR_COMBO] = nk_rgba(175, 175, 175, 255); + table[NK_COLOR_CHART] = nk_rgba(160, 160, 160, 255); + table[NK_COLOR_CHART_COLOR] = nk_rgba(45, 45, 45, 255); + table[NK_COLOR_CHART_COLOR_HIGHLIGHT] = nk_rgba( 255, 0, 0, 255); + table[NK_COLOR_SCROLLBAR] = nk_rgba(180, 180, 180, 255); + table[NK_COLOR_SCROLLBAR_CURSOR] = nk_rgba(140, 140, 140, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_HOVER] = nk_rgba(150, 150, 150, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_ACTIVE] = nk_rgba(160, 160, 160, 255); + table[NK_COLOR_TAB_HEADER] = nk_rgba(180, 180, 180, 255); + nk_style_from_table(ctx, table); + } else if (theme == THEME_RED) { + table[NK_COLOR_TEXT] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_WINDOW] = nk_rgba(30, 33, 40, 215); + table[NK_COLOR_HEADER] = nk_rgba(181, 45, 69, 220); + table[NK_COLOR_BORDER] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_BUTTON] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_BUTTON_HOVER] = nk_rgba(190, 50, 70, 255); + table[NK_COLOR_BUTTON_ACTIVE] = nk_rgba(195, 55, 75, 255); + table[NK_COLOR_TOGGLE] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_TOGGLE_HOVER] = nk_rgba(45, 60, 60, 255); + table[NK_COLOR_TOGGLE_CURSOR] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SELECT] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_SELECT_ACTIVE] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SLIDER] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_SLIDER_CURSOR] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SLIDER_CURSOR_HOVER] = nk_rgba(186, 50, 74, 255); + table[NK_COLOR_SLIDER_CURSOR_ACTIVE] = nk_rgba(191, 55, 79, 255); + table[NK_COLOR_PROPERTY] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_EDIT] = nk_rgba(51, 55, 67, 225); + table[NK_COLOR_EDIT_CURSOR] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_COMBO] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_CHART] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_CHART_COLOR] = nk_rgba(170, 40, 60, 255); + table[NK_COLOR_CHART_COLOR_HIGHLIGHT] = nk_rgba( 255, 0, 0, 255); + table[NK_COLOR_SCROLLBAR] = nk_rgba(30, 33, 40, 255); + table[NK_COLOR_SCROLLBAR_CURSOR] = nk_rgba(64, 84, 95, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_HOVER] = nk_rgba(70, 90, 100, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_ACTIVE] = nk_rgba(75, 95, 105, 255); + table[NK_COLOR_TAB_HEADER] = nk_rgba(181, 45, 69, 220); + nk_style_from_table(ctx, table); + } else if (theme == THEME_ECO) { + table[NK_COLOR_TEXT] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_WINDOW] = nk_rgba(40, 43, 10, 235); + table[NK_COLOR_HEADER] = nk_rgba(32, 96, 64 , 220); + table[NK_COLOR_BORDER] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_BUTTON] = nk_rgba(20, 23, 30, 215); + table[NK_COLOR_BUTTON_HOVER] = nk_rgba(32, 96, 64 , 235); + table[NK_COLOR_BUTTON_ACTIVE] = nk_rgba(52, 116, 84 , 255); + table[NK_COLOR_TOGGLE] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_TOGGLE_HOVER] = nk_rgba(45, 60, 60, 255); + table[NK_COLOR_TOGGLE_CURSOR] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SELECT] = nk_rgba(20, 23, 30, 215); + table[NK_COLOR_SELECT_ACTIVE] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SLIDER] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_SLIDER_CURSOR] = nk_rgba(181, 45, 69, 255); + table[NK_COLOR_SLIDER_CURSOR_HOVER] = nk_rgba(186, 50, 74, 255); + table[NK_COLOR_SLIDER_CURSOR_ACTIVE] = nk_rgba(191, 55, 79, 255); + table[NK_COLOR_PROPERTY] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_EDIT] = nk_rgba(51, 55, 67, 225); + table[NK_COLOR_EDIT_CURSOR] = nk_rgba(190, 190, 190, 255); + table[NK_COLOR_COMBO] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_CHART] = nk_rgba(51, 55, 67, 255); + table[NK_COLOR_CHART_COLOR] = nk_rgba(170, 40, 60, 255); + table[NK_COLOR_CHART_COLOR_HIGHLIGHT] = nk_rgba( 255, 0, 0, 255); + table[NK_COLOR_SCROLLBAR] = nk_rgba(30, 33, 40, 255); + table[NK_COLOR_SCROLLBAR_CURSOR] = nk_rgba(64, 84, 95, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_HOVER] = nk_rgba(70, 90, 100, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_ACTIVE] = nk_rgba(75, 95, 105, 255); + table[NK_COLOR_TAB_HEADER] = nk_rgba(32, 96, 64 , 220); + nk_style_from_table(ctx, table); + } else if (theme == THEME_BLUE) { + table[NK_COLOR_TEXT] = nk_rgba(20, 20, 20, 255); + table[NK_COLOR_WINDOW] = nk_rgba(202, 212, 214, 215); + table[NK_COLOR_HEADER] = nk_rgba(137, 182, 224, 220); + table[NK_COLOR_BORDER] = nk_rgba(140, 159, 173, 255); + table[NK_COLOR_BUTTON] = nk_rgba(137, 182, 224, 255); + table[NK_COLOR_BUTTON_HOVER] = nk_rgba(142, 187, 229, 255); + table[NK_COLOR_BUTTON_ACTIVE] = nk_rgba(147, 192, 234, 255); + table[NK_COLOR_TOGGLE] = nk_rgba(177, 210, 210, 255); + table[NK_COLOR_TOGGLE_HOVER] = nk_rgba(182, 215, 215, 255); + table[NK_COLOR_TOGGLE_CURSOR] = nk_rgba(137, 182, 224, 255); + table[NK_COLOR_SELECT] = nk_rgba(177, 210, 210, 255); + table[NK_COLOR_SELECT_ACTIVE] = nk_rgba(137, 182, 224, 255); + table[NK_COLOR_SLIDER] = nk_rgba(177, 210, 210, 255); + table[NK_COLOR_SLIDER_CURSOR] = nk_rgba(137, 182, 224, 245); + table[NK_COLOR_SLIDER_CURSOR_HOVER] = nk_rgba(142, 188, 229, 255); + table[NK_COLOR_SLIDER_CURSOR_ACTIVE] = nk_rgba(147, 193, 234, 255); + table[NK_COLOR_PROPERTY] = nk_rgba(210, 210, 210, 255); + table[NK_COLOR_EDIT] = nk_rgba(210, 210, 210, 225); + table[NK_COLOR_EDIT_CURSOR] = nk_rgba(20, 20, 20, 255); + table[NK_COLOR_COMBO] = nk_rgba(210, 210, 210, 255); + table[NK_COLOR_CHART] = nk_rgba(210, 210, 210, 255); + table[NK_COLOR_CHART_COLOR] = nk_rgba(137, 182, 224, 255); + table[NK_COLOR_CHART_COLOR_HIGHLIGHT] = nk_rgba( 255, 0, 0, 255); + table[NK_COLOR_SCROLLBAR] = nk_rgba(190, 200, 200, 255); + table[NK_COLOR_SCROLLBAR_CURSOR] = nk_rgba(64, 84, 95, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_HOVER] = nk_rgba(70, 90, 100, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_ACTIVE] = nk_rgba(75, 95, 105, 255); + table[NK_COLOR_TAB_HEADER] = nk_rgba(156, 193, 220, 255); + nk_style_from_table(ctx, table); + } else if (theme == THEME_DARK) { + table[NK_COLOR_TEXT] = nk_rgba(210, 210, 210, 255); + table[NK_COLOR_WINDOW] = nk_rgba(57, 67, 71, 215); + table[NK_COLOR_HEADER] = nk_rgba(51, 51, 56, 220); + table[NK_COLOR_BORDER] = nk_rgba(46, 46, 46, 255); + table[NK_COLOR_BUTTON] = nk_rgba(48, 83, 111, 255); + table[NK_COLOR_BUTTON_HOVER] = nk_rgba(58, 93, 121, 255); + table[NK_COLOR_BUTTON_ACTIVE] = nk_rgba(63, 98, 126, 255); + table[NK_COLOR_TOGGLE] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_TOGGLE_HOVER] = nk_rgba(45, 53, 56, 255); + table[NK_COLOR_TOGGLE_CURSOR] = nk_rgba(48, 83, 111, 255); + table[NK_COLOR_SELECT] = nk_rgba(57, 67, 61, 255); + table[NK_COLOR_SELECT_ACTIVE] = nk_rgba(48, 83, 111, 255); + table[NK_COLOR_SLIDER] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_SLIDER_CURSOR] = nk_rgba(48, 83, 111, 245); + table[NK_COLOR_SLIDER_CURSOR_HOVER] = nk_rgba(53, 88, 116, 255); + table[NK_COLOR_SLIDER_CURSOR_ACTIVE] = nk_rgba(58, 93, 121, 255); + table[NK_COLOR_PROPERTY] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_EDIT] = nk_rgba(50, 58, 61, 225); + table[NK_COLOR_EDIT_CURSOR] = nk_rgba(210, 210, 210, 255); + table[NK_COLOR_COMBO] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_CHART] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_CHART_COLOR] = nk_rgba(48, 83, 111, 255); + table[NK_COLOR_CHART_COLOR_HIGHLIGHT] = nk_rgba(255, 0, 0, 255); + table[NK_COLOR_SCROLLBAR] = nk_rgba(50, 58, 61, 255); + table[NK_COLOR_SCROLLBAR_CURSOR] = nk_rgba(48, 83, 111, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_HOVER] = nk_rgba(53, 88, 116, 255); + table[NK_COLOR_SCROLLBAR_CURSOR_ACTIVE] = nk_rgba(58, 93, 121, 255); + table[NK_COLOR_TAB_HEADER] = nk_rgba(48, 83, 111, 255); + nk_style_from_table(ctx, table); + } else { + nk_style_default(ctx); + } +} + +#if 0 +typedef struct media { + GLint skin; + struct nk_image menu; + struct nk_image check; + struct nk_image check_cursor; + struct nk_image option; + struct nk_image option_cursor; + struct nk_image header; + struct nk_image window; + struct nk_image scrollbar_inc_button; + struct nk_image scrollbar_inc_button_hover; + struct nk_image scrollbar_dec_button; + struct nk_image scrollbar_dec_button_hover; + struct nk_image button; + struct nk_image button_hover; + struct nk_image button_active; + struct nk_image tab_minimize; + struct nk_image tab_maximize; + struct nk_image slider; + struct nk_image slider_hover; + struct nk_image slider_active; +} media; + +void nk_skin_gwen(void) { + media.skin = image_load("../skins/gwen.png"); + media.check = nk_subimage_id(media.skin, 512,512, nk_rect(464,32,15,15)); + media.check_cursor = nk_subimage_id(media.skin, 512,512, nk_rect(450,34,11,11)); + media.option = nk_subimage_id(media.skin, 512,512, nk_rect(464,64,15,15)); + media.option_cursor = nk_subimage_id(media.skin, 512,512, nk_rect(451,67,9,9)); + media.header = nk_subimage_id(media.skin, 512,512, nk_rect(128,0,127,24)); + media.window = nk_subimage_id(media.skin, 512,512, nk_rect(128,23,127,104)); + media.scrollbar_inc_button = nk_subimage_id(media.skin, 512,512, nk_rect(464,256,15,15)); + media.scrollbar_inc_button_hover = nk_subimage_id(media.skin, 512,512, nk_rect(464,320,15,15)); + media.scrollbar_dec_button = nk_subimage_id(media.skin, 512,512, nk_rect(464,224,15,15)); + media.scrollbar_dec_button_hover = nk_subimage_id(media.skin, 512,512, nk_rect(464,288,15,15)); + media.button = nk_subimage_id(media.skin, 512,512, nk_rect(384,336,127,31)); + media.button_hover = nk_subimage_id(media.skin, 512,512, nk_rect(384,368,127,31)); + media.button_active = nk_subimage_id(media.skin, 512,512, nk_rect(384,400,127,31)); + media.tab_minimize = nk_subimage_id(media.skin, 512,512, nk_rect(451, 99, 9, 9)); + media.tab_maximize = nk_subimage_id(media.skin, 512,512, nk_rect(467,99,9,9)); + media.slider = nk_subimage_id(media.skin, 512,512, nk_rect(418,33,11,14)); + media.slider_hover = nk_subimage_id(media.skin, 512,512, nk_rect(418,49,11,14)); + media.slider_active = nk_subimage_id(media.skin, 512,512, nk_rect(418,64,11,14)); + + /* window */ + ctx.style.window.background = nk_rgb(204,204,204); + ctx.style.window.fixed_background = nk_style_item_image(media.window); + ctx.style.window.border_color = nk_rgb(67,67,67); + ctx.style.window.combo_border_color = nk_rgb(67,67,67); + ctx.style.window.contextual_border_color = nk_rgb(67,67,67); + ctx.style.window.menu_border_color = nk_rgb(67,67,67); + ctx.style.window.group_border_color = nk_rgb(67,67,67); + ctx.style.window.tooltip_border_color = nk_rgb(67,67,67); + ctx.style.window.scrollbar_size = nk_vec2(16,16); + ctx.style.window.border_color = nk_rgba(0,0,0,0); + ctx.style.window.padding = nk_vec2(8,4); + ctx.style.window.border = 3; + + /* window header */ + ctx.style.window.header.normal = nk_style_item_image(media.header); + ctx.style.window.header.hover = nk_style_item_image(media.header); + ctx.style.window.header.active = nk_style_item_image(media.header); + ctx.style.window.header.label_normal = nk_rgb(95,95,95); + ctx.style.window.header.label_hover = nk_rgb(95,95,95); + ctx.style.window.header.label_active = nk_rgb(95,95,95); + + /* scrollbar */ + ctx.style.scrollv.normal = nk_style_item_color(nk_rgb(184,184,184)); + ctx.style.scrollv.hover = nk_style_item_color(nk_rgb(184,184,184)); + ctx.style.scrollv.active = nk_style_item_color(nk_rgb(184,184,184)); + ctx.style.scrollv.cursor_normal = nk_style_item_color(nk_rgb(220,220,220)); + ctx.style.scrollv.cursor_hover = nk_style_item_color(nk_rgb(235,235,235)); + ctx.style.scrollv.cursor_active = nk_style_item_color(nk_rgb(99,202,255)); + ctx.style.scrollv.dec_symbol = NK_SYMBOL_NONE; + ctx.style.scrollv.inc_symbol = NK_SYMBOL_NONE; + ctx.style.scrollv.show_buttons = nk_true; + ctx.style.scrollv.border_color = nk_rgb(81,81,81); + ctx.style.scrollv.cursor_border_color = nk_rgb(81,81,81); + ctx.style.scrollv.border = 1; + ctx.style.scrollv.rounding = 0; + ctx.style.scrollv.border_cursor = 1; + ctx.style.scrollv.rounding_cursor = 2; + + /* scrollbar buttons */ + ctx.style.scrollv.inc_button.normal = nk_style_item_image(media.scrollbar_inc_button); + ctx.style.scrollv.inc_button.hover = nk_style_item_image(media.scrollbar_inc_button_hover); + ctx.style.scrollv.inc_button.active = nk_style_item_image(media.scrollbar_inc_button_hover); + ctx.style.scrollv.inc_button.border_color = nk_rgba(0,0,0,0); + ctx.style.scrollv.inc_button.text_background = nk_rgba(0,0,0,0); + ctx.style.scrollv.inc_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.scrollv.inc_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.scrollv.inc_button.text_active = nk_rgba(0,0,0,0); + ctx.style.scrollv.inc_button.border = 0.0f; + + ctx.style.scrollv.dec_button.normal = nk_style_item_image(media.scrollbar_dec_button); + ctx.style.scrollv.dec_button.hover = nk_style_item_image(media.scrollbar_dec_button_hover); + ctx.style.scrollv.dec_button.active = nk_style_item_image(media.scrollbar_dec_button_hover); + ctx.style.scrollv.dec_button.border_color = nk_rgba(0,0,0,0); + ctx.style.scrollv.dec_button.text_background = nk_rgba(0,0,0,0); + ctx.style.scrollv.dec_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.scrollv.dec_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.scrollv.dec_button.text_active = nk_rgba(0,0,0,0); + ctx.style.scrollv.dec_button.border = 0.0f; + + /* checkbox toggle */ + {struct nk_style_toggle *toggle; + toggle = &ctx.style.checkbox; + toggle->normal = nk_style_item_image(media.check); + toggle->hover = nk_style_item_image(media.check); + toggle->active = nk_style_item_image(media.check); + toggle->cursor_normal = nk_style_item_image(media.check_cursor); + toggle->cursor_hover = nk_style_item_image(media.check_cursor); + toggle->text_normal = nk_rgb(95,95,95); + toggle->text_hover = nk_rgb(95,95,95); + toggle->text_active = nk_rgb(95,95,95);} + + /* option toggle */ + {struct nk_style_toggle *toggle; + toggle = &ctx.style.option; + toggle->normal = nk_style_item_image(media.option); + toggle->hover = nk_style_item_image(media.option); + toggle->active = nk_style_item_image(media.option); + toggle->cursor_normal = nk_style_item_image(media.option_cursor); + toggle->cursor_hover = nk_style_item_image(media.option_cursor); + toggle->text_normal = nk_rgb(95,95,95); + toggle->text_hover = nk_rgb(95,95,95); + toggle->text_active = nk_rgb(95,95,95);} + + /* default button */ + ctx.style.button.normal = nk_style_item_image(media.button); + ctx.style.button.hover = nk_style_item_image(media.button_hover); + ctx.style.button.active = nk_style_item_image(media.button_active); + ctx.style.button.border_color = nk_rgba(0,0,0,0); + ctx.style.button.text_background = nk_rgba(0,0,0,0); + ctx.style.button.text_normal = nk_rgb(95,95,95); + ctx.style.button.text_hover = nk_rgb(95,95,95); + ctx.style.button.text_active = nk_rgb(95,95,95); + + /* default text */ + ctx.style.text.color = nk_rgb(95,95,95); + + /* contextual button */ + ctx.style.contextual_button.normal = nk_style_item_color(nk_rgb(206,206,206)); + ctx.style.contextual_button.hover = nk_style_item_color(nk_rgb(229,229,229)); + ctx.style.contextual_button.active = nk_style_item_color(nk_rgb(99,202,255)); + ctx.style.contextual_button.border_color = nk_rgba(0,0,0,0); + ctx.style.contextual_button.text_background = nk_rgba(0,0,0,0); + ctx.style.contextual_button.text_normal = nk_rgb(95,95,95); + ctx.style.contextual_button.text_hover = nk_rgb(95,95,95); + ctx.style.contextual_button.text_active = nk_rgb(95,95,95); + + /* menu button */ + ctx.style.menu_button.normal = nk_style_item_color(nk_rgb(206,206,206)); + ctx.style.menu_button.hover = nk_style_item_color(nk_rgb(229,229,229)); + ctx.style.menu_button.active = nk_style_item_color(nk_rgb(99,202,255)); + ctx.style.menu_button.border_color = nk_rgba(0,0,0,0); + ctx.style.menu_button.text_background = nk_rgba(0,0,0,0); + ctx.style.menu_button.text_normal = nk_rgb(95,95,95); + ctx.style.menu_button.text_hover = nk_rgb(95,95,95); + ctx.style.menu_button.text_active = nk_rgb(95,95,95); + + /* tree */ + ctx.style.tab.text = nk_rgb(95,95,95); + ctx.style.tab.tab_minimize_button.normal = nk_style_item_image(media.tab_minimize); + ctx.style.tab.tab_minimize_button.hover = nk_style_item_image(media.tab_minimize); + ctx.style.tab.tab_minimize_button.active = nk_style_item_image(media.tab_minimize); + ctx.style.tab.tab_minimize_button.text_background = nk_rgba(0,0,0,0); + ctx.style.tab.tab_minimize_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.tab.tab_minimize_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.tab.tab_minimize_button.text_active = nk_rgba(0,0,0,0); + + ctx.style.tab.tab_maximize_button.normal = nk_style_item_image(media.tab_maximize); + ctx.style.tab.tab_maximize_button.hover = nk_style_item_image(media.tab_maximize); + ctx.style.tab.tab_maximize_button.active = nk_style_item_image(media.tab_maximize); + ctx.style.tab.tab_maximize_button.text_background = nk_rgba(0,0,0,0); + ctx.style.tab.tab_maximize_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.tab.tab_maximize_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.tab.tab_maximize_button.text_active = nk_rgba(0,0,0,0); + + ctx.style.tab.node_minimize_button.normal = nk_style_item_image(media.tab_minimize); + ctx.style.tab.node_minimize_button.hover = nk_style_item_image(media.tab_minimize); + ctx.style.tab.node_minimize_button.active = nk_style_item_image(media.tab_minimize); + ctx.style.tab.node_minimize_button.text_background = nk_rgba(0,0,0,0); + ctx.style.tab.node_minimize_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.tab.node_minimize_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.tab.node_minimize_button.text_active = nk_rgba(0,0,0,0); + + ctx.style.tab.node_maximize_button.normal = nk_style_item_image(media.tab_maximize); + ctx.style.tab.node_maximize_button.hover = nk_style_item_image(media.tab_maximize); + ctx.style.tab.node_maximize_button.active = nk_style_item_image(media.tab_maximize); + ctx.style.tab.node_maximize_button.text_background = nk_rgba(0,0,0,0); + ctx.style.tab.node_maximize_button.text_normal = nk_rgba(0,0,0,0); + ctx.style.tab.node_maximize_button.text_hover = nk_rgba(0,0,0,0); + ctx.style.tab.node_maximize_button.text_active = nk_rgba(0,0,0,0); + + /* selectable */ + ctx.style.selectable.normal = nk_style_item_color(nk_rgb(206,206,206)); + ctx.style.selectable.hover = nk_style_item_color(nk_rgb(206,206,206)); + ctx.style.selectable.pressed = nk_style_item_color(nk_rgb(206,206,206)); + ctx.style.selectable.normal_active = nk_style_item_color(nk_rgb(185,205,248)); + ctx.style.selectable.hover_active = nk_style_item_color(nk_rgb(185,205,248)); + ctx.style.selectable.pressed_active = nk_style_item_color(nk_rgb(185,205,248)); + ctx.style.selectable.text_normal = nk_rgb(95,95,95); + ctx.style.selectable.text_hover = nk_rgb(95,95,95); + ctx.style.selectable.text_pressed = nk_rgb(95,95,95); + ctx.style.selectable.text_normal_active = nk_rgb(95,95,95); + ctx.style.selectable.text_hover_active = nk_rgb(95,95,95); + ctx.style.selectable.text_pressed_active = nk_rgb(95,95,95); + + /* slider */ + ctx.style.slider.normal = nk_style_item_hide(); + ctx.style.slider.hover = nk_style_item_hide(); + ctx.style.slider.active = nk_style_item_hide(); + ctx.style.slider.bar_normal = nk_rgb(156,156,156); + ctx.style.slider.bar_hover = nk_rgb(156,156,156); + ctx.style.slider.bar_active = nk_rgb(156,156,156); + ctx.style.slider.bar_filled = nk_rgb(156,156,156); + ctx.style.slider.cursor_normal = nk_style_item_image(media.slider); + ctx.style.slider.cursor_hover = nk_style_item_image(media.slider_hover); + ctx.style.slider.cursor_active = nk_style_item_image(media.slider_active); + ctx.style.slider.cursor_size = nk_vec2(16.5f,21); + ctx.style.slider.bar_height = 1; + + /* progressbar */ + ctx.style.progress.normal = nk_style_item_color(nk_rgb(231,231,231)); + ctx.style.progress.hover = nk_style_item_color(nk_rgb(231,231,231)); + ctx.style.progress.active = nk_style_item_color(nk_rgb(231,231,231)); + ctx.style.progress.cursor_normal = nk_style_item_color(nk_rgb(63,242,93)); + ctx.style.progress.cursor_hover = nk_style_item_color(nk_rgb(63,242,93)); + ctx.style.progress.cursor_active = nk_style_item_color(nk_rgb(63,242,93)); + ctx.style.progress.border_color = nk_rgb(114,116,115); + ctx.style.progress.padding = nk_vec2(0,0); + ctx.style.progress.border = 2; + ctx.style.progress.rounding = 1; + + /* combo */ + ctx.style.combo.normal = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.hover = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.active = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.border_color = nk_rgb(95,95,95); + ctx.style.combo.label_normal = nk_rgb(95,95,95); + ctx.style.combo.label_hover = nk_rgb(95,95,95); + ctx.style.combo.label_active = nk_rgb(95,95,95); + ctx.style.combo.border = 1; + ctx.style.combo.rounding = 1; + + /* combo button */ + ctx.style.combo.button.normal = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.button.hover = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.button.active = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.combo.button.text_background = nk_rgb(216,216,216); + ctx.style.combo.button.text_normal = nk_rgb(95,95,95); + ctx.style.combo.button.text_hover = nk_rgb(95,95,95); + ctx.style.combo.button.text_active = nk_rgb(95,95,95); + + /* property */ + ctx.style.property.normal = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.hover = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.active = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.border_color = nk_rgb(81,81,81); + ctx.style.property.label_normal = nk_rgb(95,95,95); + ctx.style.property.label_hover = nk_rgb(95,95,95); + ctx.style.property.label_active = nk_rgb(95,95,95); + ctx.style.property.sym_left = NK_SYMBOL_TRIANGLE_LEFT; + ctx.style.property.sym_right = NK_SYMBOL_TRIANGLE_RIGHT; + ctx.style.property.rounding = 10; + ctx.style.property.border = 1; + + /* edit */ + ctx.style.edit.normal = nk_style_item_color(nk_rgb(240,240,240)); + ctx.style.edit.hover = nk_style_item_color(nk_rgb(240,240,240)); + ctx.style.edit.active = nk_style_item_color(nk_rgb(240,240,240)); + ctx.style.edit.border_color = nk_rgb(62,62,62); + ctx.style.edit.cursor_normal = nk_rgb(99,202,255); + ctx.style.edit.cursor_hover = nk_rgb(99,202,255); + ctx.style.edit.cursor_text_normal = nk_rgb(95,95,95); + ctx.style.edit.cursor_text_hover = nk_rgb(95,95,95); + ctx.style.edit.text_normal = nk_rgb(95,95,95); + ctx.style.edit.text_hover = nk_rgb(95,95,95); + ctx.style.edit.text_active = nk_rgb(95,95,95); + ctx.style.edit.selected_normal = nk_rgb(99,202,255); + ctx.style.edit.selected_hover = nk_rgb(99,202,255); + ctx.style.edit.selected_text_normal = nk_rgb(95,95,95); + ctx.style.edit.selected_text_hover = nk_rgb(95,95,95); + ctx.style.edit.border = 1; + ctx.style.edit.rounding = 2; + + /* property buttons */ + ctx.style.property.dec_button.normal = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.dec_button.hover = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.dec_button.active = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.dec_button.text_background = nk_rgba(0,0,0,0); + ctx.style.property.dec_button.text_normal = nk_rgb(95,95,95); + ctx.style.property.dec_button.text_hover = nk_rgb(95,95,95); + ctx.style.property.dec_button.text_active = nk_rgb(95,95,95); + ctx.style.property.inc_button = ctx.style.property.dec_button; + + /* property edit */ + ctx.style.property.edit.normal = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.edit.hover = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.edit.active = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.property.edit.border_color = nk_rgba(0,0,0,0); + ctx.style.property.edit.cursor_normal = nk_rgb(95,95,95); + ctx.style.property.edit.cursor_hover = nk_rgb(95,95,95); + ctx.style.property.edit.cursor_text_normal = nk_rgb(216,216,216); + ctx.style.property.edit.cursor_text_hover = nk_rgb(216,216,216); + ctx.style.property.edit.text_normal = nk_rgb(95,95,95); + ctx.style.property.edit.text_hover = nk_rgb(95,95,95); + ctx.style.property.edit.text_active = nk_rgb(95,95,95); + ctx.style.property.edit.selected_normal = nk_rgb(95,95,95); + ctx.style.property.edit.selected_hover = nk_rgb(95,95,95); + ctx.style.property.edit.selected_text_normal = nk_rgb(216,216,216); + ctx.style.property.edit.selected_text_hover = nk_rgb(216,216,216); + + /* chart */ + ctx.style.chart.background = nk_style_item_color(nk_rgb(216,216,216)); + ctx.style.chart.border_color = nk_rgb(81,81,81); + ctx.style.chart.color = nk_rgb(95,95,95); + ctx.style.chart.selected_color = nk_rgb(255,0,0); + ctx.style.chart.border = 1; +} +#endif \ No newline at end of file diff --git a/code/games/sandbox/src/platform.c b/code/games/sandbox/src/platform.c index e9913a0..5feb562 100644 --- a/code/games/sandbox/src/platform.c +++ b/code/games/sandbox/src/platform.c @@ -26,6 +26,7 @@ ZPL_DIAGNOSTIC_POP #include "renderer.c" // NOTE(zaklaus): add-ins +#include "gui/ui_skin.c" #include "gui/tooltip.c" #include "gui/notifications.c" #include "gui/build_mode.c" @@ -201,10 +202,11 @@ void platform_render() { } assets_frame(); + set_style(game_ui, THEME_ECO); BeginDrawing(); { - profile (PROF_RENDER) { + profile (PROF_RENDER) { renderer_draw(); draw_selected_item(); } diff --git a/code/vendors/raylib-nuklear/include/raylib-nuklear.h b/code/vendors/raylib-nuklear/include/raylib-nuklear.h index 2539af6..d642dba 100644 --- a/code/vendors/raylib-nuklear/include/raylib-nuklear.h +++ b/code/vendors/raylib-nuklear/include/raylib-nuklear.h @@ -45,6 +45,7 @@ // TODO: Replace NK_INCLUDE_DEFAULT_ALLOCATOR with MemAlloc() and MemFree() #define NK_INCLUDE_DEFAULT_ALLOCATOR #define NK_INCLUDE_COMMAND_USERDATA +#define NK_BUTTON_TRIGGER_ON_RELEASE // TODO: Figure out if we can use STANDARD_BOOL here? //#define NK_INCLUDE_STANDARD_BOOL