From 0cb84c1c4cc128f8260054192b4f7798de52a82a Mon Sep 17 00:00:00 2001 From: Joao Freitas <51237625+jhff@users.noreply.github.com> Date: Wed, 17 May 2023 15:30:35 +0100 Subject: Change name of hovered region style struct, reorder lines & export Appearance --- style/src/pane_grid.rs | 32 ++++++++++++++++---------------- style/src/theme.rs | 4 ++-- widget/src/pane_grid.rs | 2 +- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/style/src/pane_grid.rs b/style/src/pane_grid.rs index ec422e86..c1002725 100644 --- a/style/src/pane_grid.rs +++ b/style/src/pane_grid.rs @@ -1,24 +1,9 @@ //! Change the appearance of a pane grid. use iced_core::{Background, Color}; -/// A set of rules that dictate the style of a container. -pub trait StyleSheet { - /// The supported style of the [`StyleSheet`]. - type Style: Default; - - /// The [`Region`] to draw when a pane is hovered. - fn hovered_region(&self, style: &Self::Style) -> Region; - - /// The [`Line`] to draw when a split is picked. - fn picked_split(&self, style: &Self::Style) -> Option; - - /// The [`Line`] to draw when a split is hovered. - fn hovered_split(&self, style: &Self::Style) -> Option; -} - /// The appearance of the hovered region of a pane grid. #[derive(Debug, Clone, Copy)] -pub struct Region { +pub struct Appearance { /// The [`Background`] of the hovered pane region. pub background: Background, /// The border width of the hovered pane region. @@ -40,3 +25,18 @@ pub struct Line { /// The width of the [`Line`]. pub width: f32, } + +/// A set of rules that dictate the style of a container. +pub trait StyleSheet { + /// The supported style of the [`StyleSheet`]. + type Style: Default; + + /// The [`Region`] to draw when a pane is hovered. + fn hovered_region(&self, style: &Self::Style) -> Appearance; + + /// The [`Line`] to draw when a split is picked. + fn picked_split(&self, style: &Self::Style) -> Option; + + /// The [`Line`] to draw when a split is hovered. + fn hovered_split(&self, style: &Self::Style) -> Option; +} diff --git a/style/src/theme.rs b/style/src/theme.rs index c7b2bada..8a7be72c 100644 --- a/style/src/theme.rs +++ b/style/src/theme.rs @@ -703,12 +703,12 @@ pub enum PaneGrid { impl pane_grid::StyleSheet for Theme { type Style = PaneGrid; - fn hovered_region(&self, style: &Self::Style) -> pane_grid::Region { + fn hovered_region(&self, style: &Self::Style) -> pane_grid::Appearance { match style { PaneGrid::Default => { let palette = self.extended_palette(); - pane_grid::Region { + pane_grid::Appearance { background: Background::Color(Color { a: 0.5, ..palette.primary.base.color diff --git a/widget/src/pane_grid.rs b/widget/src/pane_grid.rs index f7fdc072..e6ffb1d6 100644 --- a/widget/src/pane_grid.rs +++ b/widget/src/pane_grid.rs @@ -30,7 +30,7 @@ pub use split::Split; pub use state::State; pub use title_bar::TitleBar; -pub use crate::style::pane_grid::{Line, StyleSheet}; +pub use crate::style::pane_grid::{Appearance, Line, StyleSheet}; use crate::container; use crate::core::event::{self, Event}; -- cgit