From 2303111e09d806ef2a652bddc2b73be6dccf6ae2 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sun, 10 Nov 2019 01:55:32 +0100 Subject: Draft new layout API --- native/src/widget/slider.rs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'native/src/widget/slider.rs') 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 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, _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(&self, slider: &Slider<'_, Message>) -> Node; + fn layout( + &self, + slider: &Slider<'_, Message>, + limits: &layout::Limits, + ) -> Layout; /// Draws a [`Slider`]. /// @@ -110,7 +114,7 @@ pub trait Renderer: crate::Renderer { fn draw( &mut self, slider: &Slider<'_, Message>, - layout: Layout<'_>, + layout: &Layout, cursor_position: Point, ) -> Self::Output; } -- cgit