public static async Task ClickAnimation(this VisualElement view, uint duration = 200) { try { await view.FadeTo(0.5, duration); await view.FadeTo(1, duration); } catch (Exception) { //TODO fix this } }
private static async Task AnimateCalendarEnd(VisualElement calendar) { var originalX = calendar.AnchorX; await calendar.TranslateTo(originalX, calendar.AnchorY, 250, Easing.Linear); await calendar.FadeTo(1, 500, Easing.Linear); }
private static async void GlowAnimation(VisualElement element, CancellationToken cancellation) { while (!cancellation.IsCancellationRequested) { await Task.Delay(200); await element.FadeTo(.7, 100); await element.ScaleTo(1); await Task.Delay(200); await element.FadeTo(1, 250); await element.ScaleTo(1.1); } }
protected Task FadeTo(double opacity, uint lenght = 250, Easing easing = null) { if (CheckAnimAlowed()) { return(target.FadeTo(opacity, lenght, easing)); } return(null); }
public static Task <bool> ColorTo(this VisualElement self, Action <bool> callback, uint length = 250, Easing easing = null) { //Func<double, bool> transform = (t) => self.IsVisible = !self.IsVisible; //return ColorAnimation(self, "FadeTo", transform, callback, length, easing); self.Opacity = 0; return(self.FadeTo(1, 1000)); }
private static async Task AnimateCalendarStart(bool forwards, VisualElement calendar) { var originalX = calendar.AnchorX; var offsetX = forwards ? 100 : -100; await Task.WhenAll( calendar.FadeTo(0, 250, Easing.Linear), calendar.TranslateTo(originalX - offsetX, calendar.AnchorY, 250, Easing.Linear)); }
private static void DoIsVisibleAnimation(VisualElement view, bool isVisible) { ViewExtensions.CancelAnimations(view); Easing easing = !string.IsNullOrEmpty(GetAnimatedIsVisibleAnimationEasing(view)) ? GetAnimatedIsVisibleAnimationEasing(view).ToEasing() : null; view.FadeTo(isVisible ? 1 : 0, GetAnimatedIsVisibleAnimationLength(view), easing); }
private void AnimateCloseButton(VisualElement element, bool entering) { var startTranslation = entering ? 100 : 0; var endTranslation = entering ? 0 : 100; var translationEasing = entering ? Easing.SinInOut : Easing.SinIn; var startOpacity = entering ? 0 : 1; var endOpacity = entering ? 1 : 0; var startRotation = entering ? -90 : 0; var endRotation = entering ? 0 : 180; element.TranslationY = startTranslation; element.Opacity = startOpacity; element.Rotation = startRotation; element.FadeTo(endOpacity, 400); element.RotateTo(endRotation, 700, Easing.SinInOut); element.TranslateTo(0, endTranslation, 600, translationEasing); }
private void AnimateCloseButton(VisualElement elementToTransform, bool entering) { var startingTranslation = entering ? 100 : 0; var endingTranslation = entering ? 0 : 100; var translationEasing = entering ? Easing.SpringOut : Easing.SinIn; var startingOpacity = entering ? 0 : 1; var endingOpacity = entering ? 1 : 0; var startingRotation = entering ? -90 : 0; var endingRotation = entering ? 0 : 180; elementToTransform.TranslationY = startingTranslation; elementToTransform.Opacity = startingOpacity; elementToTransform.Rotation = startingRotation; elementToTransform.FadeTo(endingOpacity, 500); elementToTransform.RotateTo(endingRotation, 700, Easing.SinInOut); elementToTransform.TranslateTo(0, endingTranslation, 600, translationEasing); }
public static async Task FadeOut(this VisualElement element, uint duration = 400, Easing easing = null) { await element.FadeTo(0, duration, easing); element.IsVisible = false; }