Initial commit

This commit is contained in:
Michael J. Seiferling
2015-11-08 16:06:31 -06:00
parent 10be205da1
commit 2fd1aecfc9
87 changed files with 19755 additions and 1 deletions
+715
View File
@@ -0,0 +1,715 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmAddWizard
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmAddWizard))
Me.tabWizard = New System.Windows.Forms.TabControl()
Me.tbPage1 = New System.Windows.Forms.TabPage()
Me.lblStep1Title = New System.Windows.Forms.Label()
Me.lblDrag1 = New System.Windows.Forms.Label()
Me.lblStep1Instructions = New System.Windows.Forms.Label()
Me.txtName = New System.Windows.Forms.TextBox()
Me.lblStep1Intro = New System.Windows.Forms.Label()
Me.tbPage2 = New System.Windows.Forms.TabPage()
Me.lbldBox = New System.Windows.Forms.Label()
Me.btndBoxBrowse = New System.Windows.Forms.Button()
Me.txtdBoxProcess = New System.Windows.Forms.TextBox()
Me.lblStep2Title = New System.Windows.Forms.Label()
Me.lblStep2Instructions = New System.Windows.Forms.Label()
Me.lblDrag2 = New System.Windows.Forms.Label()
Me.btnProcessBrowse = New System.Windows.Forms.Button()
Me.txtProcessPath = New System.Windows.Forms.TextBox()
Me.lblStep2Intro = New System.Windows.Forms.Label()
Me.tbPage3 = New System.Windows.Forms.TabPage()
Me.lblStep3Title = New System.Windows.Forms.Label()
Me.lblStep3Instructions = New System.Windows.Forms.Label()
Me.chkTimeStamp = New System.Windows.Forms.CheckBox()
Me.chkFolderSave = New System.Windows.Forms.CheckBox()
Me.btnSaveBrowse = New System.Windows.Forms.Button()
Me.txtSavePath = New System.Windows.Forms.TextBox()
Me.lblStep3Intro = New System.Windows.Forms.Label()
Me.tbPage3a = New System.Windows.Forms.TabPage()
Me.grpFileTypes = New System.Windows.Forms.GroupBox()
Me.optSpecificFile = New System.Windows.Forms.RadioButton()
Me.btnFileTypeBrowse = New System.Windows.Forms.Button()
Me.optFileType = New System.Windows.Forms.RadioButton()
Me.btnStep3aClear = New System.Windows.Forms.Button()
Me.lblStep3aTitle = New System.Windows.Forms.Label()
Me.lblStep3aInstructions = New System.Windows.Forms.Label()
Me.txtFileTypes = New System.Windows.Forms.TextBox()
Me.tbPage4 = New System.Windows.Forms.TabPage()
Me.grpExclude = New System.Windows.Forms.GroupBox()
Me.optExcludeSpecificFile = New System.Windows.Forms.RadioButton()
Me.btnExcludeBrowse = New System.Windows.Forms.Button()
Me.optExcludeFileType = New System.Windows.Forms.RadioButton()
Me.optExcludeFolder = New System.Windows.Forms.RadioButton()
Me.btnStep4Clear = New System.Windows.Forms.Button()
Me.lblStep4Title = New System.Windows.Forms.Label()
Me.lblStep4Instructions = New System.Windows.Forms.Label()
Me.txtExcludeList = New System.Windows.Forms.TextBox()
Me.tbPage5 = New System.Windows.Forms.TabPage()
Me.lblStep5Intro = New System.Windows.Forms.Label()
Me.lblStep5Title = New System.Windows.Forms.Label()
Me.lstSummary = New System.Windows.Forms.ListView()
Me.btnCancel = New System.Windows.Forms.Button()
Me.btnNext = New System.Windows.Forms.Button()
Me.btnBack = New System.Windows.Forms.Button()
Me.optFileTypeFolder = New System.Windows.Forms.RadioButton()
Me.tabWizard.SuspendLayout()
Me.tbPage1.SuspendLayout()
Me.tbPage2.SuspendLayout()
Me.tbPage3.SuspendLayout()
Me.tbPage3a.SuspendLayout()
Me.grpFileTypes.SuspendLayout()
Me.tbPage4.SuspendLayout()
Me.grpExclude.SuspendLayout()
Me.tbPage5.SuspendLayout()
Me.SuspendLayout()
'
'tabWizard
'
Me.tabWizard.Controls.Add(Me.tbPage1)
Me.tabWizard.Controls.Add(Me.tbPage2)
Me.tabWizard.Controls.Add(Me.tbPage3)
Me.tabWizard.Controls.Add(Me.tbPage3a)
Me.tabWizard.Controls.Add(Me.tbPage4)
Me.tabWizard.Controls.Add(Me.tbPage5)
Me.tabWizard.Location = New System.Drawing.Point(-6, -24)
Me.tabWizard.Name = "tabWizard"
Me.tabWizard.SelectedIndex = 0
Me.tabWizard.Size = New System.Drawing.Size(370, 220)
Me.tabWizard.TabIndex = 0
Me.tabWizard.TabStop = False
'
'tbPage1
'
Me.tbPage1.BackColor = System.Drawing.SystemColors.Control
Me.tbPage1.Controls.Add(Me.lblStep1Title)
Me.tbPage1.Controls.Add(Me.lblDrag1)
Me.tbPage1.Controls.Add(Me.lblStep1Instructions)
Me.tbPage1.Controls.Add(Me.txtName)
Me.tbPage1.Controls.Add(Me.lblStep1Intro)
Me.tbPage1.Location = New System.Drawing.Point(4, 22)
Me.tbPage1.Name = "tbPage1"
Me.tbPage1.Padding = New System.Windows.Forms.Padding(3)
Me.tbPage1.Size = New System.Drawing.Size(362, 194)
Me.tbPage1.TabIndex = 0
Me.tbPage1.Text = "TabPage1"
'
'lblStep1Title
'
Me.lblStep1Title.AutoSize = True
Me.lblStep1Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep1Title.Location = New System.Drawing.Point(13, 11)
Me.lblStep1Title.Name = "lblStep1Title"
Me.lblStep1Title.Size = New System.Drawing.Size(108, 20)
Me.lblStep1Title.TabIndex = 8
Me.lblStep1Title.Text = "Game Name"
'
'lblDrag1
'
Me.lblDrag1.AllowDrop = True
Me.lblDrag1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblDrag1.Location = New System.Drawing.Point(14, 147)
Me.lblDrag1.Name = "lblDrag1"
Me.lblDrag1.Size = New System.Drawing.Size(303, 37)
Me.lblDrag1.TabIndex = 7
Me.lblDrag1.Text = "Drag a shortcut here to complete this step."
'
'lblStep1Instructions
'
Me.lblStep1Instructions.Location = New System.Drawing.Point(14, 93)
Me.lblStep1Instructions.Name = "lblStep1Instructions"
Me.lblStep1Instructions.Size = New System.Drawing.Size(303, 42)
Me.lblStep1Instructions.TabIndex = 6
Me.lblStep1Instructions.Text = "The name of the game is used for the backup file and must conform to Windows file" &
" name standards. It will be automatically filtered for length and invalid chara" &
"cters. "
'
'txtName
'
Me.txtName.AllowDrop = True
Me.txtName.Location = New System.Drawing.Point(17, 61)
Me.txtName.Name = "txtName"
Me.txtName.Size = New System.Drawing.Size(300, 20)
Me.txtName.TabIndex = 4
'
'lblStep1Intro
'
Me.lblStep1Intro.AutoSize = True
Me.lblStep1Intro.Location = New System.Drawing.Point(14, 45)
Me.lblStep1Intro.Name = "lblStep1Intro"
Me.lblStep1Intro.Size = New System.Drawing.Size(190, 13)
Me.lblStep1Intro.TabIndex = 5
Me.lblStep1Intro.Text = "Enter the name of the game to monitor:"
'
'tbPage2
'
Me.tbPage2.BackColor = System.Drawing.SystemColors.Control
Me.tbPage2.Controls.Add(Me.lbldBox)
Me.tbPage2.Controls.Add(Me.btndBoxBrowse)
Me.tbPage2.Controls.Add(Me.txtdBoxProcess)
Me.tbPage2.Controls.Add(Me.lblStep2Title)
Me.tbPage2.Controls.Add(Me.lblStep2Instructions)
Me.tbPage2.Controls.Add(Me.lblDrag2)
Me.tbPage2.Controls.Add(Me.btnProcessBrowse)
Me.tbPage2.Controls.Add(Me.txtProcessPath)
Me.tbPage2.Controls.Add(Me.lblStep2Intro)
Me.tbPage2.Location = New System.Drawing.Point(4, 22)
Me.tbPage2.Name = "tbPage2"
Me.tbPage2.Padding = New System.Windows.Forms.Padding(3)
Me.tbPage2.Size = New System.Drawing.Size(362, 194)
Me.tbPage2.TabIndex = 1
Me.tbPage2.Text = "TabPage2"
'
'lbldBox
'
Me.lbldBox.AutoSize = True
Me.lbldBox.Location = New System.Drawing.Point(184, 18)
Me.lbldBox.Name = "lbldBox"
Me.lbldBox.Size = New System.Drawing.Size(52, 13)
Me.lbldBox.TabIndex = 14
Me.lbldBox.Text = "DOS File:"
'
'btndBoxBrowse
'
Me.btndBoxBrowse.Location = New System.Drawing.Point(322, 14)
Me.btndBoxBrowse.Name = "btndBoxBrowse"
Me.btndBoxBrowse.Size = New System.Drawing.Size(27, 20)
Me.btndBoxBrowse.TabIndex = 13
Me.btndBoxBrowse.Text = "..."
Me.btndBoxBrowse.UseVisualStyleBackColor = True
'
'txtdBoxProcess
'
Me.txtdBoxProcess.AllowDrop = True
Me.txtdBoxProcess.Location = New System.Drawing.Point(244, 14)
Me.txtdBoxProcess.Name = "txtdBoxProcess"
Me.txtdBoxProcess.Size = New System.Drawing.Size(72, 20)
Me.txtdBoxProcess.TabIndex = 12
'
'lblStep2Title
'
Me.lblStep2Title.AutoSize = True
Me.lblStep2Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep2Title.Location = New System.Drawing.Point(13, 11)
Me.lblStep2Title.Name = "lblStep2Title"
Me.lblStep2Title.Size = New System.Drawing.Size(159, 20)
Me.lblStep2Title.TabIndex = 11
Me.lblStep2Title.Text = "Process to Monitor"
'
'lblStep2Instructions
'
Me.lblStep2Instructions.Location = New System.Drawing.Point(14, 93)
Me.lblStep2Instructions.Name = "lblStep2Instructions"
Me.lblStep2Instructions.Size = New System.Drawing.Size(303, 41)
Me.lblStep2Instructions.TabIndex = 10
Me.lblStep2Instructions.Text = "GBM needs to know what to look for when you run the application. Some games use " &
"launchers. Do not monitor launchers, choose the actual game exe file."
'
'lblDrag2
'
Me.lblDrag2.AllowDrop = True
Me.lblDrag2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblDrag2.Location = New System.Drawing.Point(14, 147)
Me.lblDrag2.Name = "lblDrag2"
Me.lblDrag2.Size = New System.Drawing.Size(336, 44)
Me.lblDrag2.TabIndex = 9
Me.lblDrag2.Text = "Drag a shortcut here to complete this step."
'
'btnProcessBrowse
'
Me.btnProcessBrowse.Location = New System.Drawing.Point(323, 60)
Me.btnProcessBrowse.Name = "btnProcessBrowse"
Me.btnProcessBrowse.Size = New System.Drawing.Size(27, 20)
Me.btnProcessBrowse.TabIndex = 8
Me.btnProcessBrowse.Text = "..."
Me.btnProcessBrowse.UseVisualStyleBackColor = True
'
'txtProcessPath
'
Me.txtProcessPath.AllowDrop = True
Me.txtProcessPath.Location = New System.Drawing.Point(17, 61)
Me.txtProcessPath.Name = "txtProcessPath"
Me.txtProcessPath.Size = New System.Drawing.Size(300, 20)
Me.txtProcessPath.TabIndex = 6
'
'lblStep2Intro
'
Me.lblStep2Intro.AutoSize = True
Me.lblStep2Intro.Location = New System.Drawing.Point(14, 45)
Me.lblStep2Intro.Name = "lblStep2Intro"
Me.lblStep2Intro.Size = New System.Drawing.Size(224, 13)
Me.lblStep2Intro.TabIndex = 7
Me.lblStep2Intro.Text = "Choose the game's executable file or shortcut:"
'
'tbPage3
'
Me.tbPage3.BackColor = System.Drawing.SystemColors.Control
Me.tbPage3.Controls.Add(Me.lblStep3Title)
Me.tbPage3.Controls.Add(Me.lblStep3Instructions)
Me.tbPage3.Controls.Add(Me.chkTimeStamp)
Me.tbPage3.Controls.Add(Me.chkFolderSave)
Me.tbPage3.Controls.Add(Me.btnSaveBrowse)
Me.tbPage3.Controls.Add(Me.txtSavePath)
Me.tbPage3.Controls.Add(Me.lblStep3Intro)
Me.tbPage3.Location = New System.Drawing.Point(4, 22)
Me.tbPage3.Name = "tbPage3"
Me.tbPage3.Size = New System.Drawing.Size(362, 194)
Me.tbPage3.TabIndex = 2
Me.tbPage3.Text = "TabPage3"
'
'lblStep3Title
'
Me.lblStep3Title.AutoSize = True
Me.lblStep3Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep3Title.Location = New System.Drawing.Point(14, 11)
Me.lblStep3Title.Name = "lblStep3Title"
Me.lblStep3Title.Size = New System.Drawing.Size(164, 20)
Me.lblStep3Title.TabIndex = 10
Me.lblStep3Title.Text = "Game Backup Path"
'
'lblStep3Instructions
'
Me.lblStep3Instructions.Location = New System.Drawing.Point(14, 116)
Me.lblStep3Instructions.Name = "lblStep3Instructions"
Me.lblStep3Instructions.Size = New System.Drawing.Size(303, 42)
Me.lblStep3Instructions.TabIndex = 9
Me.lblStep3Instructions.Text = "If you're unsure of exactly which files to backup, make sure Save Entire Folder " &
"is checked. You can also time stamp your backup files to make incremental backu" &
"ps."
'
'chkTimeStamp
'
Me.chkTimeStamp.AutoSize = True
Me.chkTimeStamp.Location = New System.Drawing.Point(139, 87)
Me.chkTimeStamp.Name = "chkTimeStamp"
Me.chkTimeStamp.Size = New System.Drawing.Size(122, 17)
Me.chkTimeStamp.TabIndex = 8
Me.chkTimeStamp.Text = "Time Stamp Backup"
Me.chkTimeStamp.UseVisualStyleBackColor = True
'
'chkFolderSave
'
Me.chkFolderSave.AutoSize = True
Me.chkFolderSave.Location = New System.Drawing.Point(17, 87)
Me.chkFolderSave.Name = "chkFolderSave"
Me.chkFolderSave.Size = New System.Drawing.Size(113, 17)
Me.chkFolderSave.TabIndex = 7
Me.chkFolderSave.Text = "Save Entire Folder"
Me.chkFolderSave.UseVisualStyleBackColor = True
'
'btnSaveBrowse
'
Me.btnSaveBrowse.Location = New System.Drawing.Point(323, 60)
Me.btnSaveBrowse.Name = "btnSaveBrowse"
Me.btnSaveBrowse.Size = New System.Drawing.Size(27, 20)
Me.btnSaveBrowse.TabIndex = 6
Me.btnSaveBrowse.Text = "..."
Me.btnSaveBrowse.UseVisualStyleBackColor = True
'
'txtSavePath
'
Me.txtSavePath.Location = New System.Drawing.Point(17, 61)
Me.txtSavePath.Name = "txtSavePath"
Me.txtSavePath.Size = New System.Drawing.Size(300, 20)
Me.txtSavePath.TabIndex = 4
'
'lblStep3Intro
'
Me.lblStep3Intro.AutoSize = True
Me.lblStep3Intro.Location = New System.Drawing.Point(14, 45)
Me.lblStep3Intro.Name = "lblStep3Intro"
Me.lblStep3Intro.Size = New System.Drawing.Size(222, 13)
Me.lblStep3Intro.TabIndex = 5
Me.lblStep3Intro.Text = "Choose the location of your game's save files:"
'
'tbPage3a
'
Me.tbPage3a.BackColor = System.Drawing.SystemColors.Control
Me.tbPage3a.Controls.Add(Me.grpFileTypes)
Me.tbPage3a.Controls.Add(Me.btnStep3aClear)
Me.tbPage3a.Controls.Add(Me.lblStep3aTitle)
Me.tbPage3a.Controls.Add(Me.lblStep3aInstructions)
Me.tbPage3a.Controls.Add(Me.txtFileTypes)
Me.tbPage3a.Location = New System.Drawing.Point(4, 22)
Me.tbPage3a.Name = "tbPage3a"
Me.tbPage3a.Size = New System.Drawing.Size(362, 194)
Me.tbPage3a.TabIndex = 3
Me.tbPage3a.Text = "TabPage4"
'
'grpFileTypes
'
Me.grpFileTypes.Controls.Add(Me.optFileTypeFolder)
Me.grpFileTypes.Controls.Add(Me.optSpecificFile)
Me.grpFileTypes.Controls.Add(Me.btnFileTypeBrowse)
Me.grpFileTypes.Controls.Add(Me.optFileType)
Me.grpFileTypes.Location = New System.Drawing.Point(17, 43)
Me.grpFileTypes.Name = "grpFileTypes"
Me.grpFileTypes.Size = New System.Drawing.Size(310, 47)
Me.grpFileTypes.TabIndex = 0
Me.grpFileTypes.TabStop = False
Me.grpFileTypes.Text = "Choose any files or folders to include in the backup"
'
'optSpecificFile
'
Me.optSpecificFile.AutoSize = True
Me.optSpecificFile.Location = New System.Drawing.Point(80, 19)
Me.optSpecificFile.Name = "optSpecificFile"
Me.optSpecificFile.Size = New System.Drawing.Size(82, 17)
Me.optSpecificFile.TabIndex = 2
Me.optSpecificFile.TabStop = True
Me.optSpecificFile.Text = "Specific File"
Me.optSpecificFile.UseVisualStyleBackColor = True
'
'btnFileTypeBrowse
'
Me.btnFileTypeBrowse.Location = New System.Drawing.Point(229, 16)
Me.btnFileTypeBrowse.Name = "btnFileTypeBrowse"
Me.btnFileTypeBrowse.Size = New System.Drawing.Size(75, 23)
Me.btnFileTypeBrowse.TabIndex = 3
Me.btnFileTypeBrowse.Text = "Browse..."
Me.btnFileTypeBrowse.UseVisualStyleBackColor = True
'
'optFileType
'
Me.optFileType.AutoSize = True
Me.optFileType.Location = New System.Drawing.Point(6, 19)
Me.optFileType.Name = "optFileType"
Me.optFileType.Size = New System.Drawing.Size(68, 17)
Me.optFileType.TabIndex = 1
Me.optFileType.TabStop = True
Me.optFileType.Text = "File Type"
Me.optFileType.UseVisualStyleBackColor = True
'
'btnStep3aClear
'
Me.btnStep3aClear.Location = New System.Drawing.Point(253, 93)
Me.btnStep3aClear.Name = "btnStep3aClear"
Me.btnStep3aClear.Size = New System.Drawing.Size(75, 23)
Me.btnStep3aClear.TabIndex = 5
Me.btnStep3aClear.Text = "&Clear"
Me.btnStep3aClear.UseVisualStyleBackColor = True
'
'lblStep3aTitle
'
Me.lblStep3aTitle.AutoSize = True
Me.lblStep3aTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep3aTitle.Location = New System.Drawing.Point(13, 11)
Me.lblStep3aTitle.Name = "lblStep3aTitle"
Me.lblStep3aTitle.Size = New System.Drawing.Size(199, 20)
Me.lblStep3aTitle.TabIndex = 12
Me.lblStep3aTitle.Text = "Choose Files to Backup"
'
'lblStep3aInstructions
'
Me.lblStep3aInstructions.Location = New System.Drawing.Point(14, 126)
Me.lblStep3aInstructions.Name = "lblStep3aInstructions"
Me.lblStep3aInstructions.Size = New System.Drawing.Size(303, 56)
Me.lblStep3aInstructions.TabIndex = 11
Me.lblStep3aInstructions.Text = "Choose any file types, specific files or folders you wish to include in the back" &
"up. You may choose multiple items to include. If you're unsure, go back a step" &
" and choose to save the entire folder. "
'
'txtFileTypes
'
Me.txtFileTypes.Location = New System.Drawing.Point(18, 95)
Me.txtFileTypes.Name = "txtFileTypes"
Me.txtFileTypes.ReadOnly = True
Me.txtFileTypes.Size = New System.Drawing.Size(229, 20)
Me.txtFileTypes.TabIndex = 4
Me.txtFileTypes.TabStop = False
'
'tbPage4
'
Me.tbPage4.BackColor = System.Drawing.SystemColors.Control
Me.tbPage4.Controls.Add(Me.grpExclude)
Me.tbPage4.Controls.Add(Me.btnStep4Clear)
Me.tbPage4.Controls.Add(Me.lblStep4Title)
Me.tbPage4.Controls.Add(Me.lblStep4Instructions)
Me.tbPage4.Controls.Add(Me.txtExcludeList)
Me.tbPage4.Location = New System.Drawing.Point(4, 22)
Me.tbPage4.Name = "tbPage4"
Me.tbPage4.Size = New System.Drawing.Size(362, 194)
Me.tbPage4.TabIndex = 4
Me.tbPage4.Text = "TabPage5"
'
'grpExclude
'
Me.grpExclude.Controls.Add(Me.optExcludeSpecificFile)
Me.grpExclude.Controls.Add(Me.btnExcludeBrowse)
Me.grpExclude.Controls.Add(Me.optExcludeFileType)
Me.grpExclude.Controls.Add(Me.optExcludeFolder)
Me.grpExclude.Location = New System.Drawing.Point(17, 43)
Me.grpExclude.Name = "grpExclude"
Me.grpExclude.Size = New System.Drawing.Size(310, 47)
Me.grpExclude.TabIndex = 0
Me.grpExclude.TabStop = False
Me.grpExclude.Text = "Choose any files or folders to exclude from the backup:"
'
'optExcludeSpecificFile
'
Me.optExcludeSpecificFile.AutoSize = True
Me.optExcludeSpecificFile.Location = New System.Drawing.Point(80, 19)
Me.optExcludeSpecificFile.Name = "optExcludeSpecificFile"
Me.optExcludeSpecificFile.Size = New System.Drawing.Size(82, 17)
Me.optExcludeSpecificFile.TabIndex = 2
Me.optExcludeSpecificFile.TabStop = True
Me.optExcludeSpecificFile.Text = "Specific File"
Me.optExcludeSpecificFile.UseVisualStyleBackColor = True
'
'btnExcludeBrowse
'
Me.btnExcludeBrowse.Location = New System.Drawing.Point(229, 16)
Me.btnExcludeBrowse.Name = "btnExcludeBrowse"
Me.btnExcludeBrowse.Size = New System.Drawing.Size(75, 23)
Me.btnExcludeBrowse.TabIndex = 4
Me.btnExcludeBrowse.Text = "&Browse..."
Me.btnExcludeBrowse.UseVisualStyleBackColor = True
'
'optExcludeFileType
'
Me.optExcludeFileType.AutoSize = True
Me.optExcludeFileType.Location = New System.Drawing.Point(6, 19)
Me.optExcludeFileType.Name = "optExcludeFileType"
Me.optExcludeFileType.Size = New System.Drawing.Size(68, 17)
Me.optExcludeFileType.TabIndex = 1
Me.optExcludeFileType.TabStop = True
Me.optExcludeFileType.Text = "File Type"
Me.optExcludeFileType.UseVisualStyleBackColor = True
'
'optExcludeFolder
'
Me.optExcludeFolder.AutoSize = True
Me.optExcludeFolder.Location = New System.Drawing.Point(168, 19)
Me.optExcludeFolder.Name = "optExcludeFolder"
Me.optExcludeFolder.Size = New System.Drawing.Size(54, 17)
Me.optExcludeFolder.TabIndex = 3
Me.optExcludeFolder.TabStop = True
Me.optExcludeFolder.Text = "Folder"
Me.optExcludeFolder.UseVisualStyleBackColor = True
'
'btnStep4Clear
'
Me.btnStep4Clear.Location = New System.Drawing.Point(253, 93)
Me.btnStep4Clear.Name = "btnStep4Clear"
Me.btnStep4Clear.Size = New System.Drawing.Size(75, 23)
Me.btnStep4Clear.TabIndex = 6
Me.btnStep4Clear.Text = "&Clear"
Me.btnStep4Clear.UseVisualStyleBackColor = True
'
'lblStep4Title
'
Me.lblStep4Title.AutoSize = True
Me.lblStep4Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep4Title.Location = New System.Drawing.Point(14, 11)
Me.lblStep4Title.Name = "lblStep4Title"
Me.lblStep4Title.Size = New System.Drawing.Size(201, 20)
Me.lblStep4Title.TabIndex = 16
Me.lblStep4Title.Text = "Exclude Files or Folders"
'
'lblStep4Instructions
'
Me.lblStep4Instructions.Location = New System.Drawing.Point(14, 126)
Me.lblStep4Instructions.Name = "lblStep4Instructions"
Me.lblStep4Instructions.Size = New System.Drawing.Size(303, 59)
Me.lblStep4Instructions.TabIndex = 12
Me.lblStep4Instructions.Text = resources.GetString("lblStep4Instructions.Text")
'
'txtExcludeList
'
Me.txtExcludeList.Location = New System.Drawing.Point(18, 95)
Me.txtExcludeList.Name = "txtExcludeList"
Me.txtExcludeList.ReadOnly = True
Me.txtExcludeList.Size = New System.Drawing.Size(229, 20)
Me.txtExcludeList.TabIndex = 5
Me.txtExcludeList.TabStop = False
'
'tbPage5
'
Me.tbPage5.BackColor = System.Drawing.SystemColors.Control
Me.tbPage5.Controls.Add(Me.lblStep5Intro)
Me.tbPage5.Controls.Add(Me.lblStep5Title)
Me.tbPage5.Controls.Add(Me.lstSummary)
Me.tbPage5.Location = New System.Drawing.Point(4, 22)
Me.tbPage5.Name = "tbPage5"
Me.tbPage5.Size = New System.Drawing.Size(362, 194)
Me.tbPage5.TabIndex = 5
Me.tbPage5.Text = "TabPage6"
'
'lblStep5Intro
'
Me.lblStep5Intro.AutoSize = True
Me.lblStep5Intro.Location = New System.Drawing.Point(15, 40)
Me.lblStep5Intro.Name = "lblStep5Intro"
Me.lblStep5Intro.Size = New System.Drawing.Size(243, 13)
Me.lblStep5Intro.TabIndex = 18
Me.lblStep5Intro.Text = "Verify your settings below and click Finish to save."
'
'lblStep5Title
'
Me.lblStep5Title.AutoSize = True
Me.lblStep5Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep5Title.Location = New System.Drawing.Point(14, 11)
Me.lblStep5Title.Name = "lblStep5Title"
Me.lblStep5Title.Size = New System.Drawing.Size(196, 20)
Me.lblStep5Title.TabIndex = 17
Me.lblStep5Title.Text = "Summary of your Game"
'
'lstSummary
'
Me.lstSummary.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable
Me.lstSummary.Location = New System.Drawing.Point(14, 65)
Me.lstSummary.Name = "lstSummary"
Me.lstSummary.Size = New System.Drawing.Size(335, 126)
Me.lstSummary.TabIndex = 1
Me.lstSummary.UseCompatibleStateImageBehavior = False
Me.lstSummary.View = System.Windows.Forms.View.Details
'
'btnCancel
'
Me.btnCancel.Location = New System.Drawing.Point(272, 202)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 12
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'btnNext
'
Me.btnNext.Location = New System.Drawing.Point(191, 202)
Me.btnNext.Name = "btnNext"
Me.btnNext.Size = New System.Drawing.Size(75, 23)
Me.btnNext.TabIndex = 11
Me.btnNext.Text = "&Next"
Me.btnNext.UseVisualStyleBackColor = True
'
'btnBack
'
Me.btnBack.Location = New System.Drawing.Point(110, 202)
Me.btnBack.Name = "btnBack"
Me.btnBack.Size = New System.Drawing.Size(75, 23)
Me.btnBack.TabIndex = 10
Me.btnBack.Text = "&Back"
Me.btnBack.UseVisualStyleBackColor = True
'
'optFileTypeFolder
'
Me.optFileTypeFolder.AutoSize = True
Me.optFileTypeFolder.Location = New System.Drawing.Point(168, 19)
Me.optFileTypeFolder.Name = "optFileTypeFolder"
Me.optFileTypeFolder.Size = New System.Drawing.Size(54, 17)
Me.optFileTypeFolder.TabIndex = 4
Me.optFileTypeFolder.TabStop = True
Me.optFileTypeFolder.Text = "Folder"
Me.optFileTypeFolder.UseVisualStyleBackColor = True
'
'frmAddWizard
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(359, 237)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.btnNext)
Me.Controls.Add(Me.btnBack)
Me.Controls.Add(Me.tabWizard)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmAddWizard"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = "Add Game Wizard"
Me.tabWizard.ResumeLayout(False)
Me.tbPage1.ResumeLayout(False)
Me.tbPage1.PerformLayout()
Me.tbPage2.ResumeLayout(False)
Me.tbPage2.PerformLayout()
Me.tbPage3.ResumeLayout(False)
Me.tbPage3.PerformLayout()
Me.tbPage3a.ResumeLayout(False)
Me.tbPage3a.PerformLayout()
Me.grpFileTypes.ResumeLayout(False)
Me.grpFileTypes.PerformLayout()
Me.tbPage4.ResumeLayout(False)
Me.tbPage4.PerformLayout()
Me.grpExclude.ResumeLayout(False)
Me.grpExclude.PerformLayout()
Me.tbPage5.ResumeLayout(False)
Me.tbPage5.PerformLayout()
Me.ResumeLayout(False)
End Sub
Friend WithEvents tabWizard As System.Windows.Forms.TabControl
Friend WithEvents tbPage1 As System.Windows.Forms.TabPage
Friend WithEvents tbPage2 As System.Windows.Forms.TabPage
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents btnNext As System.Windows.Forms.Button
Friend WithEvents btnBack As System.Windows.Forms.Button
Friend WithEvents tbPage3 As System.Windows.Forms.TabPage
Friend WithEvents tbPage3a As System.Windows.Forms.TabPage
Friend WithEvents tbPage4 As System.Windows.Forms.TabPage
Friend WithEvents tbPage5 As System.Windows.Forms.TabPage
Friend WithEvents lblDrag1 As System.Windows.Forms.Label
Friend WithEvents lblStep1Instructions As System.Windows.Forms.Label
Friend WithEvents txtName As System.Windows.Forms.TextBox
Friend WithEvents lblStep1Intro As System.Windows.Forms.Label
Friend WithEvents lblStep2Instructions As System.Windows.Forms.Label
Friend WithEvents lblDrag2 As System.Windows.Forms.Label
Friend WithEvents btnProcessBrowse As System.Windows.Forms.Button
Friend WithEvents txtProcessPath As System.Windows.Forms.TextBox
Friend WithEvents lblStep2Intro As System.Windows.Forms.Label
Friend WithEvents chkTimeStamp As System.Windows.Forms.CheckBox
Friend WithEvents chkFolderSave As System.Windows.Forms.CheckBox
Friend WithEvents btnSaveBrowse As System.Windows.Forms.Button
Friend WithEvents txtSavePath As System.Windows.Forms.TextBox
Friend WithEvents lblStep3Intro As System.Windows.Forms.Label
Friend WithEvents btnFileTypeBrowse As System.Windows.Forms.Button
Friend WithEvents txtFileTypes As System.Windows.Forms.TextBox
Friend WithEvents btnExcludeBrowse As System.Windows.Forms.Button
Friend WithEvents txtExcludeList As System.Windows.Forms.TextBox
Friend WithEvents optSpecificFile As System.Windows.Forms.RadioButton
Friend WithEvents optFileType As System.Windows.Forms.RadioButton
Friend WithEvents lblStep3aInstructions As System.Windows.Forms.Label
Friend WithEvents optExcludeFolder As System.Windows.Forms.RadioButton
Friend WithEvents optExcludeFileType As System.Windows.Forms.RadioButton
Friend WithEvents lblStep4Instructions As System.Windows.Forms.Label
Friend WithEvents optExcludeSpecificFile As System.Windows.Forms.RadioButton
Friend WithEvents lblStep3Instructions As System.Windows.Forms.Label
Friend WithEvents lstSummary As System.Windows.Forms.ListView
Friend WithEvents lblStep1Title As System.Windows.Forms.Label
Friend WithEvents lblStep2Title As System.Windows.Forms.Label
Friend WithEvents lblStep3Title As System.Windows.Forms.Label
Friend WithEvents lblStep4Title As System.Windows.Forms.Label
Friend WithEvents lblStep3aTitle As System.Windows.Forms.Label
Friend WithEvents lblStep5Intro As System.Windows.Forms.Label
Friend WithEvents lblStep5Title As System.Windows.Forms.Label
Friend WithEvents btnStep3aClear As System.Windows.Forms.Button
Friend WithEvents btnStep4Clear As System.Windows.Forms.Button
Friend WithEvents grpExclude As System.Windows.Forms.GroupBox
Friend WithEvents grpFileTypes As System.Windows.Forms.GroupBox
Friend WithEvents lbldBox As System.Windows.Forms.Label
Friend WithEvents btndBoxBrowse As System.Windows.Forms.Button
Friend WithEvents txtdBoxProcess As System.Windows.Forms.TextBox
Friend WithEvents optFileTypeFolder As RadioButton
End Class
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="lblStep4Instructions.Text" xml:space="preserve">
<value>Choose any file types, specific files or folders you wish to exclude from the backup. You may choose multiple items to exclude. A more advanced exclude list can be created manually via the Game Manager. This step can be skipped.</value>
</data>
</root>
+639
View File
@@ -0,0 +1,639 @@
Imports System.IO
Public Class frmAddWizard
Private oGameData As Hashtable
Private oGameToSave As clsGame
Private bDisableAdminWarning As Boolean = False
Private bIsDOSBoxGame As Boolean
Property GameData As Hashtable
Get
Return oGameData
End Get
Set(value As Hashtable)
oGameData = value
End Set
End Property
Private Enum eSteps As Integer
Step1 = 1
Step2 = 2
Step3 = 3
Step3a = 4
Step4 = 5
Step5 = 6
End Enum
Private eCurrentStep As eSteps = eSteps.Step1
Private Sub FormInit()
btndBoxBrowse.Visible = False
txtdBoxProcess.Visible = False
lbldBox.Visible = False
chkFolderSave.Checked = True
chkTimeStamp.Checked = False
optFileType.Checked = True
optExcludeFileType.Checked = True
StepHandler()
End Sub
Private Function StringEmptyText(ByVal sString As String) As String
If sString = String.Empty Then
Return "None"
Else
Return sString
End If
End Function
Private Function BuildSummaryAndData() As clsGame
Dim oGame As New clsGame
Dim sName As String = txtName.Text
Dim sProcessFullPath As String = txtProcessPath.Text
Dim sProcessPath As String = Path.GetDirectoryName(sProcessFullPath)
Dim sProcess As String = Path.GetFileNameWithoutExtension(sProcessFullPath)
Dim sProcessSummaryText As String = Path.GetFileName(sProcessFullPath) & " (" & sProcessPath & ")"
Dim sdBoxProcessFullPath As String = String.Empty
Dim sdBoxProcessPath As String = String.Empty
Dim sdBoxProcess As String = String.Empty
Dim sdBoxProcessSummaryText As String = String.Empty
Dim sSavePath As String = txtSavePath.Text
Dim bIsAbsolute As Boolean = mgrPath.IsAbsolute(sSavePath)
Dim bFolderBackup As Boolean = chkFolderSave.Checked
Dim bTimeStamp As Boolean = chkTimeStamp.Checked
Dim sFileType As String = txtFileTypes.Text
Dim sExcludeList As String = txtExcludeList.Text
Dim sItem As String()
Dim sItems As String()
Dim sValues As String()
Dim lstItem As ListViewItem
If Not bIsAbsolute Then
sSavePath = mgrPath.DetermineRelativePath(sProcessPath, sSavePath)
End If
If bIsDOSBoxGame Then
sdBoxProcessFullPath = txtdBoxProcess.Text
sdBoxProcessPath = Path.GetDirectoryName(sdBoxProcessFullPath)
sdBoxProcess = Path.GetFileNameWithoutExtension(sdBoxProcessFullPath)
sdBoxProcessSummaryText = Path.GetFileName(sdBoxProcessFullPath) & " (" & sdBoxProcessPath & ")"
sProcess = sProcess.ToLower & ":" & sdBoxProcess
End If
'Build Summary Listview
lstSummary.Clear()
lstSummary.Columns.Add("Item")
lstSummary.Columns.Add("Value")
lstSummary.Columns(0).Width = 95
lstSummary.Columns(1).Width = 210
sItems = {"Name", "Process", "DOS Process", "Absolute Path", "Save Path", "Folder Backup", "Specific Files", "Time Stamp", "Exclude List"}
sValues = {sName, sProcessSummaryText, StringEmptyText(sdBoxProcessSummaryText), mgrCommon.BooleanYesNo(bIsAbsolute), sSavePath, mgrCommon.BooleanYesNo(bFolderBackup), StringEmptyText(sFileType), mgrCommon.BooleanYesNo(bTimeStamp), StringEmptyText(sExcludeList)}
For i = 0 To sItems.Length - 1
sItem = {sItems(i), sValues(i)}
lstItem = New ListViewItem(sItem)
lstSummary.Items.Add(lstItem)
Next
'Build Save Object
oGame.Name = sName
oGame.ProcessName = sProcess
oGame.Path = sSavePath
oGame.AbsolutePath = bIsAbsolute
oGame.FolderSave = bFolderBackup
oGame.FileType = sFileType
oGame.AppendTimeStamp = bTimeStamp
oGame.ExcludeList = sExcludeList
Return oGame
End Function
Private Sub StepHandler()
Select Case eCurrentStep
Case eSteps.Step1
btnBack.Enabled = False
btnNext.Enabled = True
tabWizard.SelectTab(0)
Case eSteps.Step2
btnBack.Enabled = True
btnNext.Enabled = True
tabWizard.SelectTab(1)
Case eSteps.Step3
btnBack.Enabled = True
btnNext.Enabled = True
tabWizard.SelectTab(2)
Case eSteps.Step3a
btnBack.Enabled = True
btnNext.Enabled = True
tabWizard.SelectTab(3)
Case eSteps.Step4
btnBack.Enabled = True
btnNext.Enabled = True
btnNext.Text = "&Next"
tabWizard.SelectTab(4)
Case eSteps.Step5
btnBack.Enabled = True
btnNext.Text = "&Finish"
tabWizard.SelectTab(5)
End Select
End Sub
Private Function ValidateName(ByVal strName As String, ByRef sErrorMessage As String) As Boolean
If txtName.Text <> String.Empty Then
txtName.Text = mgrPath.ValidateForFileSystem(txtName.Text)
Return True
Else
sErrorMessage = "You must enter a valid game name."
txtName.Focus()
Return False
End If
Return True
End Function
Private Function CheckforDOSBox(ByVal strpath As String) As Boolean
If strpath.ToLower.Contains("dosbox.exe") Then
bIsDOSBoxGame = True
lbldBox.Visible = True
txtdBoxProcess.Visible = True
btndBoxBrowse.Visible = True
If txtdBoxProcess.Text = String.Empty Then
If MsgBox("You have selected a DOSBox executable, to monitor DOS programs you need to also select the actual DOS executable file." & vbCrLf & vbCrLf & "Would you like to do this now?", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then
DOSProcessBrowse()
End If
End If
Return True
Else
bIsDOSBoxGame = False
lbldBox.Visible = False
txtdBoxProcess.Text = String.Empty
txtdBoxProcess.Visible = False
btndBoxBrowse.Visible = False
Return False
End If
End Function
Private Function ValidateDOSProcessPath(ByVal strPath As String, ByRef sErrorMessage As String) As Boolean
If strPath = String.Empty Then
sErrorMessage = "You must select the DOS game's executable file (.exe or .com) to continue."
txtProcessPath.Focus()
Return False
End If
If Path.GetExtension(strPath.ToLower) <> ".exe" And Path.GetExtension(strPath.ToLower) <> ".com" Then
sErrorMessage = "The DOS file you selected is not an executable file. (.exe or .com)"
txtProcessPath.Focus()
Return False
End If
If Not Path.IsPathRooted(strPath) Then
sErrorMessage = "The path to the DOS executable must be a full path."
txtProcessPath.Focus()
Return False
End If
If Not File.Exists(strPath) Then
sErrorMessage = "The selected DOS executable file does not exist."
txtProcessPath.Focus()
Return False
End If
Return True
End Function
Private Function ValidateProcessPath(ByVal strPath As String, ByRef sErrorMessage As String) As Boolean
If strPath = String.Empty Then
sErrorMessage = "You must select the game's executable file (.exe) to continue."
txtProcessPath.Focus()
Return False
End If
If Path.GetExtension(strPath.ToLower) <> ".exe" Then
sErrorMessage = "The file you selected is not an executable file."
txtProcessPath.Focus()
Return False
End If
If Not Path.IsPathRooted(strPath) Then
sErrorMessage = "The path to the executable must be a full path."
txtProcessPath.Focus()
Return False
End If
If Not File.Exists(strPath) Then
sErrorMessage = "The selected executable file does not exist."
txtProcessPath.Focus()
Return False
End If
Return True
End Function
Private Function ValidateSavePath(ByVal strPath As String, ByRef sErrorMessage As String) As Boolean
If strPath = String.Empty Then
sErrorMessage = "You must select the game's save file path to continue."
txtSavePath.Focus()
Return False
End If
If Not Directory.Exists(strPath) Then
sErrorMessage = "The folder you selected does not exist or is not a valid folder."
txtSavePath.Focus()
Return False
End If
If Not Path.IsPathRooted(strPath) Then
sErrorMessage = "The selected path must be a full path."
txtSavePath.Focus()
Return False
End If
Return True
End Function
Private Function ValidateSaveType(ByVal strSaveType As String, ByRef sErrorMessage As String)
If strSaveType = String.Empty Then
sErrorMessage = "You must choose a file type or specific file to backup."
txtFileTypes.Focus()
Return False
End If
Return True
End Function
Private Sub DoSave()
Dim oGames As New List(Of clsGame)
Dim hshDupeCheck As New Hashtable
Dim sExistingGame As String
Dim sNewGame As String = oGameToSave.Name & ":" & oGameToSave.ProcessName
For Each o As clsGame In GameData.Values
oGames.Add(o)
sExistingGame = o.Name & ":" & o.ProcessName
hshDupeCheck.Add(sExistingGame, String.Empty)
Next
If hshDupeCheck.Contains(sNewGame) Then
MsgBox("The monitor list already contains a game with this exact name and process.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
Else
mgrMonitorList.DoListAdd(oGameToSave)
MsgBox(oGameToSave.Name & " has been added to the monitor list.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
Me.Close()
End If
End Sub
Private Sub ValidateBack()
Select Case eCurrentStep
Case eSteps.Step2
eCurrentStep = eSteps.Step1
Case eSteps.Step3
eCurrentStep = eSteps.Step2
Case eSteps.Step3a
eCurrentStep = eSteps.Step3
Case eSteps.Step4
If chkFolderSave.Checked Then
eCurrentStep = eSteps.Step3
Else
eCurrentStep = eSteps.Step3a
End If
Case eSteps.Step5
eCurrentStep = eSteps.Step4
End Select
StepHandler()
End Sub
Private Sub ValidateNext()
Dim bError As Boolean = False
Dim sErrorMessage As String = String.Empty
Select Case eCurrentStep
Case eSteps.Step1
If ValidateName(txtName.Text, sErrorMessage) Then
eCurrentStep = eSteps.Step2
Else
bError = True
End If
Case eSteps.Step2
If ValidateProcessPath(txtProcessPath.Text, sErrorMessage) Then
If CheckforDOSBox(txtProcessPath.Text) Then
If ValidateDOSProcessPath(txtdBoxProcess.Text, sErrorMessage) Then
eCurrentStep = eSteps.Step3
Else
bError = True
End If
Else
eCurrentStep = eSteps.Step3
End If
Else
bError = True
End If
Case eSteps.Step3
If ValidateSavePath(txtSavePath.Text, sErrorMessage) Then
If chkFolderSave.Checked = False Then
eCurrentStep = eSteps.Step3a
Else
eCurrentStep = eSteps.Step4
End If
Else
bError = True
End If
Case eSteps.Step3a
If ValidateSaveType(txtFileTypes.Text, sErrorMessage) Then
eCurrentStep = eSteps.Step4
Else
bError = True
End If
Case eSteps.Step4
oGameToSave = BuildSummaryAndData()
eCurrentStep = eSteps.Step5
Case eSteps.Step5
DoSave()
End Select
If bError Then MsgBox(sErrorMessage, MsgBoxStyle.Exclamation, "Game Backup Monitor")
StepHandler()
End Sub
Private Sub ReadShortcut(ByVal sLinkPath As String)
Dim oShell As Shell32.Shell
Dim oFolder As Shell32.Folder
Dim sDirectory As String = Path.GetDirectoryName(sLinkPath)
Dim sFile As String = Path.GetFileName(sLinkPath)
Dim sExtension As String = Path.GetExtension(sFile)
Dim sTemp As String
If sExtension = ".lnk" Then
Try
oShell = New Shell32.Shell
oFolder = oShell.NameSpace(sDirectory)
If (Not oFolder Is Nothing) Then
Dim oFolderItem As Shell32.FolderItem
oFolderItem = oFolder.ParseName(sFile)
If (Not oFolderItem Is Nothing) Then
Dim oShellLink As Shell32.ShellLinkObject
oShellLink = oFolderItem.GetLink
If (Not oShellLink Is Nothing) Then
If eCurrentStep = eSteps.Step1 Then
txtName.Text = System.IO.Path.GetFileNameWithoutExtension(sFile)
txtProcessPath.Text = oShellLink.Target.Path
Else
txtProcessPath.Text = oShellLink.Target.Path
End If
End If
oShellLink = Nothing
End If
oFolderItem = Nothing
End If
oFolder = Nothing
oShell = Nothing
Catch e1 As Exception
If e1.Message.Contains("E_ACCESSDENIED") Then
sTemp = Path.GetTempPath & Path.GetFileName(sFile)
Try
File.Copy(sLinkPath, sTemp, True)
ReadShortcut(sTemp)
File.Delete(sTemp)
Catch e2 As Exception
MsgBox("An error occured working with the shortcut file." & vbCrLf & vbCrLf & e2.Message, MsgBoxStyle.Critical, "Game Backup Monitor")
End Try
Else
MsgBox("An error occured reading the shortcut file." & vbCrLf & vbCrLf & e1.Message, MsgBoxStyle.Critical, "Game Backup Monitor")
End If
End Try
Else
MsgBox("This file is not a shorcut.")
End If
End Sub
Private Sub DOSProcessBrowse()
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
Dim sCurrentPath As String
Dim sNewPath As String
If txtProcessPath.Text <> String.Empty Then
sCurrentPath = Path.GetDirectoryName(txtProcessPath.Text)
If Directory.Exists(sCurrentPath) Then
sDefaultFolder = sCurrentPath
End If
End If
sNewPath = mgrCommon.OpenFileBrowser("Choose DOS executable file that starts the game", "*", _
"", sDefaultFolder, False)
If sNewPath <> String.Empty Then txtdBoxProcess.Text = sNewPath
End Sub
Private Sub ProcessBrowse()
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
Dim sCurrentPath As String
Dim sNewPath As String
If txtProcessPath.Text <> String.Empty Then
sCurrentPath = Path.GetDirectoryName(txtProcessPath.Text)
If Directory.Exists(sCurrentPath) Then
sDefaultFolder = sCurrentPath
End If
End If
sNewPath = mgrCommon.OpenFileBrowser("Choose exe file that starts the game", "exe", _
"Executable", sDefaultFolder, False)
If sNewPath <> String.Empty Then txtProcessPath.Text = sNewPath
End Sub
Private Sub SavePathBrowse()
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Dim sCurrentPath As String = txtSavePath.Text
Dim sNewPath As String
If txtSavePath.Text <> String.Empty Then
If Directory.Exists(sCurrentPath) Then
sDefaultFolder = sCurrentPath
End If
End If
sNewPath = mgrCommon.OpenFolderBrowser("Choose the game save folder:", sDefaultFolder, False)
If sNewPath <> String.Empty Then txtSavePath.Text = sNewPath
End Sub
Private Sub SaveTypeBrowse()
Dim sDefaultFolder As String = txtSavePath.Text
Dim sCurrentSaveType As String = txtFileTypes.Text
Dim sSaveType As String
Dim sTitle As String = String.Empty
Dim sSaveTypeList As String()
If optFileType.Checked Then
sTitle = "Choose the type of file to backup"
ElseIf optSpecificFile.Checked Then
sTitle = "Choose a specific file to backup"
Else
sTitle = "Choose a specific folder to backup"
End If
If optFileType.Checked Or optSpecificFile.Checked Then
sSaveType = mgrCommon.OpenFileBrowser(sTitle, "*", "All", sDefaultFolder, False)
If sSaveType <> String.Empty Then
sSaveTypeList = sSaveType.Split("|")
For Each s As String In sSaveTypeList
If optFileType.Checked Then
sSaveType = "*" & Path.GetExtension(s) & ":"
Else
sSaveType = Path.GetFileName(s) & ":"
End If
sSaveType = sSaveType.TrimEnd(":")
If sCurrentSaveType <> String.Empty Then
sCurrentSaveType &= ":" & sSaveType
Else
sCurrentSaveType = sSaveType
End If
Next
End If
Else
sSaveType = mgrCommon.OpenFolderBrowser(sTitle, sDefaultFolder, False)
If sSaveType <> String.Empty Then
Dim sPath As String() = sSaveType.Split("\")
If sCurrentSaveType <> String.Empty Then
sCurrentSaveType &= ":" & sPath(sPath.Length - 1)
Else
sCurrentSaveType = sPath(sPath.Length - 1)
End If
End If
End If
txtFileTypes.Text = sCurrentSaveType
End Sub
Private Sub ExcludeBrowse()
Dim sDefaultFolder As String = txtSavePath.Text
Dim sCurrentExclude As String = txtExcludeList.Text
Dim sExclude As String
Dim sExcludeList As String()
Dim sTitle As String = String.Empty
If optExcludeFileType.Checked Then
sTitle = "Choose the type of file(s) to exclude"
ElseIf optExcludeSpecificFile.Checked Then
sTitle = "Choose any file(s) to exclude"
Else
sTitle = "Choose a folder to exclude"
End If
If optExcludeFileType.Checked Or optExcludeSpecificFile.Checked Then
sExclude = mgrCommon.OpenFileBrowser(sTitle, "*", "All", sDefaultFolder, True)
If sExclude <> String.Empty Then
sExcludeList = sExclude.Split("|")
For Each s As String In sExcludeList
If optExcludeFileType.Checked Then
sExclude = "*" & Path.GetExtension(s) & ":"
Else
sExclude = Path.GetFileName(s) & ":"
End If
sExclude = sExclude.TrimEnd(":")
If sCurrentExclude <> String.Empty Then
sCurrentExclude &= ":" & sExclude
Else
sCurrentExclude = sExclude
End If
Next
End If
Else
sExclude = mgrCommon.OpenFolderBrowser(sTitle, sDefaultFolder, False)
If sExclude <> String.Empty Then
Dim sPath As String() = sExclude.Split("\")
If sCurrentExclude <> String.Empty Then
sCurrentExclude &= ":" & sPath(sPath.Length - 1)
Else
sCurrentExclude = sPath(sPath.Length - 1)
End If
End If
End If
If sCurrentExclude <> String.Empty Then
txtExcludeList.Text = sCurrentExclude
End If
End Sub
Private Sub btnBack_Click(sender As Object, e As EventArgs) Handles btnBack.Click
ValidateBack()
End Sub
Private Sub btnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
ValidateNext()
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.Close()
End Sub
Private Sub frmAddWizard_Load(sender As Object, e As EventArgs) Handles MyBase.Load
FormInit()
End Sub
Private Sub DropTarget_DragEnter(sender As Object, e As DragEventArgs) Handles lblDrag1.DragEnter, lblDrag2.DragEnter, txtName.DragEnter, txtProcessPath.DragEnter
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
e.Effect = DragDropEffects.Copy
End If
End Sub
Private Sub DropTarget_DragDrop(sender As Object, e As DragEventArgs) Handles lblDrag1.DragDrop, lblDrag2.DragDrop, txtName.DragDrop, txtProcessPath.DragDrop
Dim oFiles() As String = e.Data.GetData(DataFormats.FileDrop)
For Each sPath In oFiles
ReadShortcut(sPath)
Next
End Sub
Private Sub btndBoxBrowse_Click(sender As Object, e As EventArgs) Handles btndBoxBrowse.Click
DOSProcessBrowse()
End Sub
Private Sub btnProcessBrowse_Click(sender As Object, e As EventArgs) Handles btnProcessBrowse.Click
ProcessBrowse()
End Sub
Private Sub btnSaveBrowse_Click(sender As Object, e As EventArgs) Handles btnSaveBrowse.Click
SavePathBrowse()
End Sub
Private Sub btnFileTypeBrowse_Click(sender As Object, e As EventArgs) Handles btnFileTypeBrowse.Click
SaveTypeBrowse()
End Sub
Private Sub btnExcludeBrowse_Click(sender As Object, e As EventArgs) Handles btnExcludeBrowse.Click
ExcludeBrowse()
End Sub
Private Sub btnStep4Clear_Click(sender As Object, e As EventArgs) Handles btnStep4Clear.Click
txtExcludeList.Clear()
End Sub
Private Sub btnStep3aClear_Click(sender As Object, e As EventArgs) Handles btnStep3aClear.Click
txtFileTypes.Clear()
End Sub
Private Sub chkFolderSave_CheckedChanged(sender As Object, e As EventArgs) Handles chkFolderSave.CheckedChanged
txtFileTypes.Clear()
End Sub
End Class
+115
View File
@@ -0,0 +1,115 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmAdvancedImport
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.lstGames = New System.Windows.Forms.CheckedListBox()
Me.btnImport = New System.Windows.Forms.Button()
Me.chkSelectAll = New System.Windows.Forms.CheckBox()
Me.lblGames = New System.Windows.Forms.Label()
Me.lblSelected = New System.Windows.Forms.Label()
Me.btnCancel = New System.Windows.Forms.Button()
Me.SuspendLayout()
'
'lstGames
'
Me.lstGames.CheckOnClick = True
Me.lstGames.FormattingEnabled = True
Me.lstGames.Location = New System.Drawing.Point(12, 30)
Me.lstGames.Name = "lstGames"
Me.lstGames.Size = New System.Drawing.Size(335, 334)
Me.lstGames.Sorted = True
Me.lstGames.TabIndex = 1
'
'btnImport
'
Me.btnImport.Location = New System.Drawing.Point(191, 370)
Me.btnImport.Name = "btnImport"
Me.btnImport.Size = New System.Drawing.Size(75, 23)
Me.btnImport.TabIndex = 2
Me.btnImport.Text = "&Import"
Me.btnImport.UseVisualStyleBackColor = True
'
'chkSelectAll
'
Me.chkSelectAll.AutoSize = True
Me.chkSelectAll.Location = New System.Drawing.Point(15, 12)
Me.chkSelectAll.Name = "chkSelectAll"
Me.chkSelectAll.Size = New System.Drawing.Size(15, 14)
Me.chkSelectAll.TabIndex = 0
Me.chkSelectAll.UseVisualStyleBackColor = True
'
'lblGames
'
Me.lblGames.Location = New System.Drawing.Point(12, 12)
Me.lblGames.Name = "lblGames"
Me.lblGames.Size = New System.Drawing.Size(335, 14)
Me.lblGames.TabIndex = 0
Me.lblGames.Text = "Games"
Me.lblGames.TextAlign = System.Drawing.ContentAlignment.TopCenter
'
'lblSelected
'
Me.lblSelected.AutoSize = True
Me.lblSelected.Location = New System.Drawing.Point(9, 375)
Me.lblSelected.Name = "lblSelected"
Me.lblSelected.Size = New System.Drawing.Size(77, 13)
Me.lblSelected.TabIndex = 0
Me.lblSelected.Text = "Selected Items"
'
'btnCancel
'
Me.btnCancel.Location = New System.Drawing.Point(272, 370)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 3
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'frmAdvancedImport
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(359, 402)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.lblSelected)
Me.Controls.Add(Me.chkSelectAll)
Me.Controls.Add(Me.btnImport)
Me.Controls.Add(Me.lstGames)
Me.Controls.Add(Me.lblGames)
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmAdvancedImport"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Import Game Configurations"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents lstGames As System.Windows.Forms.CheckedListBox
Friend WithEvents btnImport As System.Windows.Forms.Button
Friend WithEvents chkSelectAll As System.Windows.Forms.CheckBox
Friend WithEvents lblGames As System.Windows.Forms.Label
Friend WithEvents lblSelected As System.Windows.Forms.Label
Friend WithEvents btnCancel As System.Windows.Forms.Button
End Class
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+83
View File
@@ -0,0 +1,83 @@
Public Class frmAdvancedImport
Private hshImportData As Hashtable
Private bSelectAll As Boolean = False
Private bIsLoading As Boolean = False
Public Property ImportData As Hashtable
Set(value As Hashtable)
hshImportData = value
End Set
Get
Return hshImportData
End Get
End Property
Private Sub SelectToggle()
bSelectAll = Not bSelectAll
For i As Integer = 0 To lstGames.Items.Count - 1
lstGames.SetItemChecked(i, bSelectAll)
Next
UpdateSelected()
End Sub
Private Sub LoadData()
Dim oApp As clsGame
Dim oData As KeyValuePair(Of String, String)
lstGames.ValueMember = "Key"
lstGames.DisplayMember = "Value"
For Each de As DictionaryEntry In ImportData
oApp = DirectCast(de.Value, clsGame)
oData = New KeyValuePair(Of String, String)(oApp.ProcessName, oApp.Name & " (" & oApp.TrueProcess & ")")
lstGames.Items.Add(oData)
Next
End Sub
Private Sub SetForm()
chkSelectAll.Checked = True
lblGames.Text = ImportData.Count & " new configurations available."
End Sub
Private Sub BuildList()
Dim oData As KeyValuePair(Of String, String)
For i As Integer = 0 To lstGames.Items.Count - 1
If Not lstGames.GetItemChecked(i) Then
oData = lstGames.Items(i)
ImportData.Remove(oData.Key)
End If
Next
End Sub
Private Sub UpdateSelected()
lblSelected.Text = lstGames.CheckedItems.Count & " Selected"
End Sub
Private Sub frmAdvancedImport_Load(sender As Object, e As EventArgs) Handles MyBase.Load
bIsLoading = True
SetForm()
LoadData()
SelectToggle()
bIsLoading = False
End Sub
Private Sub chkSelectAll_CheckedChanged(sender As Object, e As EventArgs) Handles chkSelectAll.CheckedChanged
If Not bIsLoading Then SelectToggle()
End Sub
Private Sub lstGames_SelectedValueChanged(sender As Object, e As EventArgs) Handles lstGames.SelectedValueChanged
If Not bIsLoading Then UpdateSelected()
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.Close()
End Sub
Private Sub btnImport_Click(sender As Object, e As EventArgs) Handles btnImport.Click
BuildList()
If ImportData.Count > 0 Then Me.DialogResult = Windows.Forms.DialogResult.OK
Me.Close()
End Sub
End Class
+78
View File
@@ -0,0 +1,78 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmChooseGame
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.lblChoose = New System.Windows.Forms.Label()
Me.btnChoose = New System.Windows.Forms.Button()
Me.lstGameBox = New System.Windows.Forms.ListBox()
Me.SuspendLayout()
'
'lblChoose
'
Me.lblChoose.AutoSize = True
Me.lblChoose.Location = New System.Drawing.Point(12, 9)
Me.lblChoose.Name = "lblChoose"
Me.lblChoose.Size = New System.Drawing.Size(209, 13)
Me.lblChoose.TabIndex = 0
Me.lblChoose.Text = "Please choose the game you were playing:"
'
'btnChoose
'
Me.btnChoose.Location = New System.Drawing.Point(124, 135)
Me.btnChoose.Name = "btnChoose"
Me.btnChoose.Size = New System.Drawing.Size(119, 23)
Me.btnChoose.TabIndex = 2
Me.btnChoose.Text = "C&hoose Game"
Me.btnChoose.UseVisualStyleBackColor = True
'
'lstGameBox
'
Me.lstGameBox.FormattingEnabled = True
Me.lstGameBox.Location = New System.Drawing.Point(15, 34)
Me.lstGameBox.Name = "lstGameBox"
Me.lstGameBox.Size = New System.Drawing.Size(228, 95)
Me.lstGameBox.TabIndex = 1
'
'frmChooseGame
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(255, 166)
Me.Controls.Add(Me.lstGameBox)
Me.Controls.Add(Me.btnChoose)
Me.Controls.Add(Me.lblChoose)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmChooseGame"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Choose Game"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents lblChoose As System.Windows.Forms.Label
Friend WithEvents btnChoose As System.Windows.Forms.Button
Friend WithEvents lstGameBox As System.Windows.Forms.ListBox
End Class
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+68
View File
@@ -0,0 +1,68 @@
Public Class frmChooseGame
Private oProcess As mgrProcesses
Private oGame As clsGame
Private oGamesList As New List(Of KeyValuePair(Of String, String))
Private oGamesHash As New Hashtable
Private bGameSelected As Boolean = False
Property Process As mgrProcesses
Get
Return oProcess
End Get
Set(value As mgrProcesses)
oProcess = value
End Set
End Property
Property Game As clsGame
Get
Return oGame
End Get
Set(value As clsGame)
oGame = value
End Set
End Property
Private Sub FillComboBox()
For Each o As clsGame In Process.DuplicateList
oGamesList.Add(New KeyValuePair(Of String, String)(o.ID, o.Name))
oGamesHash.Add(o.ID, o)
Next
lstGameBox.DataSource = oGamesList
lstGameBox.ValueMember = "key"
lstGameBox.DisplayMember = "value"
lstGameBox.SelectedIndex = 0
End Sub
Private Sub SaveSelection()
oGame.ProcessPath = oProcess.GameInfo.ProcessPath
mgrMonitorList.DoListUpdate(oGame)
End Sub
Private Sub GetSelection()
Dim sSelectedGame As String
sSelectedGame = CStr(lstGameBox.SelectedValue)
oGame = DirectCast(oGamesHash.Item(sSelectedGame), clsGame)
SaveSelection()
bGameSelected = True
Me.Close()
End Sub
Private Sub frmChooseGame_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
FillComboBox()
Me.Focus()
End Sub
Private Sub btnChoose_Click(sender As System.Object, e As System.EventArgs) Handles btnChoose.Click
GetSelection()
End Sub
Private Sub frmChooseGame_FormClosing(sender As System.Object, e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
If bGameSelected = False Then
e.Cancel = True
End If
End Sub
End Class
+84
View File
@@ -0,0 +1,84 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmFileFolderSearch
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.pgbProgress = New System.Windows.Forms.ProgressBar()
Me.txtCurrentLocation = New System.Windows.Forms.TextBox()
Me.btnCancel = New System.Windows.Forms.Button()
Me.bwSearch = New System.ComponentModel.BackgroundWorker()
Me.SuspendLayout()
'
'pgbProgress
'
Me.pgbProgress.Location = New System.Drawing.Point(12, 12)
Me.pgbProgress.MarqueeAnimationSpeed = 0
Me.pgbProgress.Name = "pgbProgress"
Me.pgbProgress.Size = New System.Drawing.Size(460, 23)
Me.pgbProgress.TabIndex = 0
'
'txtCurrentLocation
'
Me.txtCurrentLocation.Location = New System.Drawing.Point(12, 43)
Me.txtCurrentLocation.Name = "txtCurrentLocation"
Me.txtCurrentLocation.ReadOnly = True
Me.txtCurrentLocation.Size = New System.Drawing.Size(379, 20)
Me.txtCurrentLocation.TabIndex = 0
Me.txtCurrentLocation.TabStop = False
'
'btnCancel
'
Me.btnCancel.Location = New System.Drawing.Point(397, 41)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 0
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'bwSearch
'
Me.bwSearch.WorkerSupportsCancellation = True
'
'frmFileFolderSearch
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(484, 77)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.txtCurrentLocation)
Me.Controls.Add(Me.pgbProgress)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmFileFolderSearch"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Search"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents pgbProgress As System.Windows.Forms.ProgressBar
Friend WithEvents txtCurrentLocation As System.Windows.Forms.TextBox
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents bwSearch As System.ComponentModel.BackgroundWorker
End Class
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="bwSearch.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>
+178
View File
@@ -0,0 +1,178 @@
Imports System.IO
Public Class frmFileFolderSearch
Private sSearchItem As String
Private bIsFolder As Boolean
Private sFoundItem As String
Private oDrives As List(Of DriveInfo)
Private iCurrentDrive As Integer
Private oSearchDrive As DirectoryInfo
Dim bShutdown As Boolean = False
Delegate Sub UpdateInfoCallBack(ByVal sCurrentFolder As String)
Public Property SearchItem As String
Get
Return sSearchItem
End Get
Set(value As String)
sSearchItem = value
End Set
End Property
Public Property FolderSearch As Boolean
Get
Return bIsFolder
End Get
Set(value As Boolean)
bIsFolder = value
End Set
End Property
Public Property FoundItem As String
Get
Return sFoundItem
End Get
Set(value As String)
sFoundItem = value
End Set
End Property
Private Sub UpdateInfo(ByVal sCurrentFolder As String)
If txtCurrentLocation.InvokeRequired = True Then
Dim d As New UpdateInfoCallBack(AddressOf UpdateInfo)
Me.Invoke(d, New Object() {sCurrentFolder})
Else
txtCurrentLocation.Text = sCurrentFolder
End If
End Sub
Private Function SearchDirectory(ByVal dir As DirectoryInfo, ByVal sDirectoryName As String) As String
Dim sSubSearch As String = String.Empty
If bwSearch.CancellationPending Then
Return "Cancel"
End If
UpdateInfo(dir.FullName)
Try
'Search Current Directory
If dir.GetDirectories(sDirectoryName).Length > 0 Then
Return dir.FullName & "\" & sDirectoryName
End If
'Search Sub Directory
Dim subdirs() As DirectoryInfo = dir.GetDirectories("*")
For Each newDir As DirectoryInfo In subdirs
sSubSearch = SearchDirectory(newDir, sDirectoryName)
If sSubSearch <> String.Empty Then
Return sSubSearch
End If
Next
Catch e As System.UnauthorizedAccessException
'Do Nothing
Catch e As Exception
'Do Nothing
End Try
Return sSubSearch
End Function
Private Function SearchFile(ByVal dir As DirectoryInfo, ByVal sFileName As String) As String
Dim sSubSearch As String = String.Empty
If bwSearch.CancellationPending Then
Return "Cancel"
End If
UpdateInfo(dir.FullName)
Try
'Search Current Directory
If dir.GetFiles(sFileName).Length > 0 Then
Return dir.FullName & "\" & sFileName
End If
'Search Sub Directory
Dim subdirs() As DirectoryInfo = dir.GetDirectories("*")
For Each newDir As DirectoryInfo In subdirs
sSubSearch = SearchFile(newDir, sFileName)
If sSubSearch <> String.Empty Then
Return sSubSearch
End If
Next
Catch e As System.UnauthorizedAccessException
'Do Nothing
Catch e As Exception
'Do Nothing
End Try
Return sSubSearch
End Function
Private Sub GetDrives()
oDrives = New List(Of DriveInfo)
For Each oDrive As DriveInfo In My.Computer.FileSystem.Drives
If oDrive.DriveType = IO.DriveType.Fixed Then
oDrives.Add(oDrive)
End If
Next
End Sub
Private Sub Search(ByVal oDrive As DriveInfo)
pgbProgress.Style = ProgressBarStyle.Marquee
pgbProgress.MarqueeAnimationSpeed = 5
oSearchDrive = oDrive.RootDirectory
bwSearch.RunWorkerAsync()
iCurrentDrive += 1
End Sub
Private Sub EndSearch()
Dim oResult As MsgBoxResult
pgbProgress.MarqueeAnimationSpeed = 0
If FoundItem = "Cancel" Then FoundItem = String.Empty
If oDrives.Count > iCurrentDrive And FoundItem = String.Empty Then
oResult = MsgBox("The location was not found on the " & oSearchDrive.Root.ToString & _
" drive. Do you wish to search the " & oDrives(iCurrentDrive).RootDirectory.ToString & _
" drive?", MsgBoxStyle.YesNo, "Game Backup Monitor")
If oResult = MsgBoxResult.Yes Then
Search(oDrives(iCurrentDrive))
Else
bShutdown = True
Me.Close()
End If
Else
bShutdown = True
Me.Close()
End If
End Sub
Private Sub frmFileFolderSearch_Load(sender As Object, e As EventArgs) Handles MyBase.Load
GetDrives()
Search(oDrives(iCurrentDrive))
End Sub
Private Sub bwSearch_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles bwSearch.DoWork
If bIsFolder Then
FoundItem = SearchDirectory(oSearchDrive, sSearchItem)
Else
FoundItem = SearchFile(oSearchDrive, sSearchItem)
End If
End Sub
Private Sub bwSearch_RunWorkerCompleted(sender As Object, e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles bwSearch.RunWorkerCompleted
EndSearch()
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
bwSearch.CancelAsync()
End Sub
Private Sub frmFileFolderSearch_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
bwSearch.CancelAsync()
If Not bShutdown Then e.Cancel = True
End Sub
End Class
+745
View File
@@ -0,0 +1,745 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmGameManager
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.btnAdd = New System.Windows.Forms.Button()
Me.btnDelete = New System.Windows.Forms.Button()
Me.btnBackup = New System.Windows.Forms.Button()
Me.btnClose = New System.Windows.Forms.Button()
Me.grpConfig = New System.Windows.Forms.GroupBox()
Me.txtID = New System.Windows.Forms.TextBox()
Me.lblExclude = New System.Windows.Forms.Label()
Me.lblFileType = New System.Windows.Forms.Label()
Me.btnSavePathBrowse = New System.Windows.Forms.Button()
Me.btnProcessBrowse = New System.Windows.Forms.Button()
Me.lblSavePath = New System.Windows.Forms.Label()
Me.lblProcess = New System.Windows.Forms.Label()
Me.lblName = New System.Windows.Forms.Label()
Me.txtExclude = New System.Windows.Forms.TextBox()
Me.txtFileType = New System.Windows.Forms.TextBox()
Me.chkTimeStamp = New System.Windows.Forms.CheckBox()
Me.chkFolderSave = New System.Windows.Forms.CheckBox()
Me.txtSavePath = New System.Windows.Forms.TextBox()
Me.txtProcess = New System.Windows.Forms.TextBox()
Me.txtName = New System.Windows.Forms.TextBox()
Me.chkMonitorOnly = New System.Windows.Forms.CheckBox()
Me.grpExtra = New System.Windows.Forms.GroupBox()
Me.btnIconBrowse = New System.Windows.Forms.Button()
Me.txtIcon = New System.Windows.Forms.TextBox()
Me.lblVersion = New System.Windows.Forms.Label()
Me.txtVersion = New System.Windows.Forms.TextBox()
Me.txtCompany = New System.Windows.Forms.TextBox()
Me.lblCompany = New System.Windows.Forms.Label()
Me.pbIcon = New System.Windows.Forms.PictureBox()
Me.Label1 = New System.Windows.Forms.Label()
Me.btnAppPathBrowse = New System.Windows.Forms.Button()
Me.lblGamePath = New System.Windows.Forms.Label()
Me.txtAppPath = New System.Windows.Forms.TextBox()
Me.nudHours = New System.Windows.Forms.NumericUpDown()
Me.lblHours = New System.Windows.Forms.Label()
Me.grpStats = New System.Windows.Forms.GroupBox()
Me.btnOpenRestorePath = New System.Windows.Forms.Button()
Me.btnOpenBackupFile = New System.Windows.Forms.Button()
Me.txtFileSize = New System.Windows.Forms.TextBox()
Me.btnDeleteBackup = New System.Windows.Forms.Button()
Me.lblFileSize = New System.Windows.Forms.Label()
Me.lblSync = New System.Windows.Forms.Label()
Me.txtCurrentBackup = New System.Windows.Forms.TextBox()
Me.lblCurrentBackup = New System.Windows.Forms.Label()
Me.txtLocalBackup = New System.Windows.Forms.TextBox()
Me.lblLastBackup = New System.Windows.Forms.Label()
Me.btnMarkAsRestored = New System.Windows.Forms.Button()
Me.btnRestore = New System.Windows.Forms.Button()
Me.btnSave = New System.Windows.Forms.Button()
Me.lstGames = New System.Windows.Forms.ListBox()
Me.btnCancel = New System.Windows.Forms.Button()
Me.chkEnabled = New System.Windows.Forms.CheckBox()
Me.grpFilter = New System.Windows.Forms.GroupBox()
Me.optBackupData = New System.Windows.Forms.RadioButton()
Me.optPendingRestores = New System.Windows.Forms.RadioButton()
Me.optAllGames = New System.Windows.Forms.RadioButton()
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.SuspendLayout()
'
'btnAdd
'
Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.btnAdd.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnAdd.Location = New System.Drawing.Point(12, 528)
Me.btnAdd.Name = "btnAdd"
Me.btnAdd.Size = New System.Drawing.Size(30, 23)
Me.btnAdd.TabIndex = 2
Me.btnAdd.Text = "+"
Me.btnAdd.UseVisualStyleBackColor = True
'
'btnDelete
'
Me.btnDelete.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.btnDelete.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnDelete.Location = New System.Drawing.Point(48, 528)
Me.btnDelete.Name = "btnDelete"
Me.btnDelete.Size = New System.Drawing.Size(30, 23)
Me.btnDelete.TabIndex = 3
Me.btnDelete.Text = "-"
Me.btnDelete.UseVisualStyleBackColor = True
'
'btnBackup
'
Me.btnBackup.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnBackup.Location = New System.Drawing.Point(616, 527)
Me.btnBackup.Name = "btnBackup"
Me.btnBackup.Size = New System.Drawing.Size(75, 23)
Me.btnBackup.TabIndex = 13
Me.btnBackup.Text = "&Backup"
Me.btnBackup.UseVisualStyleBackColor = True
'
'btnClose
'
Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnClose.Location = New System.Drawing.Point(697, 527)
Me.btnClose.Name = "btnClose"
Me.btnClose.Size = New System.Drawing.Size(75, 23)
Me.btnClose.TabIndex = 14
Me.btnClose.Text = "C&lose"
Me.btnClose.UseVisualStyleBackColor = True
'
'grpConfig
'
Me.grpConfig.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.grpConfig.Controls.Add(Me.txtID)
Me.grpConfig.Controls.Add(Me.lblExclude)
Me.grpConfig.Controls.Add(Me.lblFileType)
Me.grpConfig.Controls.Add(Me.btnSavePathBrowse)
Me.grpConfig.Controls.Add(Me.btnProcessBrowse)
Me.grpConfig.Controls.Add(Me.lblSavePath)
Me.grpConfig.Controls.Add(Me.lblProcess)
Me.grpConfig.Controls.Add(Me.lblName)
Me.grpConfig.Controls.Add(Me.txtExclude)
Me.grpConfig.Controls.Add(Me.txtFileType)
Me.grpConfig.Controls.Add(Me.chkTimeStamp)
Me.grpConfig.Controls.Add(Me.chkFolderSave)
Me.grpConfig.Controls.Add(Me.txtSavePath)
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.Name = "grpConfig"
Me.grpConfig.Size = New System.Drawing.Size(534, 182)
Me.grpConfig.TabIndex = 4
Me.grpConfig.TabStop = False
Me.grpConfig.Text = "Configuration"
'
'txtID
'
Me.txtID.Enabled = False
Me.txtID.Location = New System.Drawing.Point(495, 147)
Me.txtID.Name = "txtID"
Me.txtID.Size = New System.Drawing.Size(33, 20)
Me.txtID.TabIndex = 0
Me.txtID.TabStop = False
Me.txtID.Visible = False
'
'lblExclude
'
Me.lblExclude.AutoSize = True
Me.lblExclude.Location = New System.Drawing.Point(6, 126)
Me.lblExclude.Name = "lblExclude"
Me.lblExclude.Size = New System.Drawing.Size(48, 13)
Me.lblExclude.TabIndex = 13
Me.lblExclude.Text = "Exclude:"
'
'lblFileType
'
Me.lblFileType.AutoSize = True
Me.lblFileType.Location = New System.Drawing.Point(6, 100)
Me.lblFileType.Name = "lblFileType"
Me.lblFileType.Size = New System.Drawing.Size(45, 13)
Me.lblFileType.TabIndex = 12
Me.lblFileType.Text = "Include:"
'
'btnSavePathBrowse
'
Me.btnSavePathBrowse.Location = New System.Drawing.Point(498, 71)
Me.btnSavePathBrowse.Name = "btnSavePathBrowse"
Me.btnSavePathBrowse.Size = New System.Drawing.Size(30, 20)
Me.btnSavePathBrowse.TabIndex = 10
Me.btnSavePathBrowse.Text = "..."
Me.btnSavePathBrowse.UseVisualStyleBackColor = True
'
'btnProcessBrowse
'
Me.btnProcessBrowse.Location = New System.Drawing.Point(498, 45)
Me.btnProcessBrowse.Name = "btnProcessBrowse"
Me.btnProcessBrowse.Size = New System.Drawing.Size(30, 20)
Me.btnProcessBrowse.TabIndex = 8
Me.btnProcessBrowse.Text = "..."
Me.btnProcessBrowse.UseVisualStyleBackColor = True
'
'lblSavePath
'
Me.lblSavePath.AutoSize = True
Me.lblSavePath.Location = New System.Drawing.Point(6, 74)
Me.lblSavePath.Name = "lblSavePath"
Me.lblSavePath.Size = New System.Drawing.Size(60, 13)
Me.lblSavePath.TabIndex = 9
Me.lblSavePath.Text = "Save Path:"
'
'lblProcess
'
Me.lblProcess.AutoSize = True
Me.lblProcess.Location = New System.Drawing.Point(6, 48)
Me.lblProcess.Name = "lblProcess"
Me.lblProcess.Size = New System.Drawing.Size(48, 13)
Me.lblProcess.TabIndex = 8
Me.lblProcess.Text = "Process:"
'
'lblName
'
Me.lblName.AutoSize = True
Me.lblName.Location = New System.Drawing.Point(6, 22)
Me.lblName.Name = "lblName"
Me.lblName.Size = New System.Drawing.Size(38, 13)
Me.lblName.TabIndex = 7
Me.lblName.Text = "Name:"
'
'txtExclude
'
Me.txtExclude.Location = New System.Drawing.Point(69, 123)
Me.txtExclude.Name = "txtExclude"
Me.txtExclude.Size = New System.Drawing.Size(459, 20)
Me.txtExclude.TabIndex = 12
'
'txtFileType
'
Me.txtFileType.Location = New System.Drawing.Point(69, 97)
Me.txtFileType.Name = "txtFileType"
Me.txtFileType.Size = New System.Drawing.Size(459, 20)
Me.txtFileType.TabIndex = 11
'
'chkTimeStamp
'
Me.chkTimeStamp.AutoSize = True
Me.chkTimeStamp.Location = New System.Drawing.Point(124, 149)
Me.chkTimeStamp.Name = "chkTimeStamp"
Me.chkTimeStamp.Size = New System.Drawing.Size(146, 17)
Me.chkTimeStamp.TabIndex = 14
Me.chkTimeStamp.Text = "Time stamp each backup"
Me.chkTimeStamp.UseVisualStyleBackColor = True
'
'chkFolderSave
'
Me.chkFolderSave.AutoSize = True
Me.chkFolderSave.Location = New System.Drawing.Point(9, 149)
Me.chkFolderSave.Name = "chkFolderSave"
Me.chkFolderSave.Size = New System.Drawing.Size(109, 17)
Me.chkFolderSave.TabIndex = 13
Me.chkFolderSave.Text = "Save entire folder"
Me.chkFolderSave.UseVisualStyleBackColor = True
'
'txtSavePath
'
Me.txtSavePath.Location = New System.Drawing.Point(69, 71)
Me.txtSavePath.Name = "txtSavePath"
Me.txtSavePath.Size = New System.Drawing.Size(423, 20)
Me.txtSavePath.TabIndex = 9
'
'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.TabIndex = 7
'
'txtName
'
Me.txtName.Location = New System.Drawing.Point(69, 19)
Me.txtName.Name = "txtName"
Me.txtName.Size = New System.Drawing.Size(459, 20)
Me.txtName.TabIndex = 6
'
'chkMonitorOnly
'
Me.chkMonitorOnly.AutoSize = True
Me.chkMonitorOnly.Location = New System.Drawing.Point(353, 365)
Me.chkMonitorOnly.Name = "chkMonitorOnly"
Me.chkMonitorOnly.Size = New System.Drawing.Size(145, 17)
Me.chkMonitorOnly.TabIndex = 7
Me.chkMonitorOnly.Text = "Monitor only (No backup)"
Me.chkMonitorOnly.UseVisualStyleBackColor = True
'
'grpExtra
'
Me.grpExtra.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.grpExtra.Controls.Add(Me.btnIconBrowse)
Me.grpExtra.Controls.Add(Me.txtIcon)
Me.grpExtra.Controls.Add(Me.lblVersion)
Me.grpExtra.Controls.Add(Me.txtVersion)
Me.grpExtra.Controls.Add(Me.txtCompany)
Me.grpExtra.Controls.Add(Me.lblCompany)
Me.grpExtra.Controls.Add(Me.pbIcon)
Me.grpExtra.Controls.Add(Me.Label1)
Me.grpExtra.Controls.Add(Me.btnAppPathBrowse)
Me.grpExtra.Controls.Add(Me.lblGamePath)
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, 200)
Me.grpExtra.Name = "grpExtra"
Me.grpExtra.Size = New System.Drawing.Size(534, 155)
Me.grpExtra.TabIndex = 5
Me.grpExtra.TabStop = False
Me.grpExtra.Text = "Extra Information"
'
'btnIconBrowse
'
Me.btnIconBrowse.Location = New System.Drawing.Point(444, 96)
Me.btnIconBrowse.Name = "btnIconBrowse"
Me.btnIconBrowse.Size = New System.Drawing.Size(30, 20)
Me.btnIconBrowse.TabIndex = 20
Me.btnIconBrowse.Text = "..."
Me.btnIconBrowse.UseVisualStyleBackColor = True
'
'txtIcon
'
Me.txtIcon.Location = New System.Drawing.Point(69, 97)
Me.txtIcon.Name = "txtIcon"
Me.txtIcon.Size = New System.Drawing.Size(369, 20)
Me.txtIcon.TabIndex = 19
'
'lblVersion
'
Me.lblVersion.AutoSize = True
Me.lblVersion.Location = New System.Drawing.Point(6, 74)
Me.lblVersion.Name = "lblVersion"
Me.lblVersion.Size = New System.Drawing.Size(45, 13)
Me.lblVersion.TabIndex = 20
Me.lblVersion.Text = "Version:"
'
'txtVersion
'
Me.txtVersion.Location = New System.Drawing.Point(69, 71)
Me.txtVersion.Name = "txtVersion"
Me.txtVersion.Size = New System.Drawing.Size(459, 20)
Me.txtVersion.TabIndex = 18
'
'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.TabIndex = 17
'
'lblCompany
'
Me.lblCompany.AutoSize = True
Me.lblCompany.Location = New System.Drawing.Point(6, 48)
Me.lblCompany.Name = "lblCompany"
Me.lblCompany.Size = New System.Drawing.Size(54, 13)
Me.lblCompany.TabIndex = 17
Me.lblCompany.Text = "Company:"
'
'pbIcon
'
Me.pbIcon.InitialImage = Nothing
Me.pbIcon.Location = New System.Drawing.Point(480, 100)
Me.pbIcon.Name = "pbIcon"
Me.pbIcon.Size = New System.Drawing.Size(48, 48)
Me.pbIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom
Me.pbIcon.TabIndex = 15
Me.pbIcon.TabStop = False
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Location = New System.Drawing.Point(6, 100)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(31, 13)
Me.Label1.TabIndex = 16
Me.Label1.Text = "Icon:"
'
'btnAppPathBrowse
'
Me.btnAppPathBrowse.Location = New System.Drawing.Point(498, 19)
Me.btnAppPathBrowse.Name = "btnAppPathBrowse"
Me.btnAppPathBrowse.Size = New System.Drawing.Size(30, 20)
Me.btnAppPathBrowse.TabIndex = 16
Me.btnAppPathBrowse.Text = "..."
Me.btnAppPathBrowse.UseVisualStyleBackColor = True
'
'lblGamePath
'
Me.lblGamePath.AutoSize = True
Me.lblGamePath.Location = New System.Drawing.Point(6, 23)
Me.lblGamePath.Name = "lblGamePath"
Me.lblGamePath.Size = New System.Drawing.Size(63, 13)
Me.lblGamePath.TabIndex = 13
Me.lblGamePath.Text = "Game Path:"
'
'txtAppPath
'
Me.txtAppPath.Location = New System.Drawing.Point(69, 19)
Me.txtAppPath.Name = "txtAppPath"
Me.txtAppPath.Size = New System.Drawing.Size(423, 20)
Me.txtAppPath.TabIndex = 15
'
'nudHours
'
Me.nudHours.DecimalPlaces = 1
Me.nudHours.Increment = New Decimal(New Integer() {1, 0, 0, 65536})
Me.nudHours.Location = New System.Drawing.Point(69, 124)
Me.nudHours.Maximum = New Decimal(New Integer() {10000, 0, 0, 0})
Me.nudHours.Name = "nudHours"
Me.nudHours.Size = New System.Drawing.Size(88, 20)
Me.nudHours.TabIndex = 21
'
'lblHours
'
Me.lblHours.AutoSize = True
Me.lblHours.Location = New System.Drawing.Point(6, 126)
Me.lblHours.Name = "lblHours"
Me.lblHours.Size = New System.Drawing.Size(38, 13)
Me.lblHours.TabIndex = 0
Me.lblHours.Text = "Hours:"
'
'grpStats
'
Me.grpStats.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.grpStats.Controls.Add(Me.btnOpenRestorePath)
Me.grpStats.Controls.Add(Me.btnOpenBackupFile)
Me.grpStats.Controls.Add(Me.txtFileSize)
Me.grpStats.Controls.Add(Me.btnDeleteBackup)
Me.grpStats.Controls.Add(Me.lblFileSize)
Me.grpStats.Controls.Add(Me.lblSync)
Me.grpStats.Controls.Add(Me.txtCurrentBackup)
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, 390)
Me.grpStats.Name = "grpStats"
Me.grpStats.Size = New System.Drawing.Size(534, 129)
Me.grpStats.TabIndex = 10
Me.grpStats.TabStop = False
Me.grpStats.Text = "Backup Information"
'
'btnOpenRestorePath
'
Me.btnOpenRestorePath.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnOpenRestorePath.Location = New System.Drawing.Point(336, 100)
Me.btnOpenRestorePath.Name = "btnOpenRestorePath"
Me.btnOpenRestorePath.Size = New System.Drawing.Size(114, 23)
Me.btnOpenRestorePath.TabIndex = 28
Me.btnOpenRestorePath.Text = "O&pen Restore Path"
Me.btnOpenRestorePath.UseVisualStyleBackColor = True
'
'btnOpenBackupFile
'
Me.btnOpenBackupFile.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnOpenBackupFile.Location = New System.Drawing.Point(216, 100)
Me.btnOpenBackupFile.Name = "btnOpenBackupFile"
Me.btnOpenBackupFile.Size = New System.Drawing.Size(114, 23)
Me.btnOpenBackupFile.TabIndex = 27
Me.btnOpenBackupFile.Text = "&Open Backup File"
Me.btnOpenBackupFile.UseVisualStyleBackColor = True
'
'txtFileSize
'
Me.txtFileSize.Location = New System.Drawing.Point(96, 74)
Me.txtFileSize.Name = "txtFileSize"
Me.txtFileSize.ReadOnly = True
Me.txtFileSize.Size = New System.Drawing.Size(275, 20)
Me.txtFileSize.TabIndex = 0
Me.txtFileSize.TabStop = False
'
'btnDeleteBackup
'
Me.btnDeleteBackup.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnDeleteBackup.Location = New System.Drawing.Point(96, 100)
Me.btnDeleteBackup.Name = "btnDeleteBackup"
Me.btnDeleteBackup.Size = New System.Drawing.Size(114, 23)
Me.btnDeleteBackup.TabIndex = 26
Me.btnDeleteBackup.Text = "&Delete Backup"
Me.btnDeleteBackup.UseVisualStyleBackColor = True
'
'lblFileSize
'
Me.lblFileSize.AutoSize = True
Me.lblFileSize.Location = New System.Drawing.Point(6, 77)
Me.lblFileSize.Name = "lblFileSize"
Me.lblFileSize.Size = New System.Drawing.Size(70, 13)
Me.lblFileSize.TabIndex = 108
Me.lblFileSize.Text = "Backup Size:"
'
'lblSync
'
Me.lblSync.AutoSize = True
Me.lblSync.Location = New System.Drawing.Point(6, 105)
Me.lblSync.Name = "lblSync"
Me.lblSync.Size = New System.Drawing.Size(62, 13)
Me.lblSync.TabIndex = 24
Me.lblSync.Text = "Up to Date!"
Me.lblSync.Visible = False
'
'txtCurrentBackup
'
Me.txtCurrentBackup.Location = New System.Drawing.Point(96, 24)
Me.txtCurrentBackup.Name = "txtCurrentBackup"
Me.txtCurrentBackup.ReadOnly = True
Me.txtCurrentBackup.Size = New System.Drawing.Size(275, 20)
Me.txtCurrentBackup.TabIndex = 0
Me.txtCurrentBackup.TabStop = False
'
'lblCurrentBackup
'
Me.lblCurrentBackup.AutoSize = True
Me.lblCurrentBackup.Location = New System.Drawing.Point(6, 27)
Me.lblCurrentBackup.Name = "lblCurrentBackup"
Me.lblCurrentBackup.Size = New System.Drawing.Size(84, 13)
Me.lblCurrentBackup.TabIndex = 22
Me.lblCurrentBackup.Text = "Current Backup:"
'
'txtLocalBackup
'
Me.txtLocalBackup.Location = New System.Drawing.Point(96, 50)
Me.txtLocalBackup.Name = "txtLocalBackup"
Me.txtLocalBackup.ReadOnly = True
Me.txtLocalBackup.Size = New System.Drawing.Size(275, 20)
Me.txtLocalBackup.TabIndex = 0
Me.txtLocalBackup.TabStop = False
'
'lblLastBackup
'
Me.lblLastBackup.AutoSize = True
Me.lblLastBackup.Location = New System.Drawing.Point(6, 53)
Me.lblLastBackup.Name = "lblLastBackup"
Me.lblLastBackup.Size = New System.Drawing.Size(76, 13)
Me.lblLastBackup.TabIndex = 20
Me.lblLastBackup.Text = "Local Backup:"
'
'btnMarkAsRestored
'
Me.btnMarkAsRestored.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnMarkAsRestored.Location = New System.Drawing.Point(429, 527)
Me.btnMarkAsRestored.Name = "btnMarkAsRestored"
Me.btnMarkAsRestored.Size = New System.Drawing.Size(100, 23)
Me.btnMarkAsRestored.TabIndex = 11
Me.btnMarkAsRestored.Text = "&Mark as Restored"
Me.btnMarkAsRestored.UseVisualStyleBackColor = True
'
'btnRestore
'
Me.btnRestore.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnRestore.Location = New System.Drawing.Point(535, 527)
Me.btnRestore.Name = "btnRestore"
Me.btnRestore.Size = New System.Drawing.Size(75, 23)
Me.btnRestore.TabIndex = 12
Me.btnRestore.Text = "&Restore"
Me.btnRestore.UseVisualStyleBackColor = True
'
'btnSave
'
Me.btnSave.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnSave.Location = New System.Drawing.Point(616, 361)
Me.btnSave.Name = "btnSave"
Me.btnSave.Size = New System.Drawing.Size(75, 23)
Me.btnSave.TabIndex = 8
Me.btnSave.Text = "&Save"
Me.btnSave.UseVisualStyleBackColor = True
'
'lstGames
'
Me.lstGames.FormattingEnabled = True
Me.lstGames.Location = New System.Drawing.Point(12, 112)
Me.lstGames.Name = "lstGames"
Me.lstGames.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended
Me.lstGames.Size = New System.Drawing.Size(220, 407)
Me.lstGames.Sorted = True
Me.lstGames.TabIndex = 1
'
'btnCancel
'
Me.btnCancel.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnCancel.Location = New System.Drawing.Point(697, 361)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 9
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'chkEnabled
'
Me.chkEnabled.AutoSize = True
Me.chkEnabled.Location = New System.Drawing.Point(238, 365)
Me.chkEnabled.Name = "chkEnabled"
Me.chkEnabled.Size = New System.Drawing.Size(109, 17)
Me.chkEnabled.TabIndex = 6
Me.chkEnabled.Text = "Monitor this game"
Me.chkEnabled.UseVisualStyleBackColor = True
'
'grpFilter
'
Me.grpFilter.Controls.Add(Me.optBackupData)
Me.grpFilter.Controls.Add(Me.optPendingRestores)
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, 91)
Me.grpFilter.TabIndex = 0
Me.grpFilter.TabStop = False
Me.grpFilter.Text = "Games Filter"
'
'optBackupData
'
Me.optBackupData.AutoSize = True
Me.optBackupData.Location = New System.Drawing.Point(6, 41)
Me.optBackupData.Name = "optBackupData"
Me.optBackupData.Size = New System.Drawing.Size(91, 17)
Me.optBackupData.TabIndex = 1
Me.optBackupData.TabStop = True
Me.optBackupData.Text = "Backups Only"
Me.optBackupData.UseVisualStyleBackColor = True
'
'optPendingRestores
'
Me.optPendingRestores.AutoSize = True
Me.optPendingRestores.Location = New System.Drawing.Point(6, 64)
Me.optPendingRestores.Name = "optPendingRestores"
Me.optPendingRestores.Size = New System.Drawing.Size(104, 17)
Me.optPendingRestores.TabIndex = 2
Me.optPendingRestores.TabStop = True
Me.optPendingRestores.Text = "Pending Restore"
Me.optPendingRestores.UseVisualStyleBackColor = True
'
'optAllGames
'
Me.optAllGames.AutoSize = True
Me.optAllGames.Location = New System.Drawing.Point(6, 20)
Me.optAllGames.Name = "optAllGames"
Me.optAllGames.Size = New System.Drawing.Size(36, 17)
Me.optAllGames.TabIndex = 0
Me.optAllGames.TabStop = True
Me.optAllGames.Text = "All"
Me.optAllGames.UseVisualStyleBackColor = True
'
'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, 562)
Me.Controls.Add(Me.grpFilter)
Me.Controls.Add(Me.chkEnabled)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.chkMonitorOnly)
Me.Controls.Add(Me.btnMarkAsRestored)
Me.Controls.Add(Me.btnRestore)
Me.Controls.Add(Me.lstGames)
Me.Controls.Add(Me.btnSave)
Me.Controls.Add(Me.grpStats)
Me.Controls.Add(Me.grpExtra)
Me.Controls.Add(Me.grpConfig)
Me.Controls.Add(Me.btnBackup)
Me.Controls.Add(Me.btnClose)
Me.Controls.Add(Me.btnDelete)
Me.Controls.Add(Me.btnAdd)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmGameManager"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Game Manager"
Me.grpConfig.ResumeLayout(False)
Me.grpConfig.PerformLayout()
Me.grpExtra.ResumeLayout(False)
Me.grpExtra.PerformLayout()
CType(Me.pbIcon, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.nudHours, System.ComponentModel.ISupportInitialize).EndInit()
Me.grpStats.ResumeLayout(False)
Me.grpStats.PerformLayout()
Me.grpFilter.ResumeLayout(False)
Me.grpFilter.PerformLayout()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents btnAdd As System.Windows.Forms.Button
Friend WithEvents btnDelete As System.Windows.Forms.Button
Friend WithEvents btnBackup As System.Windows.Forms.Button
Friend WithEvents btnClose As System.Windows.Forms.Button
Friend WithEvents grpConfig As System.Windows.Forms.GroupBox
Friend WithEvents txtSavePath As System.Windows.Forms.TextBox
Friend WithEvents txtProcess As System.Windows.Forms.TextBox
Friend WithEvents txtName As System.Windows.Forms.TextBox
Friend WithEvents grpExtra As System.Windows.Forms.GroupBox
Friend WithEvents grpStats As System.Windows.Forms.GroupBox
Friend WithEvents chkTimeStamp As System.Windows.Forms.CheckBox
Friend WithEvents chkFolderSave As System.Windows.Forms.CheckBox
Friend WithEvents lblSavePath As System.Windows.Forms.Label
Friend WithEvents lblProcess As System.Windows.Forms.Label
Friend WithEvents lblName As System.Windows.Forms.Label
Friend WithEvents txtExclude As System.Windows.Forms.TextBox
Friend WithEvents txtFileType As System.Windows.Forms.TextBox
Friend WithEvents btnSavePathBrowse As System.Windows.Forms.Button
Friend WithEvents btnProcessBrowse As System.Windows.Forms.Button
Friend WithEvents lblExclude As System.Windows.Forms.Label
Friend WithEvents lblFileType As System.Windows.Forms.Label
Friend WithEvents btnSave As System.Windows.Forms.Button
Friend WithEvents btnAppPathBrowse As System.Windows.Forms.Button
Friend WithEvents lblGamePath As System.Windows.Forms.Label
Friend WithEvents txtAppPath As System.Windows.Forms.TextBox
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents pbIcon As System.Windows.Forms.PictureBox
Friend WithEvents lblVersion As System.Windows.Forms.Label
Friend WithEvents txtVersion As System.Windows.Forms.TextBox
Friend WithEvents txtCompany As System.Windows.Forms.TextBox
Friend WithEvents lblCompany As System.Windows.Forms.Label
Friend WithEvents nudHours As System.Windows.Forms.NumericUpDown
Friend WithEvents lblHours As System.Windows.Forms.Label
Friend WithEvents chkMonitorOnly As System.Windows.Forms.CheckBox
Friend WithEvents lstGames As System.Windows.Forms.ListBox
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents btnIconBrowse As System.Windows.Forms.Button
Friend WithEvents txtIcon As System.Windows.Forms.TextBox
Friend WithEvents txtID As System.Windows.Forms.TextBox
Friend WithEvents txtCurrentBackup As System.Windows.Forms.TextBox
Friend WithEvents lblCurrentBackup As System.Windows.Forms.Label
Friend WithEvents txtLocalBackup As System.Windows.Forms.TextBox
Friend WithEvents lblLastBackup As System.Windows.Forms.Label
Friend WithEvents lblSync As System.Windows.Forms.Label
Friend WithEvents chkEnabled As System.Windows.Forms.CheckBox
Friend WithEvents txtFileSize As System.Windows.Forms.TextBox
Friend WithEvents lblFileSize As System.Windows.Forms.Label
Friend WithEvents btnMarkAsRestored As System.Windows.Forms.Button
Friend WithEvents btnRestore As System.Windows.Forms.Button
Friend WithEvents btnDeleteBackup As System.Windows.Forms.Button
Friend WithEvents btnOpenBackupFile As System.Windows.Forms.Button
Friend WithEvents grpFilter As System.Windows.Forms.GroupBox
Friend WithEvents optPendingRestores As System.Windows.Forms.RadioButton
Friend WithEvents optAllGames As System.Windows.Forms.RadioButton
Friend WithEvents optBackupData As System.Windows.Forms.RadioButton
Friend WithEvents btnOpenRestorePath As System.Windows.Forms.Button
End Class
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
File diff suppressed because it is too large Load Diff
+585
View File
@@ -0,0 +1,585 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
Partial Class frmMain
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()>
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()>
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmMain))
Me.gMonTray = New System.Windows.Forms.NotifyIcon(Me.components)
Me.gMonTrayMenu = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.gMonTrayShow = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySep2 = New System.Windows.Forms.ToolStripSeparator()
Me.gMonTrayMon = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySettings = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySetup = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySetupAddWizard = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySetupGameManager = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySetupCustomVariables = 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.gMonTrayToolsCompact = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonTraySep1 = New System.Windows.Forms.ToolStripSeparator()
Me.gMonTrayExit = New System.Windows.Forms.ToolStripMenuItem()
Me.bwMonitor = New System.ComponentModel.BackgroundWorker()
Me.txtLog = New System.Windows.Forms.TextBox()
Me.gMonStatusStrip = New System.Windows.Forms.StatusStrip()
Me.gMonStripAdminButton = New System.Windows.Forms.ToolStripSplitButton()
Me.gMonStripTxtStatus = New System.Windows.Forms.ToolStripStatusLabel()
Me.gMonStripStatusButton = New System.Windows.Forms.ToolStripSplitButton()
Me.gMonMainMenu = New System.Windows.Forms.MenuStrip()
Me.gMonFile = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonFileMonitor = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonMonitorSep = New System.Windows.Forms.ToolStripSeparator()
Me.gMonFileSettings = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonExitSep = New System.Windows.Forms.ToolStripSeparator()
Me.gMonFileExit = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonSetup = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonSetupGameManager = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonSetupAddWizard = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonSetupCustomVariables = 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.gMonToolsCompact = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonHelp = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonHelpManual = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonHelpCheckforUpdates = New System.Windows.Forms.ToolStripMenuItem()
Me.gMonHelpAbout = New System.Windows.Forms.ToolStripMenuItem()
Me.pbIcon = New System.Windows.Forms.PictureBox()
Me.btnLogToggle = New System.Windows.Forms.Button()
Me.lblGameTitle = New System.Windows.Forms.Label()
Me.lblLastAction = New System.Windows.Forms.Label()
Me.lblLastActionTitle = New System.Windows.Forms.Label()
Me.lblTimeTitle = New System.Windows.Forms.Label()
Me.lblTimeSpent = New System.Windows.Forms.Label()
Me.txtGameInfo = New System.Windows.Forms.TextBox()
Me.btnCancelOperation = New System.Windows.Forms.Button()
Me.gMonTrayMenu.SuspendLayout()
Me.gMonStatusStrip.SuspendLayout()
Me.gMonMainMenu.SuspendLayout()
CType(Me.pbIcon, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'gMonTray
'
Me.gMonTray.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info
Me.gMonTray.BalloonTipTitle = "GBM"
Me.gMonTray.ContextMenuStrip = Me.gMonTrayMenu
Me.gMonTray.Icon = CType(resources.GetObject("gMonTray.Icon"), System.Drawing.Icon)
Me.gMonTray.Text = "GBM"
Me.gMonTray.Visible = True
'
'gMonTrayMenu
'
Me.gMonTrayMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {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, 148)
'
'gMonTrayShow
'
Me.gMonTrayShow.Name = "gMonTrayShow"
Me.gMonTrayShow.Size = New System.Drawing.Size(161, 22)
Me.gMonTrayShow.Text = "S&how / Hide"
'
'gMonTraySep2
'
Me.gMonTraySep2.Name = "gMonTraySep2"
Me.gMonTraySep2.Size = New System.Drawing.Size(158, 6)
'
'gMonTrayMon
'
Me.gMonTrayMon.Name = "gMonTrayMon"
Me.gMonTrayMon.Size = New System.Drawing.Size(161, 22)
Me.gMonTrayMon.Text = "S&tart Monitoring"
'
'gMonTraySettings
'
Me.gMonTraySettings.Name = "gMonTraySettings"
Me.gMonTraySettings.Size = New System.Drawing.Size(161, 22)
Me.gMonTraySettings.Text = "S&ettings"
'
'gMonTraySetup
'
Me.gMonTraySetup.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTraySetupAddWizard, Me.gMonTraySetupGameManager, Me.gMonTraySetupCustomVariables})
Me.gMonTraySetup.Name = "gMonTraySetup"
Me.gMonTraySetup.Size = New System.Drawing.Size(161, 22)
Me.gMonTraySetup.Text = "&Setup"
'
'gMonTraySetupAddWizard
'
Me.gMonTraySetupAddWizard.Name = "gMonTraySetupAddWizard"
Me.gMonTraySetupAddWizard.Size = New System.Drawing.Size(201, 22)
Me.gMonTraySetupAddWizard.Text = "Add Game &Wizard..."
'
'gMonTraySetupGameManager
'
Me.gMonTraySetupGameManager.Name = "gMonTraySetupGameManager"
Me.gMonTraySetupGameManager.Size = New System.Drawing.Size(201, 22)
Me.gMonTraySetupGameManager.Text = "&Game Manager..."
'
'gMonTraySetupCustomVariables
'
Me.gMonTraySetupCustomVariables.Name = "gMonTraySetupCustomVariables"
Me.gMonTraySetupCustomVariables.Size = New System.Drawing.Size(201, 22)
Me.gMonTraySetupCustomVariables.Text = "Custom &Path Variables..."
'
'gMonTrayTools
'
Me.gMonTrayTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonTrayToolsGameList, Me.gMonTrayToolsSyncMan, Me.gMonTrayToolsCompact})
Me.gMonTrayTools.Name = "gMonTrayTools"
Me.gMonTrayTools.Size = New System.Drawing.Size(161, 22)
Me.gMonTrayTools.Text = "&Tools"
'
'gMonTrayToolsGameList
'
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"
'
'gMonTrayToolsCompact
'
Me.gMonTrayToolsCompact.Name = "gMonTrayToolsCompact"
Me.gMonTrayToolsCompact.Size = New System.Drawing.Size(179, 22)
Me.gMonTrayToolsCompact.Text = "&Compact Databases"
'
'gMonTraySep1
'
Me.gMonTraySep1.Name = "gMonTraySep1"
Me.gMonTraySep1.Size = New System.Drawing.Size(158, 6)
'
'gMonTrayExit
'
Me.gMonTrayExit.Name = "gMonTrayExit"
Me.gMonTrayExit.Size = New System.Drawing.Size(161, 22)
Me.gMonTrayExit.Text = "E&xit"
'
'bwMonitor
'
Me.bwMonitor.WorkerSupportsCancellation = True
'
'txtLog
'
Me.txtLog.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.txtLog.Location = New System.Drawing.Point(12, 161)
Me.txtLog.Multiline = True
Me.txtLog.Name = "txtLog"
Me.txtLog.ReadOnly = True
Me.txtLog.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
Me.txtLog.Size = New System.Drawing.Size(500, 177)
Me.txtLog.TabIndex = 2
Me.txtLog.TabStop = False
'
'gMonStatusStrip
'
Me.gMonStatusStrip.Font = New System.Drawing.Font("Segoe UI", 9.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.gMonStatusStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonStripAdminButton, Me.gMonStripTxtStatus, Me.gMonStripStatusButton})
Me.gMonStatusStrip.Location = New System.Drawing.Point(0, 350)
Me.gMonStatusStrip.Name = "gMonStatusStrip"
Me.gMonStatusStrip.ShowItemToolTips = True
Me.gMonStatusStrip.Size = New System.Drawing.Size(524, 22)
Me.gMonStatusStrip.SizingGrip = False
Me.gMonStatusStrip.TabIndex = 3
'
'gMonStripAdminButton
'
Me.gMonStripAdminButton.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image
Me.gMonStripAdminButton.DropDownButtonWidth = 0
Me.gMonStripAdminButton.Image = Global.GBM.My.Resources.Resources.User
Me.gMonStripAdminButton.ImageTransparentColor = System.Drawing.Color.Magenta
Me.gMonStripAdminButton.Name = "gMonStripAdminButton"
Me.gMonStripAdminButton.Size = New System.Drawing.Size(21, 20)
Me.gMonStripAdminButton.Text = "Elevation"
Me.gMonStripAdminButton.ToolTipText = "Elevation"
'
'gMonStripTxtStatus
'
Me.gMonStripTxtStatus.Name = "gMonStripTxtStatus"
Me.gMonStripTxtStatus.Size = New System.Drawing.Size(395, 17)
Me.gMonStripTxtStatus.Spring = True
Me.gMonStripTxtStatus.Text = "Monitor Status"
Me.gMonStripTxtStatus.TextAlign = System.Drawing.ContentAlignment.MiddleLeft
'
'gMonStripStatusButton
'
Me.gMonStripStatusButton.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right
Me.gMonStripStatusButton.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center
Me.gMonStripStatusButton.DropDownButtonWidth = 0
Me.gMonStripStatusButton.ImageTransparentColor = System.Drawing.Color.Magenta
Me.gMonStripStatusButton.Name = "gMonStripStatusButton"
Me.gMonStripStatusButton.Size = New System.Drawing.Size(93, 20)
Me.gMonStripStatusButton.Text = "Monitor Status:"
Me.gMonStripStatusButton.TextImageRelation = System.Windows.Forms.TextImageRelation.TextBeforeImage
Me.gMonStripStatusButton.ToolTipText = "Click to toggle monitoring on or off."
'
'gMonMainMenu
'
Me.gMonMainMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonFile, Me.gMonSetup, Me.gMonTools, Me.gMonHelp})
Me.gMonMainMenu.Location = New System.Drawing.Point(0, 0)
Me.gMonMainMenu.Name = "gMonMainMenu"
Me.gMonMainMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.System
Me.gMonMainMenu.Size = New System.Drawing.Size(524, 24)
Me.gMonMainMenu.TabIndex = 8
Me.gMonMainMenu.Text = "MenuStrip1"
'
'gMonFile
'
Me.gMonFile.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonFileMonitor, Me.gMonMonitorSep, Me.gMonFileSettings, Me.gMonExitSep, Me.gMonFileExit})
Me.gMonFile.Name = "gMonFile"
Me.gMonFile.Size = New System.Drawing.Size(37, 20)
Me.gMonFile.Text = "&File"
'
'gMonFileMonitor
'
Me.gMonFileMonitor.Name = "gMonFileMonitor"
Me.gMonFileMonitor.Size = New System.Drawing.Size(161, 22)
Me.gMonFileMonitor.Text = "Start &Monitoring"
'
'gMonMonitorSep
'
Me.gMonMonitorSep.Name = "gMonMonitorSep"
Me.gMonMonitorSep.Size = New System.Drawing.Size(158, 6)
'
'gMonFileSettings
'
Me.gMonFileSettings.Name = "gMonFileSettings"
Me.gMonFileSettings.Size = New System.Drawing.Size(161, 22)
Me.gMonFileSettings.Text = "&Settings..."
'
'gMonExitSep
'
Me.gMonExitSep.Name = "gMonExitSep"
Me.gMonExitSep.Size = New System.Drawing.Size(158, 6)
'
'gMonFileExit
'
Me.gMonFileExit.Name = "gMonFileExit"
Me.gMonFileExit.Size = New System.Drawing.Size(161, 22)
Me.gMonFileExit.Text = "E&xit"
'
'gMonSetup
'
Me.gMonSetup.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonSetupGameManager, Me.gMonSetupAddWizard, Me.gMonSetupCustomVariables})
Me.gMonSetup.Name = "gMonSetup"
Me.gMonSetup.Size = New System.Drawing.Size(49, 20)
Me.gMonSetup.Text = "&Setup"
'
'gMonSetupGameManager
'
Me.gMonSetupGameManager.Name = "gMonSetupGameManager"
Me.gMonSetupGameManager.Size = New System.Drawing.Size(201, 22)
Me.gMonSetupGameManager.Text = "&Game Manager..."
'
'gMonSetupAddWizard
'
Me.gMonSetupAddWizard.Name = "gMonSetupAddWizard"
Me.gMonSetupAddWizard.Size = New System.Drawing.Size(201, 22)
Me.gMonSetupAddWizard.Text = "Add Game &Wizard..."
'
'gMonSetupCustomVariables
'
Me.gMonSetupCustomVariables.Name = "gMonSetupCustomVariables"
Me.gMonSetupCustomVariables.Size = New System.Drawing.Size(201, 22)
Me.gMonSetupCustomVariables.Text = "Custom &Path Variables..."
'
'gMonTools
'
Me.gMonTools.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonToolsGameList, Me.gMonToolsSyncMan, Me.gMonToolsCompact})
Me.gMonTools.Name = "gMonTools"
Me.gMonTools.Size = New System.Drawing.Size(47, 20)
Me.gMonTools.Text = "&Tools"
'
'gMonToolsGameList
'
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(201, 22)
Me.gMonToolsGameImportOfficialList.Text = "Import from &Official List"
'
'gMonToolsGameImportList
'
Me.gMonToolsGameImportList.Name = "gMonToolsGameImportList"
Me.gMonToolsGameImportList.Size = New System.Drawing.Size(201, 22)
Me.gMonToolsGameImportList.Text = "I&mport Game List"
'
'gMonToolsGameExportList
'
Me.gMonToolsGameExportList.Name = "gMonToolsGameExportList"
Me.gMonToolsGameExportList.Size = New System.Drawing.Size(201, 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"
'
'gMonToolsCompact
'
Me.gMonToolsCompact.Name = "gMonToolsCompact"
Me.gMonToolsCompact.Size = New System.Drawing.Size(179, 22)
Me.gMonToolsCompact.Text = "&Compact Databases"
'
'gMonHelp
'
Me.gMonHelp.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.gMonHelpManual, Me.gMonHelpCheckforUpdates, Me.gMonHelpAbout})
Me.gMonHelp.Name = "gMonHelp"
Me.gMonHelp.Size = New System.Drawing.Size(44, 20)
Me.gMonHelp.Text = "&Help"
'
'gMonHelpManual
'
Me.gMonHelpManual.Name = "gMonHelpManual"
Me.gMonHelpManual.Size = New System.Drawing.Size(171, 22)
Me.gMonHelpManual.Text = "Online &Manual"
'
'gMonHelpCheckforUpdates
'
Me.gMonHelpCheckforUpdates.Name = "gMonHelpCheckforUpdates"
Me.gMonHelpCheckforUpdates.Size = New System.Drawing.Size(171, 22)
Me.gMonHelpCheckforUpdates.Text = "Check for Updates"
'
'gMonHelpAbout
'
Me.gMonHelpAbout.Name = "gMonHelpAbout"
Me.gMonHelpAbout.Size = New System.Drawing.Size(171, 22)
Me.gMonHelpAbout.Text = "&About"
'
'pbIcon
'
Me.pbIcon.Location = New System.Drawing.Point(12, 36)
Me.pbIcon.Name = "pbIcon"
Me.pbIcon.Size = New System.Drawing.Size(48, 48)
Me.pbIcon.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom
Me.pbIcon.TabIndex = 9
Me.pbIcon.TabStop = False
'
'btnLogToggle
'
Me.btnLogToggle.Location = New System.Drawing.Point(437, 132)
Me.btnLogToggle.Name = "btnLogToggle"
Me.btnLogToggle.Size = New System.Drawing.Size(75, 23)
Me.btnLogToggle.TabIndex = 1
Me.btnLogToggle.Text = "Show &Log"
Me.btnLogToggle.UseVisualStyleBackColor = True
'
'lblGameTitle
'
Me.lblGameTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 9.75!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblGameTitle.Location = New System.Drawing.Point(66, 36)
Me.lblGameTitle.Name = "lblGameTitle"
Me.lblGameTitle.Size = New System.Drawing.Size(446, 16)
Me.lblGameTitle.TabIndex = 10
Me.lblGameTitle.Text = "Game Title"
'
'lblLastAction
'
Me.lblLastAction.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblLastAction.Location = New System.Drawing.Point(12, 139)
Me.lblLastAction.Name = "lblLastAction"
Me.lblLastAction.Size = New System.Drawing.Size(419, 16)
Me.lblLastAction.TabIndex = 11
Me.lblLastAction.Text = "Last Action"
'
'lblLastActionTitle
'
Me.lblLastActionTitle.AutoSize = True
Me.lblLastActionTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblLastActionTitle.Location = New System.Drawing.Point(12, 126)
Me.lblLastActionTitle.Name = "lblLastActionTitle"
Me.lblLastActionTitle.Size = New System.Drawing.Size(75, 13)
Me.lblLastActionTitle.TabIndex = 12
Me.lblLastActionTitle.Text = "Last Action:"
'
'lblTimeTitle
'
Me.lblTimeTitle.AutoSize = True
Me.lblTimeTitle.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTimeTitle.Location = New System.Drawing.Point(66, 55)
Me.lblTimeTitle.Name = "lblTimeTitle"
Me.lblTimeTitle.Size = New System.Drawing.Size(75, 13)
Me.lblTimeTitle.TabIndex = 13
Me.lblTimeTitle.Text = "Time Spent:"
'
'lblTimeSpent
'
Me.lblTimeSpent.AutoSize = True
Me.lblTimeSpent.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblTimeSpent.Location = New System.Drawing.Point(139, 55)
Me.lblTimeSpent.Name = "lblTimeSpent"
Me.lblTimeSpent.Size = New System.Drawing.Size(44, 13)
Me.lblTimeSpent.TabIndex = 14
Me.lblTimeSpent.Text = "0 Hours"
'
'txtGameInfo
'
Me.txtGameInfo.BorderStyle = System.Windows.Forms.BorderStyle.None
Me.txtGameInfo.Cursor = System.Windows.Forms.Cursors.Default
Me.txtGameInfo.Location = New System.Drawing.Point(69, 71)
Me.txtGameInfo.Multiline = True
Me.txtGameInfo.Name = "txtGameInfo"
Me.txtGameInfo.ReadOnly = True
Me.txtGameInfo.Size = New System.Drawing.Size(443, 52)
Me.txtGameInfo.TabIndex = 0
Me.txtGameInfo.TabStop = False
Me.txtGameInfo.WordWrap = False
'
'btnCancelOperation
'
Me.btnCancelOperation.Location = New System.Drawing.Point(437, 103)
Me.btnCancelOperation.Name = "btnCancelOperation"
Me.btnCancelOperation.Size = New System.Drawing.Size(75, 23)
Me.btnCancelOperation.TabIndex = 0
Me.btnCancelOperation.Text = "&Cancel"
Me.btnCancelOperation.UseVisualStyleBackColor = True
'
'frmMain
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(524, 372)
Me.Controls.Add(Me.btnCancelOperation)
Me.Controls.Add(Me.txtGameInfo)
Me.Controls.Add(Me.lblTimeSpent)
Me.Controls.Add(Me.lblTimeTitle)
Me.Controls.Add(Me.lblLastActionTitle)
Me.Controls.Add(Me.lblLastAction)
Me.Controls.Add(Me.lblGameTitle)
Me.Controls.Add(Me.btnLogToggle)
Me.Controls.Add(Me.pbIcon)
Me.Controls.Add(Me.gMonStatusStrip)
Me.Controls.Add(Me.gMonMainMenu)
Me.Controls.Add(Me.txtLog)
Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.MainMenuStrip = Me.gMonMainMenu
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmMain"
Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Game Backup Monitor"
Me.gMonTrayMenu.ResumeLayout(False)
Me.gMonStatusStrip.ResumeLayout(False)
Me.gMonStatusStrip.PerformLayout()
Me.gMonMainMenu.ResumeLayout(False)
Me.gMonMainMenu.PerformLayout()
CType(Me.pbIcon, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents gMonTray As System.Windows.Forms.NotifyIcon
Friend WithEvents gMonTrayMenu As System.Windows.Forms.ContextMenuStrip
Friend WithEvents gMonTrayExit As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonTrayShow As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonTraySep1 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents bwMonitor As System.ComponentModel.BackgroundWorker
Friend WithEvents txtLog As System.Windows.Forms.TextBox
Friend WithEvents gMonTrayMon As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonStatusStrip As System.Windows.Forms.StatusStrip
Friend WithEvents gMonStripTxtStatus As System.Windows.Forms.ToolStripStatusLabel
Friend WithEvents gMonTraySettings As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonTraySep2 As System.Windows.Forms.ToolStripSeparator
Friend WithEvents gMonTraySetup As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonMainMenu As System.Windows.Forms.MenuStrip
Friend WithEvents gMonFile As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonFileMonitor As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonMonitorSep As System.Windows.Forms.ToolStripSeparator
Friend WithEvents gMonFileSettings As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonExitSep As System.Windows.Forms.ToolStripSeparator
Friend WithEvents gMonFileExit As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonSetup As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonHelp As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonHelpAbout As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonTraySetupGameManager As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonTraySetupCustomVariables As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonStripStatusButton As System.Windows.Forms.ToolStripSplitButton
Friend WithEvents pbIcon As System.Windows.Forms.PictureBox
Friend WithEvents btnLogToggle As System.Windows.Forms.Button
Friend WithEvents lblGameTitle As System.Windows.Forms.Label
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 lblTimeTitle As System.Windows.Forms.Label
Friend WithEvents lblTimeSpent As System.Windows.Forms.Label
Friend WithEvents txtGameInfo As System.Windows.Forms.TextBox
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
Friend WithEvents gMonTrayToolsCompact As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonHelpManual As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents gMonHelpCheckforUpdates As System.Windows.Forms.ToolStripMenuItem
Friend WithEvents btnCancelOperation As System.Windows.Forms.Button
Friend WithEvents gMonStripAdminButton As ToolStripSplitButton
End Class
File diff suppressed because it is too large Load Diff
+1379
View File
File diff suppressed because it is too large Load Diff
+105
View File
@@ -0,0 +1,105 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmManifestViewer
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.dgView = New System.Windows.Forms.DataGridView()
Me.btnCancel = New System.Windows.Forms.Button()
Me.lblError = New System.Windows.Forms.Label()
Me.fbBrowser = New System.Windows.Forms.FolderBrowserDialog()
Me.cboManifest = New System.Windows.Forms.ComboBox()
CType(Me.dgView, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'dgView
'
Me.dgView.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _
Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.dgView.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill
Me.dgView.BackgroundColor = System.Drawing.SystemColors.Window
Me.dgView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize
Me.dgView.Location = New System.Drawing.Point(12, 12)
Me.dgView.Name = "dgView"
Me.dgView.RowHeadersVisible = False
Me.dgView.Size = New System.Drawing.Size(960, 338)
Me.dgView.TabIndex = 0
'
'btnCancel
'
Me.btnCancel.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnCancel.Location = New System.Drawing.Point(897, 356)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 2
Me.btnCancel.Text = "C&lose"
Me.btnCancel.UseVisualStyleBackColor = True
'
'lblError
'
Me.lblError.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.lblError.AutoSize = True
Me.lblError.Location = New System.Drawing.Point(139, 362)
Me.lblError.Name = "lblError"
Me.lblError.Size = New System.Drawing.Size(54, 13)
Me.lblError.TabIndex = 5
Me.lblError.Text = "Info Label"
'
'fbBrowser
'
Me.fbBrowser.ShowNewFolderButton = False
'
'cboManifest
'
Me.cboManifest.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.cboManifest.FormattingEnabled = True
Me.cboManifest.Location = New System.Drawing.Point(12, 359)
Me.cboManifest.Name = "cboManifest"
Me.cboManifest.Size = New System.Drawing.Size(121, 21)
Me.cboManifest.TabIndex = 6
'
'frmManifestViewer
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(984, 392)
Me.Controls.Add(Me.cboManifest)
Me.Controls.Add(Me.lblError)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.dgView)
Me.MinimizeBox = False
Me.Name = "frmManifestViewer"
Me.ShowIcon = False
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Manifest Viewer"
CType(Me.dgView, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents dgView As System.Windows.Forms.DataGridView
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents lblError As System.Windows.Forms.Label
Friend WithEvents fbBrowser As System.Windows.Forms.FolderBrowserDialog
Friend WithEvents cboManifest As System.Windows.Forms.ComboBox
End Class
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="fbBrowser.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>
+149
View File
@@ -0,0 +1,149 @@
Public Class frmManifestViewer
Private bShutdown As Boolean = False
Private oLocalManifest As SortedList
Private oRemoteManfiest As SortedList
Private oRestoreInfo As clsBackup
Private oDataTable As DataTable
Property RestoreInfo As clsBackup
Get
Return oRestoreInfo
End Get
Set(value As clsBackup)
oRestoreInfo = value
End Set
End Property
Property LocalManifestData As SortedList
Get
Return oLocalManifest
End Get
Set(value As SortedList)
oLocalManifest = value
End Set
End Property
Property RemoteManifestData As SortedList
Get
Return oRemoteManfiest
End Get
Set(value As SortedList)
oRemoteManfiest = value
End Set
End Property
Private Sub FormatManifest(ByVal iManifest As Integer)
Dim oRow As Object()
Dim oLoadData As SortedList
If iManifest = 1 Then
oLoadData = LocalManifestData
Else
oLoadData = RemoteManifestData
End If
oDataTable = New DataTable
'Setup Columns
oDataTable.Columns.Add("Name")
oDataTable.Columns.Add("Backup Path")
oDataTable.Columns.Add("Restore Path")
oDataTable.Columns.Add("Absolute Path")
oDataTable.Columns.Add("Date Updated")
oDataTable.Columns.Add("Updated By")
'Setup Data Types
oDataTable.Columns(0).DataType = GetType(String)
oDataTable.Columns(1).DataType = GetType(String)
oDataTable.Columns(2).DataType = GetType(String)
oDataTable.Columns(3).DataType = GetType(Boolean)
oDataTable.Columns(4).DataType = GetType(DateTime)
oDataTable.Columns(5).DataType = GetType(String)
For Each o As clsBackup In oLoadData.Values
oRow = New Object() {o.Name, o.FileName, o.RestorePath, o.AbsolutePath, o.DateUpdated, o.UpdatedBy}
oDataTable.Rows.Add(oRow)
Next
'Sort
oDataTable.DefaultView.Sort = "Name asc"
dgView.DataSource = oDataTable
'Setup Column Widths
dgView.Columns(0).MinimumWidth = 100
dgView.Columns(1).MinimumWidth = 175
dgView.Columns(2).MinimumWidth = 175
dgView.Columns(3).MinimumWidth = 60
dgView.Columns(4).MinimumWidth = 125
dgView.Columns(5).MinimumWidth = 100
dgView.Columns(0).FillWeight = 100
dgView.Columns(1).FillWeight = 100
dgView.Columns(2).FillWeight = 100
dgView.Columns(3).FillWeight = 25
dgView.Columns(4).FillWeight = 50
dgView.Columns(5).FillWeight = 50
End Sub
Private Sub LoadCombo()
Dim oCombo As New List(Of KeyValuePair(Of Integer, String))
oCombo.Add(New KeyValuePair(Of Integer, String)(1, "Local Manifest"))
oCombo.Add(New KeyValuePair(Of Integer, String)(2, "Remote Manifest"))
cboManifest.DataSource = oCombo
cboManifest.ValueMember = "key"
cboManifest.DisplayMember = "value"
End Sub
Private Sub frmManifestInfo_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
dgView.ReadOnly = True
dgView.AllowUserToAddRows = False
lblError.Text = String.Empty
LoadCombo()
FormatManifest(CInt(cboManifest.SelectedValue))
End Sub
Private Sub dgView_CellStateChanged(sender As Object, e As DataGridViewCellStateChangedEventArgs) Handles dgView.CellStateChanged
lblError.ForeColor = Color.Black
Select Case dgView.Columns(e.Cell.ColumnIndex).Index
Case 0
lblError.Text = "The name of the application."
Case 1
lblError.Text = "The location of the backup file to restore."
Case 2
lblError.Text = "When the backup file was updated from this computer."
Case 3
lblError.Text = "The name of this computer."
Case 4
lblError.Text = "When the local backup file was last updated."
Case 5
lblError.Text = "The name of the computer that performed the last backup."
End Select
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.Close()
End Sub
Private Sub frmGameInfo_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
If Not bShutdown Then
If MsgBox("Are you sure you want to close?", MsgBoxStyle.YesNo, "ABM") = MsgBoxResult.Yes Then
bShutdown = True
End If
End If
If Not bShutdown Then
e.Cancel = True
End If
End Sub
Private Sub cboManifest_SelectionChangeCommitted(sender As Object, e As EventArgs) Handles cboManifest.SelectionChangeCommitted
FormatManifest(CInt(cboManifest.SelectedValue))
End Sub
End Class
+280
View File
@@ -0,0 +1,280 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmSettings
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.chkMonitorOnStartup = New System.Windows.Forms.CheckBox()
Me.chkBackupConfirm = New System.Windows.Forms.CheckBox()
Me.grpGeneral = New System.Windows.Forms.GroupBox()
Me.chkStartWindows = New System.Windows.Forms.CheckBox()
Me.chkSync = New System.Windows.Forms.CheckBox()
Me.chkShowDetectionTips = New System.Windows.Forms.CheckBox()
Me.chkStartToTray = New System.Windows.Forms.CheckBox()
Me.grpPaths = New System.Windows.Forms.GroupBox()
Me.btnBackupFolder = New System.Windows.Forms.Button()
Me.lblBackupFolder = New System.Windows.Forms.Label()
Me.txtBackupFolder = New System.Windows.Forms.TextBox()
Me.fbBrowser = New System.Windows.Forms.FolderBrowserDialog()
Me.btnSave = New System.Windows.Forms.Button()
Me.btnCancel = New System.Windows.Forms.Button()
Me.grpBackup = New System.Windows.Forms.GroupBox()
Me.chkCheckSum = New System.Windows.Forms.CheckBox()
Me.chkRestoreOnLaunch = New System.Windows.Forms.CheckBox()
Me.chkOverwriteWarning = New System.Windows.Forms.CheckBox()
Me.chkCreateFolder = New System.Windows.Forms.CheckBox()
Me.grpGeneral.SuspendLayout()
Me.grpPaths.SuspendLayout()
Me.grpBackup.SuspendLayout()
Me.SuspendLayout()
'
'chkMonitorOnStartup
'
Me.chkMonitorOnStartup.AutoSize = True
Me.chkMonitorOnStartup.Location = New System.Drawing.Point(6, 65)
Me.chkMonitorOnStartup.Name = "chkMonitorOnStartup"
Me.chkMonitorOnStartup.Size = New System.Drawing.Size(146, 17)
Me.chkMonitorOnStartup.TabIndex = 2
Me.chkMonitorOnStartup.Text = "Start monitoring at launch"
Me.chkMonitorOnStartup.UseVisualStyleBackColor = True
'
'chkBackupConfirm
'
Me.chkBackupConfirm.AutoSize = True
Me.chkBackupConfirm.Location = New System.Drawing.Point(6, 19)
Me.chkBackupConfirm.Name = "chkBackupConfirm"
Me.chkBackupConfirm.Size = New System.Drawing.Size(160, 17)
Me.chkBackupConfirm.TabIndex = 0
Me.chkBackupConfirm.Text = "Disable backup confirmation"
Me.chkBackupConfirm.UseVisualStyleBackColor = True
'
'grpGeneral
'
Me.grpGeneral.Controls.Add(Me.chkStartWindows)
Me.grpGeneral.Controls.Add(Me.chkSync)
Me.grpGeneral.Controls.Add(Me.chkShowDetectionTips)
Me.grpGeneral.Controls.Add(Me.chkStartToTray)
Me.grpGeneral.Controls.Add(Me.chkMonitorOnStartup)
Me.grpGeneral.Location = New System.Drawing.Point(12, 12)
Me.grpGeneral.Name = "grpGeneral"
Me.grpGeneral.Size = New System.Drawing.Size(360, 145)
Me.grpGeneral.TabIndex = 0
Me.grpGeneral.TabStop = False
Me.grpGeneral.Text = "General"
'
'chkStartWindows
'
Me.chkStartWindows.AutoSize = True
Me.chkStartWindows.Location = New System.Drawing.Point(6, 19)
Me.chkStartWindows.Name = "chkStartWindows"
Me.chkStartWindows.Size = New System.Drawing.Size(117, 17)
Me.chkStartWindows.TabIndex = 0
Me.chkStartWindows.Text = "Start with Windows"
Me.chkStartWindows.UseVisualStyleBackColor = True
'
'chkSync
'
Me.chkSync.AutoSize = True
Me.chkSync.Location = New System.Drawing.Point(6, 111)
Me.chkSync.Name = "chkSync"
Me.chkSync.Size = New System.Drawing.Size(208, 17)
Me.chkSync.TabIndex = 4
Me.chkSync.Text = "Sync game list data with backup folder"
Me.chkSync.UseVisualStyleBackColor = True
'
'chkShowDetectionTips
'
Me.chkShowDetectionTips.AutoSize = True
Me.chkShowDetectionTips.Location = New System.Drawing.Point(6, 88)
Me.chkShowDetectionTips.Name = "chkShowDetectionTips"
Me.chkShowDetectionTips.Size = New System.Drawing.Size(136, 17)
Me.chkShowDetectionTips.TabIndex = 3
Me.chkShowDetectionTips.Text = "Show detection tooltips"
Me.chkShowDetectionTips.UseVisualStyleBackColor = True
'
'chkStartToTray
'
Me.chkStartToTray.AutoSize = True
Me.chkStartToTray.Location = New System.Drawing.Point(6, 42)
Me.chkStartToTray.Name = "chkStartToTray"
Me.chkStartToTray.Size = New System.Drawing.Size(115, 17)
Me.chkStartToTray.TabIndex = 1
Me.chkStartToTray.Text = "Start to system tray"
Me.chkStartToTray.UseVisualStyleBackColor = True
'
'grpPaths
'
Me.grpPaths.Controls.Add(Me.btnBackupFolder)
Me.grpPaths.Controls.Add(Me.lblBackupFolder)
Me.grpPaths.Controls.Add(Me.txtBackupFolder)
Me.grpPaths.Location = New System.Drawing.Point(12, 311)
Me.grpPaths.Name = "grpPaths"
Me.grpPaths.Size = New System.Drawing.Size(360, 60)
Me.grpPaths.TabIndex = 2
Me.grpPaths.TabStop = False
Me.grpPaths.Text = "Paths"
'
'btnBackupFolder
'
Me.btnBackupFolder.Location = New System.Drawing.Point(318, 23)
Me.btnBackupFolder.Name = "btnBackupFolder"
Me.btnBackupFolder.Size = New System.Drawing.Size(27, 20)
Me.btnBackupFolder.TabIndex = 2
Me.btnBackupFolder.Text = "..."
Me.btnBackupFolder.UseVisualStyleBackColor = True
'
'lblBackupFolder
'
Me.lblBackupFolder.AutoSize = True
Me.lblBackupFolder.Location = New System.Drawing.Point(6, 27)
Me.lblBackupFolder.Name = "lblBackupFolder"
Me.lblBackupFolder.Size = New System.Drawing.Size(76, 13)
Me.lblBackupFolder.TabIndex = 0
Me.lblBackupFolder.Text = "Backup Folder"
'
'txtBackupFolder
'
Me.txtBackupFolder.Location = New System.Drawing.Point(88, 24)
Me.txtBackupFolder.Name = "txtBackupFolder"
Me.txtBackupFolder.Size = New System.Drawing.Size(224, 20)
Me.txtBackupFolder.TabIndex = 1
'
'btnSave
'
Me.btnSave.DialogResult = System.Windows.Forms.DialogResult.OK
Me.btnSave.Location = New System.Drawing.Point(216, 377)
Me.btnSave.Name = "btnSave"
Me.btnSave.Size = New System.Drawing.Size(75, 23)
Me.btnSave.TabIndex = 3
Me.btnSave.Text = "&Save"
Me.btnSave.UseVisualStyleBackColor = True
'
'btnCancel
'
Me.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel
Me.btnCancel.Location = New System.Drawing.Point(297, 377)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 4
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'grpBackup
'
Me.grpBackup.Controls.Add(Me.chkCheckSum)
Me.grpBackup.Controls.Add(Me.chkRestoreOnLaunch)
Me.grpBackup.Controls.Add(Me.chkOverwriteWarning)
Me.grpBackup.Controls.Add(Me.chkCreateFolder)
Me.grpBackup.Controls.Add(Me.chkBackupConfirm)
Me.grpBackup.Location = New System.Drawing.Point(12, 163)
Me.grpBackup.Name = "grpBackup"
Me.grpBackup.Size = New System.Drawing.Size(360, 142)
Me.grpBackup.TabIndex = 1
Me.grpBackup.TabStop = False
Me.grpBackup.Text = "Backup and Restore Options"
'
'chkCheckSum
'
Me.chkCheckSum.AutoSize = True
Me.chkCheckSum.Location = New System.Drawing.Point(6, 111)
Me.chkCheckSum.Name = "chkCheckSum"
Me.chkCheckSum.Size = New System.Drawing.Size(195, 17)
Me.chkCheckSum.TabIndex = 4
Me.chkCheckSum.Text = "Verify backup files with a checksum"
Me.chkCheckSum.UseVisualStyleBackColor = True
'
'chkRestoreOnLaunch
'
Me.chkRestoreOnLaunch.AutoSize = True
Me.chkRestoreOnLaunch.Location = New System.Drawing.Point(6, 88)
Me.chkRestoreOnLaunch.Name = "chkRestoreOnLaunch"
Me.chkRestoreOnLaunch.Size = New System.Drawing.Size(249, 17)
Me.chkRestoreOnLaunch.TabIndex = 3
Me.chkRestoreOnLaunch.Text = "Check for new backup files to restore at launch"
Me.chkRestoreOnLaunch.UseVisualStyleBackColor = True
'
'chkOverwriteWarning
'
Me.chkOverwriteWarning.AutoSize = True
Me.chkOverwriteWarning.Location = New System.Drawing.Point(6, 65)
Me.chkOverwriteWarning.Name = "chkOverwriteWarning"
Me.chkOverwriteWarning.Size = New System.Drawing.Size(139, 17)
Me.chkOverwriteWarning.TabIndex = 2
Me.chkOverwriteWarning.Text = "Show overwrite warning"
Me.chkOverwriteWarning.UseVisualStyleBackColor = True
'
'chkCreateFolder
'
Me.chkCreateFolder.AutoSize = True
Me.chkCreateFolder.Location = New System.Drawing.Point(6, 42)
Me.chkCreateFolder.Name = "chkCreateFolder"
Me.chkCreateFolder.Size = New System.Drawing.Size(211, 17)
Me.chkCreateFolder.TabIndex = 1
Me.chkCreateFolder.Text = "Create a sub-folder for each application"
Me.chkCreateFolder.UseVisualStyleBackColor = True
'
'frmSettings
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(384, 412)
Me.Controls.Add(Me.grpBackup)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.btnSave)
Me.Controls.Add(Me.grpPaths)
Me.Controls.Add(Me.grpGeneral)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmSettings"
Me.ShowIcon = False
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = "Settings"
Me.grpGeneral.ResumeLayout(False)
Me.grpGeneral.PerformLayout()
Me.grpPaths.ResumeLayout(False)
Me.grpPaths.PerformLayout()
Me.grpBackup.ResumeLayout(False)
Me.grpBackup.PerformLayout()
Me.ResumeLayout(False)
End Sub
Friend WithEvents chkMonitorOnStartup As System.Windows.Forms.CheckBox
Friend WithEvents chkBackupConfirm As System.Windows.Forms.CheckBox
Friend WithEvents grpGeneral As System.Windows.Forms.GroupBox
Friend WithEvents grpPaths As System.Windows.Forms.GroupBox
Friend WithEvents txtBackupFolder As System.Windows.Forms.TextBox
Friend WithEvents fbBrowser As System.Windows.Forms.FolderBrowserDialog
Friend WithEvents btnSave As System.Windows.Forms.Button
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents lblBackupFolder As System.Windows.Forms.Label
Friend WithEvents btnBackupFolder As System.Windows.Forms.Button
Friend WithEvents chkShowDetectionTips As System.Windows.Forms.CheckBox
Friend WithEvents chkStartToTray As System.Windows.Forms.CheckBox
Friend WithEvents grpBackup As System.Windows.Forms.GroupBox
Friend WithEvents chkOverwriteWarning As System.Windows.Forms.CheckBox
Friend WithEvents chkCreateFolder As System.Windows.Forms.CheckBox
Friend WithEvents chkRestoreOnLaunch As System.Windows.Forms.CheckBox
Friend WithEvents chkSync As System.Windows.Forms.CheckBox
Friend WithEvents chkCheckSum As System.Windows.Forms.CheckBox
Friend WithEvents chkStartWindows As System.Windows.Forms.CheckBox
End Class
+126
View File
@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="fbBrowser.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>32</value>
</metadata>
</root>
+136
View File
@@ -0,0 +1,136 @@
Public Class frmSettings
Dim bShutdown As Boolean = False
Dim bBackupLocationChanged As Boolean = False
Dim bCheckSumDisabled As Boolean = False
Private oSettings As mgrSettings
Property Settings As mgrSettings
Get
Return oSettings
End Get
Set(value As mgrSettings)
oSettings = value
End Set
End Property
Private Property BackupLocationChanged As Boolean
Get
Return bBackupLocationChanged
End Get
Set(value As Boolean)
bBackupLocationChanged = value
End Set
End Property
Private Sub HandleRegistryUpdate(ByVal bToggle As Boolean)
Dim oKey As Microsoft.Win32.RegistryKey
Dim sAppName As String = Application.ProductName
Dim sAppPath As String = Application.ExecutablePath
If bToggle Then
oKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True)
oKey.SetValue(sAppName, """" & sAppPath & """")
oKey.Close()
Else
oKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True)
oKey.DeleteValue(sAppName, False)
oKey.Close()
End If
End Sub
Private Function ValidateSettings() As Boolean
'Only modify registry key when the value changed
If chkStartWindows.Checked <> oSettings.StartWithWindows Then
HandleRegistryUpdate(chkStartWindows.Checked)
End If
oSettings.StartWithWindows = chkStartWindows.Checked
oSettings.MonitorOnStartup = chkMonitorOnStartup.Checked
oSettings.StartToTray = chkStartToTray.Checked
oSettings.ShowDetectionToolTips = chkShowDetectionTips.Checked
oSettings.DisableConfirmation = chkBackupConfirm.Checked
oSettings.CreateSubFolder = chkCreateFolder.Checked
oSettings.ShowOverwriteWarning = chkOverwriteWarning.Checked
oSettings.RestoreOnLaunch = chkRestoreOnLaunch.Checked
'We need to clear all checksums its turned off
If chkCheckSum.Checked = False And oSettings.CheckSum = True Then
bCheckSumDisabled = True
End If
oSettings.CheckSum = chkCheckSum.Checked
'Turning syncing from off to on is the same as changing the backup folder
If chkSync.Checked = True And oSettings.Sync = False Then
bBackupLocationChanged = True
End If
oSettings.Sync = chkSync.Checked
If IO.Directory.Exists(txtBackupFolder.Text) Then
If oSettings.BackupFolder <> txtBackupFolder.Text Then
If chkSync.Checked Then bBackupLocationChanged = True
End If
oSettings.BackupFolder = txtBackupFolder.Text
Else
MsgBox("The backup folder does not exist. Please choose a valid backup folder.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
Return False
End If
Return True
End Function
Private Function SaveSettings() As Boolean
If ValidateSettings() Then
oSettings.SaveSettings()
If BackupLocationChanged Then mgrMonitorList.HandleBackupLocationChange()
If bCheckSumDisabled Then mgrManifest.DoManifestHashWipe()
Return True
Else
Return False
End If
End Function
Private Sub LoadSettings()
chkStartWindows.Checked = oSettings.StartWithWindows
chkMonitorOnStartup.Checked = oSettings.MonitorOnStartup
chkStartToTray.Checked = oSettings.StartToTray
chkShowDetectionTips.Checked = oSettings.ShowDetectionToolTips
chkBackupConfirm.Checked = oSettings.DisableConfirmation
chkCreateFolder.Checked = oSettings.CreateSubFolder
chkOverwriteWarning.Checked = oSettings.ShowOverwriteWarning
chkRestoreOnLaunch.Checked = oSettings.RestoreOnLaunch
txtBackupFolder.Text = oSettings.BackupFolder
chkSync.Checked = oSettings.Sync
chkCheckSum.Checked = oSettings.CheckSum
End Sub
Private Sub btnSave_Click(sender As System.Object, e As System.EventArgs) Handles btnSave.Click
If SaveSettings() Then
bShutdown = True
Me.Close()
End If
End Sub
Private Sub btnCancel_Click(sender As System.Object, e As System.EventArgs) Handles btnCancel.Click
bShutdown = True
Me.Close()
End Sub
Private Sub frmSettings_FormClosing(sender As System.Object, e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
If bShutdown = False Then
e.Cancel = True
End If
End Sub
Private Sub frmSettings_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
LoadSettings()
End Sub
Private Sub btnBackupFolder_Click(sender As System.Object, e As System.EventArgs) Handles btnBackupFolder.Click
fbBrowser.SelectedPath = oSettings.BackupFolder
If fbBrowser.ShowDialog() = Windows.Forms.DialogResult.OK Then
txtBackupFolder.Text = fbBrowser.SelectedPath
End If
End Sub
End Class
+397
View File
@@ -0,0 +1,397 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmStartUpWizard
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmStartUpWizard))
Me.tabWizard = New System.Windows.Forms.TabControl()
Me.tbPage1 = New System.Windows.Forms.TabPage()
Me.lblStep1Instructions3 = New System.Windows.Forms.Label()
Me.lblStep1Instructions2 = New System.Windows.Forms.Label()
Me.lblStep1Title = New System.Windows.Forms.Label()
Me.lblStep1Instructions = New System.Windows.Forms.Label()
Me.lblStep1Intro = New System.Windows.Forms.Label()
Me.tbPage2 = New System.Windows.Forms.TabPage()
Me.chkSync = New System.Windows.Forms.CheckBox()
Me.chkCreateFolder = New System.Windows.Forms.CheckBox()
Me.lblStep2Title = New System.Windows.Forms.Label()
Me.lblStep2Instructions = New System.Windows.Forms.Label()
Me.btnFolderBrowse = New System.Windows.Forms.Button()
Me.txtBackupPath = New System.Windows.Forms.TextBox()
Me.lblStep2Intro = New System.Windows.Forms.Label()
Me.tbPage3 = New System.Windows.Forms.TabPage()
Me.btnOpenWizard = New System.Windows.Forms.Button()
Me.btnOpenMonitorList = New System.Windows.Forms.Button()
Me.btnDownloadList = New System.Windows.Forms.Button()
Me.lblStep3Title = New System.Windows.Forms.Label()
Me.lblStep3Intro = New System.Windows.Forms.Label()
Me.tbPage4 = New System.Windows.Forms.TabPage()
Me.lblStep4Instructions3 = New System.Windows.Forms.Label()
Me.lblStep4Instructions2 = New System.Windows.Forms.Label()
Me.lblStep4Title = New System.Windows.Forms.Label()
Me.lblStep4Instructions = New System.Windows.Forms.Label()
Me.btnNext = New System.Windows.Forms.Button()
Me.btnBack = New System.Windows.Forms.Button()
Me.tabWizard.SuspendLayout()
Me.tbPage1.SuspendLayout()
Me.tbPage2.SuspendLayout()
Me.tbPage3.SuspendLayout()
Me.tbPage4.SuspendLayout()
Me.SuspendLayout()
'
'tabWizard
'
Me.tabWizard.Controls.Add(Me.tbPage1)
Me.tabWizard.Controls.Add(Me.tbPage2)
Me.tabWizard.Controls.Add(Me.tbPage3)
Me.tabWizard.Controls.Add(Me.tbPage4)
Me.tabWizard.Location = New System.Drawing.Point(-6, -24)
Me.tabWizard.Name = "tabWizard"
Me.tabWizard.SelectedIndex = 0
Me.tabWizard.Size = New System.Drawing.Size(370, 220)
Me.tabWizard.TabIndex = 0
Me.tabWizard.TabStop = False
'
'tbPage1
'
Me.tbPage1.BackColor = System.Drawing.SystemColors.Control
Me.tbPage1.Controls.Add(Me.lblStep1Instructions3)
Me.tbPage1.Controls.Add(Me.lblStep1Instructions2)
Me.tbPage1.Controls.Add(Me.lblStep1Title)
Me.tbPage1.Controls.Add(Me.lblStep1Instructions)
Me.tbPage1.Controls.Add(Me.lblStep1Intro)
Me.tbPage1.Location = New System.Drawing.Point(4, 22)
Me.tbPage1.Name = "tbPage1"
Me.tbPage1.Padding = New System.Windows.Forms.Padding(3)
Me.tbPage1.Size = New System.Drawing.Size(362, 194)
Me.tbPage1.TabIndex = 0
Me.tbPage1.Text = "TabPage1"
'
'lblStep1Instructions3
'
Me.lblStep1Instructions3.AutoSize = True
Me.lblStep1Instructions3.Location = New System.Drawing.Point(14, 160)
Me.lblStep1Instructions3.Name = "lblStep1Instructions3"
Me.lblStep1Instructions3.Size = New System.Drawing.Size(310, 13)
Me.lblStep1Instructions3.TabIndex = 10
Me.lblStep1Instructions3.Text = "GBM was designed and tested using the Dropbox cloud service."
'
'lblStep1Instructions2
'
Me.lblStep1Instructions2.Location = New System.Drawing.Point(14, 106)
Me.lblStep1Instructions2.Name = "lblStep1Instructions2"
Me.lblStep1Instructions2.Size = New System.Drawing.Size(303, 42)
Me.lblStep1Instructions2.TabIndex = 9
Me.lblStep1Instructions2.Text = "Before proceeding you may want to sign up for a cloud service and install their c" & _
"lient software. GBM works best when paired with a cloud service and client but " & _
"is not required!"
'
'lblStep1Title
'
Me.lblStep1Title.AutoSize = True
Me.lblStep1Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep1Title.Location = New System.Drawing.Point(13, 11)
Me.lblStep1Title.Name = "lblStep1Title"
Me.lblStep1Title.Size = New System.Drawing.Size(148, 20)
Me.lblStep1Title.TabIndex = 8
Me.lblStep1Title.Text = "Welcome to GBM"
'
'lblStep1Instructions
'
Me.lblStep1Instructions.Location = New System.Drawing.Point(14, 64)
Me.lblStep1Instructions.Name = "lblStep1Instructions"
Me.lblStep1Instructions.Size = New System.Drawing.Size(303, 42)
Me.lblStep1Instructions.TabIndex = 6
Me.lblStep1Instructions.Text = "This wizard will guide you through some easy setup steps to get started."
'
'lblStep1Intro
'
Me.lblStep1Intro.AutoSize = True
Me.lblStep1Intro.Location = New System.Drawing.Point(14, 41)
Me.lblStep1Intro.Name = "lblStep1Intro"
Me.lblStep1Intro.Size = New System.Drawing.Size(213, 13)
Me.lblStep1Intro.TabIndex = 5
Me.lblStep1Intro.Text = "Thank you for trying Game Backup Monitor!"
'
'tbPage2
'
Me.tbPage2.BackColor = System.Drawing.SystemColors.Control
Me.tbPage2.Controls.Add(Me.chkSync)
Me.tbPage2.Controls.Add(Me.chkCreateFolder)
Me.tbPage2.Controls.Add(Me.lblStep2Title)
Me.tbPage2.Controls.Add(Me.lblStep2Instructions)
Me.tbPage2.Controls.Add(Me.btnFolderBrowse)
Me.tbPage2.Controls.Add(Me.txtBackupPath)
Me.tbPage2.Controls.Add(Me.lblStep2Intro)
Me.tbPage2.Location = New System.Drawing.Point(4, 22)
Me.tbPage2.Name = "tbPage2"
Me.tbPage2.Padding = New System.Windows.Forms.Padding(3)
Me.tbPage2.Size = New System.Drawing.Size(362, 194)
Me.tbPage2.TabIndex = 1
Me.tbPage2.Text = "TabPage2"
'
'chkSync
'
Me.chkSync.AutoSize = True
Me.chkSync.Location = New System.Drawing.Point(17, 105)
Me.chkSync.Name = "chkSync"
Me.chkSync.Size = New System.Drawing.Size(258, 17)
Me.chkSync.TabIndex = 13
Me.chkSync.Text = "Sync with existing GBM data in the backup folder"
Me.chkSync.UseVisualStyleBackColor = True
'
'chkCreateFolder
'
Me.chkCreateFolder.AutoSize = True
Me.chkCreateFolder.Location = New System.Drawing.Point(17, 83)
Me.chkCreateFolder.Name = "chkCreateFolder"
Me.chkCreateFolder.Size = New System.Drawing.Size(211, 17)
Me.chkCreateFolder.TabIndex = 12
Me.chkCreateFolder.Text = "Create a sub-folder for each application"
Me.chkCreateFolder.UseVisualStyleBackColor = True
'
'lblStep2Title
'
Me.lblStep2Title.AutoSize = True
Me.lblStep2Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep2Title.Location = New System.Drawing.Point(13, 11)
Me.lblStep2Title.Name = "lblStep2Title"
Me.lblStep2Title.Size = New System.Drawing.Size(143, 20)
Me.lblStep2Title.TabIndex = 11
Me.lblStep2Title.Text = "Backup Location"
'
'lblStep2Instructions
'
Me.lblStep2Instructions.Location = New System.Drawing.Point(14, 125)
Me.lblStep2Instructions.Name = "lblStep2Instructions"
Me.lblStep2Instructions.Size = New System.Drawing.Size(335, 57)
Me.lblStep2Instructions.TabIndex = 10
Me.lblStep2Instructions.Text = resources.GetString("lblStep2Instructions.Text")
'
'btnFolderBrowse
'
Me.btnFolderBrowse.Location = New System.Drawing.Point(322, 56)
Me.btnFolderBrowse.Name = "btnFolderBrowse"
Me.btnFolderBrowse.Size = New System.Drawing.Size(27, 20)
Me.btnFolderBrowse.TabIndex = 8
Me.btnFolderBrowse.Text = "..."
Me.btnFolderBrowse.UseVisualStyleBackColor = True
'
'txtBackupPath
'
Me.txtBackupPath.AllowDrop = True
Me.txtBackupPath.Location = New System.Drawing.Point(17, 57)
Me.txtBackupPath.Name = "txtBackupPath"
Me.txtBackupPath.Size = New System.Drawing.Size(300, 20)
Me.txtBackupPath.TabIndex = 6
'
'lblStep2Intro
'
Me.lblStep2Intro.AutoSize = True
Me.lblStep2Intro.Location = New System.Drawing.Point(14, 41)
Me.lblStep2Intro.Name = "lblStep2Intro"
Me.lblStep2Intro.Size = New System.Drawing.Size(219, 13)
Me.lblStep2Intro.TabIndex = 7
Me.lblStep2Intro.Text = "Choose where GBM saves your backup files:"
'
'tbPage3
'
Me.tbPage3.BackColor = System.Drawing.SystemColors.Control
Me.tbPage3.Controls.Add(Me.btnOpenWizard)
Me.tbPage3.Controls.Add(Me.btnOpenMonitorList)
Me.tbPage3.Controls.Add(Me.btnDownloadList)
Me.tbPage3.Controls.Add(Me.lblStep3Title)
Me.tbPage3.Controls.Add(Me.lblStep3Intro)
Me.tbPage3.Location = New System.Drawing.Point(4, 22)
Me.tbPage3.Name = "tbPage3"
Me.tbPage3.Size = New System.Drawing.Size(362, 194)
Me.tbPage3.TabIndex = 2
Me.tbPage3.Text = "TabPage3"
'
'btnOpenWizard
'
Me.btnOpenWizard.Location = New System.Drawing.Point(83, 131)
Me.btnOpenWizard.Name = "btnOpenWizard"
Me.btnOpenWizard.Size = New System.Drawing.Size(196, 23)
Me.btnOpenWizard.TabIndex = 1
Me.btnOpenWizard.Text = "Add Game Wizard"
Me.btnOpenWizard.UseVisualStyleBackColor = True
'
'btnOpenMonitorList
'
Me.btnOpenMonitorList.Location = New System.Drawing.Point(83, 160)
Me.btnOpenMonitorList.Name = "btnOpenMonitorList"
Me.btnOpenMonitorList.Size = New System.Drawing.Size(196, 23)
Me.btnOpenMonitorList.TabIndex = 2
Me.btnOpenMonitorList.Text = "Game Manager"
Me.btnOpenMonitorList.UseVisualStyleBackColor = True
'
'btnDownloadList
'
Me.btnDownloadList.Location = New System.Drawing.Point(83, 102)
Me.btnDownloadList.Name = "btnDownloadList"
Me.btnDownloadList.Size = New System.Drawing.Size(196, 23)
Me.btnDownloadList.TabIndex = 0
Me.btnDownloadList.Text = "Import from Official List"
Me.btnDownloadList.UseVisualStyleBackColor = True
'
'lblStep3Title
'
Me.lblStep3Title.AutoSize = True
Me.lblStep3Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep3Title.Location = New System.Drawing.Point(14, 11)
Me.lblStep3Title.Name = "lblStep3Title"
Me.lblStep3Title.Size = New System.Drawing.Size(155, 20)
Me.lblStep3Title.TabIndex = 10
Me.lblStep3Title.Text = "Monitoring Games"
'
'lblStep3Intro
'
Me.lblStep3Intro.Location = New System.Drawing.Point(14, 41)
Me.lblStep3Intro.Name = "lblStep3Intro"
Me.lblStep3Intro.Size = New System.Drawing.Size(335, 57)
Me.lblStep3Intro.TabIndex = 5
Me.lblStep3Intro.Text = resources.GetString("lblStep3Intro.Text")
'
'tbPage4
'
Me.tbPage4.BackColor = System.Drawing.SystemColors.Control
Me.tbPage4.Controls.Add(Me.lblStep4Instructions3)
Me.tbPage4.Controls.Add(Me.lblStep4Instructions2)
Me.tbPage4.Controls.Add(Me.lblStep4Title)
Me.tbPage4.Controls.Add(Me.lblStep4Instructions)
Me.tbPage4.Location = New System.Drawing.Point(4, 22)
Me.tbPage4.Name = "tbPage4"
Me.tbPage4.Size = New System.Drawing.Size(362, 194)
Me.tbPage4.TabIndex = 4
Me.tbPage4.Text = "TabPage5"
'
'lblStep4Instructions3
'
Me.lblStep4Instructions3.Location = New System.Drawing.Point(14, 116)
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,"
'
'lblStep4Instructions2
'
Me.lblStep4Instructions2.Location = New System.Drawing.Point(14, 78)
Me.lblStep4Instructions2.Name = "lblStep4Instructions2"
Me.lblStep4Instructions2.Size = New System.Drawing.Size(303, 32)
Me.lblStep4Instructions2.TabIndex = 17
Me.lblStep4Instructions2.Text = "Just remember GBM can only currently monitor one game at a time."
'
'lblStep4Title
'
Me.lblStep4Title.AutoSize = True
Me.lblStep4Title.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStep4Title.Location = New System.Drawing.Point(14, 11)
Me.lblStep4Title.Name = "lblStep4Title"
Me.lblStep4Title.Size = New System.Drawing.Size(82, 20)
Me.lblStep4Title.TabIndex = 16
Me.lblStep4Title.Text = "Finished!"
'
'lblStep4Instructions
'
Me.lblStep4Instructions.Location = New System.Drawing.Point(14, 41)
Me.lblStep4Instructions.Name = "lblStep4Instructions"
Me.lblStep4Instructions.Size = New System.Drawing.Size(303, 31)
Me.lblStep4Instructions.TabIndex = 12
Me.lblStep4Instructions.Text = "That's all there is to it! GBM will automatically monitor and backup your applic" & _
"ations each time they are closed."
'
'btnNext
'
Me.btnNext.Location = New System.Drawing.Point(272, 202)
Me.btnNext.Name = "btnNext"
Me.btnNext.Size = New System.Drawing.Size(75, 23)
Me.btnNext.TabIndex = 11
Me.btnNext.Text = "&Next"
Me.btnNext.UseVisualStyleBackColor = True
'
'btnBack
'
Me.btnBack.Location = New System.Drawing.Point(191, 202)
Me.btnBack.Name = "btnBack"
Me.btnBack.Size = New System.Drawing.Size(75, 23)
Me.btnBack.TabIndex = 10
Me.btnBack.Text = "&Back"
Me.btnBack.UseVisualStyleBackColor = True
'
'frmStartUpWizard
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(359, 237)
Me.Controls.Add(Me.btnNext)
Me.Controls.Add(Me.btnBack)
Me.Controls.Add(Me.tabWizard)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmStartUpWizard"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent
Me.Text = "GBM Setup Wizard"
Me.tabWizard.ResumeLayout(False)
Me.tbPage1.ResumeLayout(False)
Me.tbPage1.PerformLayout()
Me.tbPage2.ResumeLayout(False)
Me.tbPage2.PerformLayout()
Me.tbPage3.ResumeLayout(False)
Me.tbPage3.PerformLayout()
Me.tbPage4.ResumeLayout(False)
Me.tbPage4.PerformLayout()
Me.ResumeLayout(False)
End Sub
Friend WithEvents tabWizard As System.Windows.Forms.TabControl
Friend WithEvents tbPage1 As System.Windows.Forms.TabPage
Friend WithEvents tbPage2 As System.Windows.Forms.TabPage
Friend WithEvents btnNext As System.Windows.Forms.Button
Friend WithEvents btnBack As System.Windows.Forms.Button
Friend WithEvents tbPage3 As System.Windows.Forms.TabPage
Friend WithEvents tbPage4 As System.Windows.Forms.TabPage
Friend WithEvents lblStep1Instructions As System.Windows.Forms.Label
Friend WithEvents lblStep1Intro As System.Windows.Forms.Label
Friend WithEvents lblStep2Instructions As System.Windows.Forms.Label
Friend WithEvents btnFolderBrowse As System.Windows.Forms.Button
Friend WithEvents txtBackupPath As System.Windows.Forms.TextBox
Friend WithEvents lblStep2Intro As System.Windows.Forms.Label
Friend WithEvents lblStep3Intro As System.Windows.Forms.Label
Friend WithEvents lblStep4Instructions As System.Windows.Forms.Label
Friend WithEvents lblStep1Title As System.Windows.Forms.Label
Friend WithEvents lblStep2Title As System.Windows.Forms.Label
Friend WithEvents lblStep3Title As System.Windows.Forms.Label
Friend WithEvents lblStep4Title As System.Windows.Forms.Label
Friend WithEvents lblStep1Instructions2 As System.Windows.Forms.Label
Friend WithEvents lblStep1Instructions3 As System.Windows.Forms.Label
Friend WithEvents chkCreateFolder As System.Windows.Forms.CheckBox
Friend WithEvents btnDownloadList As System.Windows.Forms.Button
Friend WithEvents btnOpenWizard As System.Windows.Forms.Button
Friend WithEvents btnOpenMonitorList As System.Windows.Forms.Button
Friend WithEvents lblStep4Instructions3 As System.Windows.Forms.Label
Friend WithEvents lblStep4Instructions2 As System.Windows.Forms.Label
Friend WithEvents chkSync As System.Windows.Forms.CheckBox
End Class
+126
View File
@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="lblStep2Instructions.Text" xml:space="preserve">
<value>GBM will store all your backup files in this location. It's best to use a cloud folder so your backups are automatically uploaded as soon as they are completed. GBM also stores a file called gbm.s3db in this location, this is how your backups are tracked so don't delete it!</value>
</data>
<data name="lblStep3Intro.Text" xml:space="preserve">
<value>Before you can start monitoring for games, they need to be configured so GBM knows what to look for and how to handle them. You can download configurations from the official pre-configured list or add them all yourself.</value>
</data>
</root>
+220
View File
@@ -0,0 +1,220 @@
Imports System.IO
Public Class frmStartUpWizard
Private oGameData As Hashtable
Private oSettings As mgrSettings
Private bShutdown As Boolean = False
Property Settings As mgrSettings
Get
Return oSettings
End Get
Set(value As mgrSettings)
oSettings = value
End Set
End Property
Private Enum eSteps As Integer
Step1 = 1
Step2 = 2
Step3 = 3
Step3a = 4
Step4 = 5
Step5 = 6
End Enum
Private eCurrentStep As eSteps = eSteps.Step1
Private Sub FormInit()
LoadGameSettings()
StepHandler()
End Sub
Private Sub CheckSync()
Dim oDatabase As New mgrSQLite(mgrSQLite.Database.Remote)
'Check if a remote database already exists in the new backup location
If oDatabase.CheckDB() Then
'Make sure database is the latest version
oDatabase.DatabaseUpgrade()
mgrMonitorList.SyncMonitorLists(False)
MsgBox("Existing data was detected in the backup folder and has been imported.", MsgBoxStyle.Information, "Game Backup Monitor")
End If
End Sub
Private Sub StepHandler()
Select Case eCurrentStep
Case eSteps.Step1
btnBack.Enabled = False
btnNext.Enabled = True
tabWizard.SelectTab(0)
Case eSteps.Step2
txtBackupPath.Text = oSettings.BackupFolder
chkCreateFolder.Checked = oSettings.CreateSubFolder
chkSync.Checked = oSettings.Sync
btnBack.Enabled = True
btnNext.Enabled = True
tabWizard.SelectTab(1)
Case eSteps.Step3
btnBack.Enabled = False
btnNext.Enabled = True
btnNext.Text = "&Next"
tabWizard.SelectTab(2)
Case eSteps.Step4
btnBack.Enabled = True
btnNext.Enabled = True
btnNext.Text = "&Finish"
tabWizard.SelectTab(3)
End Select
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 mgrMonitorList.DoImport(mgrPath.OfficialImportURL) Then
oGameData = mgrMonitorList.ReadList(mgrMonitorList.eListTypes.ScanList)
If oSettings.Sync Then mgrMonitorList.SyncMonitorLists()
End If
End If
End Sub
Private Sub LoadGameSettings()
'Load Game XML
oGameData = mgrMonitorList.ReadList(mgrMonitorList.eListTypes.ScanList)
End Sub
Private Sub OpenGameWizard()
Dim frm As New frmAddWizard
frm.GameData = oGameData
frm.ShowDialog()
LoadGameSettings()
If oSettings.Sync Then mgrMonitorList.SyncMonitorLists()
End Sub
Private Sub OpenMonitorList()
Dim frm As New frmGameManager
frm.BackupFolder = oSettings.BackupFolder
frm.DisableExternalFunctions = True
frm.ShowDialog()
LoadGameSettings()
If oSettings.Sync Then mgrMonitorList.SyncMonitorLists()
End Sub
Private Function ValidateBackupPath(ByVal strPath As String, ByRef sErrorMessage As String) As Boolean
If strPath = String.Empty Then
sErrorMessage = "You must select a backup path to continue."
txtBackupPath.Focus()
Return False
End If
If Not Directory.Exists(strPath) Then
sErrorMessage = "The folder you selected does not exist or is not a valid folder."
txtBackupPath.Focus()
Return False
End If
If Not Path.IsPathRooted(strPath) Then
sErrorMessage = "The selected path must be a full path."
txtBackupPath.Focus()
Return False
End If
Return True
End Function
Private Sub ValidateBack()
Select Case eCurrentStep
Case eSteps.Step2
eCurrentStep = eSteps.Step1
Case eSteps.Step3
eCurrentStep = eSteps.Step2
Case eSteps.Step3a
eCurrentStep = eSteps.Step3
Case eSteps.Step4
eCurrentStep = eSteps.Step3
End Select
StepHandler()
End Sub
Private Sub ValidateNext()
Dim bError As Boolean = False
Dim sErrorMessage As String = String.Empty
Select Case eCurrentStep
Case eSteps.Step1
eCurrentStep = eSteps.Step2
Case eSteps.Step2
If ValidateBackupPath(txtBackupPath.Text, sErrorMessage) Then
oSettings.BackupFolder = txtBackupPath.Text
oSettings.CreateSubFolder = chkCreateFolder.Checked
oSettings.Sync = chkSync.Checked
oSettings.SaveSettings()
oSettings.LoadSettings()
If oSettings.Sync Then CheckSync()
eCurrentStep = eSteps.Step3
Else
bError = True
End If
Case eSteps.Step3
eCurrentStep = eSteps.Step4
Case eSteps.Step4
bShutdown = True
Me.Close()
End Select
If bError Then MsgBox(sErrorMessage, MsgBoxStyle.Exclamation, "Game Backup Monitor")
StepHandler()
End Sub
Private Sub BackupPathBrowse()
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Dim sCurrentPath As String = txtBackupPath.Text
Dim sNewPath As String
If txtBackupPath.Text <> String.Empty Then
If Directory.Exists(sCurrentPath) Then
sDefaultFolder = sCurrentPath
End If
End If
sNewPath = mgrCommon.OpenFolderBrowser("Choose GBM backup folder:", sDefaultFolder, False)
If sNewPath <> String.Empty Then txtBackupPath.Text = sNewPath
End Sub
Private Sub btnBack_Click(sender As Object, e As EventArgs) Handles btnBack.Click
ValidateBack()
End Sub
Private Sub btnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
ValidateNext()
End Sub
Private Sub frmStartUpWizard_Load(sender As Object, e As EventArgs) Handles MyBase.Load
FormInit()
End Sub
Private Sub btnFolderBrowse_Click(sender As Object, e As EventArgs) Handles btnFolderBrowse.Click
BackupPathBrowse()
End Sub
Private Sub btnDownloadList_Click(sender As Object, e As EventArgs) Handles btnDownloadList.Click
DownloadSettings()
End Sub
Private Sub btnOpenWizard_Click(sender As Object, e As EventArgs) Handles btnOpenWizard.Click
OpenGameWizard()
End Sub
Private Sub btnOpenMonitorList_Click(sender As Object, e As EventArgs) Handles btnOpenMonitorList.Click
OpenMonitorList()
End Sub
Private Sub frmStartUpWizard_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
If Not bShutdown Then
e.Cancel = True
End If
End Sub
End Class
+206
View File
@@ -0,0 +1,206 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmVariableManager
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.lstVariables = New System.Windows.Forms.ListBox()
Me.btnDelete = New System.Windows.Forms.Button()
Me.btnAdd = New System.Windows.Forms.Button()
Me.btnClose = New System.Windows.Forms.Button()
Me.grpVariable = New System.Windows.Forms.GroupBox()
Me.btnPathBrowse = New System.Windows.Forms.Button()
Me.txtName = New System.Windows.Forms.TextBox()
Me.txtPath = New System.Windows.Forms.TextBox()
Me.lblPath = New System.Windows.Forms.Label()
Me.lblName = New System.Windows.Forms.Label()
Me.btnCancel = New System.Windows.Forms.Button()
Me.btnSave = New System.Windows.Forms.Button()
Me.txtID = New System.Windows.Forms.TextBox()
Me.grpVariable.SuspendLayout()
Me.SuspendLayout()
'
'lstVariables
'
Me.lstVariables.FormattingEnabled = True
Me.lstVariables.Location = New System.Drawing.Point(12, 12)
Me.lstVariables.Name = "lstVariables"
Me.lstVariables.Size = New System.Drawing.Size(220, 212)
Me.lstVariables.Sorted = True
Me.lstVariables.TabIndex = 0
'
'btnDelete
'
Me.btnDelete.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.btnDelete.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnDelete.Location = New System.Drawing.Point(48, 227)
Me.btnDelete.Name = "btnDelete"
Me.btnDelete.Size = New System.Drawing.Size(30, 23)
Me.btnDelete.TabIndex = 2
Me.btnDelete.Text = "-"
Me.btnDelete.UseVisualStyleBackColor = True
'
'btnAdd
'
Me.btnAdd.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Left), System.Windows.Forms.AnchorStyles)
Me.btnAdd.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.btnAdd.Location = New System.Drawing.Point(12, 227)
Me.btnAdd.Name = "btnAdd"
Me.btnAdd.Size = New System.Drawing.Size(30, 23)
Me.btnAdd.TabIndex = 1
Me.btnAdd.Text = "+"
Me.btnAdd.UseVisualStyleBackColor = True
'
'btnClose
'
Me.btnClose.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnClose.Location = New System.Drawing.Point(497, 227)
Me.btnClose.Name = "btnClose"
Me.btnClose.Size = New System.Drawing.Size(75, 23)
Me.btnClose.TabIndex = 6
Me.btnClose.Text = "C&lose"
Me.btnClose.UseVisualStyleBackColor = True
'
'grpVariable
'
Me.grpVariable.Controls.Add(Me.btnPathBrowse)
Me.grpVariable.Controls.Add(Me.txtName)
Me.grpVariable.Controls.Add(Me.txtPath)
Me.grpVariable.Controls.Add(Me.lblPath)
Me.grpVariable.Controls.Add(Me.lblName)
Me.grpVariable.Location = New System.Drawing.Point(238, 12)
Me.grpVariable.Name = "grpVariable"
Me.grpVariable.Size = New System.Drawing.Size(334, 77)
Me.grpVariable.TabIndex = 3
Me.grpVariable.TabStop = False
Me.grpVariable.Text = "Configuration"
'
'btnPathBrowse
'
Me.btnPathBrowse.Location = New System.Drawing.Point(298, 45)
Me.btnPathBrowse.Name = "btnPathBrowse"
Me.btnPathBrowse.Size = New System.Drawing.Size(30, 20)
Me.btnPathBrowse.TabIndex = 3
Me.btnPathBrowse.Text = "..."
Me.btnPathBrowse.UseVisualStyleBackColor = True
'
'txtName
'
Me.txtName.Location = New System.Drawing.Point(50, 19)
Me.txtName.Name = "txtName"
Me.txtName.Size = New System.Drawing.Size(278, 20)
Me.txtName.TabIndex = 1
'
'txtPath
'
Me.txtPath.Location = New System.Drawing.Point(50, 45)
Me.txtPath.Name = "txtPath"
Me.txtPath.Size = New System.Drawing.Size(242, 20)
Me.txtPath.TabIndex = 2
'
'lblPath
'
Me.lblPath.AutoSize = True
Me.lblPath.Location = New System.Drawing.Point(6, 48)
Me.lblPath.Name = "lblPath"
Me.lblPath.Size = New System.Drawing.Size(32, 13)
Me.lblPath.TabIndex = 1
Me.lblPath.Text = "Path:"
'
'lblName
'
Me.lblName.AutoSize = True
Me.lblName.Location = New System.Drawing.Point(6, 22)
Me.lblName.Name = "lblName"
Me.lblName.Size = New System.Drawing.Size(38, 13)
Me.lblName.TabIndex = 0
Me.lblName.Text = "Name:"
'
'btnCancel
'
Me.btnCancel.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnCancel.Location = New System.Drawing.Point(497, 95)
Me.btnCancel.Name = "btnCancel"
Me.btnCancel.Size = New System.Drawing.Size(75, 23)
Me.btnCancel.TabIndex = 5
Me.btnCancel.Text = "&Cancel"
Me.btnCancel.UseVisualStyleBackColor = True
'
'btnSave
'
Me.btnSave.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.btnSave.Location = New System.Drawing.Point(416, 95)
Me.btnSave.Name = "btnSave"
Me.btnSave.Size = New System.Drawing.Size(75, 23)
Me.btnSave.TabIndex = 4
Me.btnSave.Text = "&Save"
Me.btnSave.UseVisualStyleBackColor = True
'
'txtID
'
Me.txtID.Enabled = False
Me.txtID.Location = New System.Drawing.Point(377, 95)
Me.txtID.Name = "txtID"
Me.txtID.Size = New System.Drawing.Size(33, 20)
Me.txtID.TabIndex = 0
Me.txtID.TabStop = False
Me.txtID.Visible = False
'
'frmVariableManager
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(584, 262)
Me.Controls.Add(Me.txtID)
Me.Controls.Add(Me.btnCancel)
Me.Controls.Add(Me.btnSave)
Me.Controls.Add(Me.grpVariable)
Me.Controls.Add(Me.btnClose)
Me.Controls.Add(Me.btnDelete)
Me.Controls.Add(Me.btnAdd)
Me.Controls.Add(Me.lstVariables)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "frmVariableManager"
Me.ShowIcon = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Custom Variable Manager"
Me.grpVariable.ResumeLayout(False)
Me.grpVariable.PerformLayout()
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents lstVariables As System.Windows.Forms.ListBox
Friend WithEvents btnDelete As System.Windows.Forms.Button
Friend WithEvents btnAdd As System.Windows.Forms.Button
Friend WithEvents btnClose As System.Windows.Forms.Button
Friend WithEvents grpVariable As System.Windows.Forms.GroupBox
Friend WithEvents btnCancel As System.Windows.Forms.Button
Friend WithEvents btnSave As System.Windows.Forms.Button
Friend WithEvents txtName As System.Windows.Forms.TextBox
Friend WithEvents txtPath As System.Windows.Forms.TextBox
Friend WithEvents lblPath As System.Windows.Forms.Label
Friend WithEvents lblName As System.Windows.Forms.Label
Friend WithEvents btnPathBrowse As System.Windows.Forms.Button
Friend WithEvents txtID As System.Windows.Forms.TextBox
End Class
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+340
View File
@@ -0,0 +1,340 @@
Imports System.IO
Public Class frmVariableManager
Dim hshVariableData As Hashtable
Private bIsDirty As Boolean = False
Private bIsLoading As Boolean = False
Private oCurrentVariable As clsPathVariable
Private Property IsDirty As Boolean
Get
Return bIsDirty
End Get
Set(value As Boolean)
bIsDirty = value
End Set
End Property
Private Property IsLoading As Boolean
Get
Return bIsLoading
End Get
Set(value As Boolean)
bIsLoading = value
End Set
End Property
Private Enum eModes As Integer
View = 1
Edit = 2
Add = 3
Disabled = 4
End Enum
Private eCurrentMode As eModes = eModes.Disabled
Private Property VariableData As Hashtable
Get
Return hshVariableData
End Get
Set(value As Hashtable)
hshVariableData = value
End Set
End Property
Private Sub PathBrowse()
Dim sDefaultFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Dim sCurrentPath As String = txtPath.Text
Dim sNewPath As String
If txtPath.Text <> String.Empty Then
If Directory.Exists(sCurrentPath) Then
sDefaultFolder = sCurrentPath
End If
End If
sNewPath = mgrCommon.OpenFolderBrowser("Choose the path the variable represents:", sDefaultFolder, False)
If sNewPath <> String.Empty Then txtPath.Text = sNewPath
End Sub
Private Sub LoadData()
VariableData = mgrVariables.ReadVariables
lstVariables.Items.Clear()
FormatAndFillList()
End Sub
Private Function HandleDirty() As MsgBoxResult
Dim oResult As MsgBoxResult
oResult = MsgBox("There are unsaved changes on this form. Do you want to save?", MsgBoxStyle.YesNoCancel, "Game Backup Monitor")
Select Case oResult
Case MsgBoxResult.Yes
IsDirty = False
Case MsgBoxResult.No
IsDirty = False
Case MsgBoxResult.Cancel
'No Change
End Select
Return oResult
End Function
Private Sub FormatAndFillList()
IsLoading = True
For Each oCustomVariable As clsPathVariable In VariableData.Values
lstVariables.Items.Add(oCustomVariable.Name)
Next
IsLoading = False
End Sub
Private Sub FillData()
IsLoading = True
oCurrentVariable = DirectCast(VariableData(lstVariables.SelectedItems(0).ToString), clsPathVariable)
txtID.Text = oCurrentVariable.ID
txtName.Text = oCurrentVariable.Name
txtPath.Text = oCurrentVariable.Path
IsLoading = False
End Sub
Private Sub DirtyCheck_ValueChanged(sender As Object, e As EventArgs)
If Not IsLoading Then
IsDirty = True
If Not eCurrentMode = eModes.Add Then EditVariable()
End If
End Sub
Private Sub AssignDirtyHandlers(ByVal oCtls As GroupBox.ControlCollection)
For Each ctl As Control In oCtls
If TypeOf ctl Is TextBox Then
AddHandler DirectCast(ctl, TextBox).TextChanged, AddressOf DirtyCheck_ValueChanged
End If
Next
End Sub
Private Sub WipeControls(ByVal oCtls As GroupBox.ControlCollection)
For Each ctl As Control In oCtls
If TypeOf ctl Is TextBox Then
DirectCast(ctl, TextBox).Text = String.Empty
End If
Next
txtID.Text = String.Empty
End Sub
Private Sub ModeChange()
IsLoading = True
Select Case eCurrentMode
Case eModes.Add
grpVariable.Enabled = True
WipeControls(grpVariable.Controls)
btnSave.Enabled = True
btnCancel.Enabled = True
btnAdd.Enabled = False
btnDelete.Enabled = False
lstVariables.Enabled = False
Case eModes.Edit
lstVariables.Enabled = False
grpVariable.Enabled = True
btnSave.Enabled = True
btnCancel.Enabled = True
btnAdd.Enabled = False
btnDelete.Enabled = False
Case eModes.View
lstVariables.Enabled = True
grpVariable.Enabled = True
btnSave.Enabled = False
btnCancel.Enabled = False
btnAdd.Enabled = True
btnDelete.Enabled = True
Case eModes.Disabled
lstVariables.Enabled = True
WipeControls(grpVariable.Controls)
grpVariable.Enabled = False
btnSave.Enabled = False
btnCancel.Enabled = False
btnAdd.Enabled = True
btnDelete.Enabled = True
End Select
IsLoading = False
End Sub
Private Sub EditVariable()
eCurrentMode = eModes.Edit
ModeChange()
End Sub
Private Sub AddVariable()
eCurrentMode = eModes.Add
ModeChange()
txtName.Focus()
End Sub
Private Sub CancelEdit()
If bIsDirty Then
Select Case HandleDirty()
Case MsgBoxResult.Yes
SaveVariable()
Case MsgBoxResult.No
If lstVariables.SelectedItems.Count > 0 Then
eCurrentMode = eModes.View
ModeChange()
FillData()
lstVariables.Focus()
Else
eCurrentMode = eModes.Disabled
ModeChange()
End If
Case MsgBoxResult.Cancel
'Do Nothing
End Select
Else
If lstVariables.SelectedItems.Count > 0 Then
eCurrentMode = eModes.View
ModeChange()
FillData()
lstVariables.Focus()
Else
eCurrentMode = eModes.Disabled
ModeChange()
End If
End If
End Sub
Private Sub SaveVariable()
Dim oCustomVariable As New clsPathVariable
Dim bSuccess As Boolean = False
If txtID.Text <> String.Empty Then
oCustomVariable.ID = txtID.Text
End If
oCustomVariable.Name = txtName.Text
oCustomVariable.Path = txtPath.Text
Select Case eCurrentMode
Case eModes.Add
If CoreValidatation(oCustomVariable) Then
bSuccess = True
mgrVariables.DoVariableAdd(oCustomVariable)
mgrVariables.DoPathUpdate(oCustomVariable.Path, oCustomVariable.FormattedName)
eCurrentMode = eModes.View
End If
Case eModes.Edit
If CoreValidatation(oCustomVariable) Then
bSuccess = True
mgrVariables.DoVariableUpdate(oCustomVariable)
mgrVariables.DoPathUpdate(oCurrentVariable.FormattedName, oCurrentVariable.Path)
mgrVariables.DoPathUpdate(oCustomVariable.Path, oCustomVariable.FormattedName)
eCurrentMode = eModes.View
End If
End Select
If bSuccess Then
IsDirty = False
LoadData()
ModeChange()
If eCurrentMode = eModes.View Then lstVariables.SelectedIndex = lstVariables.Items.IndexOf(oCustomVariable.Name)
End If
End Sub
Private Sub DeleteVariable()
Dim oCustomVariable As clsPathVariable
If lstVariables.SelectedItems.Count > 0 Then
oCustomVariable = DirectCast(VariableData(lstVariables.SelectedItems(0).ToString), clsPathVariable)
If MsgBox("Are you sure you want to delete " & oCustomVariable.Name & "? This cannot be undone.", MsgBoxStyle.YesNo, "Game Backup Monitor") = MsgBoxResult.Yes Then
mgrVariables.DoVariableDelete(oCustomVariable.ID)
mgrVariables.DoPathUpdate(oCurrentVariable.FormattedName, oCurrentVariable.Path)
LoadData()
eCurrentMode = eModes.Disabled
ModeChange()
End If
End If
End Sub
Private Sub SwitchVariable()
If lstVariables.SelectedItems.Count > 0 Then
eCurrentMode = eModes.View
FillData()
ModeChange()
End If
End Sub
Private Function CoreValidatation(ByVal oCustomVariable As clsPathVariable) As Boolean
If txtName.Text = String.Empty Then
MsgBox("You must enter a valid path name.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
txtName.Focus()
Return False
End If
If txtPath.Text = String.Empty Then
MsgBox("You must enter a valid path.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
txtPath.Focus()
Return False
End If
If mgrVariables.DoCheckDuplicate(oCustomVariable.Name, oCustomVariable.ID) Then
MsgBox("An custom variable with this name already exists.", MsgBoxStyle.Exclamation, "Game Backup Monitor")
txtName.Focus()
Return False
End If
Return True
End Function
Private Sub frmVariableManager_Load(sender As Object, e As EventArgs) Handles MyBase.Load
LoadData()
ModeChange()
AssignDirtyHandlers(grpVariable.Controls)
End Sub
Private Sub lstVariables_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstVariables.SelectedIndexChanged
SwitchVariable()
End Sub
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
AddVariable()
End Sub
Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
DeleteVariable()
End Sub
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
SaveVariable()
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
CancelEdit()
End Sub
Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnClose.Click
Me.Close()
End Sub
Private Sub btnPathBrowse_Click(sender As Object, e As EventArgs) Handles btnPathBrowse.Click
PathBrowse()
End Sub
Private Sub frmVariableManager_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
If bIsDirty Then
Select Case HandleDirty()
Case MsgBoxResult.Yes
SaveVariable()
Case MsgBoxResult.No
'Do Nothing
Case MsgBoxResult.Cancel
e.Cancel = True
End Select
End If
End Sub
End Class