Simplify Target enum in widget::pane_grid

This commit is contained in:
Héctor Ramón Jiménez 2023-07-06 07:37:51 +02:00
parent f83ee1e9f9
commit ecce8bbcee
No known key found for this signature in database
GPG key ID: 140CC052C94F138E
2 changed files with 9 additions and 18 deletions

View file

@ -109,13 +109,12 @@ impl Application for Example {
pane, pane,
target, target,
}) => match target { }) => match target {
pane_grid::Target::PaneGrid(edge) => { pane_grid::Target::Edge(edge) => {
self.panes.move_to_edge(&pane, edge) self.panes.move_to_edge(&pane, edge)
} }
pane_grid::Target::Pane { pane_grid::Target::Pane(target, region) => {
pane: target, self.panes.split_with(&target, &pane, region)
region, }
} => self.panes.split_with(&target, &pane, region),
}, },
Message::Dragged(_) => {} Message::Dragged(_) => {}
Message::TogglePin(pane) => { Message::TogglePin(pane) => {

View file

@ -587,7 +587,7 @@ pub fn update<'a, Message, T: Draggable>(
{ {
DragEvent::Dropped { DragEvent::Dropped {
pane, pane,
target: Target::PaneGrid(edge), target: Target::Edge(edge),
} }
} else { } else {
let dropped_region = contents let dropped_region = contents
@ -604,10 +604,7 @@ pub fn update<'a, Message, T: Draggable>(
{ {
DragEvent::Dropped { DragEvent::Dropped {
pane, pane,
target: Target::Pane { target: Target::Pane(target, region),
pane: target,
region,
},
} }
} }
_ => DragEvent::Canceled { pane }, _ => DragEvent::Canceled { pane },
@ -1094,15 +1091,10 @@ pub enum DragEvent {
/// The [`Target`] area a pane can be dropped on. /// The [`Target`] area a pane can be dropped on.
#[derive(Debug, Clone, Copy)] #[derive(Debug, Clone, Copy)]
pub enum Target { pub enum Target {
/// The [`Edge`} of the full [`PaneGrid`]. /// An [`Edge`] of the full [`PaneGrid`].
PaneGrid(Edge), Edge(Edge),
/// A single [`Pane`] of the [`PaneGrid`]. /// A single [`Pane`] of the [`PaneGrid`].
Pane { Pane(Pane, Region),
/// The targetted [`Pane`].
pane: Pane,
/// The targetted area of the [`Pane`].
region: Region,
},
} }
/// The region of a [`Pane`]. /// The region of a [`Pane`].