wip: Custom palette for built in theme
This commit is contained in:
parent
231d2fd845
commit
e2166ecad0
6 changed files with 39 additions and 7 deletions
|
|
@ -1,5 +1,6 @@
|
|||
pub mod palette;
|
||||
|
||||
use self::palette::Extended;
|
||||
pub use self::palette::Palette;
|
||||
|
||||
use crate::application;
|
||||
|
|
@ -20,10 +21,14 @@ use crate::toggler;
|
|||
|
||||
use iced_core::{Background, Color};
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub enum Theme {
|
||||
Light,
|
||||
Dark,
|
||||
Custom {
|
||||
palette: Palette,
|
||||
extended: Extended
|
||||
}
|
||||
}
|
||||
|
||||
impl Theme {
|
||||
|
|
@ -31,6 +36,7 @@ impl Theme {
|
|||
match self {
|
||||
Self::Light => Palette::LIGHT,
|
||||
Self::Dark => Palette::DARK,
|
||||
Self::Custom { palette, .. } => palette
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -38,6 +44,7 @@ impl Theme {
|
|||
match self {
|
||||
Self::Light => &palette::EXTENDED_LIGHT,
|
||||
Self::Dark => &palette::EXTENDED_DARK,
|
||||
Self::Custom { extended, .. } => extended,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@ impl Palette {
|
|||
};
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Extended {
|
||||
pub background: Background,
|
||||
pub primary: Primary,
|
||||
|
|
@ -95,7 +96,7 @@ impl Extended {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Pair {
|
||||
pub color: Color,
|
||||
pub text: Color,
|
||||
|
|
@ -110,6 +111,7 @@ impl Pair {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Background {
|
||||
pub base: Pair,
|
||||
pub weak: Pair,
|
||||
|
|
@ -129,6 +131,7 @@ impl Background {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Primary {
|
||||
pub base: Pair,
|
||||
pub weak: Pair,
|
||||
|
|
@ -148,6 +151,7 @@ impl Primary {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Secondary {
|
||||
pub base: Pair,
|
||||
pub weak: Pair,
|
||||
|
|
@ -168,6 +172,7 @@ impl Secondary {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Success {
|
||||
pub base: Pair,
|
||||
pub weak: Pair,
|
||||
|
|
@ -187,6 +192,7 @@ impl Success {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq)]
|
||||
pub struct Danger {
|
||||
pub base: Pair,
|
||||
pub weak: Pair,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue