From 4762311977a2ebe26c6ac140bdcfc44d7733ff9a Mon Sep 17 00:00:00 2001 From: Grant Limberg Date: Fri, 4 Nov 2016 12:39:57 -0700 Subject: work in progress windows UI update --- windows/WinUI/NetworkInfoView.xaml.cs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'windows/WinUI/NetworkInfoView.xaml.cs') diff --git a/windows/WinUI/NetworkInfoView.xaml.cs b/windows/WinUI/NetworkInfoView.xaml.cs index ccdec288..5c96b985 100644 --- a/windows/WinUI/NetworkInfoView.xaml.cs +++ b/windows/WinUI/NetworkInfoView.xaml.cs @@ -54,6 +54,10 @@ namespace WinUI } this.managedIps.Text = iplist; + + this.allowDefault.IsChecked = network.AllowDefault; + this.allowGlobal.IsChecked = network.AllowGlobal; + this.allowManaged.IsChecked = network.AllowManaged; } public bool HasNetwork(ZeroTierNetwork network) @@ -68,5 +72,32 @@ namespace WinUI { handler.LeaveNetwork(network.NetworkId); } + + private void AllowManaged_CheckStateChanged(object sender, RoutedEventArgs e) + { + CheckBox cb = sender as CheckBox; + handler.JoinNetwork(network.NetworkId, + allowManaged.IsChecked ?? false, + allowGlobal.IsChecked ?? false, + allowDefault.IsChecked ?? false); + } + + private void AllowGlobal_CheckStateChanged(object sender, RoutedEventArgs e) + { + CheckBox cb = sender as CheckBox; + handler.JoinNetwork(network.NetworkId, + allowManaged.IsChecked ?? false, + allowGlobal.IsChecked ?? false, + allowDefault.IsChecked ?? false); + } + + private void AllowDefault_CheckStateChanged(object sender, RoutedEventArgs e) + { + CheckBox cb = sender as CheckBox; + handler.JoinNetwork(network.NetworkId, + allowManaged.IsChecked ?? false, + allowGlobal.IsChecked ?? false, + allowDefault.IsChecked ?? false); + } } } -- cgit v1.2.3 From 1ab9c431350b1e8cf22f27fe5814f1d4608b24a7 Mon Sep 17 00:00:00 2001 From: Grant Limberg Date: Fri, 4 Nov 2016 14:50:07 -0700 Subject: wire up allowDefault, allowManaged, allowGlobal, allowDefault options --- windows/WinUI/APIHandler.cs | 2 +- windows/WinUI/NetworkInfoView.xaml | 6 +++--- windows/WinUI/NetworkInfoView.xaml.cs | 8 ++++++++ 3 files changed, 12 insertions(+), 4 deletions(-) (limited to 'windows/WinUI/NetworkInfoView.xaml.cs') diff --git a/windows/WinUI/APIHandler.cs b/windows/WinUI/APIHandler.cs index 83a22c66..2a8dea13 100644 --- a/windows/WinUI/APIHandler.cs +++ b/windows/WinUI/APIHandler.cs @@ -107,7 +107,7 @@ namespace WinUI } } - public void JoinNetwork(string nwid, bool allowManaged = false, bool allowGlobal = false, bool allowDefault = false) + public void JoinNetwork(string nwid, bool allowManaged = true, bool allowGlobal = false, bool allowDefault = false) { var request = WebRequest.Create(url + "/network/" + nwid + "?auth=" + authtoken) as HttpWebRequest; if (request == null) diff --git a/windows/WinUI/NetworkInfoView.xaml b/windows/WinUI/NetworkInfoView.xaml index 1ca488b1..aea85490 100644 --- a/windows/WinUI/NetworkInfoView.xaml +++ b/windows/WinUI/NetworkInfoView.xaml @@ -65,9 +65,9 @@ - - - + + + diff --git a/windows/WinUI/NetworkInfoView.xaml.cs b/windows/WinUI/NetworkInfoView.xaml.cs index 5c96b985..3ecc31b8 100644 --- a/windows/WinUI/NetworkInfoView.xaml.cs +++ b/windows/WinUI/NetworkInfoView.xaml.cs @@ -58,6 +58,14 @@ namespace WinUI this.allowDefault.IsChecked = network.AllowDefault; this.allowGlobal.IsChecked = network.AllowGlobal; this.allowManaged.IsChecked = network.AllowManaged; + + allowDefault.Checked += AllowDefault_CheckStateChanged; + allowDefault.Unchecked += AllowDefault_CheckStateChanged; + allowGlobal.Checked += AllowGlobal_CheckStateChanged; + allowGlobal.Unchecked += AllowGlobal_CheckStateChanged; + allowManaged.Checked += AllowManaged_CheckStateChanged; + allowManaged.Unchecked += AllowManaged_CheckStateChanged; + } public bool HasNetwork(ZeroTierNetwork network) -- cgit v1.2.3 From 7cf3d2caa19da076ebd3539c8786ce62a53d35f9 Mon Sep 17 00:00:00 2001 From: Grant Limberg Date: Tue, 8 Nov 2016 16:31:07 -0800 Subject: Network list window opens with click on the menu item --- windows/WinUI/APIHandler.cs | 14 ++- windows/WinUI/MainWindow.xaml | 132 --------------------------- windows/WinUI/MainWindow.xaml.cs | 166 ---------------------------------- windows/WinUI/NetworkInfoView.xaml.cs | 12 +-- windows/WinUI/NetworkList.xaml | 132 +++++++++++++++++++++++++++ windows/WinUI/NetworkList.xaml.cs | 153 +++++++++++++++++++++++++++++++ windows/WinUI/NetworksPage.xaml.cs | 8 -- windows/WinUI/ToolbarItem.xaml | 6 +- windows/WinUI/ToolbarItem.xaml.cs | 28 +++++- windows/WinUI/WinUI.csproj | 6 +- 10 files changed, 336 insertions(+), 321 deletions(-) delete mode 100644 windows/WinUI/MainWindow.xaml delete mode 100644 windows/WinUI/MainWindow.xaml.cs create mode 100644 windows/WinUI/NetworkList.xaml create mode 100644 windows/WinUI/NetworkList.xaml.cs (limited to 'windows/WinUI/NetworkInfoView.xaml.cs') diff --git a/windows/WinUI/APIHandler.cs b/windows/WinUI/APIHandler.cs index f2fb1d21..9cddd916 100644 --- a/windows/WinUI/APIHandler.cs +++ b/windows/WinUI/APIHandler.cs @@ -19,7 +19,8 @@ namespace WinUI private string url = null; - private static APIHandler instance; + private static volatile APIHandler instance; + private static object syncRoot = new Object(); public static APIHandler Instance { @@ -27,7 +28,16 @@ namespace WinUI { if (instance == null) { - + lock (syncRoot) + { + if (instance == null) + { + if (!initHandler()) + { + return null; + } + } + } } return instance; diff --git a/windows/WinUI/MainWindow.xaml b/windows/WinUI/MainWindow.xaml deleted file mode 100644 index 9d4a9fc1..00000000 --- a/windows/WinUI/MainWindow.xaml +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -