diff options
Diffstat (limited to 'core')
| -rw-r--r-- | core/src/theme.rs | 6 | ||||
| -rw-r--r-- | core/src/theme/palette.rs | 15 | 
2 files changed, 21 insertions, 0 deletions
| diff --git a/core/src/theme.rs b/core/src/theme.rs index 21ba2a37..948aaf83 100644 --- a/core/src/theme.rs +++ b/core/src/theme.rs @@ -52,6 +52,8 @@ pub enum Theme {      Nightfly,      /// The built-in Oxocarbon variant.      Oxocarbon, +    /// The built-in Ferra variant: +    Ferra,      /// A [`Theme`] that uses a [`Custom`] palette.      Custom(Arc<Custom>),  } @@ -80,6 +82,7 @@ impl Theme {          Self::Moonfly,          Self::Nightfly,          Self::Oxocarbon, +        Self::Ferra,      ];      /// Creates a new custom [`Theme`] from the given [`Palette`]. @@ -121,6 +124,7 @@ impl Theme {              Self::Moonfly => Palette::MOONFLY,              Self::Nightfly => Palette::NIGHTFLY,              Self::Oxocarbon => Palette::OXOCARBON, +            Self::Ferra => Palette::FERRA,              Self::Custom(custom) => custom.palette,          }      } @@ -151,6 +155,7 @@ impl Theme {              Self::Moonfly => &palette::EXTENDED_MOONFLY,              Self::Nightfly => &palette::EXTENDED_NIGHTFLY,              Self::Oxocarbon => &palette::EXTENDED_OXOCARBON, +            Self::Ferra => &palette::EXTENDED_FERRA,              Self::Custom(custom) => &custom.extended,          }      } @@ -180,6 +185,7 @@ impl fmt::Display for Theme {              Self::Moonfly => write!(f, "Moonfly"),              Self::Nightfly => write!(f, "Nightfly"),              Self::Oxocarbon => write!(f, "Oxocarbon"), +            Self::Ferra => write!(f, "Ferra"),              Self::Custom(custom) => custom.fmt(f),          }      } diff --git a/core/src/theme/palette.rs b/core/src/theme/palette.rs index 985a54a8..ca91c248 100644 --- a/core/src/theme/palette.rs +++ b/core/src/theme/palette.rs @@ -276,6 +276,17 @@ impl Palette {          success: color!(0x00c15a),          danger: color!(0xf62d0f),      }; + +    /// The built-in [Ferra] variant of a [`Palette`]. +    /// +    /// [Ferra]: https://github.com/casperstorm/ferra +    pub const FERRA: Self = Self { +        background: color!(0x2b292d), +        text: color!(0xfecdb2), +        primary: color!(0xd1d1e0), +        success: color!(0xb1b695), +        danger: color!(0xe06b75), +    };  }  /// An extended set of colors generated from a [`Palette`]. @@ -379,6 +390,10 @@ pub static EXTENDED_NIGHTFLY: Lazy<Extended> =  pub static EXTENDED_OXOCARBON: Lazy<Extended> =      Lazy::new(|| Extended::generate(Palette::OXOCARBON)); +/// The built-in Ferra variant of an [`Extended`] palette. +pub static EXTENDED_FERRA: Lazy<Extended> = +    Lazy::new(|| Extended::generate(Palette::FERRA)); +  impl Extended {      /// Generates an [`Extended`] palette from a simple [`Palette`].      pub fn generate(palette: Palette) -> Self { | 
