window funvtion
authorhgn <hgodden00@gmail.com>
Fri, 1 Sep 2023 21:19:57 +0000 (22:19 +0100)
committerhgn <hgodden00@gmail.com>
Fri, 1 Sep 2023 21:19:57 +0000 (22:19 +0100)
vg_imgui.h

index 3fa07d415ca485dad7a10d52d89bc697aa137f6d..c07868f5dfe19f0180e1734532a999229b891a44 100644 (file)
@@ -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 */