package alui import "opslag.de/schobers/geom" type Column struct { Proxy panel *StackPanel } func NewColumn() *Column { c := &Column{} c.Init() return c } func (c *Column) AddChild(child ...Control) { c.panel.Children = append(c.panel.Children, child...) } func (c *Column) Init() { c.panel = &StackPanel{Orientation: OrientationVertical} c.Proxy.Target = c.panel } func (c *Column) Layout(ctx *Context, bounds geom.RectangleF32) {} func (c *Column) Render(ctx *Context, bounds geom.RectangleF32) { columnHeight := c.Proxy.DesiredSize(ctx).Y width, center := bounds.Dx(), bounds.Center() columnBounds := geom.RectF32(.25*width, center.Y-.5*columnHeight, .75*width, center.Y+.5*columnHeight) c.Proxy.Layout(ctx, columnBounds) c.Proxy.Render(ctx, columnBounds) }