Function silkenweb::animation::finite_animation
source · pub fn finite_animation(
duration_millis: f64
) -> impl Signal<Item = Option<f64>> + 'static
Expand description
Provide a finite time signal for animations.
The signal will tick each frame until duration_millis
has elapsed. The
value will never exceed duration_millis
and the last value will be
None
, unless the signal is dropped first.
§Example
Slowly filling a progress bar:
const DURATION: f64 = 3000.0;
progress().max(DURATION as f32).value(Sig(
finite_animation(DURATION).map(|time| time.unwrap_or(DURATION) as f32)
));
See module-level documentation for more details.