initial global widget store

This commit is contained in:
iris committed 2025-12-10 01:42:39 -05:00
1 parent 7f4846a2d3
commit 6156c66a20
31 files changed
+536 -352

No files matched your search

+4 -4
View File
@@ -1,9 +1,9 @@
use crate::layout::{Widget, WidgetLike, WidgetRef};
use crate::layout::{Widget, WidgetHandle, WidgetLike};
use std::marker::Unsize;
pub trait WidgetView {
type Widget: Widget + ?Sized + Unsize<dyn Widget> = dyn Widget;
fn view(&self) -> &WidgetRef<Self::Widget>;
fn view(self) -> WidgetHandle<Self::Widget>;
}
pub struct ViewTag;
@@ -11,7 +11,7 @@ pub struct ViewTag;
impl<WV: WidgetView> WidgetLike<ViewTag> for WV {
type Widget = WV::Widget;
fn add(self, _ui: &mut super::Ui) -> WidgetRef<Self::Widget> {
self.view().clone()
fn add(self, _ui: &mut super::Ui) -> WidgetHandle<Self::Widget> {
self.view()
}
}