From 99aa54cd88d7eb99149699d539ee4d59e08047b1 Mon Sep 17 00:00:00 2001 From: Joao Freitas <51237625+jhff@users.noreply.github.com> Date: Tue, 16 May 2023 16:12:29 +0100 Subject: Add pane_grid functionality to split a pane with another pane --- style/src/pane_grid.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'style/src/pane_grid.rs') diff --git a/style/src/pane_grid.rs b/style/src/pane_grid.rs index fd8fc05f..ec422e86 100644 --- a/style/src/pane_grid.rs +++ b/style/src/pane_grid.rs @@ -1,11 +1,14 @@ //! Change the appearance of a pane grid. -use iced_core::Color; +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; @@ -13,6 +16,19 @@ pub trait StyleSheet { 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 { + /// The [`Background`] of the hovered pane region. + pub background: Background, + /// The border width of the hovered pane region. + pub border_width: f32, + /// The border [`Color`] of the hovered pane region. + pub border_color: Color, + /// The border radius of the hovered pane region. + pub border_radius: f32, +} + /// A line. /// /// It is normally used to define the highlight of something, like a split. -- cgit 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 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'style/src/pane_grid.rs') 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; +} -- cgit From 1c86defab5f5491b5f6b6e45faabf1b91ed195a3 Mon Sep 17 00:00:00 2001 From: Casper Storm Date: Tue, 23 May 2023 12:26:16 +0200 Subject: Extend border radius on relevant widgets --- style/src/pane_grid.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'style/src/pane_grid.rs') diff --git a/style/src/pane_grid.rs b/style/src/pane_grid.rs index c1002725..b99af955 100644 --- a/style/src/pane_grid.rs +++ b/style/src/pane_grid.rs @@ -1,5 +1,5 @@ //! Change the appearance of a pane grid. -use iced_core::{Background, Color}; +use iced_core::{Background, BorderRadius, Color}; /// The appearance of the hovered region of a pane grid. #[derive(Debug, Clone, Copy)] @@ -11,7 +11,7 @@ pub struct Appearance { /// The border [`Color`] of the hovered pane region. pub border_color: Color, /// The border radius of the hovered pane region. - pub border_radius: f32, + pub border_radius: BorderRadius, } /// A line. -- cgit From e5c9dd54b3f51e913f39b38e8907c321c8bfd040 Mon Sep 17 00:00:00 2001 From: Joao Freitas <51237625+jhff@users.noreply.github.com> Date: Fri, 19 May 2023 11:24:52 +0100 Subject: Add ability to drag pane to the pane grid edges & optional style for dragged pane --- style/src/pane_grid.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'style/src/pane_grid.rs') diff --git a/style/src/pane_grid.rs b/style/src/pane_grid.rs index b99af955..dfdc9186 100644 --- a/style/src/pane_grid.rs +++ b/style/src/pane_grid.rs @@ -31,7 +31,7 @@ pub trait StyleSheet { /// The supported style of the [`StyleSheet`]. type Style: Default; - /// The [`Region`] to draw when a pane is hovered. + /// The [`Appearance`] to draw when a pane is hovered. fn hovered_region(&self, style: &Self::Style) -> Appearance; /// The [`Line`] to draw when a split is picked. -- cgit