summaryrefslogtreecommitdiffstats
path: root/widget/src/helpers.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-09-19 06:22:09 +0200
committerLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2024-09-19 06:22:09 +0200
commit22fbb9c2213892ae7981d5946b177a8846c4399e (patch)
tree04fdac8d1df4c027da4a0cd6f884328bcadb0004 /widget/src/helpers.rs
parente0c55cbb19a6362b6a86bf71031ecaa26d673e1b (diff)
downloadiced-22fbb9c2213892ae7981d5946b177a8846c4399e.tar.gz
iced-22fbb9c2213892ae7981d5946b177a8846c4399e.tar.bz2
iced-22fbb9c2213892ae7981d5946b177a8846c4399e.zip
Show `toggler` doc example in multiple places
Diffstat (limited to 'widget/src/helpers.rs')
-rw-r--r--widget/src/helpers.rs33
1 files changed, 32 insertions, 1 deletions
diff --git a/widget/src/helpers.rs b/widget/src/helpers.rs
index cf8c0520..ec4f2265 100644
--- a/widget/src/helpers.rs
+++ b/widget/src/helpers.rs
@@ -947,7 +947,38 @@ where
/// Creates a new [`Toggler`].
///
-/// [`Toggler`]: crate::Toggler
+/// Togglers let users make binary choices by toggling a switch.
+///
+/// # Example
+/// ```no_run
+/// # mod iced { pub mod widget { pub use iced_widget::*; } pub use iced_widget::Renderer; pub use iced_widget::core::*; }
+/// # pub type Element<'a, Message> = iced_widget::core::Element<'a, Message, iced_widget::Theme, iced_widget::Renderer>;
+/// #
+/// use iced::widget::toggler;
+///
+/// struct State {
+/// is_checked: bool,
+/// }
+///
+/// enum Message {
+/// TogglerToggled(bool),
+/// }
+///
+/// fn view(state: &State) -> Element<'_, Message> {
+/// toggler(state.is_checked)
+/// .label("Toggle me!")
+/// .on_toggle(Message::TogglerToggled)
+/// .into()
+/// }
+///
+/// fn update(state: &mut State, message: Message) {
+/// match message {
+/// Message::TogglerToggled(is_checked) => {
+/// state.is_checked = is_checked;
+/// }
+/// }
+/// }
+/// ```
pub fn toggler<'a, Message, Theme, Renderer>(
is_checked: bool,
) -> Toggler<'a, Message, Theme, Renderer>