summaryrefslogtreecommitdiff
path: root/windows/WinUI/MainWindow.xaml.cs
diff options
context:
space:
mode:
Diffstat (limited to 'windows/WinUI/MainWindow.xaml.cs')
-rw-r--r--windows/WinUI/MainWindow.xaml.cs49
1 files changed, 39 insertions, 10 deletions
diff --git a/windows/WinUI/MainWindow.xaml.cs b/windows/WinUI/MainWindow.xaml.cs
index f6cb4f44..103165b3 100644
--- a/windows/WinUI/MainWindow.xaml.cs
+++ b/windows/WinUI/MainWindow.xaml.cs
@@ -29,6 +29,8 @@ namespace WinUI
Timer timer = new Timer();
+ bool connected = false;
+
public MainWindow()
{
InitializeComponent();
@@ -36,6 +38,11 @@ namespace WinUI
networksPage.SetAPIHandler(handler);
updateStatus();
+ if (!connected)
+ {
+ MessageBox.Show("Unable to connect to ZeroTier Service.");
+ }
+
updateNetworks();
updatePeers();
@@ -50,18 +57,40 @@ namespace WinUI
{
var status = handler.GetStatus();
- networkId.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
- {
- this.networkId.Content = status.Address;
- }));
- versionString.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ if (status != null)
{
- this.versionString.Content = status.Version;
- }));
- onlineStatus.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ connected = true;
+
+ networkId.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.networkId.Content = status.Address;
+ }));
+ versionString.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.versionString.Content = status.Version;
+ }));
+ onlineStatus.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.onlineStatus.Content = (status.Online ? "ONLINE" : "OFFLINE");
+ }));
+ }
+ else
{
- this.onlineStatus.Content = (status.Online ? "ONLINE" : "OFFLINE");
- }));
+ connected = false;
+
+ networkId.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.networkId.Content = "";
+ }));
+ versionString.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.versionString.Content = "0";
+ }));
+ onlineStatus.Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(() =>
+ {
+ this.onlineStatus.Content = "OFFLINE";
+ }));
+ }
}
private void updateNetworks()