This commit is contained in:
dec05eba
2024-09-08 17:07:22 +02:00
parent 3d5e8baa5f
commit b145d957e3
29 changed files with 1141 additions and 687 deletions

View File

@@ -52,6 +52,9 @@ namespace gsr {
if(!widget->visible)
continue;
if(i > 0)
draw_pos.y += spacing;
const auto widget_size = widget->get_size();
// TODO: Do this parent widget alignment for horizontal alignment and for other types of widget alignment
// and other widgets.
@@ -67,8 +70,6 @@ namespace gsr {
if(widget.get() != selected_widget)
widget->draw(window, mgl::vec2f(0.0f, 0.0f));
draw_pos.y += widget_size.y;
if(widget_size.y > 0.001f && i + 1 < widgets.size())
draw_pos.y += spacing;
}
break;
}
@@ -78,6 +79,9 @@ namespace gsr {
if(!widget->visible)
continue;
if(i > 0)
draw_pos.x += spacing;
const auto widget_size = widget->get_size();
if(content_alignment == Alignment::CENTER)
offset.y = floor(size.y * 0.5f - widget_size.y * 0.5f);
@@ -88,8 +92,6 @@ namespace gsr {
if(widget.get() != selected_widget)
widget->draw(window, mgl::vec2f(0.0f, 0.0f));
draw_pos.x += widget_size.x;
if(widget_size.x > 0.001f && i + 1 < widgets.size())
draw_pos.x += spacing;
}
break;
}
@@ -146,11 +148,12 @@ namespace gsr {
if(!widget->visible)
continue;
if(i > 0)
size.y += spacing;
const auto widget_size = widget->get_size();
size.x = std::max(size.x, widget_size.x);
size.y += widget_size.y;
if(widget_size.y > 0.001f && i + 1 < widgets.size())
size.y += spacing;
}
break;
}
@@ -160,10 +163,11 @@ namespace gsr {
if(!widget->visible)
continue;
if(i > 0)
size.x += spacing;
const auto widget_size = widget->get_size();
size.x += widget_size.x;
if(widget_size.x > 0.001f && i + 1 < widgets.size())
size.x += spacing;
size.y = std::max(size.y, widget_size.y);
}
break;