X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=vg_imgui.h;h=b3dfa6a23aec7dc5f64abc392f38162b74e1089a;hb=HEAD;hp=955f365975794c31b0d773e7bed1ff4205c40593;hpb=70530f5055e116c22ab1b433884573944e9c4f64;p=vg.git diff --git a/vg_imgui.h b/vg_imgui.h index 955f365..8ec0330 100644 --- a/vg_imgui.h +++ b/vg_imgui.h @@ -220,8 +220,8 @@ enum ui_button_state { void vg_ui_init(void); void rect_copy( ui_rect a, ui_rect b ); void ui_flush( enum ui_shader shader, f32 w, f32 h ); -void ui_fill_rect( ui_rect rect, u32 colour, ui_px uv[4] ); -void ui_fill( ui_rect rect, u32 colour ); +struct ui_vert *ui_fill_rect( ui_rect rect, u32 colour, ui_px uv[4] ); +struct ui_vert *ui_fill( ui_rect rect, u32 colour ); void ui_outline( ui_rect rect, ui_px thickness, u32 colour, u32 mask ); void ui_split( ui_rect rect, enum ui_axis other, ui_px width, ui_px gap, ui_rect l, ui_rect r ); @@ -253,8 +253,8 @@ u32 ui_opacity( u32 colour, f32 opacity ); void ui_font_face( vg_font_face *ff ); u32 ui_ntext( ui_rect rect, const char *str, u32 len, ui_px scale, enum ui_align align, u32 colour ); -void ui_text( ui_rect rect, const char *str, ui_px scale, - enum ui_align align, u32 colour ); +u32 ui_text( ui_rect rect, const char *str, ui_px scale, + enum ui_align align, u32 colour ); void ui_panel( ui_rect in_rect, ui_rect out_panel ); void ui_label( ui_rect rect, const char *text, ui_px size, ui_px gap, ui_rect r ); @@ -262,24 +262,30 @@ void ui_standard_widget( ui_rect inout_panel, ui_rect out_rect, ui_px count ); void ui_info( ui_rect inout_panel, const char *text ); void ui_image( ui_rect rect, GLuint image ); void ui_defocus_all(void); + +enum ui_button_state ui_button_base( ui_rect rect ); enum ui_button_state ui_colourbutton( ui_rect rect, enum ui_scheme_colour colour, enum ui_scheme_colour hover_colour, - enum ui_scheme_colour hi_colour, - bool const fill ); + enum ui_scheme_colour hi_colour ); enum ui_button_state ui_colourbutton_text( ui_rect rect, const char *string, ui_px scale, enum ui_scheme_colour colour ); enum ui_button_state ui_button_text( ui_rect rect, const char *string, ui_px scale ); enum ui_button_state ui_button( ui_rect inout_panel, const char *string ); + void ui_postrender(void); +enum ui_button_state ui_checkbox_base( ui_rect box, i32 *data ); int ui_checkbox( ui_rect inout_panel, const char *str_label, i32 *data ); void ui_enum( ui_rect inout_panel, const char *str_label, struct ui_enum_opt *options, u32 len, i32 *value ); +enum ui_button_state ui_slider_base( ui_rect box, f32 min, f32 max, f32 *value, + f32 *out_t ); bool ui_slider( ui_rect inout_panel, const char *str_label, - f32 min, f32 max, f32 *value, const char *format ); + f32 min, f32 max, f32 *value ); +void ui_slider_text( ui_rect box, const char *format, f32 value ); void ui_colourpicker( ui_rect inout_panel, const char *str_label, v4f value ); int ui_textbox( ui_rect inout_panel, const char *label, char *buf, u32 len, u32 lines, u32 flags,