summaryrefslogtreecommitdiffstats
path: root/pure/src
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-02-17 19:08:54 +0700
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2022-02-17 19:08:54 +0700
commitda45b6c1627935bff5334d213096c4e78972af46 (patch)
tree86840f251dd51f41de2fe79083e9975b51ec1f4f /pure/src
parent2737b21d346c9034502c345dea735ca136b49cea (diff)
downloadiced-da45b6c1627935bff5334d213096c4e78972af46.tar.gz
iced-da45b6c1627935bff5334d213096c4e78972af46.tar.bz2
iced-da45b6c1627935bff5334d213096c4e78972af46.zip
Implement `pure::Component` in `iced_lazy`
Diffstat (limited to 'pure/src')
-rw-r--r--pure/src/overlay.rs6
-rw-r--r--pure/src/widget.rs4
-rw-r--r--pure/src/widget/button.rs4
-rw-r--r--pure/src/widget/column.rs4
-rw-r--r--pure/src/widget/container.rs4
-rw-r--r--pure/src/widget/pick_list.rs2
-rw-r--r--pure/src/widget/row.rs4
-rw-r--r--pure/src/widget/scrollable.rs4
-rw-r--r--pure/src/widget/space.rs7
9 files changed, 18 insertions, 21 deletions
diff --git a/pure/src/overlay.rs b/pure/src/overlay.rs
index b009fde8..72415634 100644
--- a/pure/src/overlay.rs
+++ b/pure/src/overlay.rs
@@ -5,17 +5,17 @@ use iced_native::Layout;
pub use iced_native::overlay::*;
pub fn from_children<'a, Message, Renderer>(
- children: &'a mut [crate::Element<'_, Message, Renderer>],
+ children: &'a [crate::Element<'_, Message, Renderer>],
tree: &'a mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<Element<'a, Message, Renderer>> {
children
- .iter_mut()
+ .iter()
.zip(&mut tree.children)
.zip(layout.children())
.filter_map(|((child, state), layout)| {
- child.as_widget_mut().overlay(state, layout, renderer)
+ child.as_widget().overlay(state, layout, renderer)
})
.next()
}
diff --git a/pure/src/widget.rs b/pure/src/widget.rs
index 62f9d95b..a12d6fad 100644
--- a/pure/src/widget.rs
+++ b/pure/src/widget.rs
@@ -1,4 +1,5 @@
pub mod image;
+pub mod tree;
mod button;
mod checkbox;
@@ -14,7 +15,6 @@ mod space;
mod text;
mod text_input;
mod toggler;
-mod tree;
pub use button::Button;
pub use checkbox::Checkbox;
@@ -104,7 +104,7 @@ pub trait Widget<Message, Renderer> {
}
fn overlay<'a>(
- &'a mut self,
+ &'a self,
_state: &'a mut Tree,
_layout: Layout<'_>,
_renderer: &Renderer,
diff --git a/pure/src/widget/button.rs b/pure/src/widget/button.rs
index f5e78933..2ed67a9c 100644
--- a/pure/src/widget/button.rs
+++ b/pure/src/widget/button.rs
@@ -209,12 +209,12 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<overlay::Element<'b, Message, Renderer>> {
- self.content.as_widget_mut().overlay(
+ self.content.as_widget().overlay(
&mut tree.children[0],
layout.children().next().unwrap(),
renderer,
diff --git a/pure/src/widget/column.rs b/pure/src/widget/column.rs
index 1f025335..698d7e9c 100644
--- a/pure/src/widget/column.rs
+++ b/pure/src/widget/column.rs
@@ -219,12 +219,12 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<overlay::Element<'b, Message, Renderer>> {
- overlay::from_children(&mut self.children, tree, layout, renderer)
+ overlay::from_children(&self.children, tree, layout, renderer)
}
}
diff --git a/pure/src/widget/container.rs b/pure/src/widget/container.rs
index 8ad6a064..c8f0b3a2 100644
--- a/pure/src/widget/container.rs
+++ b/pure/src/widget/container.rs
@@ -240,12 +240,12 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<overlay::Element<'b, Message, Renderer>> {
- self.content.as_widget_mut().overlay(
+ self.content.as_widget().overlay(
&mut tree.children[0],
layout.children().next().unwrap(),
renderer,
diff --git a/pure/src/widget/pick_list.rs b/pure/src/widget/pick_list.rs
index 324950e1..9dc847ee 100644
--- a/pure/src/widget/pick_list.rs
+++ b/pure/src/widget/pick_list.rs
@@ -212,7 +212,7 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
_renderer: &Renderer,
diff --git a/pure/src/widget/row.rs b/pure/src/widget/row.rs
index 29128589..1c574d51 100644
--- a/pure/src/widget/row.rs
+++ b/pure/src/widget/row.rs
@@ -205,12 +205,12 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<overlay::Element<'b, Message, Renderer>> {
- overlay::from_children(&mut self.children, tree, layout, renderer)
+ overlay::from_children(&self.children, tree, layout, renderer)
}
}
diff --git a/pure/src/widget/scrollable.rs b/pure/src/widget/scrollable.rs
index 8a206a6c..bbda50e5 100644
--- a/pure/src/widget/scrollable.rs
+++ b/pure/src/widget/scrollable.rs
@@ -233,13 +233,13 @@ where
}
fn overlay<'b>(
- &'b mut self,
+ &'b self,
tree: &'b mut Tree,
layout: Layout<'_>,
renderer: &Renderer,
) -> Option<overlay::Element<'b, Message, Renderer>> {
self.content
- .as_widget_mut()
+ .as_widget()
.overlay(
&mut tree.children[0],
layout.children().next().unwrap(),
diff --git a/pure/src/widget/space.rs b/pure/src/widget/space.rs
index d7394398..e0c9c285 100644
--- a/pure/src/widget/space.rs
+++ b/pure/src/widget/space.rs
@@ -4,15 +4,13 @@ use iced_native::event::{self, Event};
use iced_native::layout::{self, Layout};
use iced_native::mouse;
use iced_native::renderer;
-use iced_native::text;
use iced_native::{Clipboard, Hasher, Length, Point, Rectangle, Shell};
pub use iced_native::widget::Space;
impl<'a, Message, Renderer> Widget<Message, Renderer> for Space
where
- Message: Clone,
- Renderer: text::Renderer,
+ Renderer: iced_native::Renderer,
{
fn width(&self) -> Length {
<Self as iced_native::Widget<Message, Renderer>>::width(self)
@@ -98,8 +96,7 @@ where
impl<'a, Message, Renderer> Into<Element<'a, Message, Renderer>> for Space
where
- Message: 'a + Clone,
- Renderer: text::Renderer + 'a,
+ Renderer: iced_native::Renderer + 'a,
{
fn into(self) -> Element<'a, Message, Renderer> {
Element::new(self)