Prepping for adding matrices

This commit is contained in:
Synthasmagoria 2026-08-01 15:15:17 +02:00
commit e39d2db161

View file

@ -62,6 +62,7 @@ FontStyle :: struct {
ProgramState :: enum {
Normal,
Message,
Dialog,
}
MouseState :: enum {
@ -70,6 +71,18 @@ MouseState :: enum {
HoverMatrices,
}
ProgramDialogType :: enum {
CreateTranslationMatrix,
CreateScaleMatrix,
CreateRotationMatrix,
}
@rodata program_dialog_messages := [ProgramDialogType]cstring {
.CreateTranslationMatrix = "Create tranlation matrix",
.CreateScaleMatrix = "Create scale matrix",
.CreateRotationMatrix = "Create rotation matrix",
}
ProgramMessageType :: enum {
ChangeMatrixTypeClearData,
}
@ -159,6 +172,8 @@ program_update :: proc() {
ui_elements, matrix_container := program_build_ui()
switch program.state {
case .Normal:
mouse := rl.GetMousePosition()
switch program.mouse_state {
case .Hover:
@ -178,10 +193,13 @@ program_update :: proc() {
program.mouse_state = .Hover
}
}
if rl.IsKeyPressed(.TAB) {
program.ui_element_focus = ui.focus_next_element(program.ui_element_focus, ui_elements, {.InputFloat})
}
case .Message:
case .Dialog:
}
grid := program.grid
grid_inner_position := rect_get_tl(grid.inner_area)
@ -208,7 +226,7 @@ program_build_ui :: proc() -> (elements: []ui.Element, matrix_container: ^ui.Ele
top_bar_inner_height := ui.get_element_inner_area(top_bar_container^).height
top_bar_button_dimensions := ui.Dimensions {ui.Size_Pixels(top_bar_inner_height), ui.Size_Pixels(top_bar_inner_height)}
top_bar_button_config := ui.ElementConfiguration {margin = top_bar_element_margin}
top_bar_dropdown_dimensions := ui.Dimensions {ui.Size_Pixels(192.0), ui.Size_Percentage(1.0)}
top_bar_dropdown_dimensions := ui.Dimensions {ui.Size_Pixels(160.0), ui.Size_Percentage(1.0)}
top_bar_dropdown_config := ui.ElementConfiguration {margin = top_bar_element_margin}
{
button_config := top_bar_button_config