use crate::config::schema::{Pref, PrefKind, SchemaSection, WidgetHint};
const PREFS: &[Pref] = &[
Pref {
key: "animation.veil_divisor",
display_name: "Veil animation divisor",
description: Some(
"How often animated veils tick, as a fraction of the master frame rate. 1 = every frame, 2 = every other, 4 = every fourth.",
),
kind: PrefKind::Int { min: 1, max: 16 },
widget: WidgetHint::Auto,
},
Pref {
key: "animation.overlay_divisor",
display_name: "Overlay animation divisor",
description: Some("Divisor for marching-ants selection overlays."),
kind: PrefKind::Int { min: 1, max: 16 },
widget: WidgetHint::Auto,
},
Pref {
key: "animation.void_divisor",
display_name: "Void animation divisor",
description: Some(
"How often animated void layers re-render, as a fraction of the master frame rate. \
Voids piggyback on the same clock as veils so ticks line up.",
),
kind: PrefKind::Int { min: 1, max: 16 },
widget: WidgetHint::Auto,
},
];
pub fn register() -> SchemaSection {
SchemaSection {
id: "animation",
display_name: "Animation",
description: Some("Tick rates for animated overlays and veils."),
icon: Some("fa6-solid:stopwatch"),
order: 60,
prefs: PREFS,
}
}