Enhancement for issue #76
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
Public Class clsSavedPath
|
||||
Private sPathName As String = String.Empty
|
||||
Private sPath As String = String.Empty
|
||||
|
||||
Property PathName As String
|
||||
Get
|
||||
Return sPathName
|
||||
End Get
|
||||
Set(value As String)
|
||||
sPathName = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Property Path As String
|
||||
Get
|
||||
Return sPath
|
||||
End Get
|
||||
Set(value As String)
|
||||
sPath = value
|
||||
End Set
|
||||
End Property
|
||||
End Class
|
||||
@@ -425,8 +425,8 @@ Public Class frmAddWizard
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFileBrowser(frmAddWizard_ChooseProcess, "exe",
|
||||
frmAddWizard_Executable, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFileBrowser("Wizard_Process_Path", frmAddWizard_ChooseProcess, "exe",
|
||||
frmAddWizard_Executable, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtProcessPath.Text = sNewPath
|
||||
End Sub
|
||||
@@ -442,7 +442,7 @@ Public Class frmAddWizard
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmAddWizard_ChooseSavePath, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("Wizard_Save_Path", frmAddWizard_ChooseSavePath, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtSavePath.Text = sNewPath
|
||||
End Sub
|
||||
|
||||
+10
-10
@@ -288,8 +288,8 @@ Public Class frmGameManager
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFileBrowser(frmGameManager_ChooseExe, "exe",
|
||||
frmGameManager_Executable, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFileBrowser("GM_Process", frmGameManager_ChooseExe, "exe",
|
||||
frmGameManager_Executable, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then
|
||||
txtAppPath.Text = Path.GetDirectoryName(sNewPath)
|
||||
@@ -309,7 +309,7 @@ Public Class frmGameManager
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmGameManager_ChooseExePath, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("GM_Process_Path", frmGameManager_ChooseExePath, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtAppPath.Text = sNewPath
|
||||
End Sub
|
||||
@@ -325,7 +325,7 @@ Public Class frmGameManager
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmGameManager_ChooseSaveFolder, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("GM_Save_Path", frmGameManager_ChooseSaveFolder, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then
|
||||
txtSavePath.Text = sNewPath
|
||||
@@ -346,11 +346,11 @@ Public Class frmGameManager
|
||||
|
||||
'Unix Handler
|
||||
If Not mgrCommon.IsUnix Then
|
||||
sNewPath = mgrCommon.OpenFileBrowser(frmGameManager_ChooseCustomIcon, "ico",
|
||||
frmGameManager_Icon, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFileBrowser("GM_Icon", frmGameManager_ChooseCustomIcon, "ico",
|
||||
frmGameManager_Icon, sDefaultFolder, False, False)
|
||||
Else
|
||||
sNewPath = mgrCommon.OpenFileBrowser(frmGameManager_ChooseCustomIcon, "png",
|
||||
"PNG", sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFileBrowser("GM_Icon", frmGameManager_ChooseCustomIcon, "png",
|
||||
"PNG", sDefaultFolder, False, False)
|
||||
End If
|
||||
|
||||
If sNewPath <> String.Empty Then
|
||||
@@ -1410,7 +1410,7 @@ Public Class frmGameManager
|
||||
Private Sub ImportGameListFile()
|
||||
Dim sLocation As String
|
||||
|
||||
sLocation = mgrCommon.OpenFileBrowser(frmGameManager_ChooseImportXML, "xml", frmGameManager_XML, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False)
|
||||
sLocation = mgrCommon.OpenFileBrowser("XML_Import", frmGameManager_ChooseImportXML, "xml", frmGameManager_XML, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False)
|
||||
|
||||
If sLocation <> String.Empty Then
|
||||
If mgrMonitorList.DoImport(sLocation) Then
|
||||
@@ -1423,7 +1423,7 @@ Public Class frmGameManager
|
||||
Private Sub ExportGameList()
|
||||
Dim sLocation As String
|
||||
|
||||
sLocation = mgrCommon.SaveFileBrowser(frmGameManager_ChooseExportXML, "xml", frmGameManager_XML, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), frmGameManager_DefaultExportFileName & " " & Date.Now.ToString("dd-MMM-yyyy"))
|
||||
sLocation = mgrCommon.SaveFileBrowser("XML_Export", frmGameManager_ChooseExportXML, "xml", frmGameManager_XML, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), frmGameManager_DefaultExportFileName & " " & Date.Now.ToString("dd-MMM-yyyy"))
|
||||
|
||||
If sLocation <> String.Empty Then
|
||||
mgrMonitorList.ExportMonitorList(sLocation)
|
||||
|
||||
@@ -108,7 +108,7 @@ Public Class frmIncludeExclude
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmIncludeExclude_BrowseSaveFolder, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("IE_Save_Path", frmIncludeExclude_BrowseSaveFolder, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtRootFolder.Text = sNewPath
|
||||
End Sub
|
||||
|
||||
@@ -1249,7 +1249,7 @@ Public Class frmMain
|
||||
Private Sub SaveLog()
|
||||
Dim sLocation As String
|
||||
|
||||
sLocation = mgrCommon.SaveFileBrowser(frmMain_ChooseLogFile, "txt", frmMain_Text, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), frmMain_DefaultLogFileName & " " & Date.Now.ToString("dd-MMM-yyyy"))
|
||||
sLocation = mgrCommon.SaveFileBrowser("Log_File", frmMain_ChooseLogFile, "txt", frmMain_Text, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), frmMain_DefaultLogFileName & " " & Date.Now.ToString("dd-MMM-yyyy"))
|
||||
|
||||
If sLocation <> String.Empty Then
|
||||
mgrCommon.SaveText(txtLog.Text, sLocation)
|
||||
|
||||
@@ -336,13 +336,13 @@ 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(frmSettings_BrowseFolder, oSettings.BackupFolder, True)
|
||||
sNewFolder = mgrCommon.OpenFolderBrowser("Settings_Backup_Path", frmSettings_BrowseFolder, oSettings.BackupFolder, True, False)
|
||||
If sNewFolder <> String.Empty Then txtBackupFolder.Text = sNewFolder
|
||||
End Sub
|
||||
|
||||
Private Sub btn7zLocation_Click(sender As Object, e As EventArgs) Handles btn7zLocation.Click
|
||||
Dim sNewLocation As String
|
||||
sNewLocation = mgrCommon.OpenFileBrowser(frmSettings_Browse7za, "exe", frmSettings_7zaFileType, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False)
|
||||
sNewLocation = mgrCommon.OpenFileBrowser("7z_Browse", frmSettings_Browse7za, "exe", frmSettings_7zaFileType, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False)
|
||||
If sNewLocation <> String.Empty Then
|
||||
txt7zLocation.Text = sNewLocation
|
||||
GetUtilityInfo(txt7zLocation.Text)
|
||||
|
||||
@@ -215,7 +215,7 @@ Public Class frmStartUpWizard
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmStartUpWizard_BrowseFolder, sDefaultFolder, True)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("Wizard_Backup_Path", frmStartUpWizard_BrowseFolder, sDefaultFolder, True, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtBackupPath.Text = sNewPath
|
||||
End Sub
|
||||
|
||||
@@ -54,7 +54,7 @@ Public Class frmVariableManager
|
||||
End If
|
||||
End If
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(frmVariableManager_PathBrowse, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("VM_Path", frmVariableManager_PathBrowse, sDefaultFolder, False, False)
|
||||
|
||||
If sNewPath <> String.Empty Then txtPath.Text = sNewPath
|
||||
End Sub
|
||||
|
||||
@@ -121,6 +121,7 @@
|
||||
<Import Include="System.Windows.Forms" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Classes\clsSavedPath.vb" />
|
||||
<Compile Include="Classes\XML Serialize Classes\Tag.vb" />
|
||||
<Compile Include="Classes\XML Serialize Classes\Game.vb" />
|
||||
<Compile Include="Classes\clsGameTag.vb" />
|
||||
@@ -220,6 +221,7 @@
|
||||
<Compile Include="Managers\mgrMonitorList.vb" />
|
||||
<Compile Include="Managers\mgrPath.vb" />
|
||||
<Compile Include="Managers\mgrRestore.vb" />
|
||||
<Compile Include="Managers\mgrSavedPath.vb" />
|
||||
<Compile Include="Managers\mgrSettings.vb" />
|
||||
<Compile Include="Managers\mgrBackup.vb" />
|
||||
<Compile Include="Managers\mgrSQLite.vb" />
|
||||
|
||||
@@ -61,30 +61,66 @@ Public Class mgrCommon
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function SaveFileBrowser(ByVal sTitle As String, ByVal sExtension As String, ByVal sFileType As String, ByVal sDefaultFolder As String, ByVal sDefaultFile As String) As String
|
||||
Public Shared Function SaveFileBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sExtension As String, ByVal sFileType As String, ByVal sDefaultFolder As String,
|
||||
ByVal sDefaultFile As String, Optional ByVal bSavedPath As Boolean = True) As String
|
||||
Dim fbBrowser As New SaveFileDialog
|
||||
Dim oSavedPath As New clsSavedPath
|
||||
|
||||
fbBrowser.Title = sTitle
|
||||
fbBrowser.DefaultExt = sExtension
|
||||
fbBrowser.Filter = FormatString(mgrCommon_FilesFilter, New String() {sFileType, sExtension, sExtension})
|
||||
fbBrowser.InitialDirectory = sDefaultFolder
|
||||
fbBrowser.FileName = sDefaultFile
|
||||
fbBrowser.InitialDirectory = sDefaultFolder
|
||||
|
||||
If fbBrowser.ShowDialog() = Windows.Forms.DialogResult.OK Then
|
||||
Return fbBrowser.FileName
|
||||
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
|
||||
|
||||
Return String.Empty
|
||||
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 fbBrowser.FileName
|
||||
End If
|
||||
|
||||
Return String.Empty
|
||||
End Function
|
||||
|
||||
Public Shared Function OpenFileBrowser(ByVal sTitle As String, ByVal sExtension As String, ByVal sFileType As String, ByVal sDefaultFolder As String, ByVal bMulti As Boolean) As String
|
||||
Public Shared Function OpenFileBrowser(ByVal sName As String, ByVal sTitle As String, ByVal sExtension As String, ByVal sFileType As String, ByVal sDefaultFolder As String,
|
||||
ByVal bMulti As Boolean, Optional ByVal bSavedPath As Boolean = True) As String
|
||||
Dim fbBrowser As New OpenFileDialog
|
||||
Dim oSavedPath As New clsSavedPath
|
||||
|
||||
fbBrowser.Title = sTitle
|
||||
fbBrowser.DefaultExt = sExtension
|
||||
fbBrowser.Filter = FormatString(mgrCommon_FilesFilter, New String() {sFileType, sExtension, sExtension})
|
||||
fbBrowser.InitialDirectory = sDefaultFolder
|
||||
fbBrowser.Multiselect = bMulti
|
||||
fbBrowser.InitialDirectory = sDefaultFolder
|
||||
|
||||
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
|
||||
|
||||
If bMulti Then
|
||||
Dim sFileNames As String = String.Empty
|
||||
For Each sFileName As String In fbBrowser.FileNames
|
||||
@@ -100,12 +136,31 @@ Public Class mgrCommon
|
||||
Return String.Empty
|
||||
End Function
|
||||
|
||||
Public Shared Function OpenFolderBrowser(ByVal sTitle As String, ByVal sDefaultFolder As String, ByVal bEnableNewFolder As Boolean) As String
|
||||
Public Shared Function OpenFolderBrowser(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
|
||||
|
||||
fbBrowser.Description = sTitle
|
||||
fbBrowser.SelectedPath = sDefaultFolder
|
||||
fbBrowser.ShowNewFolderButton = bEnableNewFolder
|
||||
|
||||
If bSavedPath Then
|
||||
oSavedPath = mgrSavedPath.GetPathByName(sName)
|
||||
If oSavedPath.Path <> String.Empty Then
|
||||
If Directory.Exists(oSavedPath.Path) Then
|
||||
fbBrowser.SelectedPath = oSavedPath.Path
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If fbBrowser.ShowDialog() = Windows.Forms.DialogResult.OK Then
|
||||
If bSavedPath Then
|
||||
oSavedPath.PathName = sName
|
||||
oSavedPath.Path = fbBrowser.SelectedPath
|
||||
mgrSavedPath.AddUpdatePath(oSavedPath)
|
||||
End If
|
||||
|
||||
Return fbBrowser.SelectedPath
|
||||
End If
|
||||
|
||||
|
||||
@@ -335,7 +335,7 @@ Public Class mgrPath
|
||||
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
|
||||
Dim sNewPath As String
|
||||
|
||||
sNewPath = mgrCommon.OpenFolderBrowser(mgrPath_ChoosePath, sDefaultFolder, False)
|
||||
sNewPath = mgrCommon.OpenFolderBrowser("Manual_Game_Location", mgrPath_ChoosePath, sDefaultFolder, False)
|
||||
|
||||
Return sNewPath
|
||||
End Function
|
||||
|
||||
@@ -76,6 +76,9 @@ Public Class mgrSQLite
|
||||
"SupressBackup BOOLEAN NOT NULL, SupressBackupThreshold INTEGER NOT NULL, CompressionLevel INTEGER NOT NULL, Custom7zArguments TEXT, " &
|
||||
"Custom7zLocation TEXT, SyncFields INTEGER NOT NULL, AutoSaveLog BOOLEAN NOT NULL, AutoRestore BOOLEAN NOT NULL, AutoMark BOOLEAN NOT NULL);"
|
||||
|
||||
'Add Tables (SavedPath)
|
||||
sSql &= "CREATE TABLE savedpath (PathName TEXT NOT NULL PRIMARY KEY, Path TEXT NOT NULL);"
|
||||
|
||||
'Add Tables (Monitor List)
|
||||
sSql &= "CREATE TABLE monitorlist (MonitorID TEXT NOT NULL UNIQUE, Name TEXT NOT NULL, Process TEXT NOT NULL, Path TEXT, " &
|
||||
"AbsolutePath BOOLEAN NOT NULL, FolderSave BOOLEAN NOT NULL, FileType TEXT, TimeStamp BOOLEAN NOT NULL, ExcludeList TEXT NOT NULL, " &
|
||||
@@ -639,6 +642,28 @@ Public Class mgrSQLite
|
||||
End If
|
||||
End If
|
||||
|
||||
'1.02 Upgrade
|
||||
If GetDatabaseVersion() < 102 Then
|
||||
If eDatabase = Database.Local Then
|
||||
'Backup DB before starting
|
||||
BackupDB("v101")
|
||||
|
||||
'Add Table (SavedPath)
|
||||
sSQL = "CREATE TABLE savedpath (PathName TEXT NOT NULL PRIMARY KEY, Path TEXT NOT NULL);"
|
||||
sSQL &= "PRAGMA user_version=102"
|
||||
|
||||
RunParamQuery(sSQL, New Hashtable)
|
||||
End If
|
||||
If eDatabase = Database.Remote Then
|
||||
'Backup DB before starting
|
||||
BackupDB("v101")
|
||||
|
||||
sSQL = "PRAGMA user_version=102"
|
||||
|
||||
RunParamQuery(sSQL, New Hashtable)
|
||||
End If
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Function GetDBSize() As Long
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
Public Class mgrSavedPath
|
||||
|
||||
|
||||
Private Shared Function MapToObject(ByVal dr As DataRow) As clsSavedPath
|
||||
Dim oSavedPath As New clsSavedPath
|
||||
|
||||
oSavedPath.PathName = CStr(dr("PathName"))
|
||||
oSavedPath.Path = CStr(dr("Path"))
|
||||
|
||||
Return oSavedPath
|
||||
End Function
|
||||
|
||||
Private Shared Function SetCoreParameters(ByVal oSavedPath As clsSavedPath) As Hashtable
|
||||
Dim hshParams As New Hashtable
|
||||
|
||||
hshParams.Add("PathName", oSavedPath.PathName)
|
||||
hshParams.Add("Path", oSavedPath.Path)
|
||||
|
||||
Return hshParams
|
||||
End Function
|
||||
|
||||
Public Shared Function GetPathByName(ByVal sPathName As String) As clsSavedPath
|
||||
Dim oDatabase As New mgrSQLite(mgrSQLite.Database.Local)
|
||||
Dim oData As DataSet
|
||||
Dim sSQL As String
|
||||
Dim hshParams As New Hashtable
|
||||
Dim oSavedPath As New clsSavedPath
|
||||
|
||||
sSQL = "SELECT PathName, Path from savedpath WHERE PathName=@PathName;"
|
||||
|
||||
hshParams.Add("PathName", sPathName)
|
||||
|
||||
oData = oDatabase.ReadParamData(sSQL, hshParams)
|
||||
|
||||
For Each dr As DataRow In oData.Tables(0).Rows
|
||||
oSavedPath = MapToObject(dr)
|
||||
Next
|
||||
|
||||
Return oSavedPath
|
||||
End Function
|
||||
|
||||
Public Shared Sub AddUpdatePath(ByVal oSavedPath As clsSavedPath)
|
||||
Dim oDatabase As New mgrSQLite(mgrSQLite.Database.Local)
|
||||
Dim sSQL As String
|
||||
Dim hshParams As Hashtable
|
||||
|
||||
sSQL = "INSERT OR REPLACE INTO savedpath (PathName, Path) VALUES (@PathName, @Path);"
|
||||
|
||||
hshParams = SetCoreParameters(oSavedPath)
|
||||
|
||||
oDatabase.RunParamQuery(sSQL, hshParams)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -14,7 +14,7 @@ Imports System.Runtime.InteropServices
|
||||
<Assembly: AssemblyDescription("Game Backup Monitor")>
|
||||
<Assembly: AssemblyCompany("Michael J. Seiferling")>
|
||||
<Assembly: AssemblyProduct("Game Backup Monitor")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2016 Michael J. Seiferling")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2017 Michael J. Seiferling")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
@@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
|
||||
' by using the '*' as shown below:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.0.1.*")>
|
||||
<Assembly: AssemblyFileVersion("1.0.1.0")>
|
||||
<Assembly: AssemblyVersion("1.0.2.*")>
|
||||
<Assembly: AssemblyFileVersion("1.0.2.0")>
|
||||
|
||||
<Assembly: NeutralResourcesLanguageAttribute("en")>
|
||||
Reference in New Issue
Block a user