23 lines
541 B
Rust
23 lines
541 B
Rust
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)
|
|
}
|
|
}
|