#[derive(Debug, Clone)]
pub enum BackgroundFill {
Solid,
Glass {
blur_radius: f64,
},
Texture {
asset_id: &'static str,
},
}
pub trait ModalStyle {
fn radius(&self) -> f64;
fn border_width(&self) -> f64;
fn header_height(&self) -> f64;
fn footer_height(&self) -> f64;
fn sidebar_width(&self) -> f64;
fn padding(&self) -> f64;
fn tab_height(&self) -> f64;
fn close_btn_size(&self) -> f64;
fn shadow_offset(&self) -> f64;
fn shadow_blur(&self) -> f64;
fn wizard_nav_height(&self) -> f64;
fn background_fill(&self) -> BackgroundFill {
BackgroundFill::Solid
}
}
#[derive(Default)]
pub struct DefaultModalStyle;
impl ModalStyle for DefaultModalStyle {
fn radius(&self) -> f64 { 0.0 }
fn border_width(&self) -> f64 { 1.0 }
fn header_height(&self) -> f64 { 44.0 }
fn footer_height(&self) -> f64 { 52.0 }
fn sidebar_width(&self) -> f64 { 48.0 }
fn padding(&self) -> f64 { 16.0 }
fn tab_height(&self) -> f64 { 32.0 }
fn close_btn_size(&self) -> f64 { 24.0 }
fn shadow_offset(&self) -> f64 { 3.0 }
fn shadow_blur(&self) -> f64 { 6.0 }
fn wizard_nav_height(&self) -> f64 { 52.0 }
}