/// <summary> /// Core update routine. /// </summary> /// <param name="context">The context that holds information about the animation.</param> protected override void UpdateAnimationOverride(AnimationContext context) { if (context == null) { return; } this.continuumElement = RadContinuumAnimation.GetContinuumElement(context.Target); if (this.continuumElement == null) { return; } // TODO UNO //if (!(this.continuumElement is TextBlock)) //{ // TextBlock textBlock = ElementTreeHelper.FindVisualDescendant<TextBlock>(this.continuumElement); // if (textBlock != null) // { // this.continuumElement = textBlock; // } //} /////context.Storyboard.Duration = new Duration(TimeSpan.FromMilliseconds(500)); this.headerElement = RadContinuumAnimation.GetHeaderElement(context.Target); if (this.headerElement != null) { this.headerElementScreenShotInfo = new ElementScreenShotInfo(this.headerElement); this.headerElementScreenShotInfo.Popup.IsOpen = true; } this.continuumElementScreenShotInfo = new ElementScreenShotInfo(this.continuumElement); this.continuumElementScreenShotInfo.Popup.IsOpen = true; this.ApplyPageAnimation(); this.ApplyContinuumElementAnimation(); if (this.headerElement != null) { this.ApplyPageHeaderAnimation(); } base.UpdateAnimationOverride(context); }
/// <summary> /// Creates a new instance of this animation that is the reverse of this instance. /// </summary> /// <returns>A new instance of this animation that is the reverse of this instance.</returns> public override RadAnimation CreateOpposite() { RadContinuumAnimation opposite = base.CreateOpposite() as RadContinuumAnimation; return(opposite); }