summaryrefslogtreecommitdiffstats
path: root/pure/src/widget.rs
diff options
context:
space:
mode:
Diffstat (limited to 'pure/src/widget.rs')
-rw-r--r--pure/src/widget.rs20
1 files changed, 12 insertions, 8 deletions
diff --git a/pure/src/widget.rs b/pure/src/widget.rs
index 9112dd9a..03b668d3 100644
--- a/pure/src/widget.rs
+++ b/pure/src/widget.rs
@@ -37,15 +37,7 @@ use iced_native::mouse;
use iced_native::renderer;
use iced_native::{Clipboard, Hasher, Length, Point, Rectangle, Shell};
-use std::any::{self, Any};
-
pub trait Widget<Message, Renderer> {
- fn tag(&self) -> any::TypeId;
-
- fn state(&self) -> Box<dyn Any>;
-
- fn children_state(&self) -> Vec<Tree>;
-
fn width(&self) -> Length;
fn height(&self) -> Length;
@@ -68,6 +60,18 @@ pub trait Widget<Message, Renderer> {
viewport: &Rectangle,
);
+ fn tag(&self) -> tree::Tag {
+ tree::Tag::stateless()
+ }
+
+ fn state(&self) -> tree::State {
+ tree::State::None
+ }
+
+ fn children(&self) -> Vec<Tree> {
+ Vec::new()
+ }
+
fn diff(&self, _tree: &mut Tree) {}
fn mouse_interaction(