From 6551a0b2ab6c831dd1d3646ecf55180339275e22 Mon Sep 17 00:00:00 2001 From: Bingus Date: Thu, 11 May 2023 09:12:06 -0700 Subject: Added support for gradients as background variants + other optimizations. --- core/src/background.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'core/src/background.rs') diff --git a/core/src/background.rs b/core/src/background.rs index cfb95867..6af33c3e 100644 --- a/core/src/background.rs +++ b/core/src/background.rs @@ -1,11 +1,13 @@ -use crate::Color; +use crate::{Color, Gradient}; /// The background of some element. #[derive(Debug, Clone, Copy, PartialEq)] pub enum Background { - /// A solid color + /// A solid color. Color(Color), - // TODO: Add gradient and image variants + /// Linearly interpolate between several colors. + Gradient(Gradient), + // TODO: Add image variant } impl From for Background { @@ -19,3 +21,9 @@ impl From for Option { Some(Background::from(color)) } } + +impl From for Option { + fn from(gradient: Gradient) -> Self { + Some(Background::Gradient(gradient)) + } +} -- cgit From 4c1a082f0468a59099bbf8aa8991420a41234948 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Fri, 19 May 2023 03:32:21 +0200 Subject: Remove `Builder` abstractions for gradients --- core/src/background.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'core/src/background.rs') diff --git a/core/src/background.rs b/core/src/background.rs index 6af33c3e..347c52c0 100644 --- a/core/src/background.rs +++ b/core/src/background.rs @@ -1,4 +1,5 @@ -use crate::{Color, Gradient}; +use crate::gradient::{self, Gradient}; +use crate::Color; /// The background of some element. #[derive(Debug, Clone, Copy, PartialEq)] @@ -16,14 +17,14 @@ impl From for Background { } } -impl From for Option { - fn from(color: Color) -> Self { - Some(Background::from(color)) +impl From for Background { + fn from(gradient: Gradient) -> Self { + Background::Gradient(gradient) } } -impl From for Option { - fn from(gradient: Gradient) -> Self { - Some(Background::Gradient(gradient)) +impl From for Background { + fn from(gradient: gradient::Linear) -> Self { + Background::Gradient(Gradient::Linear(gradient)) } } -- cgit