Skip to main content

AnimSpec

Struct AnimSpec 

Source
pub struct AnimSpec {
    pub duration_ms: u32,
    pub delay_ms: u32,
    pub curve: Curve,
    pub repeat: u32,
    pub autoreverse: bool,
}
Expand description

Animation intent (§8.4). Native-widget backends map it onto their own animator (Core Animation, ViewPropertyAnimator, XAML Composition, OH_ArkUI_AnimateTo, …); the canvas/self-driven path samples curve via Curve::fraction. Threaded through Toolkit::update/set_frame/ set_opacity/set_transform.

Fields§

§duration_ms: u32§delay_ms: u32§curve: Curve§repeat: u32

Repeat count beyond the first play (0 = play once); u32::MAX = repeat forever.

§autoreverse: bool

Implementations§

Source§

impl AnimSpec

Source

pub fn spring(response: f64, damping: f64) -> AnimSpec

A smooth spring: response = settling period (s), damping = ratio (1.0 = no bounce, <1 bouncy). duration_ms is a nominal cap for backends that need a duration; spring backends use response/damping directly.

Source

pub fn linear(duration_ms: u32) -> AnimSpec

Source

pub fn ease_in(duration_ms: u32) -> AnimSpec

Source

pub fn ease_out(duration_ms: u32) -> AnimSpec

Source

pub fn ease_in_out(duration_ms: u32) -> AnimSpec

Source

pub fn delay(self, ms: u32) -> AnimSpec

Delay before the animation starts (builder).

Source

pub fn repeat(self, count: u32, autoreverse: bool) -> AnimSpec

Repeat count extra times (builder); autoreverse ping-pongs each cycle.

Source

pub fn repeat_forever(self, autoreverse: bool) -> AnimSpec

Repeat forever (builder) — e.g. a pulsing indicator.

Source

pub fn duration_secs(&self) -> f64

Source

pub fn delay_secs(&self) -> f64

Trait Implementations§

Source§

impl Clone for AnimSpec

Source§

fn clone(&self) -> AnimSpec

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AnimSpec

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Default for AnimSpec

Source§

fn default() -> AnimSpec

The default feel: a smooth spring (SwiftUI’s modern default).

Source§

impl PartialEq for AnimSpec

Source§

fn eq(&self, other: &AnimSpec) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for AnimSpec

Source§

impl StructuralPartialEq for AnimSpec

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> AnyEq for T
where T: Any + PartialEq,

§

fn equals(&self, other: &(dyn Any + 'static)) -> bool

§

fn as_any(&self) -> &(dyn Any + 'static)

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoReactive<T, StaticMark> for T
where T: Clone + 'static,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> ErasedDestructor for T
where T: 'static,

Day API ↩ Guides· daybrite.dev