diff options
author | 2020-07-16 05:00:37 +0200 | |
---|---|---|
committer | 2020-07-16 05:00:37 +0200 | |
commit | da5da3958e3b7fe85e371846a795c4ae05cb2df7 (patch) | |
tree | cd9f353e005ebc9c49d987125ba168a87982c629 /native/src/widget/pane_grid.rs | |
parent | 62ec03a0afe8566a8f0b06675990a83fd65de1a9 (diff) | |
parent | 31c30fedd5e5ad74cc1f66162d7e5c0e5e3cf420 (diff) | |
download | iced-da5da3958e3b7fe85e371846a795c4ae05cb2df7.tar.gz iced-da5da3958e3b7fe85e371846a795c4ae05cb2df7.tar.bz2 iced-da5da3958e3b7fe85e371846a795c4ae05cb2df7.zip |
Merge pull request #444 from hecrj/feature/overlay
Overlay support and `PickList` widget
Diffstat (limited to 'native/src/widget/pane_grid.rs')
-rw-r--r-- | native/src/widget/pane_grid.rs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/native/src/widget/pane_grid.rs b/native/src/widget/pane_grid.rs index c472d043..0b237b9e 100644 --- a/native/src/widget/pane_grid.rs +++ b/native/src/widget/pane_grid.rs @@ -29,8 +29,8 @@ pub use state::{Focus, State}; pub use title_bar::TitleBar; use crate::{ - container, keyboard, layout, mouse, row, text, Clipboard, Element, Event, - Hasher, Layout, Length, Point, Rectangle, Size, Vector, Widget, + container, keyboard, layout, mouse, overlay, row, text, Clipboard, Element, + Event, Hasher, Layout, Length, Point, Rectangle, Size, Vector, Widget, }; /// A collection of panes distributed using either vertical or horizontal splits @@ -636,6 +636,17 @@ where element.hash_layout(state); } } + + fn overlay( + &mut self, + layout: Layout<'_>, + ) -> Option<overlay::Element<'_, Message, Renderer>> { + self.elements + .iter_mut() + .zip(layout.children()) + .filter_map(|((_, pane), layout)| pane.overlay(layout)) + .next() + } } /// The renderer of a [`PaneGrid`]. |