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,
target,
}) => match target {
pane_grid::Target::PaneGrid(edge) => {
pane_grid::Target::Edge(edge) => {
self.panes.move_to_edge(&pane, edge)
}
pane_grid::Target::Pane {
pane: target,
region,
} => self.panes.split_with(&target, &pane, region),
pane_grid::Target::Pane(target, region) => {
self.panes.split_with(&target, &pane, region)
}
},
Message::Dragged(_) => {}
Message::TogglePin(pane) => {

View file

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