summaryrefslogtreecommitdiff
path: root/windows/WinUI/PageSwitcher.xaml.cs
diff options
context:
space:
mode:
Diffstat (limited to 'windows/WinUI/PageSwitcher.xaml.cs')
-rw-r--r--windows/WinUI/PageSwitcher.xaml.cs56
1 files changed, 56 insertions, 0 deletions
diff --git a/windows/WinUI/PageSwitcher.xaml.cs b/windows/WinUI/PageSwitcher.xaml.cs
new file mode 100644
index 00000000..c9aa659f
--- /dev/null
+++ b/windows/WinUI/PageSwitcher.xaml.cs
@@ -0,0 +1,56 @@
+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());
+ }
+ }
+}