Skip to main content

Checkbox

Struct Checkbox 

Source
pub struct Checkbox<Msg> { /* private fields */ }
Expand description

A box that is checked or not, with an optional label.

The default box is two cells of solid colour that blend from the empty tone to the filled tone over the theme’s motion.step times three when it changes; with reduced motion the change is immediate. A partly checked box (a parent of some checked items) fills its left cell. CheckboxStyle::Check draws the older three-cell box with a check or a dash. Enter, Space or a click on the box or the label toggles it. The application owns the state.

Style keys: checkbox (bg, fg) with states hover, focus, checked, disabled and variant partial (check style); checkbox-label (fg, bold) with the same states.

Implementations§

Source§

impl<Msg> Checkbox<Msg>

Source

pub fn new(checked: bool) -> Self

A checkbox showing checked.

Source

pub fn label(self, label: impl Into<String>) -> Self

Text after the box; clicking it toggles too.

Source

pub fn partial(self, partial: bool) -> Self

Shows the box partly checked. Toggling a partly checked box asks for true.

Source

pub fn style(self, style: CheckboxStyle) -> Self

Chooses how the box looks.

Source

pub fn disabled(self, disabled: bool) -> Self

Greys the checkbox out; it cannot be focused or toggled.

Source

pub fn on_toggle(self, message: impl Fn(bool) -> Msg + 'static) -> Self

Message for the new state when the checkbox is toggled.

Trait Implementations§

Source§

impl<Msg: 'static> Widget<Msg> for Checkbox<Msg>

Source§

fn measure(&self, _cx: &mut MeasureCx<'_>, available: Size) -> Size

The size the widget wants when it may use up to available.
Source§

fn paint(&self, cx: &mut PaintCx<'_>, area: Rect)

Draws the widget into area.
Source§

fn event(&self, cx: &mut EventCx<'_, Msg>, event: &Event) -> bool

Handles input. Returns true when the event was used; unused key and scroll events bubble to the parent widget.
Source§

fn focusable(&self) -> bool

Whether the widget can take keyboard focus.
Source§

fn paint_overlay(&self, _cx: &mut PaintCx<'_>, _anchor: Rect)

Draws the widget’s overlay after the whole view was painted, when it asked for one with PaintCx::request_overlay. anchor is the area the widget was painted in.
Source§

fn children(&self) -> &[Node<Msg>]

Child nodes, for widgets that contain other widgets.
Source§

fn children_mut(&mut self) -> &mut [Node<Msg>]

Mutable child nodes, used to assign ids.

Auto Trait Implementations§

§

impl<Msg> !RefUnwindSafe for Checkbox<Msg>

§

impl<Msg> !Send for Checkbox<Msg>

§

impl<Msg> !Sync for Checkbox<Msg>

§

impl<Msg> !UnwindSafe for Checkbox<Msg>

§

impl<Msg> Freeze for Checkbox<Msg>
where Option<Box<dyn Fn(bool) -> Msg>>: Freeze,

§

impl<Msg> Unpin for Checkbox<Msg>
where Option<Box<dyn Fn(bool) -> Msg>>: Unpin,

§

impl<Msg> UnsafeUnpin for Checkbox<Msg>
where Option<Box<dyn Fn(bool) -> Msg>>: UnsafeUnpin,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.