Files
iris/src/core/ptr.rs
T
2025-11-17 18:33:03 -05:00

23 lines
450 B
Rust

use crate::prelude::*;
#[derive(Default)]
pub struct WidgetPtr {
pub inner: Option<WidgetId>,
}
impl Widget for WidgetPtr {
fn draw(&mut self, painter: &mut Painter) {
if let Some(id) = &self.inner {
painter.widget(id);
}
}
fn desired_size(&mut self, ctx: &mut SizeCtx) -> Size {
if let Some(id) = &self.inner {
ctx.size(id)
} else {
Size::ZERO
}
}
}