use crate::prelude::*; pub struct Aligned { pub inner: WidgetId, pub align: Align, } impl Widget for Aligned { fn draw(&mut self, painter: &mut Painter) { let region = UiRegion::from_ui_size_align(painter.size(&self.inner).to_uivec2(), self.align); painter.widget_within(&self.inner, region); } fn desired_width(&mut self, ctx: &mut SizeCtx) -> Len { ctx.width(&self.inner) } fn desired_height(&mut self, ctx: &mut SizeCtx) -> Len { ctx.height(&self.inner) } }