diff --git a/GBM/Forms/frmGameManager.Designer.vb b/GBM/Forms/frmGameManager.Designer.vb
index 09f743d..0191fc4 100644
--- a/GBM/Forms/frmGameManager.Designer.vb
+++ b/GBM/Forms/frmGameManager.Designer.vb
@@ -103,6 +103,7 @@ Partial Class frmGameManager
Me.cmsDeleteOne = New System.Windows.Forms.ToolStripMenuItem()
Me.cmsDeleteAll = New System.Windows.Forms.ToolStripMenuItem()
Me.btnProcesses = New System.Windows.Forms.Button()
+ Me.ttFullPath = New System.Windows.Forms.ToolTip(Me.components)
Me.grpConfig.SuspendLayout()
CType(Me.nudLimit, System.ComponentModel.ISupportInitialize).BeginInit()
Me.grpExtra.SuspendLayout()
@@ -892,6 +893,12 @@ Partial Class frmGameManager
Me.btnProcesses.Text = "Processes..."
Me.btnProcesses.UseVisualStyleBackColor = True
'
+ 'ttFullPath
+ '
+ Me.ttFullPath.AutoPopDelay = 5000
+ Me.ttFullPath.InitialDelay = 300
+ Me.ttFullPath.ReshowDelay = 60
+ '
'frmGameManager
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -1022,4 +1029,5 @@ Partial Class frmGameManager
Friend WithEvents chkRegEx As CheckBox
Friend WithEvents btnGameID As Button
Friend WithEvents btnProcesses As Button
+ Friend WithEvents ttFullPath As ToolTip
End Class
diff --git a/GBM/Forms/frmGameManager.resx b/GBM/Forms/frmGameManager.resx
index aa8299a..30ad1df 100644
--- a/GBM/Forms/frmGameManager.resx
+++ b/GBM/Forms/frmGameManager.resx
@@ -123,4 +123,7 @@
127, 17
+
+ 275, 17
+
\ No newline at end of file
diff --git a/GBM/Forms/frmGameManager.vb b/GBM/Forms/frmGameManager.vb
index 3f16a01..10d9112 100644
--- a/GBM/Forms/frmGameManager.vb
+++ b/GBM/Forms/frmGameManager.vb
@@ -171,7 +171,9 @@ Public Class frmGameManager
sPath = mgrPath.DetermineRelativePath(sAppPath, sSavePath)
End If
Else
- sPath = mgrPath.ReverseSpecialPaths(sPath)
+ If Not oSettings.ShowResolvedPaths Then
+ sPath = mgrPath.ReverseSpecialPaths(sPath)
+ End If
End If
Return sPath
@@ -862,6 +864,7 @@ Public Class frmGameManager
Dim oData As KeyValuePair(Of String, String) = lstGames.SelectedItems(0)
Dim oApp As clsGame = DirectCast(GameData(oData.Key), clsGame)
+ Dim sttPath As String
'Core
txtID.Text = oApp.ID
@@ -869,7 +872,14 @@ Public Class frmGameManager
txtProcess.Text = oApp.ProcessName
chkRegEx.Checked = oApp.IsRegEx
txtParameter.Text = oApp.Parameter
- txtSavePath.Text = oApp.TruePath
+ If oSettings.ShowResolvedPaths Then
+ txtSavePath.Text = oApp.Path
+ sttPath = oApp.TruePath
+ Else
+ txtSavePath.Text = oApp.TruePath
+ sttPath = oApp.Path
+ End If
+ If oApp.AbsolutePath Then ttFullPath.SetToolTip(txtSavePath, sttPath)
txtFileType.Text = oApp.FileType
txtExclude.Text = oApp.ExcludeList
chkFolderSave.Checked = oApp.FolderSave
@@ -1906,6 +1916,7 @@ Public Class frmGameManager
End Sub
Private Sub txtSavePath_TextChanged(sender As Object, e As EventArgs) Handles txtSavePath.TextChanged
+ ttFullPath.RemoveAll()
VerifyCleanFolder()
End Sub
diff --git a/GBM/Forms/frmSettings.Designer.vb b/GBM/Forms/frmSettings.Designer.vb
index 3f9a80a..fba3c43 100644
--- a/GBM/Forms/frmSettings.Designer.vb
+++ b/GBM/Forms/frmSettings.Designer.vb
@@ -73,6 +73,7 @@ Partial Class frmSettings
Me.chkStartWindows = New System.Windows.Forms.CheckBox()
Me.chkStartToTray = New System.Windows.Forms.CheckBox()
Me.chkMonitorOnStartup = New System.Windows.Forms.CheckBox()
+ Me.chkShowResolvedPaths = New System.Windows.Forms.CheckBox()
Me.grpFolderOptions.SuspendLayout()
Me.grp7zGeneral.SuspendLayout()
Me.pnlBackup.SuspendLayout()
@@ -102,7 +103,7 @@ Partial Class frmSettings
'
'btnOptionalFields
'
- Me.btnOptionalFields.Location = New System.Drawing.Point(6, 65)
+ Me.btnOptionalFields.Location = New System.Drawing.Point(6, 88)
Me.btnOptionalFields.Name = "btnOptionalFields"
Me.btnOptionalFields.Size = New System.Drawing.Size(216, 23)
Me.btnOptionalFields.TabIndex = 3
@@ -443,7 +444,7 @@ Partial Class frmSettings
Me.grpGameMonitoringOptions.Controls.Add(Me.lblMinutes)
Me.grpGameMonitoringOptions.Controls.Add(Me.chkShowDetectionTips)
Me.grpGameMonitoringOptions.Controls.Add(Me.nudSuppressBackupThreshold)
- Me.grpGameMonitoringOptions.Location = New System.Drawing.Point(6, 115)
+ Me.grpGameMonitoringOptions.Location = New System.Drawing.Point(6, 141)
Me.grpGameMonitoringOptions.Name = "grpGameMonitoringOptions"
Me.grpGameMonitoringOptions.Size = New System.Drawing.Size(354, 65)
Me.grpGameMonitoringOptions.TabIndex = 1
@@ -481,7 +482,7 @@ Partial Class frmSettings
'
Me.grpLogOptions.Controls.Add(Me.chkDisableSyncMessages)
Me.grpLogOptions.Controls.Add(Me.chkAutoSaveLog)
- Me.grpLogOptions.Location = New System.Drawing.Point(6, 186)
+ Me.grpLogOptions.Location = New System.Drawing.Point(6, 212)
Me.grpLogOptions.Name = "grpLogOptions"
Me.grpLogOptions.Size = New System.Drawing.Size(354, 65)
Me.grpLogOptions.TabIndex = 2
@@ -500,12 +501,13 @@ Partial Class frmSettings
'
'grpGameData
'
+ Me.grpGameData.Controls.Add(Me.chkShowResolvedPaths)
Me.grpGameData.Controls.Add(Me.chkSessionTracking)
Me.grpGameData.Controls.Add(Me.chkTimeTracking)
Me.grpGameData.Controls.Add(Me.btnOptionalFields)
Me.grpGameData.Location = New System.Drawing.Point(6, 12)
Me.grpGameData.Name = "grpGameData"
- Me.grpGameData.Size = New System.Drawing.Size(354, 97)
+ Me.grpGameData.Size = New System.Drawing.Size(354, 123)
Me.grpGameData.TabIndex = 0
Me.grpGameData.TabStop = False
Me.grpGameData.Text = "Game Data Options"
@@ -598,6 +600,16 @@ Partial Class frmSettings
Me.chkMonitorOnStartup.Text = "Start monitoring on launch"
Me.chkMonitorOnStartup.UseVisualStyleBackColor = True
'
+ 'chkShowResolvedPaths
+ '
+ Me.chkShowResolvedPaths.AutoSize = True
+ Me.chkShowResolvedPaths.Location = New System.Drawing.Point(6, 65)
+ Me.chkShowResolvedPaths.Name = "chkShowResolvedPaths"
+ Me.chkShowResolvedPaths.Size = New System.Drawing.Size(154, 17)
+ Me.chkShowResolvedPaths.TabIndex = 3
+ Me.chkShowResolvedPaths.Text = "Show resolved save paths "
+ Me.chkShowResolvedPaths.UseVisualStyleBackColor = True
+ '
'frmSettings
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@@ -698,4 +710,5 @@ Partial Class frmSettings
Friend WithEvents chkStartToTray As CheckBox
Friend WithEvents chkMonitorOnStartup As CheckBox
Friend WithEvents grpGameMonitoringOptions As GroupBox
+ Friend WithEvents chkShowResolvedPaths As CheckBox
End Class
diff --git a/GBM/Forms/frmSettings.vb b/GBM/Forms/frmSettings.vb
index 59584ae..49a0443 100644
--- a/GBM/Forms/frmSettings.vb
+++ b/GBM/Forms/frmSettings.vb
@@ -60,6 +60,7 @@ Public Class frmSettings
oSettings.AutoMark = chkAutoMark.Checked
oSettings.TimeTracking = chkTimeTracking.Checked
oSettings.SessionTracking = chkSessionTracking.Checked
+ oSettings.ShowResolvedPaths = chkShowResolvedPaths.Checked
oSettings.SuppressBackup = chkSuppressBackup.Checked
oSettings.SuppressBackupThreshold = nudSuppressBackupThreshold.Value
oSettings.CompressionLevel = cboCompression.SelectedValue
@@ -189,6 +190,7 @@ Public Class frmSettings
txtBackupFolder.Text = oSettings.BackupFolder
chkTimeTracking.Checked = oSettings.TimeTracking
chkSessionTracking.Checked = oSettings.SessionTracking
+ chkShowResolvedPaths.Checked = oSettings.ShowResolvedPaths
chkSuppressBackup.Checked = oSettings.SuppressBackup
nudSuppressBackupThreshold.Value = oSettings.SuppressBackupThreshold
nudSuppressBackupThreshold.Enabled = chkSuppressBackup.Checked
@@ -322,6 +324,7 @@ Public Class frmSettings
grpLogOptions.Text = frmSettings_grpLogOptions
chkDisableSyncMessages.Text = frmSettings_chkDisableSyncMessages
grpGameMonitoringOptions.Text = frmSettings_grpGameMonitoringOptions
+ chkShowResolvedPaths.Text = frmSettings_chkShowResolvedPaths
'Unix Handler
If mgrCommon.IsUnix Then
diff --git a/GBM/Managers/mgrSQLite.vb b/GBM/Managers/mgrSQLite.vb
index 65db77a..7ead303 100644
--- a/GBM/Managers/mgrSQLite.vb
+++ b/GBM/Managers/mgrSQLite.vb
@@ -75,7 +75,7 @@ Public Class mgrSQLite
"BackupFolder TEXT NOT NULL, StartWithWindows BOOLEAN NOT NULL, TimeTracking BOOLEAN NOT NULL, " &
"SuppressBackup BOOLEAN NOT NULL, SuppressBackupThreshold 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, SessionTracking BOOLEAN NOT NULL, " &
- "SuppressMessages INTEGER NOT NULL, BackupOnLaunch BOOLEAN NOT NULL, UseGameID BOOLEAN NOT NULL, DisableSyncMessages BOOLEAN NOT NULL);"
+ "SuppressMessages INTEGER NOT NULL, BackupOnLaunch BOOLEAN NOT NULL, UseGameID BOOLEAN NOT NULL, DisableSyncMessages BOOLEAN NOT NULL, ShowResolvedPaths BOOLEAN NOT NULL);"
'Add Tables (SavedPath)
sSql &= "CREATE TABLE savedpath (PathName TEXT NOT NULL PRIMARY KEY, Path TEXT NOT NULL);"
@@ -855,7 +855,10 @@ Public Class mgrSQLite
'Backup DB before starting
BackupDB("v110")
- sSQL = "PRAGMA user_version=115"
+ 'Add new setting
+ sSQL = "ALTER TABLE settings ADD COLUMN ShowResolvedPaths BOOLEAN NOT NULL DEFAULT 1;"
+
+ sSQL &= "PRAGMA user_version=115"
RunParamQuery(sSQL, New Hashtable)
End If
diff --git a/GBM/Managers/mgrSettings.vb b/GBM/Managers/mgrSettings.vb
index d7706b1..c4c6311 100644
--- a/GBM/Managers/mgrSettings.vb
+++ b/GBM/Managers/mgrSettings.vb
@@ -25,6 +25,7 @@ Public Class mgrSettings
Private bBackupOnLaunch As Boolean = True
Private bUseGameID As Boolean = False
Private bDisableSyncMessages As Boolean = True
+ Private bShowResolvedPaths As Boolean = True
Public Enum eSuppressMessages
None = 0
@@ -175,6 +176,15 @@ Public Class mgrSettings
End Set
End Property
+ Property ShowResolvedPaths As Boolean
+ Get
+ Return bShowResolvedPaths
+ End Get
+ Set(value As Boolean)
+ bShowResolvedPaths = value
+ End Set
+ End Property
+
ReadOnly Property Prepared7zArguments As String
Get
'Prepare custom 7z arguments
@@ -309,7 +319,7 @@ Public Class mgrSettings
sSQL &= "@CreateSubFolder, @ShowOverwriteWarning, @RestoreOnLaunch, @BackupFolder, @StartWithWindows, "
sSQL &= "@TimeTracking, @SuppressBackup, @SuppressBackupThreshold, @CompressionLevel, @Custom7zArguments, @Custom7zLocation, "
sSQL &= "@SyncFields, @AutoSaveLog, @AutoRestore, @AutoMark, @SessionTracking, @SuppressMessages, @BackupOnLaunch, @UseGameID, "
- sSQL &= "@DisableSyncMessages)"
+ sSQL &= "@DisableSyncMessages, @ShowResolvedPaths)"
hshParams.Add("MonitorOnStartup", MonitorOnStartup)
hshParams.Add("StartToTray", StartToTray)
@@ -335,6 +345,7 @@ Public Class mgrSettings
hshParams.Add("BackupOnLaunch", BackupOnLaunch)
hshParams.Add("UseGameID", UseGameID)
hshParams.Add("DisableSyncMessages", DisableSyncMessages)
+ hshParams.Add("ShowResolvedPaths", ShowResolvedPaths)
oDatabase.RunParamQuery(sSQL, hshParams)
End Sub
@@ -374,6 +385,7 @@ Public Class mgrSettings
BackupOnLaunch = CBool(dr("BackupOnLaunch"))
UseGameID = CBool(dr("UseGameID"))
DisableSyncMessages = CBool(dr("DisableSyncMessages"))
+ ShowResolvedPaths = CBool(dr("ShowResolvedPaths"))
Next
oDatabase.Disconnect()
diff --git a/GBM/My Project/Resources.Designer.vb b/GBM/My Project/Resources.Designer.vb
index 4ce4134..90b5240 100644
--- a/GBM/My Project/Resources.Designer.vb
+++ b/GBM/My Project/Resources.Designer.vb
@@ -4560,6 +4560,15 @@ Namespace My.Resources
End Get
End Property
+ '''
+ ''' Looks up a localized string similar to Show resolved save paths.
+ '''
+ Friend ReadOnly Property frmSettings_chkShowResolvedPaths() As String
+ Get
+ Return ResourceManager.GetString("frmSettings_chkShowResolvedPaths", resourceCulture)
+ End Get
+ End Property
+
'''
''' Looks up a localized string similar to Start to system tray.
'''
diff --git a/GBM/My Project/Resources.resx b/GBM/My Project/Resources.resx
index 65d3277..f3a1ed0 100644
--- a/GBM/My Project/Resources.resx
+++ b/GBM/My Project/Resources.resx
@@ -2221,4 +2221,7 @@
An error occured while building a list of environment variables.[BR][BR][PARAM]
+
+ Show resolved save paths
+
\ No newline at end of file