CheckboxGroup
Coordinates a bounded set of checkbox values and an optional derived parent checkbox.
Loading interactive demo…
let group = CheckboxGroup::new("colors", &state);
group.root().flex_col().gap(8.0)#Import
Import CheckboxGroup from quickgui.
use quickgui::*;#Usage
let group = CheckboxGroup::new("colors", &state);
group.root().flex_col().gap(8.0)#Anatomy
CheckboxGroup::root
#API reference
Expand an entry for its description and complete signature. A dash means no declaration default is documented.
CheckboxGroup
View sourcepub fn new(root_id: impl Into<ElementId>, state: &'a CheckboxGroupState) -> Selfroot_idpub const fn root_id(self) -> ElementId—
statepub const fn state(self) -> &'a CheckboxGroupState—
checkbox_idpub fn checkbox_id(self, value: impl Into<ElementId>) -> ElementId—
Configures checkbox id for this part.
pub fn checkbox_id(self, value: impl Into<ElementId>) -> ElementIdView sourceparent_idpub fn parent_id(self) -> ElementId—
on_checkbox_clickpub fn on_checkbox_click<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, value: impl Into<ElementId>, access: fn(&mut V) -> &mut CheckboxGroupState, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,—
Build the click behavior for one item, reporting the whole new value set. Attach the returned handle with [`crate::Element::on_click`].
pub fn on_checkbox_click<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, value: impl Into<ElementId>, access: fn(&mut V) -> &mut CheckboxGroupState, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,View sourceon_checkbox_click_withpub fn on_checkbox_click_with<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, value: impl Into<ElementId>, access: StateAccessor<V, CheckboxGroupState>, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,—
Build one item's click behavior against a per-instance state accessor.
pub fn on_checkbox_click_with<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, value: impl Into<ElementId>, access: StateAccessor<V, CheckboxGroupState>, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,View sourceon_parent_clickpub fn on_parent_click<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, access: fn(&mut V) -> &mut CheckboxGroupState, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,—
Build the parent checkbox's click behavior, reporting the whole new value set.
pub fn on_parent_click<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, access: fn(&mut V) -> &mut CheckboxGroupState, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,View sourceon_parent_click_withpub fn on_parent_click_with<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, access: StateAccessor<V, CheckboxGroupState>, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,—
Build the parent checkbox's click behavior against a per-instance state accessor.
pub fn on_parent_click_with<V: 'static, Change>( self, cx: &mut ViewContext<'_, V>, access: StateAccessor<V, CheckboxGroupState>, on_value_change: Change, ) -> ClickListener<V> where Change: Fn(&mut V, &[ElementId], &mut EventContext) + 'static,View sourceCheckboxGroup::root_with
View sourcepub fn root_with(self, root: Element) -> ElementDecorate an application-owned group root without adding layout or appearance. Pair it with a [`crate::Field`] label, or with [`crate::Element::accessibility_labelled_by`], to name the group.
CheckboxGroup::root
View sourcepub fn root(self) -> ElementCreate the unstyled root part. Use [`Self::root_with`] to supply an existing element.
CheckboxGroup::checkbox_with
View sourcepub fn checkbox_with(self, value: impl Into<ElementId>, checkbox: Element) -> ElementDecorate one application-owned checkbox for `value`. The part reuses the existing [`Checkbox`] descriptor, so the checkbox role, exact on/off/mixed semantics, click behavior, and desktop pointer contract are identical to a standalone checkbox. A disabled group disables every item.
CheckboxGroup::checkbox
View sourcepub fn checkbox(self, value: impl Into<ElementId>) -> ElementCreate the unstyled checkbox part. Use [`Self::checkbox_with`] to supply an existing element.
CheckboxGroup::indicator_with
View sourcepub fn indicator_with(self, indicator: Element) -> ElementHide an application-owned indicator inside one item from the accessible name.
CheckboxGroup::indicator
View sourcepub fn indicator(self) -> ElementCreate the unstyled indicator part. Use [`Self::indicator_with`] to supply an existing element.
CheckboxGroup::parent_with
View sourcepub fn parent_with(self, parent: Element) -> ElementDecorate the application-owned parent checkbox. Its checked state is derived: on when every declared value is checked, mixed when only some are, and off when none are. QuickGUI retains no separate parent value, so the parent can never disagree with its children.
CheckboxGroup::parent
View sourcepub fn parent(self) -> ElementCreate the unstyled parent part. Use [`Self::parent_with`] to supply an existing element.
