[−][src]Struct coffee::ui::widget::radio::Radio
A circular button representing a choice.
It implements Widget
when the core::Renderer
implements the
radio::Renderer
trait.
Example
use coffee::graphics::Color; use coffee::ui::{Column, Radio}; #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum Choice { A, B, } #[derive(Debug, Clone, Copy)] pub enum Message { RadioSelected(Choice), } let selected_choice = Some(Choice::A); Column::new() .spacing(20) .push( Radio::new(Choice::A, "This is A", selected_choice, Message::RadioSelected) .label_color(Color::BLACK), ) .push( Radio::new(Choice::B, "This is B", selected_choice, Message::RadioSelected) .label_color(Color::BLACK), );
Methods
impl<Message> Radio<Message>
[src]
pub fn new<F, V>(value: V, label: &str, selected: Option<V>, f: F) -> Self where
V: Eq + Copy,
F: 'static + Fn(V) -> Message,
[src]
V: Eq + Copy,
F: 'static + Fn(V) -> Message,
Creates a new Radio
button.
It expects:
pub fn label_color(self, color: Color) -> Self
[src]
Trait Implementations
impl<Message, Renderer> Widget<Message, Renderer> for Radio<Message> where
Renderer: Renderer + Renderer,
Message: Copy + Debug,
[src]
Renderer: Renderer + Renderer,
Message: Copy + Debug,
fn node(&self, renderer: &Renderer) -> Node
[src]
fn on_event(
&mut self,
event: Event,
layout: Layout,
cursor_position: Point,
messages: &mut Vec<Message>
)
[src]
&mut self,
event: Event,
layout: Layout,
cursor_position: Point,
messages: &mut Vec<Message>
)
fn draw(
&self,
renderer: &mut Renderer,
layout: Layout,
cursor_position: Point
) -> MouseCursor
[src]
&self,
renderer: &mut Renderer,
layout: Layout,
cursor_position: Point
) -> MouseCursor
fn hash(&self, state: &mut Hasher)
[src]
impl<'a, Message, Renderer> From<Radio<Message>> for Element<'a, Message, Renderer> where
Renderer: Renderer + Renderer,
Message: 'static + Copy + Debug,
[src]
Renderer: Renderer + Renderer,
Message: 'static + Copy + Debug,
impl<Message> Debug for Radio<Message> where
Message: Debug,
[src]
Message: Debug,
Auto Trait Implementations
impl<Message> Send for Radio<Message> where
Message: Send,
Message: Send,
impl<Message> Unpin for Radio<Message> where
Message: Unpin,
Message: Unpin,
impl<Message> Sync for Radio<Message> where
Message: Sync,
Message: Sync,
impl<Message> UnwindSafe for Radio<Message> where
Message: UnwindSafe,
Message: UnwindSafe,
impl<Message> RefUnwindSafe for Radio<Message> where
Message: RefUnwindSafe,
Message: RefUnwindSafe,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,
fn vzip(self) -> V
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
Sets value
as a parameter of self
.
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,