settings
Builds Badge SettingsRow SettingsSection Switch


The code that drew it
A still frame holds a repeating animation at its first frame and a one-shot at its last, because a still of a moving thing is not reproducible. Run the gallery to review motion.
fn settings(_window: &mut Window, cx: &mut App) -> AnyElement {
let theme = cx.theme().clone();
stack(&theme)
.w(px(620.0))
.child(
SettingsSection::new("scene.settings.general", "General")
.description("How this workspace behaves")
.row(
SettingsRow::new("scene.settings.general.autosave", "Save automatically")
.description("Write changes as they happen")
.control(
Switch::new("scene.settings.general.autosave.switch")
.named("Save automatically")
.on(true)
.on_change(|_, _, _| {}),
),
)
.row(
SettingsRow::new("scene.settings.general.runtime", "Native runtime")
.description("Runs work on this machine instead of a host")
.badge("Requires restart")
.control(
Switch::new("scene.settings.general.runtime.switch")
.named("Native runtime")
.on(false)
.on_change(|_, _, _| {}),
),
)
.row(
SettingsRow::new("scene.settings.general.telemetry", "Usage reporting")
.description("Nobody on this machine can change this")
.value("Off")
.managed("your administrator"),
),
)
.child(
SettingsSection::new("scene.settings.sync", "Synchronisation")
.description("What travels between machines")
.dimmed_by("This workspace is local, so nothing synchronises.")
.row(
SettingsRow::new("scene.settings.sync.settings", "Sync settings")
.value("Off")
.control(
Switch::new("scene.settings.sync.settings.switch")
.named("Sync settings")
.on(false)
.on_change(|_, _, _| {}),
),
)
.row(
SettingsRow::new("scene.settings.sync.history", "Sync history")
.value("Off")
.control(
Switch::new("scene.settings.sync.history.switch")
.named("Sync history")
.on(false)
.on_change(|_, _, _| {}),
),
),
)
.into_any_element()
}