widget view

This commit is contained in:
2026-01-05 17:01:09 -05:00
parent 07de7c8722
commit d11107f965
7 changed files with 130 additions and 15 deletions

16
core/src/widget/view.rs Normal file
View File

@@ -0,0 +1,16 @@
use std::marker::Unsize;
use crate::{Widget, WidgetRef};
pub trait WidgetView {
type Widget: Widget + ?Sized + Unsize<dyn Widget>;
fn root(&self) -> WidgetRef<Self::Widget>;
}
pub trait HasWidget {
type Widget: Widget + ?Sized + Unsize<dyn Widget>;
}
impl<W: Widget + Unsize<dyn Widget>> HasWidget for WidgetRef<W> {
type Widget = W;
}