From 7a50e9e8fbb8d37e53a42c1dd5936b97463ead53 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sun, 21 Jan 2024 17:56:01 +0100 Subject: Convert `Renderer::Theme` to generic `Widget` type --- renderer/src/lib.rs | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'renderer/src/lib.rs') diff --git a/renderer/src/lib.rs b/renderer/src/lib.rs index f2acfa00..a7df414b 100644 --- a/renderer/src/lib.rs +++ b/renderer/src/lib.rs @@ -32,10 +32,10 @@ use std::borrow::Cow; /// The default graphics renderer for [`iced`]. /// /// [`iced`]: https://github.com/iced-rs/iced -pub enum Renderer { - TinySkia(iced_tiny_skia::Renderer), +pub enum Renderer { + TinySkia(iced_tiny_skia::Renderer), #[cfg(feature = "wgpu")] - Wgpu(iced_wgpu::Renderer), + Wgpu(iced_wgpu::Renderer), } macro_rules! delegate { @@ -48,7 +48,7 @@ macro_rules! delegate { }; } -impl Renderer { +impl Renderer { pub fn draw_mesh(&mut self, mesh: Mesh) { match self { Self::TinySkia(_) => { @@ -64,9 +64,7 @@ impl Renderer { } } -impl core::Renderer for Renderer { - type Theme = T; - +impl core::Renderer for Renderer { fn with_layer(&mut self, bounds: Rectangle, f: impl FnOnce(&mut Self)) { match self { Self::TinySkia(renderer) => { @@ -148,15 +146,14 @@ impl core::Renderer for Renderer { } } -impl text::Renderer for Renderer { +impl text::Renderer for Renderer { type Font = Font; type Paragraph = Paragraph; type Editor = Editor; - const ICON_FONT: Font = iced_tiny_skia::Renderer::::ICON_FONT; - const CHECKMARK_ICON: char = iced_tiny_skia::Renderer::::CHECKMARK_ICON; - const ARROW_DOWN_ICON: char = - iced_tiny_skia::Renderer::::ARROW_DOWN_ICON; + const ICON_FONT: Font = iced_tiny_skia::Renderer::ICON_FONT; + const CHECKMARK_ICON: char = iced_tiny_skia::Renderer::CHECKMARK_ICON; + const ARROW_DOWN_ICON: char = iced_tiny_skia::Renderer::ARROW_DOWN_ICON; fn default_font(&self) -> Self::Font { delegate!(self, renderer, renderer.default_font()) @@ -214,7 +211,7 @@ impl text::Renderer for Renderer { } #[cfg(feature = "image")] -impl crate::core::image::Renderer for Renderer { +impl crate::core::image::Renderer for Renderer { type Handle = crate::core::image::Handle; fn dimensions( @@ -235,7 +232,7 @@ impl crate::core::image::Renderer for Renderer { } #[cfg(feature = "svg")] -impl crate::core::svg::Renderer for Renderer { +impl crate::core::svg::Renderer for Renderer { fn dimensions(&self, handle: &crate::core::svg::Handle) -> core::Size { delegate!(self, renderer, renderer.dimensions(handle)) } @@ -251,7 +248,7 @@ impl crate::core::svg::Renderer for Renderer { } #[cfg(feature = "geometry")] -impl crate::graphics::geometry::Renderer for Renderer { +impl crate::graphics::geometry::Renderer for Renderer { type Geometry = crate::Geometry; fn draw(&mut self, layers: Vec) { @@ -283,7 +280,7 @@ impl crate::graphics::geometry::Renderer for Renderer { } #[cfg(feature = "wgpu")] -impl iced_wgpu::primitive::pipeline::Renderer for Renderer { +impl iced_wgpu::primitive::pipeline::Renderer for Renderer { fn draw_pipeline_primitive( &mut self, bounds: Rectangle, -- cgit