From 03b34931383e701c39c653a7662a616fe21a0947 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Thu, 14 Oct 2021 16:07:22 +0700 Subject: Remove trait-specific draw logic in `iced_native` --- native/src/overlay/element.rs | 4 +-- native/src/overlay/menu.rs | 79 ++++++++++++------------------------------- 2 files changed, 24 insertions(+), 59 deletions(-) (limited to 'native/src/overlay') diff --git a/native/src/overlay/element.rs b/native/src/overlay/element.rs index e4819037..081b62ce 100644 --- a/native/src/overlay/element.rs +++ b/native/src/overlay/element.rs @@ -74,7 +74,7 @@ where defaults: &Renderer::Defaults, layout: Layout<'_>, cursor_position: Point, - ) -> Renderer::Output { + ) { self.overlay .draw(renderer, defaults, layout, cursor_position) } @@ -145,7 +145,7 @@ where defaults: &Renderer::Defaults, layout: Layout<'_>, cursor_position: Point, - ) -> Renderer::Output { + ) { self.content .draw(renderer, defaults, layout, cursor_position) } diff --git a/native/src/overlay/menu.rs b/native/src/overlay/menu.rs index f62dcb46..f90a9f7b 100644 --- a/native/src/overlay/menu.rs +++ b/native/src/overlay/menu.rs @@ -239,21 +239,22 @@ where defaults: &Renderer::Defaults, layout: Layout<'_>, cursor_position: Point, - ) -> Renderer::Output { - let primitives = self.container.draw( - renderer, - defaults, - layout, - cursor_position, - &layout.bounds(), - ); - - renderer.decorate( - layout.bounds(), - cursor_position, - &self.style, - primitives, - ) + ) { + // TODO + // let primitives = self.container.draw( + // renderer, + // defaults, + // layout, + // cursor_position, + // &layout.bounds(), + // ); + + // renderer.decorate( + // layout.bounds(), + // cursor_position, + // &self.style, + // primitives, + // ) } } @@ -378,24 +379,13 @@ where fn draw( &self, - renderer: &mut Renderer, + _renderer: &mut Renderer, _defaults: &Renderer::Defaults, - layout: Layout<'_>, - cursor_position: Point, - viewport: &Rectangle, - ) -> Renderer::Output { - self::Renderer::draw( - renderer, - layout.bounds(), - cursor_position, - viewport, - self.options, - *self.hovered_option, - self.padding, - self.text_size.unwrap_or(renderer.default_size()), - self.font, - &self.style, - ) + _layout: Layout<'_>, + _cursor_position: Point, + _viewport: &Rectangle, + ) { + // TODO } } @@ -410,31 +400,6 @@ pub trait Renderer: { /// The [`Menu`] style supported by this renderer. type Style: Default + Clone; - - /// Decorates a the list of options of a [`Menu`]. - /// - /// This method can be used to draw a background for the [`Menu`]. - fn decorate( - &mut self, - bounds: Rectangle, - cursor_position: Point, - style: &::Style, - primitive: Self::Output, - ) -> Self::Output; - - /// Draws the list of options of a [`Menu`]. - fn draw( - &mut self, - bounds: Rectangle, - cursor_position: Point, - viewport: &Rectangle, - options: &[T], - hovered_option: Option, - padding: Padding, - text_size: u16, - font: Self::Font, - style: &::Style, - ) -> Self::Output; } impl<'a, T, Message, Renderer> Into> -- cgit