diff options
author | 2024-06-08 02:09:10 +0200 | |
---|---|---|
committer | 2024-06-08 02:09:10 +0200 | |
commit | e2b00f98a0fab96da6502610b135a4c86fbd63b5 (patch) | |
tree | 2db4f25f4b562373430f749ad48cfd08c0559543 /widget/src | |
parent | 06ff17fcf87495663a295d1548df1c2ac03dafbd (diff) | |
download | iced-e2b00f98a0fab96da6502610b135a4c86fbd63b5.tar.gz iced-e2b00f98a0fab96da6502610b135a4c86fbd63b5.tar.bz2 iced-e2b00f98a0fab96da6502610b135a4c86fbd63b5.zip |
Allow for styling of the menu of a pick list
Diffstat (limited to 'widget/src')
-rw-r--r-- | widget/src/pick_list.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/widget/src/pick_list.rs b/widget/src/pick_list.rs index edccfdaa..97de5b48 100644 --- a/widget/src/pick_list.rs +++ b/widget/src/pick_list.rs @@ -161,6 +161,19 @@ where self } + /// Sets the style of the [`Menu`]. + #[must_use] + pub fn menu_style( + mut self, + style: impl Fn(&Theme) -> menu::Style + 'a, + ) -> Self + where + <Theme as menu::Catalog>::Class<'a>: From<menu::StyleFn<'a, Theme>>, + { + self.menu_class = (Box::new(style) as menu::StyleFn<'a, Theme>).into(); + self + } + /// Sets the style class of the [`PickList`]. #[cfg(feature = "advanced")] #[must_use] @@ -171,6 +184,17 @@ where self.class = class.into(); self } + + /// Sets the style class of the [`Menu`]. + #[cfg(feature = "advanced")] + #[must_use] + pub fn menu_class( + mut self, + class: impl Into<<Theme as menu::Catalog>::Class<'a>>, + ) -> Self { + self.menu_class = class.into(); + self + } } impl<'a, T, L, V, Message, Theme, Renderer> Widget<Message, Theme, Renderer> |