diff --git a/src/proto/pp_widgets.c b/src/proto/pp_widgets.c index 06856cdf..4f53b977 100644 --- a/src/proto/pp_widgets.c +++ b/src/proto/pp_widgets.c @@ -79,7 +79,7 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) // UI_Push(Rounding, UI_RPIX(15)); UI_Push(Rounding, UI_RPIX(15)); UI_Push(Width, UI_PIX(theme.window_width, 0)); - UI_Push(Height, UI_FIT(0, 0)); + UI_Push(Height, UI_SHRINK(0, 0)); UI_Push(ChildLayoutAxis, Axis_Y); UI_Push(FloatingPos, widget->pos); UI_SetNext(Flags, UI_BoxFlag_Floating); @@ -92,12 +92,12 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) UI_Push(BorderColor, titlebar_border_color); UI_Push(Rounding, UI_RPIX(0)); UI_Push(ChildLayoutAxis, Axis_X); - UI_Push(Width, UI_FILL(1, 0)); + UI_Push(Width, UI_GROW(1, 0)); UI_Push(Height, UI_FNT(2, 1)); UI_SetNext(Flags, UI_BoxFlag_DrawText | UI_BoxFlag_Interactable); UI_PushCP(UI_BuildBox(titlebar_key)); { - UI_Push(Width, UI_FILL(1, 0)); + UI_Push(Width, UI_GROW(1, 0)); UI_Push(BorderColor, 0); /* Left title box */ @@ -106,7 +106,7 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) /* Title box */ UI_SetNext(FontSize, theme.window_title_font_size); UI_SetNext(ChildAlignment, UI_Alignment_Center); - UI_SetNext(Width, UI_FIT(0, 1)); + UI_SetNext(Width, UI_SHRINK(0, 1)); UI_SetNext(Text, Lit("Commands")); UI_SetNext(Flags, UI_BoxFlag_DrawText); UI_BuildBox(UI_NilKey); @@ -128,7 +128,7 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) { UI_SetNext(Tint, 0); UI_SetNext(Rounding, 0); - UI_SetNext(Width, UI_FILL(1, 0)); + UI_SetNext(Width, UI_GROW(1, 0)); UI_PushCP(UI_BuildColumn(UI_NilKey)); { for (PP_CommandsWidgetItem *item = widget->build.first_item; item; item = item->next) @@ -158,7 +158,7 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) UI_SetNext(BorderColor, border_color); UI_SetNext(BackgroundColor, color); UI_SetNext(Rounding, UI_RPIX(5)); - UI_SetNext(Width, UI_FILL(1, 0)); + UI_SetNext(Width, UI_GROW(1, 0)); UI_SetNext(Height, UI_FNT(1.5, 1)); UI_SetNext(ChildAlignment, UI_Alignment_Left); UI_SetNext(Flags, UI_BoxFlag_DrawText | UI_BoxFlag_Interactable); @@ -171,12 +171,12 @@ void PP_EndCommandsWidget(PP_CommandsWidget *widget) UI_BuildLabel(item->name); /* Middle spacer */ - UI_BuildSpacer(UI_FILL(1, 0)); + UI_BuildSpacer(UI_GROW(1, 0)); /* Command hotkey button */ UI_SetNext(Text, UI_StringF("Test")); - UI_SetNext(Width, UI_FIT(theme.text_padding_x, 1)); - UI_SetNext(Height, UI_FIT(theme.text_padding_y, 1)); + UI_SetNext(Width, UI_SHRINK(theme.text_padding_x, 1)); + UI_SetNext(Height, UI_SHRINK(theme.text_padding_y, 1)); UI_SetNext(Rounding, UI_RPIX(0)); UI_SetNext(Border, 1); UI_SetNext(BackgroundColor, 0); @@ -253,13 +253,13 @@ UI_Box *PP_BuildConsoleWidget(b32 minimized) { UI_SetNext(BackgroundColor, 0); UI_SetNext(Width, UI_PIX(500, 0)); - UI_SetNext(Height, UI_FIT(0, 1)); + UI_SetNext(Height, UI_SHRINK(0, 1)); } else { UI_SetNext(BackgroundColor, Rgba(1, 1, 1, 0.02)); - UI_SetNext(Width, UI_FILL(1, 0)); - UI_SetNext(Height, UI_FIT(0, 1)); + UI_SetNext(Width, UI_GROW(1, 0)); + UI_SetNext(Height, UI_SHRINK(0, 1)); } console_box = UI_BuildColumn(UI_KeyF("Console box")); UI_PushCP(console_box); @@ -319,7 +319,7 @@ UI_Box *PP_BuildConsoleWidget(b32 minimized) { Vec4 color = colors[log.level][log.level_id % 2]; UI_Push(BackgroundColor, color); - UI_Push(Width, UI_FILL(1, 0)); + UI_Push(Width, UI_GROW(1, 0)); UI_Push(Height, UI_FNT(1.5, 1)); UI_Push(BorderColor, Rgb(0.25, 0.25, 0.25)); UI_Push(Rounding, UI_RPIX(0)); @@ -332,8 +332,8 @@ UI_Box *PP_BuildConsoleWidget(b32 minimized) UI_Push(BackgroundColor, 0); UI_Push(Border, 0); UI_Push(Text, text); - UI_Push(Width, UI_FILL(1, 0)); - UI_Push(Height, UI_FIT(0, 1)); + UI_Push(Width, UI_GROW(1, 0)); + UI_Push(Height, UI_SHRINK(0, 1)); UI_Push(Flags, UI_BoxFlag_DrawText); UI_BuildBox(UI_NilKey); } diff --git a/src/ui/ui_common.c b/src/ui/ui_common.c index 616c81d0..636fccf0 100644 --- a/src/ui/ui_common.c +++ b/src/ui/ui_common.c @@ -16,8 +16,8 @@ UI_Box *UI_BuildLabel(String text) UI_SetNext(Tint, tint); UI_SetNext(Font, font); UI_SetNext(FontSize, font_size); - UI_SetNext(Width, UI_FIT(0, 1)); - UI_SetNext(Height, UI_FIT(0, 1)); + UI_SetNext(Width, UI_SHRINK(0, 1)); + UI_SetNext(Height, UI_SHRINK(0, 1)); UI_SetNext(Text, text); UI_SetNext(Flags, UI_BoxFlag_DrawText); box = UI_BuildBox(UI_NilKey); @@ -54,7 +54,7 @@ UI_Box *UI_BuildSpacer(UI_Size size) UI_PushDefaults(); UI_Push(Parent, parent); UI_Push(Tint, 0); - UI_Push(AxisSize, UI_FILL(1, 0), .axis = !axis); + UI_Push(AxisSize, UI_GROW(1, 0), .axis = !axis); UI_Push(AxisSize, size, .axis = axis); box = UI_BuildBox(UI_NilKey); } @@ -74,7 +74,7 @@ UI_Box *UI_BuildDivider(UI_Size size, Vec4 color) UI_Push(Parent, parent); UI_Push(Tint, tint); UI_Push(BackgroundColor, color); - UI_Push(AxisSize, UI_FILL(1, 0), .axis = !axis); + UI_Push(AxisSize, UI_GROW(1, 0), .axis = !axis); UI_Push(AxisSize, size, .axis = axis); box = UI_BuildBox(UI_NilKey); } diff --git a/src/ui/ui_core.c b/src/ui/ui_core.c index fd63370b..e9f41017 100644 --- a/src/ui/ui_core.c +++ b/src/ui/ui_core.c @@ -153,8 +153,8 @@ void UI_PushDefaults(void) { default: break; case UI_StyleKind_Parent: { desc.style.Parent = g->root_box; } break; - case UI_StyleKind_Width: { desc.style.Width = UI_FILL(1, 0); } break; - case UI_StyleKind_Height: { desc.style.Height = UI_FILL(1, 0); } break; + case UI_StyleKind_Width: { desc.style.Width = UI_GROW(1, 0); } break; + case UI_StyleKind_Height: { desc.style.Height = UI_GROW(1, 0); } break; case UI_StyleKind_Font: { desc.style.Font = UI_GetDefaultFontResource(); } break; case UI_StyleKind_FontSize: { desc.style.FontSize = 16.0f; } break; case UI_StyleKind_Tint: { desc.style.Tint = Color_White; } break; @@ -781,7 +781,7 @@ i64 UI_EndFrame(UI_Frame frame) { box->solved_dims[axis] = pref_size.v; } - else if (pref_size.kind == UI_SizeKind_Fit && AnyBit(box->flags, UI_BoxFlag_DrawText)) + else if (pref_size.kind == UI_SizeKind_Shrink && AnyBit(box->flags, UI_BoxFlag_DrawText)) { /* TODO: Distinguish between baseline alignment & visual alignment */ f32 text_size = 0; @@ -814,14 +814,14 @@ i64 UI_EndFrame(UI_Frame frame) { Axis axis = box->parent->child_layout_axis; UI_Size pref_size = box->pref_size[axis]; - if (pref_size.kind == UI_SizeKind_Fill) + if (pref_size.kind == UI_SizeKind_Grow) { f32 match_size = 0; b32 found_match = 0; for (UI_Box *ancestor = box->parent; ancestor != 0 && !found_match; ancestor = ancestor->parent) { UI_Size ancestor_size = ancestor->pref_size[axis]; - if (ancestor_size.kind == UI_SizeKind_Pixel || (ancestor_size.kind == UI_SizeKind_Fit && AnyBit(box->flags, UI_BoxFlag_DrawText))) + if (ancestor_size.kind == UI_SizeKind_Pixel || (ancestor_size.kind == UI_SizeKind_Shrink && AnyBit(box->flags, UI_BoxFlag_DrawText))) { /* Match independent ancestor */ match_size = ancestor->solved_dims[axis]; @@ -840,7 +840,7 @@ i64 UI_EndFrame(UI_Frame frame) for (Axis axis = 0; axis < Axis_CountXY; ++axis) { UI_Size pref_size = box->pref_size[axis]; - if (pref_size.kind == UI_SizeKind_Fit && !AnyBit(box->flags, UI_BoxFlag_DrawText)) + if (pref_size.kind == UI_SizeKind_Shrink && !AnyBit(box->flags, UI_BoxFlag_DrawText)) { f32 accum = 0; for (UI_Box *child = box->first; child; child = child->next) @@ -870,7 +870,7 @@ i64 UI_EndFrame(UI_Frame frame) { Axis axis = !box->parent->child_layout_axis; UI_Size pref_size = box->pref_size[axis]; - if (pref_size.kind == UI_SizeKind_Fill) + if (pref_size.kind == UI_SizeKind_Grow) { box->solved_dims[axis] = box->parent->solved_dims[axis] * pref_size.v; } @@ -1068,7 +1068,7 @@ i64 UI_EndFrame(UI_Frame frame) final_rounding_br = final_rounding_tl; final_rounding_bl = final_rounding_tl; } break; - case UI_RoundKind_Fill: + case UI_RoundKind_Grow: { final_rounding_tl = rounding.v * min_half_dims; final_rounding_tr = final_rounding_tl; diff --git a/src/ui/ui_core.h b/src/ui/ui_core.h index f5ef5258..f06cbee7 100644 --- a/src/ui/ui_core.h +++ b/src/ui/ui_core.h @@ -14,9 +14,9 @@ Struct(UI_Key) Enum(UI_SizeKind) { - UI_SizeKind_Pixel, /* Exact size */ - UI_SizeKind_Fill, /* Size as percent of parent size */ - UI_SizeKind_Fit, /* Size to contents */ + UI_SizeKind_Pixel, /* Exact size */ + UI_SizeKind_Grow, /* Size as percent of parent size */ + UI_SizeKind_Shrink, /* Size of children + padding in pixels */ }; Struct(UI_Size) @@ -31,8 +31,8 @@ Struct(UI_Size) Enum(UI_RoundKind) { - UI_RoundKind_Pixel, /* Exact radius */ - UI_RoundKind_Fill, /* Radius as percent of size */ + UI_RoundKind_Pixel, /* Exact radius */ + UI_RoundKind_Grow, /* Radius as percent of size */ }; Struct(UI_Round) @@ -383,18 +383,18 @@ UI_Style UI_PopStyle(UI_StyleDesc desc); #define UI_SIZE(_kind, _v, _s) (UI_Size) { .kind = (_kind), .v = (_v), .strictness = (_s) } -#define UI_PIX(_v, _s) UI_SIZE(UI_SizeKind_Pixel, (_v), (_s)) -#define UI_FIT(_v, _s) UI_SIZE(UI_SizeKind_Fit, (_v), (_s)) -#define UI_FILL(_v, _s) UI_SIZE(UI_SizeKind_Fill, (_v), (_s)) -#define UI_FNT(_v, _s) UI_SIZE(UI_SizeKind_Pixel, (f32)UI_PeekTop(FontSize) * (_v), (_s)) +#define UI_PIX(_v, _s) UI_SIZE(UI_SizeKind_Pixel, (_v), (_s)) +#define UI_SHRINK(_v, _s) UI_SIZE(UI_SizeKind_Shrink, (_v), (_s)) +#define UI_GROW(_v, _s) UI_SIZE(UI_SizeKind_Grow, (_v), (_s)) +#define UI_FNT(_v, _s) UI_SIZE(UI_SizeKind_Pixel, (f32)UI_PeekTop(FontSize) * (_v), (_s)) //////////////////////////////////////////////////////////// //~ Rounding helpers #define UI_ROUND(_kind, _v) (UI_Round) { .kind = (_kind), .v = (_v)} -#define UI_RPIX(_v) UI_ROUND(UI_RoundKind_Pixel, (_v)) -#define UI_RFILL(_v) UI_ROUND(UI_RoundKind_Fill, (_v)) +#define UI_RPIX(_v) UI_ROUND(UI_RoundKind_Pixel, (_v)) +#define UI_RGROW(_v) UI_ROUND(UI_RoundKind_Fill, (_v)) //////////////////////////////////////////////////////////// //~ Box