diff options
author | 2022-02-12 17:21:28 +0700 | |
---|---|---|
committer | 2022-02-12 17:21:28 +0700 | |
commit | bd22cc0bc0f7551d29cf2acd22520f4a906f253c (patch) | |
tree | fae6435d0e1500204fca73fa7872fb99a41b6eb4 /pure/src/widget/row.rs | |
parent | e3108494e5886c34312184292ec05dddeb8bf3ca (diff) | |
download | iced-bd22cc0bc0f7551d29cf2acd22520f4a906f253c.tar.gz iced-bd22cc0bc0f7551d29cf2acd22520f4a906f253c.tar.bz2 iced-bd22cc0bc0f7551d29cf2acd22520f4a906f253c.zip |
Implement pure version of `todos` example :tada:
The `Widget` trait in `iced_pure` needed to change a bit to make the
implementation of `Element::map` possible.
Specifically, the `children` method has been split into `diff` and
`children_state`.
Diffstat (limited to 'pure/src/widget/row.rs')
-rw-r--r-- | pure/src/widget/row.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/pure/src/widget/row.rs b/pure/src/widget/row.rs index 147a0850..ec7e144c 100644 --- a/pure/src/widget/row.rs +++ b/pure/src/widget/row.rs @@ -85,8 +85,12 @@ where Box::new(()) } - fn children(&self) -> &[Element<Message, Renderer>] { - &self.children + fn diff(&self, tree: &mut Tree) { + tree.diff_children(&self.children) + } + + fn children_state(&self) -> Vec<Tree> { + self.children.iter().map(Tree::new).collect() } fn width(&self) -> Length { |