From 3c64ef3320991cb833ad96f7e6b8614cf302aa98 Mon Sep 17 00:00:00 2001 From: "Michael J. Seiferling" Date: Thu, 10 Dec 2015 21:35:51 -0600 Subject: [PATCH] Moved import / export features into Game Manager --- GBM/Forms/frmGameManager.Designer.vb | 144 +++++++++++++++++-------- GBM/Forms/frmGameManager.resx | 3 + GBM/Forms/frmGameManager.vb | 64 ++++++++++- GBM/Forms/frmMain.Designer.vb | 100 +++-------------- GBM/Forms/frmMain.vb | 78 ++------------ GBM/Forms/frmStartUpWizard.Designer.vb | 4 +- GBM/Forms/frmStartUpWizard.vb | 2 +- 7 files changed, 192 insertions(+), 203 deletions(-) diff --git a/GBM/Forms/frmGameManager.Designer.vb b/GBM/Forms/frmGameManager.Designer.vb index d24c0c6..68f0d25 100644 --- a/GBM/Forms/frmGameManager.Designer.vb +++ b/GBM/Forms/frmGameManager.Designer.vb @@ -22,6 +22,7 @@ Partial Class frmGameManager 'Do not modify it using the code editor. _ Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() Me.btnAdd = New System.Windows.Forms.Button() Me.btnDelete = New System.Windows.Forms.Button() Me.btnBackup = New System.Windows.Forms.Button() @@ -83,12 +84,18 @@ Partial Class frmGameManager Me.optBackupData = New System.Windows.Forms.RadioButton() Me.optPendingRestores = New System.Windows.Forms.RadioButton() Me.optAllGames = New System.Windows.Forms.RadioButton() + Me.btnImport = New System.Windows.Forms.Button() + Me.btnExport = New System.Windows.Forms.Button() + Me.cmsImport = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.cmsOfficial = New System.Windows.Forms.ToolStripMenuItem() + Me.cmsFile = New System.Windows.Forms.ToolStripMenuItem() Me.grpConfig.SuspendLayout() Me.grpExtra.SuspendLayout() CType(Me.pbIcon, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.nudHours, System.ComponentModel.ISupportInitialize).BeginInit() Me.grpStats.SuspendLayout() Me.grpFilter.SuspendLayout() + Me.cmsImport.SuspendLayout() Me.SuspendLayout() ' 'btnAdd @@ -119,7 +126,7 @@ Partial Class frmGameManager Me.btnBackup.Location = New System.Drawing.Point(616, 525) Me.btnBackup.Name = "btnBackup" Me.btnBackup.Size = New System.Drawing.Size(75, 23) - Me.btnBackup.TabIndex = 14 + Me.btnBackup.TabIndex = 16 Me.btnBackup.Text = "&Backup" Me.btnBackup.UseVisualStyleBackColor = True ' @@ -129,7 +136,7 @@ Partial Class frmGameManager Me.btnClose.Location = New System.Drawing.Point(697, 525) Me.btnClose.Name = "btnClose" Me.btnClose.Size = New System.Drawing.Size(75, 23) - Me.btnClose.TabIndex = 15 + Me.btnClose.TabIndex = 17 Me.btnClose.Text = "C&lose" Me.btnClose.UseVisualStyleBackColor = True ' @@ -152,10 +159,10 @@ Partial Class frmGameManager Me.grpConfig.Controls.Add(Me.txtProcess) Me.grpConfig.Controls.Add(Me.txtName) Me.grpConfig.Enabled = False - Me.grpConfig.Location = New System.Drawing.Point(238, 12) + Me.grpConfig.Location = New System.Drawing.Point(247, 12) Me.grpConfig.Name = "grpConfig" - Me.grpConfig.Size = New System.Drawing.Size(534, 157) - Me.grpConfig.TabIndex = 4 + Me.grpConfig.Size = New System.Drawing.Size(525, 157) + Me.grpConfig.TabIndex = 6 Me.grpConfig.TabStop = False Me.grpConfig.Text = "Configuration" ' @@ -180,16 +187,16 @@ Partial Class frmGameManager 'txtID ' Me.txtID.Enabled = False - Me.txtID.Location = New System.Drawing.Point(495, 19) + Me.txtID.Location = New System.Drawing.Point(489, 19) Me.txtID.Name = "txtID" - Me.txtID.Size = New System.Drawing.Size(33, 20) + Me.txtID.Size = New System.Drawing.Size(30, 20) Me.txtID.TabIndex = 16 Me.txtID.TabStop = False Me.txtID.Visible = False ' 'btnSavePathBrowse ' - Me.btnSavePathBrowse.Location = New System.Drawing.Point(498, 71) + Me.btnSavePathBrowse.Location = New System.Drawing.Point(489, 71) Me.btnSavePathBrowse.Name = "btnSavePathBrowse" Me.btnSavePathBrowse.Size = New System.Drawing.Size(30, 20) Me.btnSavePathBrowse.TabIndex = 9 @@ -198,7 +205,7 @@ Partial Class frmGameManager ' 'btnProcessBrowse ' - Me.btnProcessBrowse.Location = New System.Drawing.Point(498, 45) + Me.btnProcessBrowse.Location = New System.Drawing.Point(489, 45) Me.btnProcessBrowse.Name = "btnProcessBrowse" Me.btnProcessBrowse.Size = New System.Drawing.Size(30, 20) Me.btnProcessBrowse.TabIndex = 7 @@ -234,18 +241,18 @@ Partial Class frmGameManager ' 'txtExclude ' - Me.txtExclude.Location = New System.Drawing.Point(354, 127) + Me.txtExclude.Location = New System.Drawing.Point(363, 128) Me.txtExclude.Name = "txtExclude" - Me.txtExclude.Size = New System.Drawing.Size(174, 20) + Me.txtExclude.Size = New System.Drawing.Size(156, 20) Me.txtExclude.TabIndex = 0 Me.txtExclude.TabStop = False Me.txtExclude.Visible = False ' 'txtFileType ' - Me.txtFileType.Location = New System.Drawing.Point(354, 99) + Me.txtFileType.Location = New System.Drawing.Point(363, 99) Me.txtFileType.Name = "txtFileType" - Me.txtFileType.Size = New System.Drawing.Size(174, 20) + Me.txtFileType.Size = New System.Drawing.Size(156, 20) Me.txtFileType.TabIndex = 0 Me.txtFileType.TabStop = False Me.txtFileType.Visible = False @@ -274,30 +281,30 @@ Partial Class frmGameManager ' Me.txtSavePath.Location = New System.Drawing.Point(69, 71) Me.txtSavePath.Name = "txtSavePath" - Me.txtSavePath.Size = New System.Drawing.Size(423, 20) + Me.txtSavePath.Size = New System.Drawing.Size(414, 20) Me.txtSavePath.TabIndex = 8 ' 'txtProcess ' Me.txtProcess.Location = New System.Drawing.Point(69, 45) Me.txtProcess.Name = "txtProcess" - Me.txtProcess.Size = New System.Drawing.Size(423, 20) + Me.txtProcess.Size = New System.Drawing.Size(414, 20) Me.txtProcess.TabIndex = 6 ' 'txtName ' Me.txtName.Location = New System.Drawing.Point(69, 19) Me.txtName.Name = "txtName" - Me.txtName.Size = New System.Drawing.Size(423, 20) + Me.txtName.Size = New System.Drawing.Size(414, 20) Me.txtName.TabIndex = 5 ' 'chkMonitorOnly ' Me.chkMonitorOnly.AutoSize = True - Me.chkMonitorOnly.Location = New System.Drawing.Point(353, 340) + Me.chkMonitorOnly.Location = New System.Drawing.Point(362, 340) Me.chkMonitorOnly.Name = "chkMonitorOnly" Me.chkMonitorOnly.Size = New System.Drawing.Size(145, 17) - Me.chkMonitorOnly.TabIndex = 7 + Me.chkMonitorOnly.TabIndex = 9 Me.chkMonitorOnly.Text = "Monitor only (No backup)" Me.chkMonitorOnly.UseVisualStyleBackColor = True ' @@ -318,10 +325,10 @@ Partial Class frmGameManager Me.grpExtra.Controls.Add(Me.txtAppPath) Me.grpExtra.Controls.Add(Me.nudHours) Me.grpExtra.Controls.Add(Me.lblHours) - Me.grpExtra.Location = New System.Drawing.Point(238, 175) + Me.grpExtra.Location = New System.Drawing.Point(247, 175) Me.grpExtra.Name = "grpExtra" - Me.grpExtra.Size = New System.Drawing.Size(534, 155) - Me.grpExtra.TabIndex = 5 + Me.grpExtra.Size = New System.Drawing.Size(525, 155) + Me.grpExtra.TabIndex = 7 Me.grpExtra.TabStop = False Me.grpExtra.Text = "Game Information" ' @@ -329,16 +336,16 @@ Partial Class frmGameManager ' Me.lblTags.AutoEllipsis = True Me.lblTags.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) - Me.lblTags.Location = New System.Drawing.Point(163, 124) + Me.lblTags.Location = New System.Drawing.Point(161, 124) Me.lblTags.Name = "lblTags" - Me.lblTags.Size = New System.Drawing.Size(311, 20) + Me.lblTags.Size = New System.Drawing.Size(304, 20) Me.lblTags.TabIndex = 0 Me.lblTags.Text = "#Tags" Me.lblTags.TextAlign = System.Drawing.ContentAlignment.MiddleRight ' 'btnIconBrowse ' - Me.btnIconBrowse.Location = New System.Drawing.Point(444, 96) + Me.btnIconBrowse.Location = New System.Drawing.Point(435, 97) Me.btnIconBrowse.Name = "btnIconBrowse" Me.btnIconBrowse.Size = New System.Drawing.Size(30, 20) Me.btnIconBrowse.TabIndex = 10 @@ -349,7 +356,7 @@ Partial Class frmGameManager ' Me.txtIcon.Location = New System.Drawing.Point(69, 97) Me.txtIcon.Name = "txtIcon" - Me.txtIcon.Size = New System.Drawing.Size(369, 20) + Me.txtIcon.Size = New System.Drawing.Size(360, 20) Me.txtIcon.TabIndex = 9 ' 'lblVersion @@ -365,14 +372,14 @@ Partial Class frmGameManager ' Me.txtVersion.Location = New System.Drawing.Point(69, 71) Me.txtVersion.Name = "txtVersion" - Me.txtVersion.Size = New System.Drawing.Size(459, 20) + Me.txtVersion.Size = New System.Drawing.Size(414, 20) Me.txtVersion.TabIndex = 8 ' 'txtCompany ' Me.txtCompany.Location = New System.Drawing.Point(69, 45) Me.txtCompany.Name = "txtCompany" - Me.txtCompany.Size = New System.Drawing.Size(459, 20) + Me.txtCompany.Size = New System.Drawing.Size(414, 20) Me.txtCompany.TabIndex = 7 ' 'lblCompany @@ -387,7 +394,7 @@ Partial Class frmGameManager 'pbIcon ' Me.pbIcon.InitialImage = Nothing - Me.pbIcon.Location = New System.Drawing.Point(480, 100) + Me.pbIcon.Location = New System.Drawing.Point(471, 97) Me.pbIcon.Name = "pbIcon" Me.pbIcon.Size = New System.Drawing.Size(48, 48) Me.pbIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom @@ -405,7 +412,7 @@ Partial Class frmGameManager ' 'btnAppPathBrowse ' - Me.btnAppPathBrowse.Location = New System.Drawing.Point(498, 19) + Me.btnAppPathBrowse.Location = New System.Drawing.Point(489, 19) Me.btnAppPathBrowse.Name = "btnAppPathBrowse" Me.btnAppPathBrowse.Size = New System.Drawing.Size(30, 20) Me.btnAppPathBrowse.TabIndex = 6 @@ -425,7 +432,7 @@ Partial Class frmGameManager ' Me.txtAppPath.Location = New System.Drawing.Point(69, 19) Me.txtAppPath.Name = "txtAppPath" - Me.txtAppPath.Size = New System.Drawing.Size(423, 20) + Me.txtAppPath.Size = New System.Drawing.Size(414, 20) Me.txtAppPath.TabIndex = 5 ' 'nudHours @@ -452,7 +459,7 @@ Partial Class frmGameManager Me.btnTags.Location = New System.Drawing.Point(535, 336) Me.btnTags.Name = "btnTags" Me.btnTags.Size = New System.Drawing.Size(75, 23) - Me.btnTags.TabIndex = 8 + Me.btnTags.TabIndex = 10 Me.btnTags.Text = "Tags..." Me.btnTags.UseVisualStyleBackColor = True ' @@ -471,10 +478,10 @@ Partial Class frmGameManager Me.grpStats.Controls.Add(Me.lblCurrentBackup) Me.grpStats.Controls.Add(Me.txtLocalBackup) Me.grpStats.Controls.Add(Me.lblLastBackup) - Me.grpStats.Location = New System.Drawing.Point(238, 365) + Me.grpStats.Location = New System.Drawing.Point(247, 365) Me.grpStats.Name = "grpStats" - Me.grpStats.Size = New System.Drawing.Size(534, 154) - Me.grpStats.TabIndex = 11 + Me.grpStats.Size = New System.Drawing.Size(525, 154) + Me.grpStats.TabIndex = 13 Me.grpStats.TabStop = False Me.grpStats.Text = "Backup Information" ' @@ -492,7 +499,7 @@ Partial Class frmGameManager Me.txtRestorePath.Location = New System.Drawing.Point(96, 99) Me.txtRestorePath.Name = "txtRestorePath" Me.txtRestorePath.ReadOnly = True - Me.txtRestorePath.Size = New System.Drawing.Size(432, 20) + Me.txtRestorePath.Size = New System.Drawing.Size(387, 20) Me.txtRestorePath.TabIndex = 8 ' 'btnOpenRestorePath @@ -518,7 +525,7 @@ Partial Class frmGameManager Me.txtFileSize.Location = New System.Drawing.Point(96, 74) Me.txtFileSize.Name = "txtFileSize" Me.txtFileSize.ReadOnly = True - Me.txtFileSize.Size = New System.Drawing.Size(432, 20) + Me.txtFileSize.Size = New System.Drawing.Size(387, 20) Me.txtFileSize.TabIndex = 7 Me.txtFileSize.TabStop = False ' @@ -555,7 +562,7 @@ Partial Class frmGameManager Me.txtCurrentBackup.Location = New System.Drawing.Point(96, 24) Me.txtCurrentBackup.Name = "txtCurrentBackup" Me.txtCurrentBackup.ReadOnly = True - Me.txtCurrentBackup.Size = New System.Drawing.Size(432, 20) + Me.txtCurrentBackup.Size = New System.Drawing.Size(387, 20) Me.txtCurrentBackup.TabIndex = 5 Me.txtCurrentBackup.TabStop = False ' @@ -573,7 +580,7 @@ Partial Class frmGameManager Me.txtLocalBackup.Location = New System.Drawing.Point(96, 50) Me.txtLocalBackup.Name = "txtLocalBackup" Me.txtLocalBackup.ReadOnly = True - Me.txtLocalBackup.Size = New System.Drawing.Size(432, 20) + Me.txtLocalBackup.Size = New System.Drawing.Size(387, 20) Me.txtLocalBackup.TabIndex = 6 Me.txtLocalBackup.TabStop = False ' @@ -592,7 +599,7 @@ Partial Class frmGameManager Me.btnMarkAsRestored.Location = New System.Drawing.Point(429, 525) Me.btnMarkAsRestored.Name = "btnMarkAsRestored" Me.btnMarkAsRestored.Size = New System.Drawing.Size(100, 23) - Me.btnMarkAsRestored.TabIndex = 12 + Me.btnMarkAsRestored.TabIndex = 14 Me.btnMarkAsRestored.Text = "&Mark as Restored" Me.btnMarkAsRestored.UseVisualStyleBackColor = True ' @@ -602,7 +609,7 @@ Partial Class frmGameManager Me.btnRestore.Location = New System.Drawing.Point(535, 525) Me.btnRestore.Name = "btnRestore" Me.btnRestore.Size = New System.Drawing.Size(75, 23) - Me.btnRestore.TabIndex = 13 + Me.btnRestore.TabIndex = 15 Me.btnRestore.Text = "&Restore" Me.btnRestore.UseVisualStyleBackColor = True ' @@ -612,7 +619,7 @@ Partial Class frmGameManager Me.btnSave.Location = New System.Drawing.Point(616, 336) Me.btnSave.Name = "btnSave" Me.btnSave.Size = New System.Drawing.Size(75, 23) - Me.btnSave.TabIndex = 9 + Me.btnSave.TabIndex = 11 Me.btnSave.Text = "&Save" Me.btnSave.UseVisualStyleBackColor = True ' @@ -622,7 +629,7 @@ Partial Class frmGameManager Me.lstGames.Location = New System.Drawing.Point(12, 138) Me.lstGames.Name = "lstGames" Me.lstGames.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended - Me.lstGames.Size = New System.Drawing.Size(220, 381) + Me.lstGames.Size = New System.Drawing.Size(228, 381) Me.lstGames.Sorted = True Me.lstGames.TabIndex = 1 ' @@ -632,17 +639,17 @@ Partial Class frmGameManager Me.btnCancel.Location = New System.Drawing.Point(697, 336) Me.btnCancel.Name = "btnCancel" Me.btnCancel.Size = New System.Drawing.Size(75, 23) - Me.btnCancel.TabIndex = 10 + Me.btnCancel.TabIndex = 12 Me.btnCancel.Text = "&Cancel" Me.btnCancel.UseVisualStyleBackColor = True ' 'chkEnabled ' Me.chkEnabled.AutoSize = True - Me.chkEnabled.Location = New System.Drawing.Point(238, 340) + Me.chkEnabled.Location = New System.Drawing.Point(247, 340) Me.chkEnabled.Name = "chkEnabled" Me.chkEnabled.Size = New System.Drawing.Size(109, 17) - Me.chkEnabled.TabIndex = 6 + Me.chkEnabled.TabIndex = 8 Me.chkEnabled.Text = "Monitor this game" Me.chkEnabled.UseVisualStyleBackColor = True ' @@ -654,7 +661,7 @@ Partial Class frmGameManager Me.grpFilter.Controls.Add(Me.optAllGames) Me.grpFilter.Location = New System.Drawing.Point(12, 12) Me.grpFilter.Name = "grpFilter" - Me.grpFilter.Size = New System.Drawing.Size(220, 113) + Me.grpFilter.Size = New System.Drawing.Size(228, 113) Me.grpFilter.TabIndex = 0 Me.grpFilter.TabStop = False Me.grpFilter.Text = "Games Filter" @@ -703,11 +710,50 @@ Partial Class frmGameManager Me.optAllGames.Text = "All" Me.optAllGames.UseVisualStyleBackColor = True ' + 'btnImport + ' + Me.btnImport.Location = New System.Drawing.Point(84, 526) + Me.btnImport.Name = "btnImport" + Me.btnImport.Size = New System.Drawing.Size(75, 23) + Me.btnImport.TabIndex = 4 + Me.btnImport.Text = "&Import" + Me.btnImport.UseVisualStyleBackColor = True + ' + 'btnExport + ' + Me.btnExport.Location = New System.Drawing.Point(165, 526) + Me.btnExport.Name = "btnExport" + Me.btnExport.Size = New System.Drawing.Size(75, 23) + Me.btnExport.TabIndex = 5 + Me.btnExport.Text = "&Export" + Me.btnExport.UseVisualStyleBackColor = True + ' + 'cmsImport + ' + Me.cmsImport.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmsOfficial, Me.cmsFile}) + Me.cmsImport.Name = "cmsImport" + Me.cmsImport.ShowImageMargin = False + Me.cmsImport.Size = New System.Drawing.Size(118, 48) + ' + 'cmsOfficial + ' + Me.cmsOfficial.Name = "cmsOfficial" + Me.cmsOfficial.Size = New System.Drawing.Size(117, 22) + Me.cmsOfficial.Text = "&Official List..." + ' + 'cmsFile + ' + Me.cmsFile.Name = "cmsFile" + Me.cmsFile.Size = New System.Drawing.Size(117, 22) + Me.cmsFile.Text = "&File..." + ' 'frmGameManager ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(784, 561) + Me.Controls.Add(Me.btnExport) + Me.Controls.Add(Me.btnImport) Me.Controls.Add(Me.grpFilter) Me.Controls.Add(Me.btnTags) Me.Controls.Add(Me.chkEnabled) @@ -741,6 +787,7 @@ Partial Class frmGameManager Me.grpStats.PerformLayout() Me.grpFilter.ResumeLayout(False) Me.grpFilter.PerformLayout() + Me.cmsImport.ResumeLayout(False) Me.ResumeLayout(False) Me.PerformLayout() @@ -806,4 +853,9 @@ Partial Class frmGameManager Friend WithEvents btnExclude As System.Windows.Forms.Button Friend WithEvents lblRestorePath As Label Friend WithEvents txtRestorePath As TextBox + Friend WithEvents btnImport As System.Windows.Forms.Button + Friend WithEvents btnExport As System.Windows.Forms.Button + Friend WithEvents cmsImport As System.Windows.Forms.ContextMenuStrip + Friend WithEvents cmsOfficial As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents cmsFile As System.Windows.Forms.ToolStripMenuItem End Class diff --git a/GBM/Forms/frmGameManager.resx b/GBM/Forms/frmGameManager.resx index 1af7de1..82082bf 100644 --- a/GBM/Forms/frmGameManager.resx +++ b/GBM/Forms/frmGameManager.resx @@ -117,4 +117,7 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + 17, 17 + \ No newline at end of file diff --git a/GBM/Forms/frmGameManager.vb b/GBM/Forms/frmGameManager.vb index bff3bf7..cf66d25 100644 --- a/GBM/Forms/frmGameManager.vb +++ b/GBM/Forms/frmGameManager.vb @@ -764,6 +764,8 @@ Public Class frmGameManager lblTags.Visible = False btnInclude.Text = "In&clude Items..." btnExclude.Text = "E&xclude Items..." + btnImport.Enabled = False + btnExport.Enabled = False Case eModes.Edit grpFilter.Enabled = False lstGames.Enabled = False @@ -784,6 +786,8 @@ Public Class frmGameManager btnOpenRestorePath.Enabled = False btnTags.Enabled = True lblTags.Visible = True + btnImport.Enabled = False + btnExport.Enabled = False Case eModes.View grpFilter.Enabled = True lstGames.Enabled = True @@ -799,6 +803,8 @@ Public Class frmGameManager btnBackup.Enabled = True btnTags.Enabled = True lblTags.Visible = True + btnImport.Enabled = True + btnExport.Enabled = True Case eModes.ViewTemp grpFilter.Enabled = True lstGames.Enabled = True @@ -816,6 +822,8 @@ Public Class frmGameManager lblTags.Visible = False btnInclude.Text = "In&clude Items..." btnExclude.Text = "E&xclude Items..." + btnImport.Enabled = True + btnExport.Enabled = True Case eModes.Disabled grpFilter.Enabled = True lstGames.Enabled = True @@ -840,7 +848,8 @@ Public Class frmGameManager lblTags.Visible = False btnInclude.Text = "In&clude Items..." btnExclude.Text = "E&xclude Items..." - txtRestorePath.ReadOnly = True + btnImport.Enabled = True + btnExport.Enabled = True Case eModes.MultiSelect lstGames.Enabled = True WipeControls(grpConfig.Controls) @@ -864,7 +873,8 @@ Public Class frmGameManager btnMarkAsRestored.Enabled = True btnTags.Enabled = True lblTags.Visible = False - txtRestorePath.ReadOnly = True + btnImport.Enabled = True + btnExport.Enabled = True End Select lstGames.Focus() @@ -1173,6 +1183,40 @@ Public Class frmGameManager End If End Sub + Private Sub ImportGameListFile() + Dim sLocation As String + + sLocation = mgrCommon.OpenFileBrowser("Choose a valid xml file to import", "xml", "XML", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False) + + If sLocation <> String.Empty Then + If mgrMonitorList.DoImport(sLocation) Then + LoadData() + End If + End If + + End Sub + + Private Sub ExportGameList() + Dim sLocation As String + + sLocation = mgrCommon.SaveFileBrowser("Choose a location for the export file", "xml", "XML", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "Game Backup Monitor Export " & Date.Now.ToString("dd-MMM-yyyy")) + + If sLocation <> String.Empty Then + mgrMonitorList.ExportMonitorList(sLocation) + End If + + End Sub + + Private Sub ImportOfficialGameList() + + If MsgBox("Would you like to choose games to import from the official game list?" & vbCrLf & vbCrLf & "This require an active internet connection.", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then + If mgrMonitorList.DoImport(mgrPath.OfficialImportURL) Then + LoadData() + End If + End If + + End Sub + Private Sub frmGameManager_Load(sender As Object, e As EventArgs) Handles MyBase.Load If DisableExternalFunctions Then @@ -1310,4 +1354,20 @@ Public Class frmGameManager btnInclude.Enabled = True End If End Sub + + Private Sub btnImport_Click(sender As Object, e As EventArgs) Handles btnImport.Click + cmsImport.Show(btnImport, New Drawing.Point(70, 11), ToolStripDropDownDirection.AboveRight) + End Sub + + Private Sub cmsOfficial_Click(sender As Object, e As EventArgs) Handles cmsOfficial.Click + ImportOfficialGameList() + End Sub + + Private Sub cmsFile_Click(sender As Object, e As EventArgs) Handles cmsFile.Click + ImportGameListFile() + End Sub + + Private Sub btnExport_Click(sender As Object, e As EventArgs) Handles btnExport.Click + ExportGameList() + End Sub End Class \ No newline at end of file diff --git a/GBM/Forms/frmMain.Designer.vb b/GBM/Forms/frmMain.Designer.vb index fec3b51..6564b7d 100644 --- a/GBM/Forms/frmMain.Designer.vb +++ b/GBM/Forms/frmMain.Designer.vb @@ -37,11 +37,7 @@ Partial Class frmMain Me.gMonTraySetupCustomVariables = New System.Windows.Forms.ToolStripMenuItem() Me.gMonTraySetupTags = New System.Windows.Forms.ToolStripMenuItem() Me.gMonTrayTools = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonTrayToolsGameList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonTrayToolsGameImportOfficialList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonTrayToolsGameImportList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonTrayToolsGameExportList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonTrayToolsSyncMan = New System.Windows.Forms.ToolStripMenuItem() + Me.gMonTrayToolsCleanMan = New System.Windows.Forms.ToolStripMenuItem() Me.gMonTrayToolsCompact = New System.Windows.Forms.ToolStripMenuItem() Me.gMonTraySep1 = New System.Windows.Forms.ToolStripSeparator() Me.gMonTrayExit = New System.Windows.Forms.ToolStripMenuItem() @@ -64,11 +60,7 @@ Partial Class frmMain Me.gMonSetupCustomVariables = New System.Windows.Forms.ToolStripMenuItem() Me.gMonSetupTags = New System.Windows.Forms.ToolStripMenuItem() Me.gMonTools = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonToolsGameList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonToolsGameImportOfficialList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonToolsGameImportList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonToolsGameExportList = New System.Windows.Forms.ToolStripMenuItem() - Me.gMonToolsSyncMan = New System.Windows.Forms.ToolStripMenuItem() + Me.gMonToolsCleanMan = New System.Windows.Forms.ToolStripMenuItem() Me.gMonToolsCompact = New System.Windows.Forms.ToolStripMenuItem() Me.gMonHelp = New System.Windows.Forms.ToolStripMenuItem() Me.gMonHelpWebSite = New System.Windows.Forms.ToolStripMenuItem() @@ -107,7 +99,7 @@ Partial Class frmMain ' Me.gMonTrayMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTrayNotification, Me.gMonTrayShow, Me.gMonTraySep2, Me.gMonTrayMon, Me.gMonTraySettings, Me.gMonTraySetup, Me.gMonTrayTools, Me.gMonTraySep1, Me.gMonTrayExit}) Me.gMonTrayMenu.Name = "gMonTrayMenu" - Me.gMonTrayMenu.Size = New System.Drawing.Size(162, 170) + Me.gMonTrayMenu.Size = New System.Drawing.Size(162, 192) ' 'gMonTrayNotification ' @@ -172,46 +164,21 @@ Partial Class frmMain ' 'gMonTrayTools ' - Me.gMonTrayTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTrayToolsGameList, Me.gMonTrayToolsSyncMan, Me.gMonTrayToolsCompact}) + Me.gMonTrayTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTrayToolsCleanMan, Me.gMonTrayToolsCompact}) Me.gMonTrayTools.Name = "gMonTrayTools" Me.gMonTrayTools.Size = New System.Drawing.Size(161, 22) Me.gMonTrayTools.Text = "&Tools" ' - 'gMonTrayToolsGameList + 'gMonTrayToolsCleanMan ' - Me.gMonTrayToolsGameList.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTrayToolsGameImportOfficialList, Me.gMonTrayToolsGameImportList, Me.gMonTrayToolsGameExportList}) - Me.gMonTrayToolsGameList.Name = "gMonTrayToolsGameList" - Me.gMonTrayToolsGameList.Size = New System.Drawing.Size(179, 22) - Me.gMonTrayToolsGameList.Text = "&Game List" - ' - 'gMonTrayToolsGameImportOfficialList - ' - Me.gMonTrayToolsGameImportOfficialList.Name = "gMonTrayToolsGameImportOfficialList" - Me.gMonTrayToolsGameImportOfficialList.Size = New System.Drawing.Size(201, 22) - Me.gMonTrayToolsGameImportOfficialList.Text = "Import from &Official List" - ' - 'gMonTrayToolsGameImportList - ' - Me.gMonTrayToolsGameImportList.Name = "gMonTrayToolsGameImportList" - Me.gMonTrayToolsGameImportList.Size = New System.Drawing.Size(201, 22) - Me.gMonTrayToolsGameImportList.Text = "I&mport Game List" - ' - 'gMonTrayToolsGameExportList - ' - Me.gMonTrayToolsGameExportList.Name = "gMonTrayToolsGameExportList" - Me.gMonTrayToolsGameExportList.Size = New System.Drawing.Size(201, 22) - Me.gMonTrayToolsGameExportList.Text = "E&xport Game List" - ' - 'gMonTrayToolsSyncMan - ' - Me.gMonTrayToolsSyncMan.Name = "gMonTrayToolsSyncMan" - Me.gMonTrayToolsSyncMan.Size = New System.Drawing.Size(179, 22) - Me.gMonTrayToolsSyncMan.Text = "Sync Ma&nifests" + Me.gMonTrayToolsCleanMan.Name = "gMonTrayToolsCleanMan" + Me.gMonTrayToolsCleanMan.Size = New System.Drawing.Size(184, 22) + Me.gMonTrayToolsCleanMan.Text = "Clean Local Ma&nifest" ' 'gMonTrayToolsCompact ' Me.gMonTrayToolsCompact.Name = "gMonTrayToolsCompact" - Me.gMonTrayToolsCompact.Size = New System.Drawing.Size(179, 22) + Me.gMonTrayToolsCompact.Size = New System.Drawing.Size(184, 22) Me.gMonTrayToolsCompact.Text = "&Compact Databases" ' 'gMonTraySep1 @@ -361,46 +328,21 @@ Partial Class frmMain ' 'gMonTools ' - Me.gMonTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonToolsGameList, Me.gMonToolsSyncMan, Me.gMonToolsCompact}) + Me.gMonTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonToolsCleanMan, Me.gMonToolsCompact}) Me.gMonTools.Name = "gMonTools" Me.gMonTools.Size = New System.Drawing.Size(47, 20) Me.gMonTools.Text = "&Tools" ' - 'gMonToolsGameList + 'gMonToolsCleanMan ' - Me.gMonToolsGameList.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonToolsGameImportOfficialList, Me.gMonToolsGameImportList, Me.gMonToolsGameExportList}) - Me.gMonToolsGameList.Name = "gMonToolsGameList" - Me.gMonToolsGameList.Size = New System.Drawing.Size(179, 22) - Me.gMonToolsGameList.Text = "&Game List" - ' - 'gMonToolsGameImportOfficialList - ' - Me.gMonToolsGameImportOfficialList.Name = "gMonToolsGameImportOfficialList" - Me.gMonToolsGameImportOfficialList.Size = New System.Drawing.Size(210, 22) - Me.gMonToolsGameImportOfficialList.Text = "Import from &Official List..." - ' - 'gMonToolsGameImportList - ' - Me.gMonToolsGameImportList.Name = "gMonToolsGameImportList" - Me.gMonToolsGameImportList.Size = New System.Drawing.Size(210, 22) - Me.gMonToolsGameImportList.Text = "I&mport Game List..." - ' - 'gMonToolsGameExportList - ' - Me.gMonToolsGameExportList.Name = "gMonToolsGameExportList" - Me.gMonToolsGameExportList.Size = New System.Drawing.Size(210, 22) - Me.gMonToolsGameExportList.Text = "E&xport Game List" - ' - 'gMonToolsSyncMan - ' - Me.gMonToolsSyncMan.Name = "gMonToolsSyncMan" - Me.gMonToolsSyncMan.Size = New System.Drawing.Size(179, 22) - Me.gMonToolsSyncMan.Text = "Sync Ma&nifests" + Me.gMonToolsCleanMan.Name = "gMonToolsCleanMan" + Me.gMonToolsCleanMan.Size = New System.Drawing.Size(184, 22) + Me.gMonToolsCleanMan.Text = "Clean Local Ma&nifest" ' 'gMonToolsCompact ' Me.gMonToolsCompact.Name = "gMonToolsCompact" - Me.gMonToolsCompact.Size = New System.Drawing.Size(179, 22) + Me.gMonToolsCompact.Size = New System.Drawing.Size(184, 22) Me.gMonToolsCompact.Text = "&Compact Databases" ' 'gMonHelp @@ -612,20 +554,10 @@ Partial Class frmMain Friend WithEvents lblLastAction As System.Windows.Forms.Label Friend WithEvents lblLastActionTitle As System.Windows.Forms.Label Friend WithEvents gMonTools As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonToolsSyncMan As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonTrayTools As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonTrayToolsSyncMan As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonSetupAddWizard As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonTraySetupAddWizard As System.Windows.Forms.ToolStripMenuItem Friend WithEvents lblTimeSpent As System.Windows.Forms.Label - Friend WithEvents gMonToolsGameList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonToolsGameImportOfficialList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonToolsGameImportList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonToolsGameExportList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonTrayToolsGameList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonTrayToolsGameImportList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonTrayToolsGameExportList As System.Windows.Forms.ToolStripMenuItem - Friend WithEvents gMonTrayToolsGameImportOfficialList As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonSetupGameManager As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonSetupCustomVariables As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonToolsCompact As System.Windows.Forms.ToolStripMenuItem @@ -643,4 +575,6 @@ Partial Class frmMain Friend WithEvents gMonTrayNotification As System.Windows.Forms.ToolStripMenuItem Friend WithEvents gMonHelpWebSite As System.Windows.Forms.ToolStripMenuItem Friend WithEvents pbTime As System.Windows.Forms.PictureBox + Friend WithEvents gMonTrayToolsCleanMan As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents gMonToolsCleanMan As System.Windows.Forms.ToolStripMenuItem End Class diff --git a/GBM/Forms/frmMain.vb b/GBM/Forms/frmMain.vb index 121c961..e5673ec 100644 --- a/GBM/Forms/frmMain.vb +++ b/GBM/Forms/frmMain.vb @@ -326,51 +326,6 @@ Public Class frmMain End If End Sub - 'Functions to handle monitor list features - Private Sub ImportMonitorList() - Dim sLocation As String - - PauseScan() - - sLocation = mgrCommon.OpenFileBrowser("Choose a valid xml file to import", "xml", "XML", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), False) - - If sLocation <> String.Empty Then - If mgrMonitorList.DoImport(sLocation) Then - LoadGameSettings() - If oSettings.Sync Then mgrMonitorList.SyncMonitorLists() - End If - End If - - ResumeScan() - End Sub - - Private Sub ExportMonitorList() - Dim sLocation As String - - PauseScan() - - sLocation = mgrCommon.SaveFileBrowser("Choose a location for the export file", "xml", "XML", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "Game Backup Monitor Export " & Date.Now.ToString("dd-MMM-yyyy")) - - If sLocation <> String.Empty Then - mgrMonitorList.ExportMonitorList(sLocation) - End If - - ResumeScan() - End Sub - - Private Sub DownloadOfficialList() - PauseScan() - - If MsgBox("Would you like to import from the latest pre-configured game list?", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then - If mgrMonitorList.DoImport(mgrPath.OfficialImportURL) Then - LoadGameSettings() - If oSettings.Sync Then mgrMonitorList.SyncMonitorLists() - End If - End If - - ResumeScan() - End Sub - 'Functions handling the display of game information Private Sub SetIcon() Dim sIcon As String @@ -1188,29 +1143,26 @@ Public Class frmMain End If End Sub - Private Sub SyncManifest() + Private Sub CleanLocalManifest() Dim slItems As SortedList - PauseScan() - - If MsgBox("This removes orphaned backup information from the local manifest." & vbCrLf & vbCrLf & - "Do you want to sync the local backup manfiest with the current backup folder?" & vbCrLf & vbCrLf & - "Not recommended if alternating between more than one backup folder.", MsgBoxStyle.YesNo _ + If MsgBox("This tool removes orphaned backup information from the local manifest based on the current backup folder. Data can become orphaned when backups are deleted by various computers that share the same backup folder on a cloud or network." & vbCrLf & vbCrLf & + "When alternating between different backup folders you should NOT use this tool." & vbCrLf & vbCrLf & + "Do you wish to proceed?", MsgBoxStyle.YesNo _ , "Game Backup Monitor") = MsgBoxResult.Yes Then slItems = mgrRestore.SyncLocalManifest() If slItems.Count > 0 Then For Each oItem As clsBackup In slItems.Values - UpdateLog(oItem.Name & " entry removed from local manfiest.", False) + UpdateLog(oItem.Name & " entry was removed from local manfiest.", False) Next - MsgBox(slItems.Count & " entries removed from the local manifest.") + MsgBox(slItems.Count & " entries were removed from the local manifest.") Else - MsgBox("No orphaned entries found. Local manifest is already in sync.") + MsgBox("The local manifest is already clean.") End If End If - ResumeScan() End Sub Private Sub CompactDatabases() @@ -1268,26 +1220,14 @@ Public Class frmMain OpenGameManager() End Sub - Private Sub gMonToolsSync_Click(sender As Object, e As EventArgs) Handles gMonToolsSyncMan.Click, gMonTrayToolsSyncMan.Click - SyncManifest() + Private Sub gMonToolsSync_Click(sender As Object, e As EventArgs) Handles gMonTrayToolsCleanMan.Click, gMonToolsCleanMan.Click + CleanLocalManifest() End Sub Private Sub gMonToolsCompact_Click(sender As Object, e As EventArgs) Handles gMonToolsCompact.Click, gMonTrayToolsCompact.Click CompactDatabases() End Sub - Private Sub gMonToolsGameExportList_Click(sender As Object, e As EventArgs) Handles gMonToolsGameExportList.Click, gMonTrayToolsGameExportList.Click - ExportMonitorList() - End Sub - - Private Sub gMonToolsGameImportList_Click(sender As Object, e As EventArgs) Handles gMonToolsGameImportList.Click, gMonTrayToolsGameImportList.Click - ImportMonitorList() - End Sub - - Private Sub gMonToolsGameImportOfficialList_Click(sender As Object, e As EventArgs) Handles gMonToolsGameImportOfficialList.Click, gMonTrayToolsGameImportOfficialList.Click - DownloadOfficialList() - End Sub - Private Sub gMonSetupAddWizard_Click(sender As Object, e As EventArgs) Handles gMonSetupAddWizard.Click, gMonTraySetupAddWizard.Click OpenGameWizard() End Sub diff --git a/GBM/Forms/frmStartUpWizard.Designer.vb b/GBM/Forms/frmStartUpWizard.Designer.vb index b409499..9ab32c2 100644 --- a/GBM/Forms/frmStartUpWizard.Designer.vb +++ b/GBM/Forms/frmStartUpWizard.Designer.vb @@ -291,8 +291,8 @@ Partial Class frmStartUpWizard Me.lblStep4Instructions3.Name = "lblStep4Instructions3" Me.lblStep4Instructions3.Size = New System.Drawing.Size(303, 33) Me.lblStep4Instructions3.TabIndex = 18 - Me.lblStep4Instructions3.Text = "To change anything you've setup in this wizard and see more settings and features" & _ - ", explore the menus in the application," + Me.lblStep4Instructions3.Text = "You can change anything you've setup in this wizard and see more settings and fea" & _ + "tures by exploring the menus. Thanks!" ' 'lblStep4Instructions2 ' diff --git a/GBM/Forms/frmStartUpWizard.vb b/GBM/Forms/frmStartUpWizard.vb index 8a0939e..ed39f49 100644 --- a/GBM/Forms/frmStartUpWizard.vb +++ b/GBM/Forms/frmStartUpWizard.vb @@ -70,7 +70,7 @@ Public Class frmStartUpWizard End Sub Private Sub DownloadSettings() - If MsgBox("Would you like to import from the latest pre-configured game list?", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then + If MsgBox("Would you like to choose games to import from the official game list?" & vbCrLf & vbCrLf & "This require an active internet connection.", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then If mgrMonitorList.DoImport(mgrPath.OfficialImportURL) Then oGameData = mgrMonitorList.ReadList(mgrMonitorList.eListTypes.FullList) If oSettings.Sync Then mgrMonitorList.SyncMonitorLists()