summaryrefslogtreecommitdiffstats
path: root/widget/src/helpers.rs
diff options
context:
space:
mode:
authorLibravatar Joao Freitas <51237625+jhff@users.noreply.github.com>2023-07-13 13:51:29 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2023-07-26 21:59:42 +0200
commitdd5ef8b90895f626d4b8f0466c4457c5abf451a0 (patch)
tree0f43f2b86ee38460e33612e928e1c8343863a9dd /widget/src/helpers.rs
parent4cf1b4fd1c8f45fe50ff254decd91f0d589f70ff (diff)
downloadiced-dd5ef8b90895f626d4b8f0466c4457c5abf451a0.tar.gz
iced-dd5ef8b90895f626d4b8f0466c4457c5abf451a0.tar.bz2
iced-dd5ef8b90895f626d4b8f0466c4457c5abf451a0.zip
Add ComboBox widget
- Widget implementation - Widget helper - Example
Diffstat (limited to '')
-rw-r--r--widget/src/helpers.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/widget/src/helpers.rs b/widget/src/helpers.rs
index 3f5136f8..9c3c83a9 100644
--- a/widget/src/helpers.rs
+++ b/widget/src/helpers.rs
@@ -1,6 +1,7 @@
//! Helper functions to create pure widgets.
use crate::button::{self, Button};
use crate::checkbox::{self, Checkbox};
+use crate::combo_box::{self, ComboBox};
use crate::container::{self, Container};
use crate::core;
use crate::core::widget::operation;
@@ -252,6 +253,23 @@ where
PickList::new(options, selected, on_selected)
}
+/// Creates a new [`ComboBox`].
+///
+/// [`ComboBox`]: widget::ComboBox
+pub fn combo_box<'a, T, Message, Renderer>(
+ state: &'a combo_box::State<T>,
+ placeholder: &str,
+ selection: Option<&T>,
+ on_selected: impl Fn(T) -> Message + 'static,
+) -> ComboBox<'a, T, Message, Renderer>
+where
+ T: std::fmt::Display + Clone,
+ Renderer: core::text::Renderer,
+ Renderer::Theme: text_input::StyleSheet + overlay::menu::StyleSheet,
+{
+ ComboBox::new(state, placeholder, selection, on_selected)
+}
+
/// Creates a new horizontal [`Space`] with the given [`Length`].
///
/// [`Space`]: widget::Space