diff options
Diffstat (limited to 'style/src/toggler.rs')
-rw-r--r-- | style/src/toggler.rs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/style/src/toggler.rs b/style/src/toggler.rs index 0acf8e97..abc73f2a 100644 --- a/style/src/toggler.rs +++ b/style/src/toggler.rs @@ -1,20 +1,31 @@ -//! Show toggle controls using togglers. +//! Change the appearance of a toggler. use iced_core::Color; /// The appearance of a toggler. #[derive(Debug, Clone, Copy)] pub struct Appearance { + /// The background [`Color`] of the toggler. pub background: Color, + /// The [`Color`] of the background border of the toggler. pub background_border: Option<Color>, + /// The foreground [`Color`] of the toggler. pub foreground: Color, + /// The [`Color`] of the foreground border of the toggler. pub foreground_border: Option<Color>, } /// A set of rules that dictate the style of a toggler. pub trait StyleSheet { - type Style: Default + Copy; + /// The supported style of the [`StyleSheet`]. + type Style: Default; - fn active(&self, style: Self::Style, is_active: bool) -> Appearance; + /// Returns the active [`Appearance`] of the toggler for the provided [`Style`]. + /// + /// [`Style`]: Self::Style + fn active(&self, style: &Self::Style, is_active: bool) -> Appearance; - fn hovered(&self, style: Self::Style, is_active: bool) -> Appearance; + /// Returns the hovered [`Appearance`] of the toggler for the provided [`Style`]. + /// + /// [`Style`]: Self::Style + fn hovered(&self, style: &Self::Style, is_active: bool) -> Appearance; } |