#[derive(Debug, Clone, Copy, PartialEq, Default)]
pub enum BgStyle {
#[default]
Solid,
Mica,
Acrylic,
}
impl BgStyle {
pub fn from_str(s: &str) -> Self {
match s {
s if s.eq_ignore_ascii_case("mica") => BgStyle::Mica,
s if s.eq_ignore_ascii_case("acrylic") => BgStyle::Acrylic,
_ => BgStyle::Solid,
}
}
}
#[derive(Debug, Clone)]
pub struct Nav {
pub id: String,
pub label: String,
pub icon: String,
}
impl Nav {
pub fn new(
id: impl Into<String>,
label: impl Into<String>,
icon: impl Into<String>,
) -> Self {
Self { id: id.into(), label: label.into(), icon: icon.into() }
}
}
#[derive(Debug, Clone)]
pub struct Toolbar {
pub id: String,
pub icon: String,
pub tooltip: String,
}
impl Toolbar {
pub fn new(
id: impl Into<String>,
icon: impl Into<String>,
tooltip: impl Into<String>,
) -> Self {
Self { id: id.into(), icon: icon.into(), tooltip: tooltip.into() }
}
}