Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 60f15e5c72 | |||
| 874f7ded26 | |||
| 3d8fb0078e | |||
| 701f78ea2e | |||
| 25ef65c81e |
Generated
+32
-32
@@ -1075,7 +1075,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "craft-ui"
|
||||
version = "0.1.0"
|
||||
source = "git+https://github.com/storytold/craft-libs?rev=5c874d51eeb3de70e735c8ce87a59a7dedd47675#5c874d51eeb3de70e735c8ce87a59a7dedd47675"
|
||||
source = "git+https://git.marcospaulo.dev.br/masi/craft-libs?rev=22544b6d619d4f16779b8bdfa3f0b642a86fc065#22544b6d619d4f16779b8bdfa3f0b642a86fc065"
|
||||
dependencies = [
|
||||
"egui",
|
||||
"serde",
|
||||
@@ -3073,7 +3073,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"eframe",
|
||||
"egui",
|
||||
@@ -3097,7 +3097,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-catalog"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"crc32fast",
|
||||
"lightcraft-develop",
|
||||
@@ -3114,7 +3114,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-cli"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"dhat",
|
||||
"lightcraft-codecs",
|
||||
@@ -3130,7 +3130,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-codecs"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"avif-serialize",
|
||||
"bytemuck",
|
||||
@@ -3159,7 +3159,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-color"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-geom",
|
||||
"proptest",
|
||||
@@ -3168,7 +3168,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-denoise"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"faer-core",
|
||||
"lightcraft-denoise-core",
|
||||
@@ -3185,7 +3185,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-denoise-core"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-raster",
|
||||
"miniz_oxide 0.8.9",
|
||||
@@ -3200,7 +3200,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-develop"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-color",
|
||||
"lightcraft-geom",
|
||||
@@ -3212,7 +3212,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-engine"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"ab_glyph",
|
||||
"harfrust",
|
||||
@@ -3252,7 +3252,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-faces"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"matrixmultiply",
|
||||
"ndarray",
|
||||
@@ -3266,7 +3266,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-fetch"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"log",
|
||||
"rustls",
|
||||
@@ -3277,7 +3277,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-geocode"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"miniz_oxide 0.8.9",
|
||||
"serde",
|
||||
@@ -3285,7 +3285,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-geom"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"proptest",
|
||||
"serde",
|
||||
@@ -3293,7 +3293,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-gpu"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"bytemuck",
|
||||
"lightcraft-color",
|
||||
@@ -3311,7 +3311,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-heif"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"heic-rs",
|
||||
"rayon",
|
||||
@@ -3319,14 +3319,14 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-inpaint"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"rayon",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-lensdb"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-develop",
|
||||
"lightcraft-geom",
|
||||
@@ -3335,7 +3335,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-mcp"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-codecs",
|
||||
"lightcraft-engine",
|
||||
@@ -3346,7 +3346,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-merge"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-codecs",
|
||||
"lightcraft-color",
|
||||
@@ -3362,7 +3362,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-meta"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"lightcraft-geom",
|
||||
"lightcraft-tiff",
|
||||
@@ -3374,7 +3374,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-pipeline"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"image",
|
||||
"lightcraft-color",
|
||||
@@ -3392,7 +3392,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-preview"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"jpeg-encoder",
|
||||
"lightcraft-raster",
|
||||
@@ -3404,7 +3404,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-raster"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"lightcraft-color",
|
||||
@@ -3416,7 +3416,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-raw"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"jpeg-encoder",
|
||||
"jxl-oxide",
|
||||
@@ -3438,7 +3438,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-scenes"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"image",
|
||||
"lightcraft-color",
|
||||
@@ -3449,7 +3449,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-segment"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"candle-core",
|
||||
"candle-nn",
|
||||
@@ -3462,11 +3462,11 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-sysmem"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-tiff"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"proptest",
|
||||
"serde",
|
||||
@@ -3475,7 +3475,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-ui-egui"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"craft-ui",
|
||||
"egui",
|
||||
@@ -3502,7 +3502,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "lightcraft-web"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"crc32fast",
|
||||
"eframe",
|
||||
@@ -6972,7 +6972,7 @@ checksum = "e450f9b2ed1dff33c94c12589a87338689467b9c4f5d8a5710bd09a847d2c8a7"
|
||||
|
||||
[[package]]
|
||||
name = "xtask"
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
dependencies = [
|
||||
"brotli",
|
||||
"flate2",
|
||||
|
||||
+2
-2
@@ -3,14 +3,14 @@ resolver = "3"
|
||||
members = ["crates/*", "apps/*", "xtask"]
|
||||
|
||||
[workspace.package]
|
||||
version = "0.6.0"
|
||||
version = "0.7.2"
|
||||
edition = "2024"
|
||||
license = "MIT OR Apache-2.0"
|
||||
rust-version = "1.90"
|
||||
repository = "https://github.com/storytold/lightcraft"
|
||||
|
||||
[workspace.dependencies]
|
||||
craft-ui = { git = "https://github.com/storytold/craft-libs", rev = "5c874d51eeb3de70e735c8ce87a59a7dedd47675", features = ["serde"] }
|
||||
craft-ui = { git = "https://git.marcospaulo.dev.br/masi/craft-libs", rev = "22544b6d619d4f16779b8bdfa3f0b642a86fc065", features = ["serde"] }
|
||||
# internal
|
||||
lightcraft-denoise-core = { path = "crates/denoise-core" }
|
||||
lightcraft-denoise = { path = "crates/denoise", default-features = false }
|
||||
|
||||
@@ -1,132 +1,52 @@
|
||||
//! Catppuccin Latte, Frappé, Macchiato and Mocha. Palette: the Catppuccin project's colours
|
||||
//! (https://catppuccin.com/palette, MIT; see LICENSE-catppuccin.txt), accent Mauve.
|
||||
|
||||
use craft_ui::theme::catppuccin::Flavor;
|
||||
use egui::Color32;
|
||||
|
||||
use crate::theme::{ThemeKind, Tokens};
|
||||
|
||||
/// The Catppuccin colours these themes use, as 0xRRGGBB.
|
||||
struct Palette {
|
||||
text: u32,
|
||||
subtext1: u32,
|
||||
subtext0: u32,
|
||||
overlay1: u32,
|
||||
overlay0: u32,
|
||||
surface1: u32,
|
||||
surface0: u32,
|
||||
base: u32,
|
||||
mantle: u32,
|
||||
crust: u32,
|
||||
mauve: u32,
|
||||
red: u32,
|
||||
yellow: u32,
|
||||
}
|
||||
|
||||
const LATTE: Palette = Palette {
|
||||
text: 0x4c4f69,
|
||||
subtext1: 0x5c5f77,
|
||||
subtext0: 0x6c6f85,
|
||||
overlay1: 0x8c8fa1,
|
||||
overlay0: 0x9ca0b0,
|
||||
surface1: 0xbcc0cc,
|
||||
surface0: 0xccd0da,
|
||||
base: 0xeff1f5,
|
||||
mantle: 0xe6e9ef,
|
||||
crust: 0xdce0e8,
|
||||
mauve: 0x8839ef,
|
||||
red: 0xd20f39,
|
||||
yellow: 0xdf8e1d,
|
||||
};
|
||||
const FRAPPE: Palette = Palette {
|
||||
text: 0xc6d0f5,
|
||||
subtext1: 0xb5bfe2,
|
||||
subtext0: 0xa5adce,
|
||||
overlay1: 0x838ba7,
|
||||
overlay0: 0x737994,
|
||||
surface1: 0x51576d,
|
||||
surface0: 0x414559,
|
||||
base: 0x303446,
|
||||
mantle: 0x292c3c,
|
||||
crust: 0x232634,
|
||||
mauve: 0xca9ee6,
|
||||
red: 0xe78284,
|
||||
yellow: 0xe5c890,
|
||||
};
|
||||
const MACCHIATO: Palette = Palette {
|
||||
text: 0xcad3f5,
|
||||
subtext1: 0xb8c0e0,
|
||||
subtext0: 0xa5adcb,
|
||||
overlay1: 0x8087a2,
|
||||
overlay0: 0x6e738d,
|
||||
surface1: 0x494d64,
|
||||
surface0: 0x363a4f,
|
||||
base: 0x24273a,
|
||||
mantle: 0x1e2030,
|
||||
crust: 0x181926,
|
||||
mauve: 0xc6a0f6,
|
||||
red: 0xed8796,
|
||||
yellow: 0xeed49f,
|
||||
};
|
||||
const MOCHA: Palette = Palette {
|
||||
text: 0xcdd6f4,
|
||||
subtext1: 0xbac2de,
|
||||
subtext0: 0xa6adc8,
|
||||
overlay1: 0x7f849c,
|
||||
overlay0: 0x6c7086,
|
||||
surface1: 0x45475a,
|
||||
surface0: 0x313244,
|
||||
base: 0x1e1e2e,
|
||||
mantle: 0x181825,
|
||||
crust: 0x11111b,
|
||||
mauve: 0xcba6f7,
|
||||
red: 0xf38ba8,
|
||||
yellow: 0xf9e2af,
|
||||
};
|
||||
|
||||
fn c(rgb: u32) -> Color32 {
|
||||
Color32::from_rgb((rgb >> 16) as u8, (rgb >> 8) as u8, rgb as u8)
|
||||
}
|
||||
|
||||
/// Tokens for a Catppuccin kind, on top of `base` (which supplies the metrics). Any other kind
|
||||
/// falls back to Mocha (never reached: `for_kind` only routes these four here).
|
||||
pub(crate) fn tokens(kind: ThemeKind, base: Tokens) -> Tokens {
|
||||
let (p, light) = match kind {
|
||||
ThemeKind::CatppuccinLatte => (&LATTE, true),
|
||||
ThemeKind::CatppuccinFrappe => (&FRAPPE, false),
|
||||
ThemeKind::CatppuccinMacchiato => (&MACCHIATO, false),
|
||||
_ => (&MOCHA, false),
|
||||
let f = match kind {
|
||||
ThemeKind::CatppuccinLatte => Flavor::Latte,
|
||||
ThemeKind::CatppuccinFrappe => Flavor::Frappe,
|
||||
ThemeKind::CatppuccinMacchiato => Flavor::Macchiato,
|
||||
_ => Flavor::Mocha,
|
||||
};
|
||||
let (p, light) = (f.palette(), !f.is_dark());
|
||||
// Dark flavours: the photo area is the darkest step; Latte: the chrome is the lightest.
|
||||
let (chrome, canvas, grid_bg, divider, field) =
|
||||
if light { (p.mantle, p.crust, p.base, p.surface0, p.base) } else { (p.base, p.mantle, p.crust, p.crust, p.crust) };
|
||||
Tokens {
|
||||
chrome: c(chrome),
|
||||
canvas: c(canvas),
|
||||
grid_bg: c(grid_bg),
|
||||
cell: c(canvas),
|
||||
cell_selected: c(if light { p.surface1 } else { p.surface0 }),
|
||||
divider: c(divider),
|
||||
inset: c(if light { p.crust } else { p.mantle }),
|
||||
field: c(field),
|
||||
field_border: c(p.surface1),
|
||||
button: c(if light { p.base } else { p.mantle }),
|
||||
button_border: c(p.surface1),
|
||||
hover: c(p.surface0),
|
||||
pressed: c(p.surface1),
|
||||
tool_active: c(p.surface1),
|
||||
text: c(p.text),
|
||||
text_label: c(p.subtext1),
|
||||
text_dim: c(p.subtext0),
|
||||
text_disabled: c(p.overlay0),
|
||||
icon: c(p.subtext0),
|
||||
track: c(p.surface1),
|
||||
thumb: c(p.overlay1),
|
||||
thumb_hover: c(p.text),
|
||||
accent: c(p.mauve),
|
||||
star: c(p.text),
|
||||
pick: c(p.text),
|
||||
reject: c(p.red),
|
||||
caution: c(p.yellow),
|
||||
chrome,
|
||||
canvas,
|
||||
grid_bg,
|
||||
cell: canvas,
|
||||
cell_selected: if light { p.surface1 } else { p.surface0 },
|
||||
divider,
|
||||
inset: if light { p.crust } else { p.mantle },
|
||||
field,
|
||||
field_border: p.surface1,
|
||||
button: if light { p.base } else { p.mantle },
|
||||
button_border: p.surface1,
|
||||
hover: p.surface0,
|
||||
pressed: p.surface1,
|
||||
tool_active: p.surface1,
|
||||
text: p.text,
|
||||
text_label: p.subtext1,
|
||||
text_dim: p.subtext0,
|
||||
text_disabled: p.overlay0,
|
||||
icon: p.subtext0,
|
||||
track: p.surface1,
|
||||
thumb: p.overlay1,
|
||||
thumb_hover: p.text,
|
||||
accent: p.mauve,
|
||||
star: p.text,
|
||||
pick: p.text,
|
||||
reject: p.red,
|
||||
caution: p.yellow,
|
||||
..base
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user