diff options
author | 2024-01-21 17:56:01 +0100 | |
---|---|---|
committer | 2024-01-21 17:56:01 +0100 | |
commit | 7a50e9e8fbb8d37e53a42c1dd5936b97463ead53 (patch) | |
tree | c0960018f287bcb2043a1752ae85ad0d45e00f21 /runtime/src/overlay/nested.rs | |
parent | 545cc909c9f356dd733d273173694db9b8c28594 (diff) | |
download | iced-7a50e9e8fbb8d37e53a42c1dd5936b97463ead53.tar.gz iced-7a50e9e8fbb8d37e53a42c1dd5936b97463ead53.tar.bz2 iced-7a50e9e8fbb8d37e53a42c1dd5936b97463ead53.zip |
Convert `Renderer::Theme` to generic `Widget` type
Diffstat (limited to 'runtime/src/overlay/nested.rs')
-rw-r--r-- | runtime/src/overlay/nested.rs | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/runtime/src/overlay/nested.rs b/runtime/src/overlay/nested.rs index 4256efb7..60e2eb87 100644 --- a/runtime/src/overlay/nested.rs +++ b/runtime/src/overlay/nested.rs @@ -10,16 +10,18 @@ use crate::core::{ /// An overlay container that displays nested overlays #[allow(missing_debug_implementations)] -pub struct Nested<'a, Message, Renderer> { - overlay: overlay::Element<'a, Message, Renderer>, +pub struct Nested<'a, Message, Theme, Renderer> { + overlay: overlay::Element<'a, Message, Theme, Renderer>, } -impl<'a, Message, Renderer> Nested<'a, Message, Renderer> +impl<'a, Message, Theme, Renderer> Nested<'a, Message, Theme, Renderer> where Renderer: renderer::Renderer, { /// Creates a nested overlay from the provided [`overlay::Element`] - pub fn new(element: overlay::Element<'a, Message, Renderer>) -> Self { + pub fn new( + element: overlay::Element<'a, Message, Theme, Renderer>, + ) -> Self { Self { overlay: element } } @@ -38,8 +40,8 @@ where _position: Point, translation: Vector, ) -> layout::Node { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, renderer: &Renderer, bounds: Size, translation: Vector, @@ -71,16 +73,16 @@ where pub fn draw( &mut self, renderer: &mut Renderer, - theme: &<Renderer as renderer::Renderer>::Theme, + theme: &Theme, style: &renderer::Style, layout: Layout<'_>, cursor: mouse::Cursor, ) { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, layout: Layout<'_>, renderer: &mut Renderer, - theme: &<Renderer as renderer::Renderer>::Theme, + theme: &Theme, style: &renderer::Style, cursor: mouse::Cursor, ) where @@ -144,8 +146,8 @@ where renderer: &Renderer, operation: &mut dyn widget::Operation<Message>, ) { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, layout: Layout<'_>, renderer: &Renderer, operation: &mut dyn widget::Operation<Message>, @@ -178,8 +180,8 @@ where clipboard: &mut dyn Clipboard, shell: &mut Shell<'_, Message>, ) -> event::Status { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, layout: Layout<'_>, event: Event, cursor: mouse::Cursor, @@ -267,8 +269,8 @@ where viewport: &Rectangle, renderer: &Renderer, ) -> mouse::Interaction { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, layout: Layout<'_>, cursor: mouse::Cursor, viewport: &Rectangle, @@ -318,8 +320,8 @@ where renderer: &Renderer, cursor_position: Point, ) -> bool { - fn recurse<Message, Renderer>( - element: &mut overlay::Element<'_, Message, Renderer>, + fn recurse<Message, Theme, Renderer>( + element: &mut overlay::Element<'_, Message, Theme, Renderer>, layout: Layout<'_>, renderer: &Renderer, cursor_position: Point, |