diff options
author | 2024-09-07 23:00:48 +0200 | |
---|---|---|
committer | 2024-09-07 23:00:48 +0200 | |
commit | 09174d5a25aaea3dcdf177689ac23576ef81b377 (patch) | |
tree | db06b31743bf3c41cd0d4d38e7849f3d05d6d29a /widget/src/text_input.rs | |
parent | 827ba5b16c4acb1b63535898d4ef7df5ea2b8703 (diff) | |
download | iced-09174d5a25aaea3dcdf177689ac23576ef81b377.tar.gz iced-09174d5a25aaea3dcdf177689ac23576ef81b377.tar.bz2 iced-09174d5a25aaea3dcdf177689ac23576ef81b377.zip |
Simplify type signature of `TextInput` methods
Diffstat (limited to '')
-rw-r--r-- | widget/src/text_input.rs | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/widget/src/text_input.rs b/widget/src/text_input.rs index e129826c..0a8e6690 100644 --- a/widget/src/text_input.rs +++ b/widget/src/text_input.rs @@ -129,11 +129,11 @@ where /// the [`TextInput`]. /// /// If this method is not called, the [`TextInput`] will be disabled. - pub fn on_input<F>(mut self, callback: F) -> Self - where - F: 'a + Fn(String) -> Message, - { - self.on_input = Some(Box::new(callback)); + pub fn on_input( + mut self, + on_input: impl Fn(String) -> Message + 'a, + ) -> Self { + self.on_input = Some(Box::new(on_input)); self } @@ -141,14 +141,11 @@ where /// the [`TextInput`], if `Some`. /// /// If `None`, the [`TextInput`] will be disabled. - pub fn on_input_maybe<F>(mut self, callback: Option<F>) -> Self - where - F: 'a + Fn(String) -> Message, - { - self.on_input = match callback { - Some(c) => Some(Box::new(c)), - None => None, - }; + pub fn on_input_maybe( + mut self, + on_input: Option<impl Fn(String) -> Message + 'a>, + ) -> Self { + self.on_input = on_input.map(|f| Box::new(f) as _); self } @@ -161,8 +158,6 @@ where /// Sets the message that should be produced when the [`TextInput`] is /// focused and the enter key is pressed, if `Some`. - /// - /// If `None` the [`TextInput`] nothing will happen. pub fn on_submit_maybe(mut self, on_submit: Option<Message>) -> Self { self.on_submit = on_submit; self @@ -180,16 +175,11 @@ where /// Sets the message that should be produced when some text is pasted into /// the [`TextInput`], if `Some`. - /// - /// If `None` nothing will happen. pub fn on_paste_maybe( mut self, on_paste: Option<impl Fn(String) -> Message + 'a>, ) -> Self { - self.on_paste = match on_paste { - Some(func) => Some(Box::new(func)), - None => None, - }; + self.on_paste = on_paste.map(|f| Box::new(f) as _); self } |