diff --git a/GBM/Forms/frmAddWizard.vb b/GBM/Forms/frmAddWizard.vb index 7892451..d504a48 100644 --- a/GBM/Forms/frmAddWizard.vb +++ b/GBM/Forms/frmAddWizard.vb @@ -434,7 +434,7 @@ Public Class frmAddWizard End If End If - sNewPath = mgrCommon.OpenFolderBrowser("Wizard_Save_Path", frmAddWizard_ChooseSavePath, sDefaultFolder, False, False) + sNewPath = mgrCommon.OpenClassicFolderBrowser("Wizard_Save_Path", frmAddWizard_ChooseSavePath, sDefaultFolder, False, False) If sNewPath <> String.Empty Then txtSavePath.Text = sNewPath End Sub diff --git a/GBM/Forms/frmGameManager.vb b/GBM/Forms/frmGameManager.vb index a8ba440..853bc9c 100644 --- a/GBM/Forms/frmGameManager.vb +++ b/GBM/Forms/frmGameManager.vb @@ -402,7 +402,7 @@ Public Class frmGameManager End If End If - sNewPath = mgrCommon.OpenFolderBrowser("GM_Process_Path", frmGameManager_ChooseExePath, sDefaultFolder, False, False) + sNewPath = mgrCommon.OpenFolderBrowser("GM_Process_Path", frmGameManager_ChooseExePath, sDefaultFolder, False) If sNewPath <> String.Empty Then txtAppPath.Text = sNewPath End Sub @@ -418,7 +418,7 @@ Public Class frmGameManager End If End If - sNewPath = mgrCommon.OpenFolderBrowser("GM_Save_Path", frmGameManager_ChooseSaveFolder, sDefaultFolder, False, False) + sNewPath = mgrCommon.OpenFolderBrowser("GM_Save_Path", frmGameManager_ChooseSaveFolder, sDefaultFolder, False) If sNewPath <> String.Empty Then txtSavePath.Text = sNewPath diff --git a/GBM/Forms/frmIncludeExclude.vb b/GBM/Forms/frmIncludeExclude.vb index eb5c16f..877dbe4 100644 --- a/GBM/Forms/frmIncludeExclude.vb +++ b/GBM/Forms/frmIncludeExclude.vb @@ -118,7 +118,7 @@ Public Class frmIncludeExclude End If End If - sNewPath = mgrCommon.OpenFolderBrowser("IE_Save_Path", frmIncludeExclude_BrowseSaveFolder, sDefaultFolder, False, False) + sNewPath = mgrCommon.OpenFolderBrowser("IE_Save_Path", frmIncludeExclude_BrowseSaveFolder, sDefaultFolder, False) If sNewPath <> String.Empty Then txtRootFolder.Text = sNewPath End Sub diff --git a/GBM/Forms/frmSettings.vb b/GBM/Forms/frmSettings.vb index 1a35ead..29ace88 100644 --- a/GBM/Forms/frmSettings.vb +++ b/GBM/Forms/frmSettings.vb @@ -390,7 +390,7 @@ Public Class frmSettings Private Sub btnBackupFolder_Click(sender As System.Object, e As System.EventArgs) Handles btnBackupFolder.Click Dim sNewFolder As String - sNewFolder = mgrCommon.OpenFolderBrowser("Settings_Backup_Path", frmSettings_BrowseFolder, oSettings.BackupFolder, True, False) + sNewFolder = mgrCommon.OpenClassicFolderBrowser("Settings_Backup_Path", frmSettings_BrowseFolder, oSettings.BackupFolder, True, False) If sNewFolder <> String.Empty Then txtBackupFolder.Text = sNewFolder End Sub diff --git a/GBM/Forms/frmStartUpWizard.vb b/GBM/Forms/frmStartUpWizard.vb index 2aff0d2..5aecfa3 100644 --- a/GBM/Forms/frmStartUpWizard.vb +++ b/GBM/Forms/frmStartUpWizard.vb @@ -211,7 +211,7 @@ Public Class frmStartUpWizard End If End If - sNewPath = mgrCommon.OpenFolderBrowser("Wizard_Backup_Path", frmStartUpWizard_BrowseFolder, sDefaultFolder, True, False) + sNewPath = mgrCommon.OpenClassicFolderBrowser("Wizard_Backup_Path", frmStartUpWizard_BrowseFolder, sDefaultFolder, True, False) If sNewPath <> String.Empty Then txtBackupPath.Text = sNewPath End Sub diff --git a/GBM/Forms/frmVariableManager.vb b/GBM/Forms/frmVariableManager.vb index a3d18d9..c0ad926 100644 --- a/GBM/Forms/frmVariableManager.vb +++ b/GBM/Forms/frmVariableManager.vb @@ -54,7 +54,7 @@ Public Class frmVariableManager End If End If - sNewPath = mgrCommon.OpenFolderBrowser("VM_Path", frmVariableManager_PathBrowse, sDefaultFolder, False, False) + sNewPath = mgrCommon.OpenFolderBrowser("VM_Path", frmVariableManager_PathBrowse, sDefaultFolder, False) If sNewPath <> String.Empty Then txtPath.Text = sNewPath End Sub diff --git a/GBM/Managers/mgrCommon.vb b/GBM/Managers/mgrCommon.vb index da8996b..2070adf 100644 --- a/GBM/Managers/mgrCommon.vb +++ b/GBM/Managers/mgrCommon.vb @@ -155,6 +155,39 @@ Public Class mgrCommon Return False End Function + Private Shared Function BuildFolderBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sDefaultFolder As String, ByRef fbBrowser As OpenFileDialog, Optional ByVal bSavedPath As Boolean = True) As Boolean + + Dim oSavedPath As New clsSavedPath + + fbBrowser.Title = sTitle + fbBrowser.InitialDirectory = sDefaultFolder + fbBrowser.ValidateNames = False + fbBrowser.CheckFileExists = False + fbBrowser.CheckPathExists = True + fbBrowser.FileName = mgrCommon_FolderSelection + + If bSavedPath Then + oSavedPath = mgrSavedPath.GetPathByName(sName) + If oSavedPath.Path <> String.Empty Then + If Directory.Exists(oSavedPath.Path) Then + fbBrowser.InitialDirectory = oSavedPath.Path + End If + End If + End If + + If fbBrowser.ShowDialog() = Windows.Forms.DialogResult.OK Then + If bSavedPath Then + oSavedPath.PathName = sName + oSavedPath.Path = Path.GetDirectoryName(fbBrowser.FileName) + mgrSavedPath.AddUpdatePath(oSavedPath) + End If + + Return True + End If + + Return False + End Function + Public Shared Function OpenFileBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sExtension As String, ByVal sFileType As String, ByVal sDefaultFolder As String, Optional ByVal bSavedPath As Boolean = True) As String Dim fbBrowser As New OpenFileDialog @@ -183,7 +216,21 @@ Public Class mgrCommon Return New String() {} End Function - Public Shared Function OpenFolderBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sDefaultFolder As String, ByVal bEnableNewFolder As Boolean, + Public Shared Function OpenFolderBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sDefaultFolder As String, Optional ByVal bSavedPath As Boolean = True) As String + Dim fbBrowser As New OpenFileDialog + Dim bResult As Boolean + Dim oSavedPath As New clsSavedPath + + bResult = BuildFolderBrowser(sName, sTitle, sDefaultFolder, fbBrowser, bSavedPath) + + If bResult Then + Return Path.GetDirectoryName(fbBrowser.FileName) + End If + + Return String.Empty + End Function + + Public Shared Function OpenClassicFolderBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sDefaultFolder As String, ByVal bEnableNewFolder As Boolean, Optional ByVal bSavedPath As Boolean = True) As String Dim fbBrowser As New FolderBrowserDialog Dim oSavedPath As New clsSavedPath diff --git a/GBM/My Project/Resources.Designer.vb b/GBM/My Project/Resources.Designer.vb index 442892c..d605dcd 100644 --- a/GBM/My Project/Resources.Designer.vb +++ b/GBM/My Project/Resources.Designer.vb @@ -6240,6 +6240,15 @@ Namespace My.Resources End Get End Property + ''' + ''' Looks up a localized string similar to Current Folder. + ''' + Friend ReadOnly Property mgrCommon_FolderSelection() As String + Get + Return ResourceManager.GetString("mgrCommon_FolderSelection", resourceCulture) + End Get + End Property + ''' ''' Looks up a localized string similar to [PARAM] GB. ''' diff --git a/GBM/My Project/Resources.resx b/GBM/My Project/Resources.resx index 8317101..73166b7 100644 --- a/GBM/My Project/Resources.resx +++ b/GBM/My Project/Resources.resx @@ -2371,4 +2371,7 @@ GBM is set to start automatically, but the desktop link is missing. Automatic start has been disabled, please re-install GBM using a package manager. + + Current Folder + \ No newline at end of file