public SettingsRepresentative ReadSettingsJSON() { string JsonSettingsList = File.ReadAllText(Path.Combine(LocalFolder, "settings.json")); SettingsRepresentative sr = JsonConvert.DeserializeObject <SettingsRepresentative>(JsonSettingsList); return(sr); }
public Settings() { InitializeComponent(); mw = (MainWindow)Application.Current.MainWindow; int AppColour = Convert.ToInt32(Registry.GetValue("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\DWM", "AccentColor", null)); ThemeManager.Current.AccentColor = Color.FromRgb((byte)AppColour, (byte)(AppColour >> 8), (byte)(AppColour >> 16)); string TargetFolder = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); if (mw.IsRunningAsUWP()) { LocalFolder = Windows.Storage.ApplicationData.Current.RoamingFolder.Path; } else { LocalFolder = Path.Combine(TargetFolder, "ActiveDesktopPlus"); Directory.CreateDirectory(LocalFolder); } if (!File.Exists(Path.Combine(LocalFolder, "settings.json"))) { WriteSettingsJSON(); } if (File.ReadAllText(Path.Combine(LocalFolder, "settings.json")) == "" || File.ReadAllText(Path.Combine(LocalFolder, "settings.json")) == null) { SetRep.UseDarkTheme = false; SetRep.PauseOnBattery = true; SetRep.UseSystemTheme = true; SetRep.PauseOnMaximise = true; SetRep.DebugMode = false; WriteSettingsJSON(); } SetRep = ReadSettingsJSON(); if (SetRep.UseDarkTheme) { ThemeManager.Current.ApplicationTheme = ApplicationTheme.Dark; ThemeToggle.IsOn = true; mw.SavedAppsPage.WriteButton.Foreground = new SolidColorBrush(Colors.Yellow); StartupWarningLabel.Foreground = new SolidColorBrush(Colors.Yellow); mw.ErrorIcon.Foreground = new SolidColorBrush(Colors.Yellow); mw.ImmersiveFinalisePage.WarningBlock.Foreground = new SolidColorBrush(Colors.Yellow); mw.ImmersiveExperiencePage.AddWallpaperIcon.Foreground = new SolidColorBrush(Colors.White); mw.ImmersiveFinalisePage.CheckmarkIcon.Foreground = new SolidColorBrush(Colors.White); mw.ImmersiveExperiencePage.CurrentColour = new SolidColorBrush(Colors.White); } else { ThemeManager.Current.ApplicationTheme = ApplicationTheme.Light; ThemeToggle.IsOn = false; mw.SavedAppsPage.WriteButton.Foreground = new SolidColorBrush(Colors.Red); StartupWarningLabel.Foreground = new SolidColorBrush(Colors.Red); mw.ErrorIcon.Foreground = new SolidColorBrush(Colors.Red); mw.ImmersiveFinalisePage.WarningBlock.Foreground = new SolidColorBrush(Colors.Red); mw.ImmersiveExperiencePage.AddWallpaperIcon.Foreground = new SolidColorBrush(Colors.Black); mw.ImmersiveFinalisePage.CheckmarkIcon.Foreground = new SolidColorBrush(Colors.Black); mw.ImmersiveExperiencePage.CurrentColour = new SolidColorBrush(Colors.Black); } if (SetRep.UseDarkTrayIcon) // hi uwu { mw.tbi.Icon = mw.DarkIcon.Icon; TrayIconToggle.IsOn = true; } if (SetRep.UseSystemTheme) { SystemThemeCheckBox_Checked(null, null); SystemThemeCheckBox.IsChecked = true; } else { SystemThemeCheckBox_Unchecked(null, null); } if (SetRep.PauseOnMaximise) { PauseMaximisedToggle.IsOn = true; mw.PauseOnMaximise = true; } else { mw.PauseOnMaximise = false; } if (SetRep.PauseOnBatterySaver) { PauseBatterySaverToggle.IsOn = true; mw.PauseOnBatterySaver = true; } else { mw.PauseOnBatterySaver = false; } if (SetRep.PauseOnBattery) { PauseBatteryToggle.IsOn = true; mw.PauseOnBattery = true; mw.PauseOnBatterySaver = true; PauseBatterySaverToggle.IsOn = true; PauseBatterySaverToggle.IsEnabled = false; } else { mw.PauseOnBattery = false; } if (SetRep.DebugMode) { DebugModeToggle.IsOn = true; mw.DebugMode = true; } else { mw.DebugMode = false; } }