public WireguardSettingsWindow(ViewModelWireguardSettings viewModel) { ViewModel = viewModel; InitializeComponent(); DataContext = this; }
private SettingsWindow(AppSettings settings, ViewModelWireguardSettings wgSettingsModel) { InitializeComponent(); Settings = settings; AppState = AppState.Instance(); Settings.FreezeSettings(); // save corrent settings state (in order to have possibility to restore) // if WiFi functionality is disable - hide trusted\untrusted wifi configuration NetworksSettings = new ViewModelNetworksSettings(Settings.NetworkActions, this); if (NetworksSettings.IsWiFiFunctionalityOn == false) { GuiTabItemNetworks.Visibility = Visibility.Collapsed; } DataContext = this; switch (Settings.ProxyType) { case ProxyType.None: rbProxyNone.IsChecked = true; break; case ProxyType.Auto: rbProxyAuto.IsChecked = true; break; case ProxyType.Http: rbProxyHTTP.IsChecked = true; break; case ProxyType.Socks: rbProxySOCKS.IsChecked = true; break; } txtProxyPassword.Password = Settings.ProxyUnsafePassword; WireGuardSettings = wgSettingsModel; WireGuardSettings.OnError += WireGuardSettings_OnError; Closing += (sender, args) => { WireGuardSettings.OnError -= WireGuardSettings_OnError; }; // WireGuard key regeneration interval for (int i = 1; i <= 30; i++) { GuiComboBoxWgKeyRegenerateDays.Items.Add(i); } GuiComboBoxWgKeyRegenerateDays.SelectedIndex = WireGuardSettings.RegenerationIntervalDays - 1; if (GuiComboBoxWgKeyRegenerateDays.SelectedIndex < 0) { GuiComboBoxWgKeyRegenerateDays.SelectedIndex = 0; } GuiComboBoxWgKeyRegenerateDays.SelectionChanged += (sender, args) => { WireGuardSettings.RegenerationIntervalDays = GuiComboBoxWgKeyRegenerateDays.SelectedIndex + 1; }; Settings.PropertyChanged += Settings_OnPropertyChanged; Closing += (sender, args) => { Settings.PropertyChanged -= Settings_OnPropertyChanged; }; }
public static void ShowSettingsWindow(Service service, ViewModelWireguardSettings wgSettingsModel) { CloseSettingsWindow(); __Instance = new SettingsWindow(App.Settings, wgSettingsModel) { Service = service, Owner = Application.Current.MainWindow }; __Instance.ShowDialog(); }
private void SetMainViewModel(MainViewModel mainViewModel) { __MainViewModel = mainViewModel; __WireguardSetingsViewModel = new ViewModelWireguardSettings(__MainViewModel, LocalizedStrings.Instance); __WireguardSetingsViewModel.OnError += __WireguardSetingsViewModel_OnError; WireguardSettingsViewModelObservable = new ObservableObject(__WireguardSetingsViewModel); __MainViewModel.WireguardKeysManager.OnStarted += WireguardKeysManager_OnStarted; __MainViewModel.WireguardKeysManager.OnStopped += WireguardKeysManager_OnStopped; }