initial global widget store
This commit is contained in:
@@ -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()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user