private void SetupXamarinViewPager(TransitionEffect effect) { mXvp = FindViewById <XamarinViewPager.XamarinViewPager>(Resource.Id.jazzy_pager); mXvp.TransitionEffect = effect; mXvp.Adapter = new MainAdapter(this, mXvp); mXvp.PageMargin = 30; }
protected override void Init(Controllers.UiController controller, object binding, DefinitionFile definition) { base.Init(controller, binding, definition); DefinitionFileWithStyle file = new DefinitionFileWithStyle(definition, typeof(TransformGroup)); _reverse = DefinitionResolver.Get <bool>(controller, binding, file["Reverse"], false); List <DefinitionFile> drawableFiles = file["Drawables"] as List <DefinitionFile>; if (drawableFiles != null) { foreach (var def in drawableFiles) { ButtonDrawable drawable = def.CreateInstance(controller, binding) as ButtonDrawable; if (drawable != null) { _drawables.Add(drawable); } } } _transitionPushed = (file["TransitionEffect"] as DefinitionFile).CreateInstance(controller, binding) as TransitionEffect; }
/// <summary> /// Reverses the direction. /// </summary> /// <param name="transitionEffect">The transition effect.</param> private void ReverseDirection(TransitionEffect transitionEffect) { var circleRevealTransitionEffect = transitionEffect as CircleRevealTransitionEffect; if (circleRevealTransitionEffect != null) { circleRevealTransitionEffect.Reverse = true; return; } var slideInTransitionEffect = transitionEffect as SlideInTransitionEffect; if (slideInTransitionEffect != null) { if (slideInTransitionEffect.SlideDirection == SlideDirection.RightToLeft) { slideInTransitionEffect.SlideDirection = SlideDirection.LeftToRight; } return; } var wipeTransitionEffect = transitionEffect as WipeTransitionEffect; if (wipeTransitionEffect != null) { if (wipeTransitionEffect.WipeDirection == WipeDirection.RightToLeft) { wipeTransitionEffect.WipeDirection = WipeDirection.LeftToRight; } } }
/// <summary> /// Returns the <see cref="Style"/> to apply to the content during the transition. /// </summary> /// <param name="presenter">The <see cref="TransitionPresenter"/> that is managing the transition.</param> /// <param name="previousElement">The previous element.</param> /// <returns> /// The <see cref="Style"/> to apply to the "to" content during the transition. /// </returns> private Style GetCoreContentStyle(TransitionPresenter presenter, FrameworkElement previousElement) { TransitionEffect effect = this.Effect; if (null == effect) { return(null); } effect = effect.Clone() as TransitionEffect; if (null == effect) { return(null); } if (null != previousElement && 0 != previousElement.ActualHeight && 0 != previousElement.ActualWidth) { VisualBrush visualBrush = new VisualBrush(previousElement); visualBrush.Viewbox = new Rect(0, 0, previousElement.ActualWidth, previousElement.ActualHeight); visualBrush.ViewboxUnits = BrushMappingMode.Absolute; effect.OldImage = visualBrush; } else { effect.OldImage = new VisualBrush(); } Style style = new Style(typeof(FrameworkElement)); style.Setters.Add(new Setter(FrameworkElement.EffectProperty, effect)); return(style); }
public virtual void PopState() { if (states.Count > 0) { T current = states[states.Count - 1]; T next = default(T); if (states.Count > 1) { next = states[states.Count - 2]; next.State = ScreenState.Active; } leaveTransition = current.LeaveTransition; if (leaveTransition != null) { leaveTransition.Init(current, next); } else { leaveTransition = new EmptyTransition(); } current.IsExiting = true; current.State = ScreenState.TransitionOff; // ollaan häivyttämässä this.current = current; this.next = next; current.HasFocus = false; // viiminen ruutu if (next != null) { next.HasFocus = false; } } }
/// <summary> /// Applies a random transition effect between current and next slide show images /// </summary> private void ApplyTransitionEffect() { DoubleAnimation da = new DoubleAnimation(0.0, 1.0, new Duration(TimeSpan.FromMilliseconds(totalAnimationPeriod / 5)), FillBehavior.HoldEnd); da.AccelerationRatio = 0.5; da.DecelerationRatio = 0.5; da.Completed += new EventHandler(this.TransitionCompleted); // Force the frame rate to animFrameRate instead of WPF's default value of 60fps. // this will reduce the CPU load on low-end machines, and will conserve battery for portable devices. Timeline.SetDesiredFrameRate(da, animFrameRate); VisualBrush vb = new VisualBrush(this._oldChild); vb.Viewbox = new Rect(0, 0, this._oldChild.ActualWidth, this._oldChild.ActualHeight); vb.ViewboxUnits = BrushMappingMode.Absolute; this._oldChild.Width = this._oldChild.ActualWidth; this._oldChild.Height = this._oldChild.ActualHeight; this._oldChild.Measure(new Size(this._oldChild.ActualWidth, this._oldChild.ActualHeight)); this._oldChild.Arrange(new Rect(0, 0, this._oldChild.ActualWidth, this._oldChild.ActualHeight)); TransitionEffect transitionEffect = GetRandomTransitionEffect(); transitionEffect.OldImage = vb; this._currentChild.Effect = transitionEffect; transitionEffect.BeginAnimation(TransitionEffect.ProgressProperty, da, HandoffBehavior.SnapshotAndReplace); }
private void DangNhap() { NguoiDungDTO nd = new NguoiDungDTO(); string pass = "", username = "", phanquyen = "", hinhanh = ""; username = txtTaiKhoan.Text; if (NguoiDungBUS.DangNhap(username).Rows.Count > 0) { foreach (DataRow row in NguoiDungBUS.DangNhap(username).Rows) { pass = row["Password"].ToString(); phanquyen = row["MaPQ"].ToString(); hinhanh = row["HinhAnh"].ToString(); } if (ch == true && txtMatKhau.Password != pass) { if (txtMatKhau.Password != "") { tbThongbao.Text = "※Sai mật khẩu※"; dispatcherTimer.Start(); } } if (ch == false && txtTaiKhoan.Text == username) { TransitioningContent transitioningContent = new TransitioningContent(); TransitionEffect effect = new TransitionEffect(); effect.Kind = TransitionEffectKind.ExpandIn; transitioningContent.OpeningEffect = effect; object avatarContent; ell.Height = 150; ell.Width = 150; ell.Stroke = Brushes.Transparent; ell.StrokeThickness = 1; ell.Fill = new ImageBrush(new BitmapImage(new Uri(@"..\..\Resources\Images\Avatar\" + hinhanh, UriKind.RelativeOrAbsolute))); avatarContent = ell; transitioningContent.Content = avatarContent; avatarContentControl.Content = transitioningContent; ch = true; transitionerField.SelectedIndex = 1; FocusManager.SetFocusedElement(gridSumary, txtMatKhau); } if (ch == true && txtMatKhau.Password == pass) { Account = username; Avatar = hinhanh; MainWindow mainWindow = new MainWindow(); mainWindow.Show(); this.Close(); } } else { if (txtTaiKhoan.Text != "") { tbThongbao.Text = "※Tài khoản không tồn tại※"; dispatcherTimer.Start(); } } }
// Vaihtaa transitionin ja päivittää isFinishedin statea. private void ChangeTransition() { if (!isFinished) { // Otetaan tässä lohkossa eka mahdollinen transitioni. // Ottaa outTransitionin jossei se ole null ja vise versa. if (currentTransition == null) { if (outTransition != null) { currentTransition = outTransition; } else { // Ammutaan out transitionin finished event suoraan. LaunchOutFinished(); currentTransition = inTransition; } } else { if (currentTransition == outTransition) { LaunchOutFinished(); if (inTransition != null) { currentTransition = inTransition; } else { LaunchInFinished(); } } else { LaunchInFinished(); currentTransition = null; } } // Alotetaan uusi transitoni jossei olla toistettu molempia. if (currentTransition != null && !currentTransition.IsStarted) { currentTransition.Start(); } else { isFinished = true; if (OnFinished != null) { OnFinished(this, new GameEventArgs()); } } } }
protected override void OnPageScrolled(int position, float positionOffset, int positionOffsetPixels) { if (State == JazzyState.Idle && positionOffset > 0) { oldPage = CurrentItem; State = position == oldPage ? JazzyState.GoingRight : JazzyState.GoingLeft; } bool goingRight = position == oldPage; if (State == JazzyState.GoingRight && !goingRight) { State = JazzyState.GoingLeft; } else if (State == JazzyState.GoingLeft && goingRight) { State = JazzyState.GoingRight; } float effectOffset = IsSmall(positionOffset) ? 0 : positionOffset; var adapter = JazzyPageAdapter; if (adapter != null) { var leftView = adapter.FindViewFromObject(position); var rightView = adapter.FindViewFromObject(position + 1); if (OutlineEnabled) { AnimateOutline(leftView, rightView); } if (State != JazzyState.Idle) { if (leftView != null) { ManageLayer(leftView, true); } if (rightView != null) { ManageLayer(rightView, true); } } if (TransitionEffect != null) { TransitionEffect.Animate(this, leftView, rightView, positionOffset, positionOffsetPixels); } } base.OnPageScrolled(position, positionOffset, positionOffsetPixels); if (effectOffset == 0) { DisableHardwareLayer(); State = JazzyState.Idle; } }
private void HookTransitionListener(GameState state) { if (state.LeaveTransition != null) { TransitionEffect transition = state.LeaveTransition; transition.OnTransitionFinish -= OnLeaveTransitionFinish; transition.OnTransitionFinish += OnLeaveTransitionFinish; } }
void OnRenderImage(RenderTexture source, RenderTexture destination) { if (transitionEffect == null || transition != m_Transition) { m_Transition = transition; transitionEffect = GetTransitionEffect(m_Transition); } transitionEffect.OnRenderImage(source, destination); }
public void PushScene(GameScene gameScene, TransitionEffect transitionEffect = TransitionEffect.None, int duration = 0) { if (CurrentScene != null) { sceneStack.Push(CurrentScene); } sceneStack.Push(gameScene); SwitchScene(gameScene, transitionEffect, duration, false); DebugStack(); }
/// <summary> /// Alustaa uuden siirtymä toistajan. Jompikumpi valueista voi olla null, mutta ei volemmat. /// </summary> public TransitionPlayer(TransitionEffect transitInEffect = null, TransitionEffect transitOutEffect = null) { this.outTransition = transitInEffect; this.inTransition = transitOutEffect; if (transitInEffect == null && transitOutEffect == null) { throw new ArgumentNullException("Both transitions cant be null."); } }
// Use this for initialization void Start() { transition = this.gameObject.GetComponent <TransitionEffect> (); if (currentNPC) { parentNPCToCam(currentNPC); } npcList = GameObject.Find("NPCs").transform; finishedShifting = true; }
private void Start() { transition = FindObjectOfType <TransitionEffect>(); cow = FindObjectOfType <Cow>().transform; cowRB = cow.GetComponent <Rigidbody>(); if ((transform.position - cow.position).magnitude < .5f) { cameFromNode = true; } Invoke("ReleaseCow", .5f); }
private void MediaCenter_PreviewMouseDown(object sender, MouseButtonEventArgs e) { VisualBrush vbrush = new VisualBrush(this); _TransitionEffect = _TransitionEffect.Clone() as TransitionEffect; this.Effect = _TransitionEffect; // _TransitionEffect.Input = vbrush.Clone(); _TransitionEffect.OldImage = vbrush.Clone(); _TransitionEffect.BeginAnimation(TransitionEffect.ProgressProperty, _Animation); }
private void cbHinhAnh_SelectionChanged(object sender, SelectionChangedEventArgs e) { TransitioningContent transitioningContent = new TransitioningContent(); TransitionEffect effect = new TransitionEffect(); effect.Kind = TransitionEffectKind.ExpandIn; transitioningContent.OpeningEffect = effect; object avatarContent; Image img = new Image(); //img.Stretch = Stretch.None; img.VerticalAlignment = VerticalAlignment.Center; img.HorizontalAlignment = HorizontalAlignment.Center; try { if (IsRefresh == false) { BitmapImage bitm = new BitmapImage(); bitm.BeginInit(); bitm.UriSource = new Uri(Directory.GetParent(Directory.GetParent(Directory.GetCurrentDirectory()).ToString()).ToString() + @"\Resources\Images\Avatar\" + cbHinhAnh.SelectedValue.ToString(), UriKind.RelativeOrAbsolute); bitm.EndInit(); img.Source = bitm; img.Stretch = Stretch.UniformToFill; } else { BitmapImage bitm = new BitmapImage(); bitm.BeginInit(); bitm.UriSource = new Uri(@"../../Resources/Images/account-card-details-black.png", UriKind.RelativeOrAbsolute); bitm.EndInit(); img.Source = bitm; img.Opacity = 0.4; img.Stretch = Stretch.None; IsRefresh = false; } } catch (Exception ex) { BitmapImage bitm = new BitmapImage(); bitm.BeginInit(); bitm.UriSource = new Uri(@"../../Resources/Images/account-card-details-black.png", UriKind.RelativeOrAbsolute); bitm.EndInit(); img.Source = bitm; img.Opacity = 0.4; img.Stretch = Stretch.None; } finally { avatarContent = img; transitioningContent.Content = avatarContent; avatarContentControl.Content = transitioningContent; } }
public static void BeginAnimation(UserControl oldControl, UserControl newControl) { if (IsReady == false) { Init(); } WriteableBitmap capture = new WriteableBitmap(oldControl, new System.Windows.Media.ScaleTransform()); System.Windows.Media.ImageBrush imageBrush = new System.Windows.Media.ImageBrush(); imageBrush.ImageSource = capture; TransitionEffect transitionEffect = GetRandomTransition(); transitionEffect.OldImage = imageBrush; newControl.Effect = transitionEffect; #region WPF ShaderEffect Animation /* * DoubleAnimation da = new DoubleAnimation(); * da.From = 0; * da.To = 1; * da.Duration = TimeSpan.FromSeconds(3); * //da.AutoReverse = true; * //da.RepeatBehavior = RepeatBehavior.Forever; * transitionEffect.BeginAnimation(TransitionEffect.ProgressProperty, da); * */ #endregion #region Silverlight ShaderEffect Animation System.Windows.Media.Animation.DoubleAnimation da = new System.Windows.Media.Animation.DoubleAnimation(); da.From = 0; da.To = 1; da.Duration = TimeSpan.FromSeconds(1.5); da.AutoReverse = false; //da.RepeatBehavior = System.Windows.Media.Animation.RepeatBehavior.Forever; //Storyboard st = (LayoutRoot.Resources)["st"] as Storyboard; System.Windows.Media.Animation.Storyboard st = new System.Windows.Media.Animation.Storyboard(); System.Windows.Media.Animation.Storyboard.SetTarget(da, transitionEffect); System.Windows.Media.Animation.Storyboard.SetTargetProperty(da, new PropertyPath(TransitionEffect.ProgressProperty)); st.Children.Add(da); st.Completed += new EventHandler(delegate { newControl.Effect = null; }); st.Begin(); #endregion }
public void OnSceneTransition(string sceneName, TransitionType transitionType, Action callback = null) { isWork = false; Action action = () => { callback?.Invoke( ); StartCoroutine(SceneTransition(sceneName)); }; canvasGroup.blocksRaycasts = true; current = transitionEffects[transitionType]; current.OnFadeIn(action); }
private void ApplyTransitionEffect() { TransitionEffect[] effectGroup = transitionEffects[this.rand.Next(transitionEffects.Length)]; TransitionEffect effect = effectGroup[this.rand.Next(effectGroup.Length)]; if (_useOrder) { effectGroup = transitionEffectsSingle[_nextEffect % transitionEffectsSingle.Length]; effect = effectGroup[0]; if (++_usedTimes == 2) { _usedTimes = 0; _nextEffect++; } this.effectName.Text = ExtractName(effect); if (_nextEffect == transitionEffectsSingle.Length) { _useOrder = false; this.effectName.Text = "mixed effects, random"; } } RandomizedTransitionEffect randEffect = effect as RandomizedTransitionEffect; if (randEffect != null) { randEffect.RandomSeed = this.rand.NextDouble(); } DoubleAnimation da = new DoubleAnimation(0.0, 1.0, new Duration(TimeSpan.FromSeconds(2.0)), FillBehavior.HoldEnd); da.AccelerationRatio = 0.5; da.DecelerationRatio = 0.5; da.Completed += new EventHandler(this.TransitionCompleted); effect.BeginAnimation(TransitionEffect.ProgressProperty, da); VisualBrush vb = new VisualBrush(this.oldChild); vb.Viewbox = new Rect(0, 0, this.oldChild.ActualWidth, this.oldChild.ActualHeight); vb.ViewboxUnits = BrushMappingMode.Absolute; //this.oldChild.Width = this.oldChild.ActualWidth; //this.oldChild.Height = this.oldChild.ActualHeight; //this.oldChild.Measure(new Size(this.oldChild.ActualWidth, this.oldChild.ActualHeight)); //this.oldChild.Arrange(new Rect(0, 0, this.oldChild.ActualWidth, this.oldChild.ActualHeight)); effect.OldImage = vb; this.currentChild.Effect = effect; }
public XamarinViewPager(Context context, IAttributeSet attrs) : base(context, attrs) { SetClipChildren(false); PagingEnabled = true; TypedArray ta = context.ObtainStyledAttributes(attrs, Resource.Styleable.XamarinViewPager); int effect = ta.GetInt(Resource.Styleable.XamarinViewPager_style, 0); String[] transitions = Resources.GetStringArray(Resource.Array.Xamarin_effects); TransitionEffect = (global::XamarinViewPager.TransitionEffect)effect; FadeEnable = ta.GetBoolean(Resource.Styleable.XamarinViewPager_fadeEnabled, false); }
private void cbHinhAnh_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (dataGridSelectedNV.SelectedItem != null) { TransitioningContent transitioningContent = new TransitioningContent(); TransitionEffect effect = new TransitionEffect(); effect.Kind = TransitionEffectKind.ExpandIn; transitioningContent.OpeningEffect = effect; object avatarContent; Image img = new Image(); //img.Stretch = Stretch.None; img.VerticalAlignment = VerticalAlignment.Center; img.HorizontalAlignment = HorizontalAlignment.Center; try { BitmapImage bitm = new BitmapImage(); bitm.BeginInit(); bitm.UriSource = new Uri(Directory.GetParent(Directory.GetParent(Directory.GetCurrentDirectory()).ToString()).ToString() + @"\Resources\Images\Avatar\" + (dataGridSelectedNV.SelectedItem as DataRowView).Row["HinhAnh"].ToString(), UriKind.RelativeOrAbsolute); bitm.EndInit(); img.Source = bitm; img.Stretch = Stretch.UniformToFill; tbImageError.Text = ""; } catch (Exception ex) { if ((dataGridSelectedNV.SelectedItem as DataRowView).Row["HinhAnh"].ToString() != "") { tbImageError.Text = "Không tìm thấy\n file ảnh!!!"; } else { tbImageError.Text = "Chưa có ảnh!"; } BitmapImage bitm = new BitmapImage(); bitm.BeginInit(); bitm.UriSource = new Uri(@"../../Resources/Images/account-card-details-black.png", UriKind.RelativeOrAbsolute); bitm.EndInit(); img.Source = bitm; img.Opacity = 0.4; img.Stretch = Stretch.None; } finally { avatarContent = img; transitioningContent.Content = avatarContent; avatarContentControl.Content = transitioningContent; manvSelection = (dataGridSelectedNV.SelectedItem as DataRowView).Row[0].ToString(); } } }
void InitTransitionComponent() { if (Camera.main != null) { mainCam = Camera.main; } transitionEffect = Camera.main.gameObject.GetComponent <TransitionEffect>(); if (transitionEffect == null) { Debug.LogWarning("No Transition effect on Main Camera: " + Camera.main.name + ". Adding one"); transitionEffect = Camera.main.gameObject.AddComponent <TransitionEffect>(); } }
public void NavigateTo(int containerId, BaseFragment fragment, TransitionEffect effect = TransitionEffect.None) { currentFragment = fragment; Android.Support.V4.App.FragmentTransaction fragmentTx = SupportFragmentManager.BeginTransaction(); if (effect == TransitionEffect.Push) { fragmentTx.SetCustomAnimations(Resource.Animation.slide_in_from_right, Resource.Animation.slide_out_to_left); } else if (effect == TransitionEffect.Pop) { fragmentTx.SetCustomAnimations(Resource.Animation.slide_in_from_left, Resource.Animation.slide_out_to_right); } fragmentTx.Replace(containerId, fragment); fragmentTx.Commit(); }
/// <summary> /// Switch scene. /// </summary> /// <param name="gameScene">New game scene</param> /// <param name="transitionEffect">Transition effect to use when switching scene</param> /// <param name="duration">Time in milliseconds for transition</param> public void SwitchScene(GameScene gameScene, TransitionEffect transitionEffect = TransitionEffect.None, int duration = 0, bool disposePreviousScene = true) { this.disposePreviousScene = disposePreviousScene; transitionCount = 0; if (duration == 0 || CurrentScene == null) { transitionEffect = TransitionEffect.None; } if (transitionEffect != TransitionEffect.None) { this.transitionEffect = transitionEffect; transitionDuration = duration; DrawSceneToSurface(CurrentScene, surfaceCurrentScene); DrawSceneToSurface(gameScene, surfaceNextScene); if (transitionEffect == TransitionEffect.TileExplode) { int tileWidth = surfaceCurrentScene.Width / TilesH; int tileHeight = surfaceCurrentScene.Height / TilesV; tile = new Vector4[TilesH, TilesV]; for (int y = 0; y < TilesV; y++) { for (int x = 0; x < TilesH; x++) { tile[x, y] = new Vector4(x * tileWidth, y * tileHeight, SosEngine.Core.Random(-8, 8), -SosEngine.Core.Random(12, 20)); } } } } if (CurrentScene != null) { if (disposePreviousScene) { CurrentScene.Dispose(); } CurrentScene = gameScene; } else { // Wait until updating to switch scene NextScene = gameScene; } }
public void OnTransition(TransitionType transitionType, Action callback_FadeIn = null, Action callback_FadeOut = null) { Action action = () => { callback_FadeIn?.Invoke( ); Action endAction = () => { callback_FadeOut?.Invoke( ); canvasGroup.blocksRaycasts = false; }; current.OnFadeOut(endAction); }; canvasGroup.blocksRaycasts = true; current = transitionEffects[transitionType]; current.OnFadeIn(action); }
private void AnimateContent(object oldContent, object newContent) { var oldContentVisual = GetVisualChild(); var tier = (RenderCapability.Tier >> 16); // if we dont have a selector, or the visual content is not a FE, do not animate if (EnableTransitions == false || ContentTransitionSelector == null || oldContentVisual == null || tier < 2) { SetNonVisualChild(newContent); return; } // create the transition TransitionEffect transitionEffect = ContentTransitionSelector.GetTransition(oldContent, newContent, this); if (transitionEffect == null) { throw new InvalidOperationException("Returned transition effect is null."); } // create the animation DoubleAnimation da = new DoubleAnimation(0.0, 1.0, new Duration(Duration), FillBehavior.HoldEnd); da.Completed += delegate { ApplyEffect(null); }; if (EasingFunction != null) { da.EasingFunction = EasingFunction; } else { da.AccelerationRatio = 0.5; da.DecelerationRatio = 0.5; } transitionEffect.BeginAnimation(TransitionEffect.ProgressProperty, da); VisualBrush oldVisualBrush = new VisualBrush(oldContentVisual); transitionEffect.OldImage = oldVisualBrush; SetNonVisualChild(newContent); ApplyEffect(transitionEffect); }
private void ApplyTransitionEffect() { TransitionEffect[] effectGroup = transitionEffects[this.rand.Next(transitionEffects.Length)]; TransitionEffect effect = effectGroup[this.rand.Next(effectGroup.Length)]; if (_useOrder) { effectGroup = transitionEffectsSingle[_nextEffect % transitionEffectsSingle.Length]; effect = effectGroup[0]; if (++_usedTimes == 2) { _usedTimes = 0; _nextEffect++; } this.effectName.Text = ExtractName(effect); if (_nextEffect == transitionEffectsSingle.Length) { _useOrder = false; this.effectName.Text = "mixed effects, random"; } } RandomizedTransitionEffect randEffect = effect as RandomizedTransitionEffect; if (randEffect != null) { randEffect.RandomSeed = this.rand.NextDouble(); } ImageBrush ib = new ImageBrush(); ib.ImageSource = this.oldChild.Source; effect.OldImage = ib; Storyboard sb = TransitionHelper.CreateTransition(effect, this.currentChild, TimeSpan.FromSeconds(1), 0, 1, ib); sb.Completed += new EventHandler(this.TransitionCompleted); sb.Begin(); }
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) { TransitionEffectBase transitionEffect = null; var stringValue = value as string; if (stringValue != null) { TransitionEffectKind effectKind; if (Enum.TryParse(stringValue, out effectKind)) transitionEffect = new TransitionEffect(effectKind); } else transitionEffect = value as TransitionEffectBase; if (transitionEffect == null) throw new XamlParseException($"Could not parse to type {typeof (TransitionEffectKind).FullName} or {typeof (TransitionEffectBase).FullName}."); return transitionEffect; }
public virtual void ChangeState(T state) { if (states.Count != 0) { current = states[states.Count - 1]; next = state; leaveTransition = current.LeaveTransition; if (leaveTransition == null) { leaveTransition = new EmptyTransition(); } leaveTransition.Init(current, next); current.IsExiting = true; } current.State = ScreenState.TransitionOff; // ollaan häivyttämässä current.HasFocus = false; next.HasFocus = false; states.Add(state); InitState(state); }
public static Storyboard CreateTransition(TransitionEffect effect, UIElement element, TimeSpan duration, double from, double to, Brush old) { DoubleAnimation da = new DoubleAnimation(); da.Duration = new Duration(duration); da.From = from; da.To = to; da.FillBehavior = FillBehavior.HoldEnd; Storyboard sb = new Storyboard(); sb.Children.Add(da); Storyboard.SetTarget(da, effect); Storyboard.SetTargetProperty(da, new PropertyPath("(TransitionEffect.Progress)")); effect.OldImage = old; element.Effect = effect; return(sb); }
/// <summary> /// Reverses the direction. /// </summary> /// <param name="transitionEffect">The transition effect.</param> private void ReverseDirection(TransitionEffect transitionEffect) { var circleRevealTransitionEffect = transitionEffect as CircleRevealTransitionEffect; if (circleRevealTransitionEffect != null) { circleRevealTransitionEffect.Reverse = true; return; } var slideInTransitionEffect = transitionEffect as SlideInTransitionEffect; if (slideInTransitionEffect != null) { if (slideInTransitionEffect.SlideDirection == SlideDirection.RightToLeft) { slideInTransitionEffect.SlideDirection = SlideDirection.LeftToRight; } return; } var wipeTransitionEffect = transitionEffect as WipeTransitionEffect; if (wipeTransitionEffect != null) { if (wipeTransitionEffect.WipeDirection == WipeDirection.RightToLeft) { wipeTransitionEffect.WipeDirection = WipeDirection.LeftToRight; } } }