From 8d937c7268657a3388e156a63451c0a67f22dc90 Mon Sep 17 00:00:00 2001 From: hgn Date: Fri, 1 Sep 2023 22:19:57 +0100 Subject: [PATCH] window funvtion --- vg_imgui.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/vg_imgui.h b/vg_imgui.h index 3fa07d4..c07868f 100644 --- a/vg_imgui.h +++ b/vg_imgui.h @@ -1974,4 +1974,50 @@ static void ui_label( ui_rect rect, const char *text, ui_px size, ui_text( l, text, 1, k_ui_align_middle_left, 0 ); } + + +static ui_px k_vgi_widget_height = 24, + k_vgi_scale = 1; + +enum vgi_window_flag{ + k_vgi_window_resizeable = 0x1, + k_vgi_window_moveable = 0x2, + k_vgi_window_closeable = 0x4, + k_vgi_window_standard = + k_vgi_window_moveable| + k_vgi_window_closeable +}; + +static int vgi_window( ui_rect in_window, const char *title, u32 flags, + ui_rect out_panel ){ + ui_fill( in_window, ui_colour( k_ui_bg+1 ) ); + ui_outline( in_window, 1, ui_colour( k_ui_bg+7 ) ); + + ui_rect bar; + ui_split( in_window, k_ui_axis_h, k_vgi_widget_height*k_vgi_scale, 0, + bar, out_panel ); + ui_fill( bar, ui_colour( k_ui_bg+7 ) ); + ui_text( bar, title, k_vgi_scale, k_ui_align_middle_center, + ui_colourcont(k_ui_bg+7) ); + + if( flags & k_vgi_window_closeable ){ + ui_rect quit_button; + ui_split( bar, k_ui_axis_v, bar[2]-bar[3], 2, bar, quit_button ); + if( ui_button_text( quit_button, "X", 1 ) ){ + return 0; + } + } + + return 1; +} + + + + + + + + + + #endif /* VG_IMGUI_H */ -- 2.25.1