protected override void Invoke(object parameter) { var targetColorKey = DoHide ? "Background3" : "Foreground1"; var targetColorBrush = (SolidColorBrush)AssociatedObject.TryFindResource(targetColorKey); var targetColor = targetColorBrush.Color; var scaleTransform = new ScaleTransform(DoHide ? 1.2 : 1.0, DoHide ? 1.2 : 1.0, Anchor.Position(AssociatedObject).X, Anchor.Position(AssociatedObject).Y); var rotateTransform = new RotateTransform(DoHide ? 90 : 0, Anchor.Position(AssociatedObject).X, Anchor.Position(AssociatedObject).Y); var group = new TransformGroup(); group.Children = new TransformCollection(new Transform[] { scaleTransform, rotateTransform }); AssociatedObject.RenderTransform = group; var existingBrush = AssociatedObject.Foreground as SolidColorBrush; var brush = new SolidColorBrush(existingBrush?.Color ?? Colors.White); AssociatedObject.Foreground = brush; var tweens = new List <Timeline>(); tweens.Add(brush.Tween(x => x.Color, ColorTween.ColorProgressFunction).To(targetColor).In(Duration)); tweens.Add(scaleTransform.Tween(x => x.ScaleX).To(DoHide ? 1.0 : 1.2).In(Duration).Ease(Easing.ExpoEaseOut)); tweens.Add(scaleTransform.Tween(x => x.ScaleY).To(DoHide ? 1.0 : 1.2).In(Duration).Ease(Easing.ExpoEaseOut)); tweens.Add(rotateTransform.Tween(x => x.Angle).To(DoHide ? 0 : 90).In(Duration).Ease(Easing.ExpoEaseOut)); var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(AssociatedObject); globalTweenHandler.Add(tweens.ToSequenceWithTarget(AssociatedObject)); }
protected override void Invoke(object parameter) { var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(TargetElement); var tweens = new List <Timeline>(); if (DoScale) { var scaleTransform = new ScaleTransform(1.0, 1.0, Anchor.Position(TargetElement).X, Anchor.Position(TargetElement).Y); tweens.Add(scaleTransform.Tween(x => x.ScaleX).To(TargetScaleX).In(Duration).Ease(Easing.QuadraticEaseInOut)); tweens.Add(scaleTransform.Tween(x => x.ScaleY).To(TargetScaleY).In(Duration).Ease(Easing.QuadraticEaseInOut)); if (DoLayoutTransform) { TargetElement.LayoutTransform = scaleTransform; } else { TargetElement.RenderTransform = scaleTransform; } } tweens.Add(TargetElement.Tween(x => x.Opacity).To(0).In(Duration)); globalTweenHandler.Add(tweens.ToSequenceWithTarget(TargetElement)); }
protected override void Invoke(object parameter) { var targetColorKey = "Foreground1HalfTransparency"; var targetColorBrush = (SolidColorBrush)AssociatedObject.TryFindResource(targetColorKey); var targetColor = targetColorBrush.Color; var scaleTransform = new ScaleTransform(0.9, 0.9, Anchor.Position(AssociatedObject).X, Anchor.Position(AssociatedObject).Y); AssociatedObject.RenderTransform = scaleTransform; var brush = new SolidColorBrush(Colors.White); AssociatedObject.Foreground = brush; var tweens = new List <Timeline>(); tweens.Add(brush.Tween(x => x.Color, ColorTween.ColorProgressFunction).To(targetColor).In(Duration)); tweens.Add(scaleTransform.Tween(x => x.ScaleX).To(1).In(Duration).Ease(Easing.ExpoEaseOut)); tweens.Add(scaleTransform.Tween(x => x.ScaleY).To(1).In(Duration).Ease(Easing.ExpoEaseOut)); var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(AssociatedObject); globalTweenHandler.Add(tweens.ToSequenceWithTarget(AssociatedObject)); }
protected override void Invoke(object parameter) { var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(TargetElement); var anchor = Anchor.Position(TargetElement); var scaleTransform = new ScaleTransform(1, 1, anchor.X, anchor.Y); globalTweenHandler.Add(scaleTransform.Tween(x => x.ScaleX).To(0.2).In(Duration).Ease(Easing.ExpoEaseInOut)); globalTweenHandler.Add(scaleTransform.Tween(x => x.ScaleY).To(0.7).In(Duration).Ease(Easing.ExpoEaseInOut)); globalTweenHandler.Add(TargetElement.Tween(x => x.Opacity).To(0).In(Duration).Ease(Easing.ExpoEaseInOut)); TargetElement.RenderTransform = scaleTransform; }
protected override void Invoke(object parameter) { var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(TargetElement); TargetElement.Opacity = 0; TargetElement.Visibility = Visibility.Visible; if (DoScale) { var tweens = new List <Timeline>(); var scaleTransform = new ScaleTransform(0.5, 1, Anchor.Position(TargetElement).X, Anchor.Position(TargetElement).Y); tweens.Add(scaleTransform.Tween(x => x.ScaleX).And(x => x.ScaleY).To(1.0).In(Duration).Ease(Easing.ExpoEaseOut)); TargetElement.RenderTransform = scaleTransform; tweens.Add(TargetElement.Tween(x => x.Opacity).To(1).In(Duration).Delay(Delay)); globalTweenHandler.Add(tweens.ToSequenceWithTarget(TargetElement)); } else { globalTweenHandler.Add(TargetElement.Tween(x => x.Opacity).To(1).In(Duration).Delay(Delay)); } if (DoCollapsingLayoutTransform) { var scaleTransform = new ScaleTransform(0, 1.0, Anchor.Position(TargetElement).X, Anchor.Position(TargetElement).Y); globalTweenHandler.Add(scaleTransform.Tween(x => x.ScaleX).To(1).In(Duration).Ease(Easing.ExpoEaseIn)); TargetElement.LayoutTransform = scaleTransform; } }
protected override void Invoke(object parameter) { var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(TargetElement); var tweens = new List <Timeline>(); if (DoScale) { var scaleTransform = new ScaleTransform(1.0, 1.0, Anchor.Position(TargetElement).X, Anchor.Position(TargetElement).Y); tweens.Add(scaleTransform.Tween(x => x.ScaleX).And(x => x.ScaleY).To(0.5).In(Duration).Ease(Easing.ExpoEaseIn)); TargetElement.RenderTransform = scaleTransform; } if (DoCollapsingLayoutTransform) { var scaleTransform = new ScaleTransform(1.0, 1.0, Anchor.Position(TargetElement).X, Anchor.Position(TargetElement).Y); tweens.Add(scaleTransform.Tween(x => x.ScaleX).To(0).In(Duration).Ease(Easing.ExpoEaseIn)); TargetElement.LayoutTransform = scaleTransform; } tweens.Add(TargetElement.Tween(x => x.Opacity).To(0).In(Duration)); globalTweenHandler.Add(tweens.ToSequenceWithTarget(TargetElement).OnComplete((sender, objects) => { TargetElement.Visibility = Visibility.Hidden; })); }
protected override void Invoke(object parameter) { var scaleTransform = new ScaleTransform(1.25, 1.25, Anchor.Position(AssociatedObject).X, Anchor.Position(AssociatedObject).Y); var rotateTransform = new RotateTransform(7, Anchor.Position(AssociatedObject).X, Anchor.Position(AssociatedObject).Y); var group = new TransformGroup(); group.Children = new TransformCollection(new Transform[] { scaleTransform, rotateTransform }); AssociatedObject.RenderTransform = group; var tweens = new List <Timeline>(); tweens.Add(scaleTransform.Tween(x => x.ScaleX).To(1.0).In(Duration).Ease(Easing.QuadraticEaseIn)); tweens.Add(scaleTransform.Tween(x => x.ScaleY).To(1.0).In(Duration).Ease(Easing.QuadraticEaseIn)); tweens.Add(rotateTransform.Tween(x => x.Angle).To(0).In(Duration).Ease(Easing.QuadraticEaseIn)); var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(AssociatedObject); globalTweenHandler.Add(tweens.ToSequenceWithTarget(AssociatedObject)); }
protected override void Invoke(object parameter) { var globalTweenHandler = App.GlobalTweenHandler; globalTweenHandler.ClearTweensOf(AssociatedObject); var scaleTransform = new ScaleTransform(0, 1.0, 0, 0); globalTweenHandler.Add(scaleTransform.Tween(x => x.ScaleX).To(1.0).In(2).Ease(Easing.QuadraticEaseInOut)); AssociatedObject.RenderTransform = scaleTransform; }