Import
use maccn::{MacCheckbox, MacCheckboxState};Usage
MacCheckbox::new("agree")
.checked(true)
.on_change(|state, _, _, _| {
println!("State: {:?}", state);
})
.child("I agree");States
use gpui::div;
use maccn::{MacCheckbox, MacCheckboxState};
div()
.flex()
.flex_col()
.gap_2()
.child(MacCheckbox::new("check-unchecked").child("Unchecked"))
.child(MacCheckbox::new("check-checked").checked(true).child("Checked"))
.child(
MacCheckbox::new("check-mixed")
.indeterminate(true)
.child("Indeterminate"),
)Sizes
use gpui::div;
use maccn::{MacCheckbox, MacControlSize};
div()
.flex()
.items_center()
.gap_2()
.child(
MacCheckbox::new("check-xl")
.size(MacControlSize::ExtraLarge)
.checked(true)
.child("XL"),
)
.child(
MacCheckbox::new("check-l")
.size(MacControlSize::Large)
.checked(true)
.child("L"),
)
.child(MacCheckbox::new("check-r").checked(true).child("R"))
.child(
MacCheckbox::new("check-s")
.size(MacControlSize::Small)
.checked(true)
.child("S"),
)
.child(
MacCheckbox::new("check-m")
.size(MacControlSize::Mini)
.checked(true)
.child("M"),
)Disabled
use gpui::div;
use maccn::MacCheckbox;
div()
.flex()
.flex_col()
.gap_2()
.child(MacCheckbox::new("check-d1").disabled(true).child("Disabled"))
.child(
MacCheckbox::new("check-d2")
.checked(true)
.disabled(true)
.child("Disabled checked"),
)API
Props
| Prop | Type | Default |
|---|---|---|
size | MacControlSize | Regular |
checked | bool | false |
indeterminate | bool | false |
disabled | bool | false |
State
| Method | Description |
|---|---|
state(MacCheckboxState) | Sets the checkbox to any of the states. |
checked(bool) | Shortcut for Checked / Unchecked. |
indeterminate(bool) | Sets the mixed state when true. |
Events
| Event | Payload |
|---|---|
on_change | (MacCheckboxState, &ClickEvent, &mut Window, &mut App) |