mirror of
https://github.com/farcasclaudiu/myfriendsaround.git
synced 2026-06-28 23:01:53 +03:00
00f97e41d6
http://windowsteamblog.com/windows_phone/b/wpdev/archive/2011/01/14/windows-push-notification-server-side-helper-library.aspx http://create.msdn.com/en-us/education/catalog/article/pnhelp-wp7
44 lines
1.2 KiB
C#
44 lines
1.2 KiB
C#
using System;
|
|
using System.Net;
|
|
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Documents;
|
|
using System.Windows.Ink;
|
|
using System.Windows.Input;
|
|
using System.Windows.Media;
|
|
using System.Windows.Media.Animation;
|
|
using System.Windows.Shapes;
|
|
using System.Collections.Generic;
|
|
|
|
namespace WindowsPhone.Recipes.Push.Client.Controls
|
|
{
|
|
public class ViewTransitions<T>
|
|
{
|
|
private class ViewTransition
|
|
{
|
|
public T To { get; set; }
|
|
public Action Action { get; set; }
|
|
}
|
|
|
|
public T _viewState;
|
|
private readonly Dictionary<T, ViewTransition> _transitions = new Dictionary<T, ViewTransition>();
|
|
|
|
public ViewTransitions(T initialState)
|
|
{
|
|
_viewState = initialState;
|
|
}
|
|
|
|
public void AddTransition(T from, T to, Action action)
|
|
{
|
|
_transitions[from] = new ViewTransition { To = to, Action = action };
|
|
}
|
|
|
|
public void Transition()
|
|
{
|
|
var transition = _transitions[_viewState];
|
|
_viewState = transition.To;
|
|
transition.Action();
|
|
}
|
|
}
|
|
}
|