protected override void OnMigrateFrom(RxAnimation previousAnimation) { //System.Diagnostics.Debug.Assert(previousAnimation != this); //System.Diagnostics.Debug.WriteLine($"Migrate StartValue from {StartValue} to {((RxDoubleAnimation)previousAnimation).TargetValue} (TargetValue={TargetValue})"); var previousDoubleAnimation = ((RxSimplePointAnimation)previousAnimation); StartPoint = previousDoubleAnimation.TargetPoint; if (!previousDoubleAnimation.IsCompleted()) { var duration = Duration ?? DefaultDuration; StartTime -= (long)(duration - duration * previousDoubleAnimation.Completion()); } base.OnMigrateFrom(previousAnimation); }
internal void MigrateFrom(RxAnimation previousAnimation) { OnMigrateFrom(previousAnimation); }
protected virtual void OnMigrateFrom(RxAnimation previousAnimation) { }
public Animatable(object key, RxAnimation animation, Action <RxAnimation> action) { Key = key ?? throw new ArgumentNullException(nameof(key)); Animation = animation ?? throw new ArgumentNullException(nameof(animation)); _animateAction = action ?? throw new ArgumentNullException(nameof(action)); }