From 772deeb61b267e3451130b0b35b5aa976cc911ed Mon Sep 17 00:00:00 2001 From: Olivier Lemoine Date: Wed, 26 Feb 2025 09:29:34 +0100 Subject: [PATCH] [dessin-dioxus] Add none to fill --- dessin-dioxus/src/lib.rs | 20 +++++++++++--------- dessin-macros/src/dessin_macro.rs | 4 ++++ dessin/src/lib.rs | 5 +++++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/dessin-dioxus/src/lib.rs b/dessin-dioxus/src/lib.rs index 9ff4b21..e31f40d 100644 --- a/dessin-dioxus/src/lib.rs +++ b/dessin-dioxus/src/lib.rs @@ -155,15 +155,17 @@ fn Shaper( stroke, shape, } => { - let fill = fill.map(|color| { - format!( - "rgb({} {} {} / {:.3})", - (color.red * 255.) as u32, - (color.green * 255.) as u32, - (color.blue * 255.) as u32, - color.alpha - ) - }); + let fill = fill + .map(|color| { + format!( + "rgb({} {} {} / {:.3})", + (color.red * 255.) as u32, + (color.green * 255.) as u32, + (color.blue * 255.) as u32, + color.alpha + ) + }) + .unwrap_or_else(|| "none".to_string()); let (stroke, stroke_width, stroke_dasharray) = match stroke { Some(Stroke::Dashed { diff --git a/dessin-macros/src/dessin_macro.rs b/dessin-macros/src/dessin_macro.rs index b6fae06..f8266f6 100644 --- a/dessin-macros/src/dessin_macro.rs +++ b/dessin-macros/src/dessin_macro.rs @@ -432,6 +432,10 @@ fn simple_with_style() { syn::parse_str::("*Item()").unwrap(); } #[test] +fn simple_with_style_and_generic() { + syn::parse_str::("*Item>()").unwrap(); +} +#[test] fn complex_with_style() { syn::parse_str::("*Item() > *()").unwrap(); } diff --git a/dessin/src/lib.rs b/dessin/src/lib.rs index 7e687aa..b7df120 100644 --- a/dessin/src/lib.rs +++ b/dessin/src/lib.rs @@ -191,6 +191,11 @@ pub mod font { mod tests { use crate::prelude::{polygons::Octogon, *}; + #[test] + fn types_funkyness() { + dessin2!(Padding(shape = dessin2!(Line() > ())) > *()); + } + #[test] fn erased_type() { #[derive(Default)]