private async void SelectSaveDataPath_Click(object sender, RoutedEventArgs e) { var dialog = new FolderBrowserDialog(); var dialogResult = dialog.ShowDialog(); if (dialogResult == DialogResult.OK) { var saveInAppData = Config.Instance.SaveDataInAppData.HasValue && Config.Instance.SaveDataInAppData.Value; if (!saveInAppData) { foreach (var value in new List <bool> { true, false }) { Config.Instance.SaveDataInAppData = value; Helper.CopyReplayFiles(); DeckStatsList.SetupDeckStatsFile(); DeckList.SetupDeckListFile(); DefaultDeckStats.SetupDefaultDeckStatsFile(); Config.Instance.DataDirPath = dialog.SelectedPath; } } Config.Instance.DataDirPath = dialog.SelectedPath; Config.Save(); if (!saveInAppData) { await Core.MainWindow.ShowMessage("Restart required.", "Click ok to restart HDT"); Core.MainWindow.Restart(); } } }