diff options
author | 2022-05-27 01:26:57 +0200 | |
---|---|---|
committer | 2022-05-27 01:29:36 +0200 | |
commit | 28d09bfff1dde55190986bab10d7aaeb0ceb49de (patch) | |
tree | df38cec7242de571d94378cd736a05bc82a622c2 /pure | |
parent | d988d813d77bc23147a179586206048e6cc42157 (diff) | |
download | iced-28d09bfff1dde55190986bab10d7aaeb0ceb49de.tar.gz iced-28d09bfff1dde55190986bab10d7aaeb0ceb49de.tar.bz2 iced-28d09bfff1dde55190986bab10d7aaeb0ceb49de.zip |
Implement theme styling for `Radio`
Diffstat (limited to '')
-rw-r--r-- | pure/src/helpers.rs | 5 | ||||
-rw-r--r-- | pure/src/widget/radio.rs | 9 |
2 files changed, 8 insertions, 6 deletions
diff --git a/pure/src/helpers.rs b/pure/src/helpers.rs index d8741b09..159256ed 100644 --- a/pure/src/helpers.rs +++ b/pure/src/helpers.rs @@ -100,15 +100,16 @@ where /// Creates a new [`Radio`]. /// /// [`Radio`]: widget::Radio -pub fn radio<'a, Message, Renderer, V>( +pub fn radio<Message, Renderer, V>( label: impl Into<String>, value: V, selected: Option<V>, on_click: impl FnOnce(V) -> Message, -) -> widget::Radio<'a, Message, Renderer> +) -> widget::Radio<Message, Renderer> where Message: Clone, Renderer: iced_native::text::Renderer, + Renderer::Theme: widget::radio::StyleSheet, V: Copy + Eq, { widget::Radio::new(value, label, selected, on_click) diff --git a/pure/src/widget/radio.rs b/pure/src/widget/radio.rs index c92c8dbc..9a8885e0 100644 --- a/pure/src/widget/radio.rs +++ b/pure/src/widget/radio.rs @@ -9,13 +9,13 @@ use iced_native::renderer; use iced_native::text; use iced_native::{Clipboard, Length, Point, Rectangle, Shell}; -pub use iced_native::widget::radio::{Radio, Style, StyleSheet}; +pub use iced_native::widget::radio::{Appearance, Radio, StyleSheet}; -impl<'a, Message, Renderer> Widget<Message, Renderer> - for Radio<'a, Message, Renderer> +impl<Message, Renderer> Widget<Message, Renderer> for Radio<Message, Renderer> where Message: Clone, Renderer: text::Renderer, + Renderer::Theme: StyleSheet, { fn width(&self) -> Length { <Self as iced_native::Widget<Message, Renderer>>::width(self) @@ -96,10 +96,11 @@ where } impl<'a, Message, Renderer> Into<Element<'a, Message, Renderer>> - for Radio<'a, Message, Renderer> + for Radio<Message, Renderer> where Message: 'a + Clone, Renderer: text::Renderer + 'a, + Renderer::Theme: StyleSheet, { fn into(self) -> Element<'a, Message, Renderer> { Element::new(self) |