ferroui-base 0.3.0

The base library of FerroUI: the property system, layout, input, styling, media, text, animation, data binding and the compositor
Documentation
//! Animations and transitions.

pub mod animators;
pub mod easings;

mod animatable;
mod animation;
mod animation_animator_registry;
mod animation_instance;
mod animation_task;
mod animator_driven_transition;
mod animator_key_frame;
mod animator_transition_observable;
mod cancellation;
mod clock;
mod clock_base;
mod composite_page_transition;
mod cross_fade;
mod cue;
mod dispose_animation_instance_subject;
mod fill_mode;
mod i_animation;
mod i_animation_setter;
mod i_animator;
mod i_clock;
mod i_custom_animator;
mod i_global_clock;
mod i_page_transition;
mod i_progress_page_transition;
mod i_transition;
mod interpolating_transition_base;
mod iteration_count;
mod key_frame;
mod key_frames;
mod key_spline;
mod page_slide;
mod page_transition_item;
mod play_state;
mod playback_behavior;
mod playback_direction;
mod spring;
mod time_span;
mod transition;
mod transition_base;
mod transition_instance;
mod transition_observable_base;
mod transitions;
mod transitions_collection;
mod utils;

pub use animatable::Animatable;
pub use animation::Animation;
pub use animation_instance::AnimationError;
pub(crate) use animation_instance::AnimationInstance;
pub use animation_task::AnimationTask;
pub use animator_driven_transition::AnimatorDrivenTransition;
pub use animator_key_frame::{AnimatorFactory, AnimatorKeyFrame};
pub use animator_transition_observable::AnimatorTransitionObservable;
pub use clock::Clock;
pub use clock_base::ClockBase;
pub use composite_page_transition::CompositePageTransition;
pub use cross_fade::CrossFade;
pub use cue::Cue;
pub(crate) use dispose_animation_instance_subject::DisposeAnimationInstanceSubject;
pub use fill_mode::FillMode;
pub use i_animation::IAnimation;
pub use i_animation_setter::IAnimationSetter;
pub use i_animator::IAnimator;
pub use i_clock::IClock;
pub use i_custom_animator::{ICustomAnimator, InterpolatingAnimator};
pub use i_global_clock::IGlobalClock;
pub use i_page_transition::IPageTransition;
#[cfg(test)]
pub(crate) use i_page_transition::{start_async as start_page_transition, when_all as when_all_animations};
pub use i_progress_page_transition::IProgressPageTransition;
pub use i_transition::ITransition;
pub use interpolating_transition_base::{interpolating_do_transition, InterpolatingTransitionBase};
pub use iteration_count::{IterationCount, IterationType};
pub use key_frame::KeyFrame;
pub use key_frames::KeyFrames;
pub use key_spline::{KeySpline, KeySplineSolver};
pub use page_slide::{PageSlide, SlideAxis};
pub use page_transition_item::PageTransitionItem;
pub use play_state::PlayState;
pub use playback_behavior::PlaybackBehavior;
pub use playback_direction::PlaybackDirection;
pub use spring::Spring;
pub use time_span::TimeSpan;
pub use transition::{apply_transition, Transition};
pub use transition_base::{TransitionBase, TransitionBaseImpl, TransitionBaseImplExt, TransitionBaseVTable};
pub use transition_instance::TransitionInstance;
pub use transition_observable_base::TransitionObservableBase;
pub use transitions_collection::Transitions;
pub use transitions::*;

#[cfg(test)]
mod tests;