summaryrefslogtreecommitdiffstats
path: root/native/src/widget/slider.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-11-10 01:55:32 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2019-11-10 01:55:32 +0100
commit2303111e09d806ef2a652bddc2b73be6dccf6ae2 (patch)
treeba57c5a2fe67d8a58d4f9b32c2b32fee32932f06 /native/src/widget/slider.rs
parent839e039dbf2fb89dcb8c141503740777d2af2eb3 (diff)
downloadiced-2303111e09d806ef2a652bddc2b73be6dccf6ae2.tar.gz
iced-2303111e09d806ef2a652bddc2b73be6dccf6ae2.tar.bz2
iced-2303111e09d806ef2a652bddc2b73be6dccf6ae2.zip
Draft new layout API
Diffstat (limited to '')
-rw-r--r--native/src/widget/slider.rs18
1 files changed, 11 insertions, 7 deletions
diff --git a/native/src/widget/slider.rs b/native/src/widget/slider.rs
index be2b9b22..be4ed564 100644
--- a/native/src/widget/slider.rs
+++ b/native/src/widget/slider.rs
@@ -7,7 +7,7 @@
use std::hash::Hash;
use crate::input::{mouse, ButtonState};
-use crate::{Element, Event, Hasher, Layout, Node, Point, Widget};
+use crate::{layout, Element, Event, Hasher, Layout, Point, Widget};
pub use iced_core::slider::*;
@@ -15,14 +15,14 @@ impl<'a, Message, Renderer> Widget<Message, Renderer> for Slider<'a, Message>
where
Renderer: self::Renderer,
{
- fn node(&self, renderer: &Renderer) -> Node {
- renderer.node(&self)
+ fn layout(&self, renderer: &Renderer, limits: &layout::Limits) -> Layout {
+ renderer.layout(&self, limits)
}
fn on_event(
&mut self,
event: Event,
- layout: Layout<'_>,
+ layout: &Layout,
cursor_position: Point,
messages: &mut Vec<Message>,
_renderer: &Renderer,
@@ -70,7 +70,7 @@ where
fn draw(
&self,
renderer: &mut Renderer,
- layout: Layout<'_>,
+ layout: &Layout,
cursor_position: Point,
) -> Renderer::Output {
renderer.draw(&self, layout, cursor_position)
@@ -93,7 +93,11 @@ pub trait Renderer: crate::Renderer {
///
/// [`Node`]: ../../struct.Node.html
/// [`Radio`]: struct.Radio.html
- fn node<Message>(&self, slider: &Slider<'_, Message>) -> Node;
+ fn layout<Message>(
+ &self,
+ slider: &Slider<'_, Message>,
+ limits: &layout::Limits,
+ ) -> Layout;
/// Draws a [`Slider`].
///
@@ -110,7 +114,7 @@ pub trait Renderer: crate::Renderer {
fn draw<Message>(
&mut self,
slider: &Slider<'_, Message>,
- layout: Layout<'_>,
+ layout: &Layout,
cursor_position: Point,
) -> Self::Output;
}