summaryrefslogtreecommitdiffstats
path: root/pure/src/widget/element.rs
diff options
context:
space:
mode:
Diffstat (limited to 'pure/src/widget/element.rs')
-rw-r--r--pure/src/widget/element.rs17
1 files changed, 8 insertions, 9 deletions
diff --git a/pure/src/widget/element.rs b/pure/src/widget/element.rs
index 2a137d40..d905b924 100644
--- a/pure/src/widget/element.rs
+++ b/pure/src/widget/element.rs
@@ -1,4 +1,5 @@
-use crate::widget::{Tree, Widget};
+use crate::widget::tree::{self, Tree};
+use crate::widget::Widget;
use iced_native::event::{self, Event};
use iced_native::layout::{self, Layout};
@@ -6,8 +7,6 @@ use iced_native::mouse;
use iced_native::renderer;
use iced_native::{Clipboard, Hasher, Length, Point, Rectangle, Shell};
-use std::any::{self, Any};
-
pub struct Element<'a, Message, Renderer> {
widget: Box<dyn Widget<Message, Renderer> + 'a>,
}
@@ -66,20 +65,20 @@ where
A: 'a,
B: 'a,
{
- fn tag(&self) -> any::TypeId {
+ fn tag(&self) -> tree::Tag {
self.widget.tag()
}
- fn state(&self) -> Box<dyn Any> {
+ fn state(&self) -> tree::State {
self.widget.state()
}
- fn diff(&self, tree: &mut Tree) {
- self.widget.diff(tree)
+ fn children(&self) -> Vec<Tree> {
+ self.widget.children()
}
- fn children_state(&self) -> Vec<Tree> {
- self.widget.children_state()
+ fn diff(&self, tree: &mut Tree) {
+ self.widget.diff(tree)
}
fn width(&self) -> Length {