private void ResetSettingsBtn_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show(Properties.Resources.ResetSettingsMsg, Properties.Resources.MainWindowTitle, MessageBoxButton.YesNoCancel, MessageBoxImage.Question) == MessageBoxResult.Yes) { Definitions.Settings = new() { Language = "_default", IsFirstRun = false, // Default is true but there is no need to show the "Welcome" prompt to the user again. IsMaximized = false, PageId = 0, CurrentProfileIndex = 0, MakeAutoSave = true, AutoSaveDay = 1, SavePath = $@"{Env.AppDataPath}\Gavilya\Backups", DefaultGavilyaHomePage = GavilyaWindowPages.Home, MaxNumberRecentGamesShown = 4, ShowMoreUnplayedGamesRecommanded = true, HideSearchBar = false }; SettingsSaver.Save(); // Save changes MessageBox.Show(Properties.Resources.GavilyaNeedsRestartChanges, Properties.Resources.ResetSettings, MessageBoxButton.OK, MessageBoxImage.Information); Process.Start(Directory.GetCurrentDirectory() + @"\Gavilya.exe"); Environment.Exit(0); // Quit } } }
private void InitUI() { // Load auto save settings if (Definitions.Settings.MakeAutoSave is null) { Definitions.Settings.MakeAutoSave = true; // Set value } if (Definitions.Settings.AutoSaveDay is null) { Definitions.Settings.AutoSaveDay = 1; // Set value } if (Definitions.Settings.SavePath is null) { Definitions.Settings.SavePath = $@"{Env.AppDataPath}\Gavilya\Backups"; // Set value } SettingsSaver.Save(); // Save changes // Combobox SaveTime.Items.Clear(); // Clear for (int i = 1; i <= 31; i++) { SaveTime.Items.Add(i); // Add item } SaveTime.SelectedIndex = Definitions.Settings.AutoSaveDay.Value - 1; // Set MakeAutoSavesChk.IsChecked = Definitions.Settings.MakeAutoSave.Value; // Check/Uncheck PathTxt.Text = Definitions.Settings.SavePath is null ? Properties.Resources.SelectADirectory : Definitions.Settings.SavePath; // Set HandleCheckbox(); }
private void NextPage() { new MainWindow().Show(); // Show the main window FirstRun.Close(); // Close the window Definitions.Settings.IsFirstRun = false; // Set the FirstRun Settings to false SettingsSaver.Save(); }
private void RecentPageBorder_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { RecentPageRadioBtn.IsChecked = true; // Check CheckedBorder = RecentPageBorder; // Set checked border RefreshBorders(); // Refresh Definitions.Settings.PageId = 1; // Set the startup page SettingsSaver.Save(); // Save changes }
private void ProfilePageBorder_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { ProfilePageRadioBtn.IsChecked = true; // Check PageCheckedBorder = ProfilePageBorder; // Set checked border RefreshPageBorders(); // Refresh Definitions.Settings.DefaultGavilyaHomePage = GavilyaWindowPages.Profile; SettingsSaver.Save(); // Save changes }
private void SaveTime_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { Definitions.Settings.AutoSaveDay = (int)SaveTime.SelectedItem; // Set SettingsSaver.Save(); } catch { } }
private void HideSearchBarChk_Checked(object sender, RoutedEventArgs e) { Definitions.Settings.HideSearchBar = HideSearchBarChk.IsChecked; // Set settings value SettingsSaver.Save(); // Save changes // Hide search bar in MainWindow Definitions.MainWindow.SearchBox.Visibility = HideSearchBarChk.IsChecked.Value ? Visibility.Collapsed : Visibility.Visible; // Hide Definitions.MainWindow.SearchBtn.Visibility = !HideSearchBarChk.IsChecked.Value ? Visibility.Collapsed : Visibility.Visible; // Hide // Reset toggle search button state Definitions.MainWindow.SearchBtn.Background = new SolidColorBrush(Colors.Transparent); // Set default background color Definitions.MainWindow.IsSearchVisible = false; // Reset to default value }
protected override void OnStartup(StartupEventArgs e) { SettingsSaver.Load(); // Load the settings Global.ChangeLanguage(); // Change the language Definitions.GameInfoPage = new(); // Create the page Definitions.GameInfoPage2 = new(); // Create the page ProfileManager.LoadProfiles(); // Load profiles GameSaver.Load(); // Load the .gav file in the Definitions class Definitions.StatGameInfoControl = new(); // New control Definitions.Statistics = new(); // New page Definitions.HomePage = new(); RecentGamesPage recentGamesPage = new(); // RecentGamesPage Definitions.RecentGamesPage = recentGamesPage; // Define the RecentGamesPage Definitions.RecentGamesPage.LoadGames(); // Load the games GamesListPage gamesListPage = new(); // GamesListPage Definitions.GamesListPage = gamesListPage; // Define the GamesListPage Definitions.GamesListPage.LoadGames(); // Load the games Definitions.LibraryPage = new(); Definitions.ProfilePage = new(); if (Definitions.Settings.DefaultGavilyaHomePage is null) { Definitions.Settings.DefaultGavilyaHomePage = Enums.GavilyaWindowPages.Home; // Set default value SettingsSaver.Save(); // Save changes } if (Definitions.Settings.IsFirstRun) // If it is the app first run { new FirstRun().Show(); // Show the first run experience } else { int?pageID = (e.Args.Length >= 2 && e.Args[0] == "/page") ? int.Parse(e.Args[1]) : null; new MainWindow(pageID == null ? null : (Enums.GavilyaWindowPages)pageID).Show(); // Show the regular main window Global.CreateJumpLists(); } }
private void SaveButton_Click(object sender, RoutedEventArgs e) { if ((string)Languages.SelectedItem != Properties.Resources.Default) // If the language is not default { Definitions.Settings.Language = Definitions.LanguagesCodes[Definitions.Languages.IndexOf((string)Languages.SelectedItem)]; } else { Definitions.Settings.Language = "_default"; // Set the language to default } SettingsSaver.Save(); if (MessageBox.Show(Properties.Resources.GavilyaNeedsRestartChanges, Properties.Resources.MainWindowTitle, MessageBoxButton.YesNoCancel, MessageBoxImage.Question) == MessageBoxResult.Yes) { Process.Start(Directory.GetCurrentDirectory() + @"\Gavilya.exe"); Environment.Exit(0); } }
private void Browse_Click(object sender, RoutedEventArgs e) { try { SaveFileDialog saveFileDialog = new(); // Create a SaveFileDialog saveFileDialog.FileName = $@"{Definitions.Settings.SavePath}\GavilyaGames_{Definitions.Profiles[Definitions.Settings.CurrentProfileIndex].Name}_{DateTime.Now:yyyy_MM_dd_HH_mm_ss}.gav"; // File name saveFileDialog.Filter = $"{Properties.Resources.GavFiles}|*.gav"; // Extension saveFileDialog.Title = Properties.Resources.SaveLocation; // Title if (saveFileDialog.ShowDialog() ?? true) { string fileLocation = System.IO.Path.GetDirectoryName(saveFileDialog.FileName); // Location of the file Definitions.Settings.SavePath = fileLocation; // Set SettingsSaver.Save(); InitUI(); } } catch (Exception ex) { MessageBox.Show(ex.Message, Properties.Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error); } }
private void DisplayedUnusedGamesChk_Checked(object sender, RoutedEventArgs e) { Definitions.Settings.ShowMoreUnplayedGamesRecommanded = DisplayedUnusedGamesChk.IsChecked; // Set value SettingsSaver.Save(); // Save the settings }
private void MakeAutoSavesChk_Unchecked(object sender, RoutedEventArgs e) { HandleCheckbox(); // Handle Definitions.Settings.MakeAutoSave = MakeAutoSavesChk.IsChecked.Value; // Set SettingsSaver.Save(); // Save changes }