Browse Source

wired up the startup registry key to the registry

Grant Limberg 8 years ago
parent
commit
a6ed711492

+ 2 - 2
windows/WinUI/JoinNetworkView.xaml

@@ -5,12 +5,12 @@
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
         xmlns:local="clr-namespace:WinUI"
         mc:Ignorable="d"
-        Title="Join a Network" Height="120" Width="320" Icon="ZeroTierIcon.ico">
+        Title="Join a Network" SizeToContent="WidthAndHeight" Height="Auto" Width="Auto" Icon="ZeroTierIcon.ico">
     <Grid HorizontalAlignment="Left" Margin="0,0,0,0" Width="315">
         <TextBox x:Name="joinNetworkBox" HorizontalAlignment="Left" Height="23" Margin="10,10,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="291" PreviewTextInput="joinNetworkBox_OnTextEntered" PreviewKeyDown="joinNetworkBox_OnKeyDown"/>
         <CheckBox x:Name="allowManagedCheckbox" Content="Allow Managed" HorizontalAlignment="Left" Margin="10,38,0,0" VerticalAlignment="Top" IsChecked="True"/>
         <CheckBox x:Name="allowGlobalCheckbox" Content="Allow Global" HorizontalAlignment="Left" Margin="118,38,0,0" VerticalAlignment="Top"/>
         <CheckBox x:Name="allowDefaultCheckbox" Content="Allow Default" HorizontalAlignment="Left" Margin="210,38,-6,0" VerticalAlignment="Top"/>
-        <Button x:Name="joinButton" Content="Join" HorizontalAlignment="Left" Margin="226,58,0,0" Background="#FFFFB354" VerticalAlignment="Top" Width="75" Click="joinButton_Click" IsEnabled="False"/>
+        <Button x:Name="joinButton" Content="Join" HorizontalAlignment="Left" Margin="226,58,0,10" Background="#FFFFB354" VerticalAlignment="Top" Width="75" Click="joinButton_Click" IsEnabled="False"/>
     </Grid>
 </Window>

+ 1 - 1
windows/WinUI/PreferencesView.xaml

@@ -7,7 +7,7 @@
         mc:Ignorable="d"
         Title="PreferencesView" SizeToContent="WidthAndHeight" Height="Auto" Width="Auto" Icon="ZeroTierIcon.ico">
     <Grid>
-        <CheckBox x:Name="checkBox" Content="Launch ZeroTier On Startup" HorizontalAlignment="Left" Margin="10,10,10,10" VerticalAlignment="Top"/>
+        <CheckBox x:Name="startupCheckbox" Content="Launch ZeroTier On Startup" HorizontalAlignment="Left" Margin="10,10,10,10" VerticalAlignment="Top" Checked="startupCheckbox_Checked" Unchecked="startupCheckbox_Unchecked"/>
 
     </Grid>
 </Window>

+ 24 - 1
windows/WinUI/PreferencesView.xaml.cs

@@ -1,4 +1,5 @@
-using System;
+using Microsoft.Win32;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -19,9 +20,31 @@ namespace WinUI
     /// </summary>
     public partial class PreferencesView : Window
     {
+        public static string AppName = "ZeroTier One";
+        private RegistryKey rk = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
+
         public PreferencesView()
         {
             InitializeComponent();
+
+
+            string keyValue = rk.GetValue(AppName) as string;
+
+            if (keyValue != null && keyValue.Equals(System.Reflection.Assembly.GetExecutingAssembly().Location))
+            {
+                startupCheckbox.IsChecked = true;
+            }
         }
+
+        private void startupCheckbox_Checked(object sender, RoutedEventArgs e)
+        {
+            rk.SetValue(AppName, System.Reflection.Assembly.GetExecutingAssembly().Location);
+        }
+
+        private void startupCheckbox_Unchecked(object sender, RoutedEventArgs e)
+        {
+            rk.DeleteValue(AppName);
+        }
+
     }
 }