public async void ResetSettingsAction() { MetroDialogSettings settings = AppearanceManager.MetroDialog; settings.AffirmativeButtonText = Application.Current.Resources["String_Button_Continue"] as string; settings.NegativeButtonText = Application.Current.Resources["String_Button_Cancel"] as string; settings.DefaultButtonFocus = MessageDialogResult.Affirmative; string message = Application.Current.Resources["String_SelectedSettingsAreReset"] as string; if (ResetEverything || ResetApplicationSettings) { message += Environment.NewLine + Environment.NewLine + string.Format("* {0}", Application.Current.Resources["String_TheSettingsLocationIsNotAffected"] as string); message += Environment.NewLine + string.Format("* {0}", Application.Current.Resources["String_ApplicationIsRestartedAfterwards"] as string); } if (await dialogCoordinator.ShowMessageAsync(this, Application.Current.Resources["String_Header_AreYouSure"] as string, message, MessageDialogStyle.AffirmativeAndNegative, settings) != MessageDialogResult.Affirmative) { return; } bool forceRestart = false; if (ApplicationSettingsExists && (ResetEverything || ResetApplicationSettings)) { SettingsManager.Reset(); forceRestart = true; } if (NetworkInterfaceProfilesExists && (ResetEverything || ResetNetworkInterfaceProfiles)) { NetworkInterfaceProfileManager.Reset(); } if (IPScannerProfilesExists && (ResetEverything || ResetIPScannerProfiles)) { IPScannerProfileManager.Reset(); } if (WakeOnLANClientsExists && (ResetEverything || ResetWakeOnLANClients)) { WakeOnLANClientManager.Reset(); } if (PortScannerProfilesExists && (ResetEverything || ResetPortScannerProfiles)) { PortScannerProfileManager.Reset(); } if (RemoteDesktopSessionsExists && (ResetEverything || ResetRemoteDesktopSessions)) { RemoteDesktopSessionManager.Reset(); } // Restart after reset or show a completed message if (forceRestart) { CloseAction(); } else { settings.AffirmativeButtonText = Application.Current.Resources["String_Button_OK"] as string; await dialogCoordinator.ShowMessageAsync(this, Application.Current.Resources["String_Header_Success"] as string, Application.Current.Resources["String_SettingsSuccessfullyReset"] as string, MessageDialogStyle.Affirmative, settings); } }
private async void ImportSettingsAction() { MetroDialogSettings settings = AppearanceManager.MetroDialog; settings.AffirmativeButtonText = LocalizationManager.GetStringByKey("String_Button_Continue"); settings.NegativeButtonText = LocalizationManager.GetStringByKey("String_Button_Cancel"); settings.DefaultButtonFocus = MessageDialogResult.Affirmative; string message = LocalizationManager.GetStringByKey("String_SelectedSettingsAreOverwritten"); if (ImportApplicationSettingsExists && (ImportEverything || ImportApplicationSettings)) { message += Environment.NewLine + Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_ApplicationIsRestartedAfterwards")); } if (await dialogCoordinator.ShowMessageAsync(this, LocalizationManager.GetStringByKey("String_Header_AreYouSure"), message, MessageDialogStyle.AffirmativeAndNegative, settings) == MessageDialogResult.Affirmative) { List <ImportExportManager.ImportExportOptions> importOptions = new List <ImportExportManager.ImportExportOptions>(); if (ImportApplicationSettingsExists && (ImportEverything || ImportApplicationSettings)) { importOptions.Add(ImportExportManager.ImportExportOptions.ApplicationSettings); } if (ImportNetworkInterfaceProfilesExists && (ImportEverything || ImportNetworkInterfaceProfiles)) { importOptions.Add(ImportExportManager.ImportExportOptions.NetworkInterfaceProfiles); // Load network interface profile (option: add) if (NetworkInterfaceProfileManager.Profiles == null) { NetworkInterfaceProfileManager.Load(!ImportOverrideNetworkInterfaceProfiles); } } if (ImportIPScannerProfilesExists && (ImportEverything || ImportIPScannerProfiles)) { importOptions.Add(ImportExportManager.ImportExportOptions.IPScannerProfiles); // Load ip scanner profiles (option: add) if (IPScannerProfileManager.Profiles == null) { IPScannerProfileManager.Load(!ImportOverrideIPScannerProfiles); } } if (ImportWakeOnLANClientsExists && (ImportEverything || ImportWakeOnLANClients)) { importOptions.Add(ImportExportManager.ImportExportOptions.WakeOnLANClients); // Load WoL clients (option: add) if (WakeOnLANClientManager.Clients == null) { WakeOnLANClientManager.Load(!ImportOverrideWakeOnLANClients); } } if (ImportPortScannerProfilesExists && (ImportEverything || ImportPortScannerProfiles)) { importOptions.Add(ImportExportManager.ImportExportOptions.PortScannerProfiles); // Load port scanner profiles (option: add) if (PortScannerProfileManager.Profiles == null) { PortScannerProfileManager.Load(!ImportOverridePortScannerProfiles); } } if (ImportRemoteDesktopSessionsExists && (ImportEverything || ImportRemoteDesktopSessions)) { importOptions.Add(ImportExportManager.ImportExportOptions.RemoteDesktopSessions); // Load remote desktop sessions (option: add) if (RemoteDesktopSessionManager.Sessions == null) { RemoteDesktopSessionManager.Load(!ImportOverrideRemoteDesktopSessions); } } if (ImportPuTTYSessionsExists && (ImportEverything || ImportPuTTYSessions)) { importOptions.Add(ImportExportManager.ImportExportOptions.PuTTYSessions); // Load remote desktop sessions (option: add) if (PuTTYSessionManager.Sessions == null) { RemoteDesktopSessionManager.Load(!ImportOverridePuTTYSessions); } } // Import (copy) files from zip archive ImportExportManager.Import(ImportLocationSelectedPath, importOptions); // Do the import (replace or add) if (importOptions.Contains(ImportExportManager.ImportExportOptions.NetworkInterfaceProfiles)) { NetworkInterfaceProfileManager.Import(ImportEverything || ImportOverrideNetworkInterfaceProfiles); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.IPScannerProfiles)) { IPScannerProfileManager.Import(ImportEverything || ImportOverrideIPScannerProfiles); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.WakeOnLANClients)) { WakeOnLANClientManager.Import(ImportEverything || ImportOverrideWakeOnLANClients); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.PortScannerProfiles)) { PortScannerProfileManager.Import(ImportEverything || ImportOverridePortScannerProfiles); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.RemoteDesktopSessions)) { RemoteDesktopSessionManager.Import(ImportEverything || ImportOverrideRemoteDesktopSessions); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.PuTTYSessions)) { PuTTYSessionManager.Import(ImportEverything || ImportOverridePuTTYSessions); } // Show the user a message what happened if (!ImportExportManager.ForceRestart) { settings.AffirmativeButtonText = LocalizationManager.GetStringByKey("String_Button_OK"); message = LocalizationManager.GetStringByKey("String_SettingsSuccessfullyImported") + Environment.NewLine; if (importOptions.Contains(ImportExportManager.ImportExportOptions.NetworkInterfaceProfiles)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_NetworkInterfaceProfilesReloaded")); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.IPScannerProfiles)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_IPScannerProfilesReloaded")); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.WakeOnLANClients)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_WakeOnLANClientsReloaded")); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.PortScannerProfiles)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_PortScannerProfilesReloaded")); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.RemoteDesktopSessions)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_RemoteDesktopSessionsReloaded")); } if (importOptions.Contains(ImportExportManager.ImportExportOptions.PuTTYSessions)) { message += Environment.NewLine + string.Format("* {0}", LocalizationManager.GetStringByKey("String_PuTTYSessionsReloaded")); } await dialogCoordinator.ShowMessageAsync(this, LocalizationManager.GetStringByKey("String_Header_Success"), message, MessageDialogStyle.Affirmative, settings); return; } // Close this view (this will restart the application) CloseAction(); } }