diff --git a/src/RDAExplorerGUI/App.config b/src/RDAExplorerGUI/App.config index 5142270..01afd42 100644 --- a/src/RDAExplorerGUI/App.config +++ b/src/RDAExplorerGUI/App.config @@ -25,6 +25,12 @@ True + + + + + True + diff --git a/src/RDAExplorerGUI/MainWindow.xaml.cs b/src/RDAExplorerGUI/MainWindow.xaml.cs index c620ad4..ace0487 100644 --- a/src/RDAExplorerGUI/MainWindow.xaml.cs +++ b/src/RDAExplorerGUI/MainWindow.xaml.cs @@ -39,6 +39,13 @@ public MainWindow() private void Window_Loaded(object sender, RoutedEventArgs e) { NewFile(); + + if (Settings.Default.SettingsUpgradeNeeded) + { + Settings.Default.Upgrade(); + Settings.Default.SettingsUpgradeNeeded = false; + Settings.Default.Save(); + } } private void MainWindow_Closing(object sender, CancelEventArgs e) @@ -125,7 +132,8 @@ private void _RebuildTreeView(BackgroundWorker wrk) foreach (RDASkippedDataSection skippedBlock in CurrentReader.SkippedDataSections) { string title = skippedBlock.blockInfo.fileCount + " encrypted files"; - treeView.Items.Add(new RDASkippedDataSectionTreeViewItem() { + treeView.Items.Add(new RDASkippedDataSectionTreeViewItem() + { Section = skippedBlock, Header = ControlExtension.BuildImageTextblock("pack://application:,,,/Images/Icons/error.png", title) }); @@ -333,8 +341,12 @@ private void file_Exit_Click(object sender, RoutedEventArgs e) private void archive_ExtractAll_Click(object sender, RoutedEventArgs e) { FolderBrowserDialog dlg = new FolderBrowserDialog(); + dlg.SelectedPath = Settings.Default.LastSelectedPathForExtraction; if (dlg.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; + + Settings.Default.LastSelectedPathForExtraction = dlg.SelectedPath;//settings are saved when window is closing + BackgroundWorker wrk = new BackgroundWorker(); wrk.WorkerReportsProgress = true; progressBar_Status.Visibility = Visibility.Visible; @@ -366,8 +378,12 @@ private void archive_ExtractAll_Click(object sender, RoutedEventArgs e) private void archive_ExtractSelected_Click(object sender, RoutedEventArgs e) { FolderBrowserDialog dlg = new FolderBrowserDialog(); + dlg.SelectedPath = Settings.Default.LastSelectedPathForExtraction; if (dlg.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; + + Settings.Default.LastSelectedPathForExtraction = dlg.SelectedPath;//settings are saved when window is closing + BackgroundWorker wrk = new BackgroundWorker(); wrk.WorkerReportsProgress = true; progressBar_Status.Visibility = Visibility.Visible; diff --git a/src/RDAExplorerGUI/Properties/Settings.Designer.cs b/src/RDAExplorerGUI/Properties/Settings.Designer.cs index bb7b597..346446d 100644 --- a/src/RDAExplorerGUI/Properties/Settings.Designer.cs +++ b/src/RDAExplorerGUI/Properties/Settings.Designer.cs @@ -82,5 +82,29 @@ public bool Window_IsMaximized { this["Window_IsMaximized"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string LastSelectedPathForExtraction { + get { + return ((string)(this["LastSelectedPathForExtraction"])); + } + set { + this["LastSelectedPathForExtraction"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("True")] + public bool SettingsUpgradeNeeded { + get { + return ((bool)(this["SettingsUpgradeNeeded"])); + } + set { + this["SettingsUpgradeNeeded"] = value; + } + } } } diff --git a/src/RDAExplorerGUI/Properties/Settings.settings b/src/RDAExplorerGUI/Properties/Settings.settings index d213915..b54afa9 100644 --- a/src/RDAExplorerGUI/Properties/Settings.settings +++ b/src/RDAExplorerGUI/Properties/Settings.settings @@ -17,5 +17,11 @@ True + + + + + True + \ No newline at end of file