From d681aaa57e3106cf0ce90b74ade040ca7bb97832 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Tue, 5 Mar 2024 04:42:25 +0100 Subject: Simplify theming for `Scrollable` widget --- style/src/scrollable.rs | 55 ------------------------------------------------- 1 file changed, 55 deletions(-) delete mode 100644 style/src/scrollable.rs (limited to 'style/src/scrollable.rs') diff --git a/style/src/scrollable.rs b/style/src/scrollable.rs deleted file mode 100644 index d2348510..00000000 --- a/style/src/scrollable.rs +++ /dev/null @@ -1,55 +0,0 @@ -//! Change the appearance of a scrollable. -use crate::container; -use crate::core::{Background, Border, Color}; - -/// The appearance of a scrolable. -#[derive(Debug, Clone, Copy)] -pub struct Appearance { - /// The [`container::Appearance`] of a scrollable. - pub container: container::Appearance, - /// The [`Scrollbar`] appearance. - pub scrollbar: Scrollbar, - /// The [`Background`] of the gap between a horizontal and vertical scrollbar. - pub gap: Option, -} - -/// The appearance of the scrollbar of a scrollable. -#[derive(Debug, Clone, Copy)] -pub struct Scrollbar { - /// The [`Background`] of a scrollbar. - pub background: Option, - /// The [`Border`] of a scrollbar. - pub border: Border, - /// The appearance of the [`Scroller`] of a scrollbar. - pub scroller: Scroller, -} - -/// The appearance of the scroller of a scrollable. -#[derive(Debug, Clone, Copy)] -pub struct Scroller { - /// The [`Color`] of the scroller. - pub color: Color, - /// The [`Border`] of the scroller. - pub border: Border, -} - -/// A set of rules that dictate the style of a scrollable. -pub trait StyleSheet { - /// The supported style of the [`StyleSheet`]. - type Style: Default; - - /// Produces the [`Appearance`] of an active scrollable. - fn active(&self, style: &Self::Style) -> Appearance; - - /// Produces the [`Appearance`] of a scrollable when it is being hovered. - fn hovered( - &self, - style: &Self::Style, - is_mouse_over_scrollbar: bool, - ) -> Appearance; - - /// Produces the [`Appearance`] of a scrollable when it is being dragged. - fn dragging(&self, style: &Self::Style) -> Appearance { - self.hovered(style, true) - } -} -- cgit