ZeroTierOne/windows/WinUI/PageSwitcher.xaml.cs
2017-09-22 15:33:09 -07:00

57 lines
1.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace WinUI
{
/// <summary>
/// Interaction logic for PageSwitcher.xaml
/// </summary>
public partial class PageSwitcher : Window
{
public PageSwitcher()
{
InitializeComponent();
Switcher.pageSwitcher = this;
CentralAPI api = CentralAPI.Instance;
if (api.HasAccessToken())
{
Switcher.Switch(new OnboardProcess.CreateOrJoin());
}
else
{
Switcher.Switch(new OnboardProcess.RegisterOrLogIn());
}
}
public void Navigate(UserControl nextPage)
{
this.Content = nextPage;
}
public void Navigate(UserControl nextPage, object state)
{
this.Content = nextPage;
ISwitchable s = nextPage as ISwitchable;
if (s != null)
s.UtilizeState(state);
else
throw new ArgumentException("NextPage is not ISwitchable! "
+ nextPage.Name.ToString());
}
}
}