improving scroller

This commit is contained in:
Krzosa Karol
2025-01-15 10:32:29 +01:00
parent 5f33455b97
commit c680d60b19
3 changed files with 86 additions and 34 deletions

View File

@@ -58,7 +58,6 @@ enum {
ui_box_flag_draw_border,
ui_box_flag_draw_text,
ui_box_flag_draw_rect,
ui_box_flag_draw_scroller,
ui_box_flag_scroll,
};
@@ -71,6 +70,8 @@ struct ui_box_t {
ui_box_t *parent;
ui_box_t *first;
ui_box_t *last;
i32 node_count;
ui_box_flag_t flags;
s8_t string;
ui_size_t semantic_size[ui_axis2_count];
@@ -78,14 +79,16 @@ struct ui_box_t {
ui_code_loc_t loc;
b32 created_new;
// layout
f32 iter_pos[ui_axis2_count];
// preserving state
ui_id_t id; // important position!: offset(id) used for partial zeroing
u64 last_touched_event_id;
ui_box_t *hash_next;
ui_box_t *hash_prev;
// computed by layout system every frame
f32 iter_pos[ui_axis2_count];
// layout
f32 computed_rel_pos[ui_axis2_count];
f32 computed_size[ui_axis2_count];
r2f32_t rect;