diff options
| author | Joe Carstairs <me@joeac.net> | 2025-08-25 16:35:45 +0000 |
|---|---|---|
| committer | joeac <me@joeac.net> | 2025-08-25 16:35:45 +0000 |
| commit | fe85652e4d3e8906824baddaafd05d19105579b8 (patch) | |
| tree | 31b56e31cbf289a34ec1d6707becf3c60933b56f /schist_desktop_gui/src/theme.rs | |
| parent | d082a30de6a0cbd1fbe2ab5a4316db0891004129 (diff) | |
task-072
Co-authored-by: Joe Carstairs <jcarstairs@scottlogic.com>
Reviewed-on: https://git.joeac.net/joeac/schist/pulls/3
Co-authored-by: Joe Carstairs <me@joeac.net>
Co-committed-by: Joe Carstairs <me@joeac.net>
Diffstat (limited to 'schist_desktop_gui/src/theme.rs')
| -rw-r--r-- | schist_desktop_gui/src/theme.rs | 68 |
1 files changed, 66 insertions, 2 deletions
diff --git a/schist_desktop_gui/src/theme.rs b/schist_desktop_gui/src/theme.rs index 61d736b..98df36f 100644 --- a/schist_desktop_gui/src/theme.rs +++ b/schist_desktop_gui/src/theme.rs @@ -1,7 +1,71 @@ -use iced::Theme; +use iced::{ + theme::{palette, Palette}, + Color, Theme, +}; use crate::gui::Gui; pub fn make_theme(_state: &Gui) -> Theme { - Theme::GruvboxDark + Theme::custom_with_fn( + String::from("schist"), + Palette { + background: black(), + text: white(), + primary: accent_8(), + success: accent_8(), + danger: red_4(), + }, + |palette| palette::Extended { + background: palette::Background { + base: palette::Pair::new(black(), palette.text), + weak: palette::Pair::new(grey_2(), palette.text), + strong: palette::Pair::new(grey_2(), palette.text), + }, + primary: palette::Primary { + base: palette::Pair::new(palette.background, palette.text), + weak: palette::Pair::new(palette.background, palette.text), + strong: palette::Pair::new(palette.background, palette.text), + }, + secondary: palette::Secondary { + base: palette::Pair::new(palette.background, palette.text), + weak: palette::Pair::new(palette.background, palette.text), + strong: palette::Pair::new(palette.background, palette.text), + }, + success: palette::Success { + base: palette::Pair::new(palette.background, accent_8()), + weak: palette::Pair::new(palette.background, accent_8()), + strong: palette::Pair::new(palette.background, accent_8()), + }, + danger: palette::Danger { + base: palette::Pair::new(palette.background, red_7()), + weak: palette::Pair::new(palette.background, red_7()), + strong: palette::Pair::new(palette.background, red_4()), + }, + is_dark: true, + }, + ) +} + +fn black() -> Color { + Color::from_rgb8(0, 6, 19) +} + +fn grey_2() -> Color { + Color::from_rgb8(11, 31, 47) +} + +fn white() -> Color { + Color::from_rgb8(225, 249, 255) +} + +fn accent_8() -> Color { + Color::from_rgb8(129, 199, 255) +} + +fn red_4() -> Color { + Color::from_rgb8(146, 0, 0) +} + +fn red_7() -> Color { + Color::from_rgb8(251, 115, 98) } |
