diff --git a/PinCab.Configurator/AddEditGameForm.cs b/PinCab.Configurator/AddEditGameForm.cs index 57ef307..c26e1ad 100644 --- a/PinCab.Configurator/AddEditGameForm.cs +++ b/PinCab.Configurator/AddEditGameForm.cs @@ -23,6 +23,7 @@ public partial class AddEditGameForm : Form private FrontEndManager _manager { get; set; } private string _databaseFile { get; set; } private IpdbBrowserForm _ipdbForm = null; + private bool isNewEntry = false; public AddEditGameForm(FrontEndGameViewModel setting, string databaseFile, FrontEndManager manager, IpdbBrowserForm ipdbForm) { InitializeComponent(); @@ -30,6 +31,8 @@ public AddEditGameForm(FrontEndGameViewModel setting, string databaseFile, Front _manager = manager; _databaseFile = databaseFile; _ipdbForm = ipdbForm; + if (string.IsNullOrEmpty(setting.Description)) + isNewEntry = true; if (_ipdbForm == null) _ipdbForm = new IpdbBrowserForm(txtTableName.Text, true); LoadForm(); @@ -124,6 +127,17 @@ private void btnCancel_Click(object sender, EventArgs e) private void btnSave_Click(object sender, EventArgs e) { var result = GetSettingFromControls(); + if (string.IsNullOrEmpty(result.Description)) + { + MessageBox.Show("Description is a required field"); + return; + } + if (string.IsNullOrEmpty(result.FileName)) + { + MessageBox.Show("File Name is a required field"); + return; + } + _manager.SaveGame(result); Close(); } @@ -134,6 +148,11 @@ private void btnSelectFile_Click(object sender, EventArgs e) { fileDialog.Filter = "All files (*.*)|*.*|VPX Files|*.vpx|FPT Files|*.fpx|VPT Files|*.vpt"; fileDialog.FilterIndex = 1; + if (_setting.FrontEnd.System == FrontEndSystem.PinballX) + { + var system = _manager.PinballXSystems.FirstOrDefault(c => c.DatabaseFiles.Contains(_databaseFile)); + fileDialog.InitialDirectory = system.TablePath; + } fileDialog.RestoreDirectory = true; var result = fileDialog.ShowDialog(this); if (result == DialogResult.OK) @@ -142,6 +161,11 @@ private void btnSelectFile_Click(object sender, EventArgs e) var endIndex = fi.Name.LastIndexOf(fi.Extension); originalFileName = txtTableName.Text; txtTableName.Text = fi.Name.Substring(0, endIndex); + if (isNewEntry) + { + txtModified.Text = fi.LastWriteTime.ToString(); + txtAdded.Text = fi.CreationTime.ToString(); + } } } } @@ -155,6 +179,8 @@ private void btnIpdbUrl_Click(object sender, EventArgs e) private void btnFillFromIpdb_Click(object sender, EventArgs e) { _ipdbForm.SearchText(txtTableName.Text); + if (isNewEntry) + _ipdbForm.chkOverrideDisplayName.Checked = true; var result = _ipdbForm.ShowDialog(this); if (result == DialogResult.OK) { diff --git a/PinCab.Configurator/DatabaseBrowserForm.Designer.cs b/PinCab.Configurator/DatabaseBrowserForm.Designer.cs index 3f6ed93..05945c7 100644 --- a/PinCab.Configurator/DatabaseBrowserForm.Designer.cs +++ b/PinCab.Configurator/DatabaseBrowserForm.Designer.cs @@ -29,8 +29,8 @@ protected override void Dispose(bool disposing) private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle(); this.menuStrip1 = new System.Windows.Forms.MenuStrip(); this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); @@ -87,7 +87,6 @@ private void InitializeComponent() this.toolStripStatusLabelSpacer = new System.Windows.Forms.ToolStripStatusLabel(); this.toolStripProgressBar = new System.Windows.Forms.ToolStripProgressBar(); this.statusStripBottom = new System.Windows.Forms.StatusStrip(); - this.chkFuzzyMatch = new System.Windows.Forms.CheckBox(); this.menuStrip1.SuspendLayout(); this.panelFilterCriteria.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewEntryList)).BeginInit(); @@ -158,7 +157,6 @@ private void InitializeComponent() // // panelFilterCriteria // - this.panelFilterCriteria.Controls.Add(this.chkFuzzyMatch); this.panelFilterCriteria.Controls.Add(this.flowLayoutPanelTags); this.panelFilterCriteria.Controls.Add(this.lblDatabase); this.panelFilterCriteria.Controls.Add(this.cmbDatabase); @@ -362,8 +360,8 @@ private void InitializeComponent() // DatabaseTagsString // this.DatabaseTagsString.DataPropertyName = "DatabaseTagsString"; - dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.DatabaseTagsString.DefaultCellStyle = dataGridViewCellStyle3; + dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.DatabaseTagsString.DefaultCellStyle = dataGridViewCellStyle5; this.DatabaseTagsString.HeaderText = "Tags"; this.DatabaseTagsString.Name = "DatabaseTagsString"; this.DatabaseTagsString.ReadOnly = true; @@ -530,8 +528,8 @@ private void InitializeComponent() // dataGridViewTextBoxColumn2 // this.dataGridViewTextBoxColumn2.DataPropertyName = "DatabaseTagsString"; - dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle4; + dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle6; this.dataGridViewTextBoxColumn2.HeaderText = "Tags"; this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2"; this.dataGridViewTextBoxColumn2.ReadOnly = true; @@ -628,7 +626,7 @@ private void InitializeComponent() // toolStripStatusLabelSpacer // this.toolStripStatusLabelSpacer.Name = "toolStripStatusLabelSpacer"; - this.toolStripStatusLabelSpacer.Size = new System.Drawing.Size(865, 17); + this.toolStripStatusLabelSpacer.Size = new System.Drawing.Size(834, 17); this.toolStripStatusLabelSpacer.Spring = true; // // toolStripProgressBar @@ -649,17 +647,6 @@ private void InitializeComponent() this.statusStripBottom.TabIndex = 6; this.statusStripBottom.Text = "statusStrip1"; // - // chkFuzzyMatch - // - this.chkFuzzyMatch.AutoSize = true; - this.chkFuzzyMatch.Location = new System.Drawing.Point(216, 58); - this.chkFuzzyMatch.Name = "chkFuzzyMatch"; - this.chkFuzzyMatch.Size = new System.Drawing.Size(86, 17); - this.chkFuzzyMatch.TabIndex = 15; - this.chkFuzzyMatch.Text = "Fuzzy Match"; - this.chkFuzzyMatch.UseVisualStyleBackColor = true; - this.chkFuzzyMatch.CheckedChanged += new System.EventHandler(this.chkFuzzyMatch_CheckedChanged); - // // DatabaseBrowserForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -757,6 +744,5 @@ private void InitializeComponent() private System.Windows.Forms.ContextMenuStrip contextMenuStripChildEntries; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemChildIpdb; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemChildUrl; - private System.Windows.Forms.CheckBox chkFuzzyMatch; } } \ No newline at end of file diff --git a/PinCab.Configurator/DatabaseBrowserForm.cs b/PinCab.Configurator/DatabaseBrowserForm.cs index 5c1dbde..9454cd7 100644 --- a/PinCab.Configurator/DatabaseBrowserForm.cs +++ b/PinCab.Configurator/DatabaseBrowserForm.cs @@ -149,7 +149,7 @@ private void exitToolStripMenuItem_Click(object sender, EventArgs e) Close(); } - public void SearchByText(string text, DateTime startDate, DateTime endDate, List tags, bool fuzzyMatch = true, string typeFilter = "All", string databaseFilter = "All") + public void SearchByText(string text, DateTime startDate, DateTime endDate, List tags, string typeFilter = "All", string databaseFilter = "All") { _loading = true; //Don't cause excessive rebinds dateTimePickerEnd.Value = endDate; @@ -166,7 +166,6 @@ public void SearchByText(string text, DateTime startDate, DateTime endDate, List } cmbType.SelectedItem = typeFilter; cmbDatabase.SelectedItem = databaseFilter; - chkFuzzyMatch.Checked = fuzzyMatch; _loading = false; txtSearch.Text = text; } @@ -179,10 +178,9 @@ private void txtSearch_TextChanged(object sender, EventArgs e) private List GetEntriesByFilterCriteria() { IEnumerable list; - if (chkFuzzyMatch.Checked) - list = _dbManager.Entries.Where(p => p.Title.FuzzyMatch(txtSearch.Text) > .5); //Search by text - else - list = _dbManager.Entries.Where(p => p.Title.ToLower().Contains(txtSearch.Text.ToLower())); //Search by text + list = _dbManager.Entries.Where(p => (p.Title.FuzzyMatch(txtSearch.Text) > .5) + || p.Title.ToLower().Contains(txtSearch.Text.ToLower()) + ); //Search by text list = list.Where(p => p.LastUpdated <= dateTimePickerEnd.Value.EndOfDay() && p.LastUpdated >= dateTimePickerBegin.Value.BeginningOfDay()); @@ -208,12 +206,16 @@ private List GetEntriesByFilterCriteria() private void RebindGridUsingFilter() { + //Stopwatch watch = new Stopwatch(); + //watch.Start(); var list = GetEntriesByFilterCriteria(); vpinDatabaseSettingBindingSource.DataSource = list.ToSortableBindingList(); var tags = _dbManager.GetAllTags(list.ToList(), false).OrderBy(c => c).ToList(); tags.Insert(0, "(Select Tag)"); cmbTags.DataSource = tags; UpdateToolstripStatus(); + //watch.Stop(); + //Debug.WriteLine("Rebind took: " + watch.Elapsed); } //private void contextMenuStripGridActions_ItemClicked(object sender, ToolStripItemClickedEventArgs e) @@ -308,6 +310,14 @@ private void backgroundWorkerProgressBar_RunWorkerCompleted(object sender, RunWo var tags = result.Result as List; cmbTags.DataSource = tags; } + //else if (result.FunctionExecuted == DatabaseManagerBackgroundProgressAction.RebindDatabaseBrowserGrid.ToString()) + //{ + // var list = vpinDatabaseSettingBindingSource.DataSource as SortableBindingList; + // var tags = _dbManager.GetAllTags(list.ToList(), false).OrderBy(c => c).ToList(); + // tags.Insert(0, "(Select Tag)"); + // cmbTags.DataSource = tags; + // UpdateToolstripStatus(); + //} UpdateToolstripStatus(); } @@ -328,6 +338,27 @@ private void backgroundWorkerProgressBar_DoWork(object sender, DoWorkEventArgs e { e.Result = LoadTags(); } + //else if (arg.Action == DatabaseManagerBackgroundProgressAction.RebindDatabaseBrowserGrid) + //{ + // RebindGridUsingFilter(); + // var toolResult = new ToolResult() + // { + // IsValid = true, + // }; + // toolResult.ToolName = DatabaseManager.ToolName; + // toolResult.MessageType = ValidationMessageType.ToolMessage; + // toolResult.FunctionExecuted = DatabaseManagerBackgroundProgressAction.RebindDatabaseBrowserGrid.ToString(); + // e.Result = toolResult; + //} + } + + private BackgroundWorker CreateBackgroundWorker() + { + var bw = new BackgroundWorker(); + bw.WorkerSupportsCancellation = true; + bw.DoWork += backgroundWorkerProgressBar_DoWork; + bw.RunWorkerCompleted += backgroundWorkerProgressBar_RunWorkerCompleted; + return bw; } private ToolResult DownloadAndLoadDatabase() diff --git a/PinCab.Configurator/GameManagerForm.Designer.cs b/PinCab.Configurator/GameManagerForm.Designer.cs index 60a8344..2b03e15 100644 --- a/PinCab.Configurator/GameManagerForm.Designer.cs +++ b/PinCab.Configurator/GameManagerForm.Designer.cs @@ -32,36 +32,6 @@ private void InitializeComponent() this.components = new System.ComponentModel.Container(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.dataGridViewGameList = new System.Windows.Forms.DataGridView(); - this.fileNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.descriptionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.manufacturerDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.yearDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.typeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.enabledDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.alternateExeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.hideDmdDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.hideTopperDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.hideBackglassDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.ratingDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.playersDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.commentDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.themeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.authorDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.versionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.iPDBNumberDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dateAddedDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dateModifiedDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.hasUpdatesAvailableDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn(); - this.romDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.backglassStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dMDStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.realDMDColorStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.readDMDStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.tableStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.tableDesktopStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.topperStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.ManufacturerMediaStatus = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.hasWheelImageDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.HasInstructionCard = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.HasFlyer = new System.Windows.Forms.DataGridViewCheckBoxColumn(); this.HasLaunchAudio = new System.Windows.Forms.DataGridViewCheckBoxColumn(); @@ -77,9 +47,9 @@ private void InitializeComponent() this.viewIPDBPageToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.showGamesWithUpdatesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.frontEndGameBindingSource = new System.Windows.Forms.BindingSource(this.components); + this.refreshListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.openMediaFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.txtLog = new System.Windows.Forms.TextBox(); - this.progressBar = new System.Windows.Forms.ProgressBar(); this.backgroundWorkerProgressBar = new System.ComponentModel.BackgroundWorker(); this.panel1 = new System.Windows.Forms.Panel(); this.lblDatabaseStatus = new System.Windows.Forms.Label(); @@ -98,17 +68,52 @@ private void InitializeComponent() this.mediaAuditToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.massRecordToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.helpToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.refreshListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); - this.openMediaFolderToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.fileNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.descriptionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.manufacturerDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.yearDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.typeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.enabledDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.alternateExeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.hideDmdDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.hideTopperDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.hideBackglassDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ratingDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.playersDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.commentDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.themeDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.authorDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.versionDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.iPDBNumberDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dateAddedDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dateModifiedDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.hasUpdatesAvailableDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.romDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.backglassStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dMDStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.realDMDColorStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.readDMDStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.tableStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.tableDesktopStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.topperStatusDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.ManufacturerMediaStatus = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.hasWheelImageDataGridViewCheckBoxColumn = new System.Windows.Forms.DataGridViewCheckBoxColumn(); + this.frontEndGameBindingSource = new System.Windows.Forms.BindingSource(this.components); + this.statusStripBottom = new System.Windows.Forms.StatusStrip(); + this.toolStripStatusLabel = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripStatusLabelSpacer = new System.Windows.Forms.ToolStripStatusLabel(); + this.toolStripProgressBar = new System.Windows.Forms.ToolStripProgressBar(); + this.tableAuditToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewGameList)).BeginInit(); this.contextMenuStripGridActions.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.frontEndGameBindingSource)).BeginInit(); this.panel1.SuspendLayout(); this.menuStrip1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.frontEndGameBindingSource)).BeginInit(); + this.statusStripBottom.SuspendLayout(); this.SuspendLayout(); // // splitContainer1 @@ -125,8 +130,8 @@ private void InitializeComponent() // splitContainer1.Panel2 // this.splitContainer1.Panel2.Controls.Add(this.txtLog); - this.splitContainer1.Size = new System.Drawing.Size(955, 444); - this.splitContainer1.SplitterDistance = 344; + this.splitContainer1.Size = new System.Drawing.Size(955, 467); + this.splitContainer1.SplitterDistance = 361; this.splitContainer1.TabIndex = 9; // // dataGridViewGameList @@ -177,367 +182,139 @@ private void InitializeComponent() this.dataGridViewGameList.Name = "dataGridViewGameList"; this.dataGridViewGameList.ReadOnly = true; this.dataGridViewGameList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; - this.dataGridViewGameList.Size = new System.Drawing.Size(955, 344); + this.dataGridViewGameList.Size = new System.Drawing.Size(955, 361); this.dataGridViewGameList.TabIndex = 2; this.dataGridViewGameList.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridViewGameList_CellDoubleClick); this.dataGridViewGameList.DataBindingComplete += new System.Windows.Forms.DataGridViewBindingCompleteEventHandler(this.dataGridViewGameList_DataBindingComplete); // - // fileNameDataGridViewTextBoxColumn + // HasInstructionCard // - this.fileNameDataGridViewTextBoxColumn.DataPropertyName = "FileName"; - this.fileNameDataGridViewTextBoxColumn.HeaderText = "FileName"; - this.fileNameDataGridViewTextBoxColumn.Name = "fileNameDataGridViewTextBoxColumn"; - this.fileNameDataGridViewTextBoxColumn.ReadOnly = true; - this.fileNameDataGridViewTextBoxColumn.Width = 76; + this.HasInstructionCard.DataPropertyName = "HasInstructionCard"; + this.HasInstructionCard.HeaderText = "Instruction Card"; + this.HasInstructionCard.Name = "HasInstructionCard"; + this.HasInstructionCard.ReadOnly = true; + this.HasInstructionCard.Width = 87; // - // descriptionDataGridViewTextBoxColumn + // HasFlyer // - this.descriptionDataGridViewTextBoxColumn.DataPropertyName = "Description"; - this.descriptionDataGridViewTextBoxColumn.HeaderText = "Description"; - this.descriptionDataGridViewTextBoxColumn.Name = "descriptionDataGridViewTextBoxColumn"; - this.descriptionDataGridViewTextBoxColumn.ReadOnly = true; - this.descriptionDataGridViewTextBoxColumn.Width = 85; + this.HasFlyer.DataPropertyName = "HasFlyer"; + this.HasFlyer.HeaderText = "Flyer"; + this.HasFlyer.Name = "HasFlyer"; + this.HasFlyer.ReadOnly = true; + this.HasFlyer.Width = 35; // - // manufacturerDataGridViewTextBoxColumn + // HasLaunchAudio // - this.manufacturerDataGridViewTextBoxColumn.DataPropertyName = "Manufacturer"; - this.manufacturerDataGridViewTextBoxColumn.HeaderText = "Manufacturer"; - this.manufacturerDataGridViewTextBoxColumn.Name = "manufacturerDataGridViewTextBoxColumn"; - this.manufacturerDataGridViewTextBoxColumn.ReadOnly = true; - this.manufacturerDataGridViewTextBoxColumn.Width = 95; + this.HasLaunchAudio.DataPropertyName = "HasLaunchAudio"; + this.HasLaunchAudio.HeaderText = "Launch Audio"; + this.HasLaunchAudio.Name = "HasLaunchAudio"; + this.HasLaunchAudio.ReadOnly = true; + this.HasLaunchAudio.Width = 79; // - // yearDataGridViewTextBoxColumn + // HasTableAudio // - this.yearDataGridViewTextBoxColumn.DataPropertyName = "Year"; - this.yearDataGridViewTextBoxColumn.HeaderText = "Year"; - this.yearDataGridViewTextBoxColumn.Name = "yearDataGridViewTextBoxColumn"; - this.yearDataGridViewTextBoxColumn.ReadOnly = true; - this.yearDataGridViewTextBoxColumn.Width = 54; + this.HasTableAudio.DataPropertyName = "HasTableAudio"; + this.HasTableAudio.HeaderText = "Table Audio Media"; + this.HasTableAudio.Name = "HasTableAudio"; + this.HasTableAudio.ReadOnly = true; + this.HasTableAudio.Width = 102; // - // typeDataGridViewTextBoxColumn + // contextMenuStripGridActions // - this.typeDataGridViewTextBoxColumn.DataPropertyName = "Type"; - this.typeDataGridViewTextBoxColumn.HeaderText = "Type"; - this.typeDataGridViewTextBoxColumn.Name = "typeDataGridViewTextBoxColumn"; - this.typeDataGridViewTextBoxColumn.ReadOnly = true; - this.typeDataGridViewTextBoxColumn.Width = 56; + this.contextMenuStripGridActions.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.editToolStripMenuItem, + this.findMediaToolStripMenuItem, + this.recordMediaToolStripMenuItem, + this.previewMediaToolStripMenuItem, + this.addGameToolStripMenuItem, + this.deleteGameToolStripMenuItem, + this.launchGameToolStripMenuItem, + this.viewIPDBPageToolStripMenuItem, + this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem, + this.showGamesWithUpdatesToolStripMenuItem, + this.refreshListToolStripMenuItem, + this.openMediaFolderToolStripMenuItem, + this.tableAuditToolStripMenuItem}); + this.contextMenuStripGridActions.Name = "contextMenuStripGridActions"; + this.contextMenuStripGridActions.Size = new System.Drawing.Size(303, 312); // - // enabledDataGridViewTextBoxColumn + // editToolStripMenuItem // - this.enabledDataGridViewTextBoxColumn.DataPropertyName = "Enabled"; - this.enabledDataGridViewTextBoxColumn.HeaderText = "Enabled"; - this.enabledDataGridViewTextBoxColumn.Name = "enabledDataGridViewTextBoxColumn"; - this.enabledDataGridViewTextBoxColumn.ReadOnly = true; - this.enabledDataGridViewTextBoxColumn.Width = 71; + this.editToolStripMenuItem.Name = "editToolStripMenuItem"; + this.editToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.editToolStripMenuItem.Text = "Edit"; + this.editToolStripMenuItem.Click += new System.EventHandler(this.editToolStripMenuItem_Click); // - // alternateExeDataGridViewTextBoxColumn + // findMediaToolStripMenuItem // - this.alternateExeDataGridViewTextBoxColumn.DataPropertyName = "AlternateExe"; - this.alternateExeDataGridViewTextBoxColumn.HeaderText = "AlternateExe"; - this.alternateExeDataGridViewTextBoxColumn.Name = "alternateExeDataGridViewTextBoxColumn"; - this.alternateExeDataGridViewTextBoxColumn.ReadOnly = true; - this.alternateExeDataGridViewTextBoxColumn.Width = 92; + this.findMediaToolStripMenuItem.Name = "findMediaToolStripMenuItem"; + this.findMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.findMediaToolStripMenuItem.Text = "Find Media"; // - // hideDmdDataGridViewTextBoxColumn + // recordMediaToolStripMenuItem // - this.hideDmdDataGridViewTextBoxColumn.DataPropertyName = "HideDmd"; - this.hideDmdDataGridViewTextBoxColumn.HeaderText = "HideDmd"; - this.hideDmdDataGridViewTextBoxColumn.Name = "hideDmdDataGridViewTextBoxColumn"; - this.hideDmdDataGridViewTextBoxColumn.ReadOnly = true; - this.hideDmdDataGridViewTextBoxColumn.Width = 76; + this.recordMediaToolStripMenuItem.Name = "recordMediaToolStripMenuItem"; + this.recordMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.recordMediaToolStripMenuItem.Text = "Record Media"; // - // hideTopperDataGridViewTextBoxColumn + // previewMediaToolStripMenuItem // - this.hideTopperDataGridViewTextBoxColumn.DataPropertyName = "HideTopper"; - this.hideTopperDataGridViewTextBoxColumn.HeaderText = "HideTopper"; - this.hideTopperDataGridViewTextBoxColumn.Name = "hideTopperDataGridViewTextBoxColumn"; - this.hideTopperDataGridViewTextBoxColumn.ReadOnly = true; - this.hideTopperDataGridViewTextBoxColumn.Width = 88; + this.previewMediaToolStripMenuItem.Name = "previewMediaToolStripMenuItem"; + this.previewMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.previewMediaToolStripMenuItem.Text = "Preview Media"; // - // hideBackglassDataGridViewTextBoxColumn + // addGameToolStripMenuItem // - this.hideBackglassDataGridViewTextBoxColumn.DataPropertyName = "HideBackglass"; - this.hideBackglassDataGridViewTextBoxColumn.HeaderText = "HideBackglass"; - this.hideBackglassDataGridViewTextBoxColumn.Name = "hideBackglassDataGridViewTextBoxColumn"; - this.hideBackglassDataGridViewTextBoxColumn.ReadOnly = true; - this.hideBackglassDataGridViewTextBoxColumn.Width = 103; + this.addGameToolStripMenuItem.Name = "addGameToolStripMenuItem"; + this.addGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.addGameToolStripMenuItem.Text = "Add Game"; + this.addGameToolStripMenuItem.Click += new System.EventHandler(this.addGameToolStripMenuItem_Click); // - // ratingDataGridViewTextBoxColumn + // deleteGameToolStripMenuItem // - this.ratingDataGridViewTextBoxColumn.DataPropertyName = "Rating"; - this.ratingDataGridViewTextBoxColumn.HeaderText = "Rating"; - this.ratingDataGridViewTextBoxColumn.Name = "ratingDataGridViewTextBoxColumn"; - this.ratingDataGridViewTextBoxColumn.ReadOnly = true; - this.ratingDataGridViewTextBoxColumn.Width = 63; + this.deleteGameToolStripMenuItem.Name = "deleteGameToolStripMenuItem"; + this.deleteGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.deleteGameToolStripMenuItem.Text = "Delete Game"; + this.deleteGameToolStripMenuItem.Click += new System.EventHandler(this.deleteGameToolStripMenuItem_Click); // - // playersDataGridViewTextBoxColumn + // launchGameToolStripMenuItem // - this.playersDataGridViewTextBoxColumn.DataPropertyName = "Players"; - this.playersDataGridViewTextBoxColumn.HeaderText = "Players"; - this.playersDataGridViewTextBoxColumn.Name = "playersDataGridViewTextBoxColumn"; - this.playersDataGridViewTextBoxColumn.ReadOnly = true; - this.playersDataGridViewTextBoxColumn.Width = 66; + this.launchGameToolStripMenuItem.Name = "launchGameToolStripMenuItem"; + this.launchGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.launchGameToolStripMenuItem.Text = "Launch Game"; // - // commentDataGridViewTextBoxColumn + // viewIPDBPageToolStripMenuItem // - this.commentDataGridViewTextBoxColumn.DataPropertyName = "Comment"; - this.commentDataGridViewTextBoxColumn.HeaderText = "Comment"; - this.commentDataGridViewTextBoxColumn.Name = "commentDataGridViewTextBoxColumn"; - this.commentDataGridViewTextBoxColumn.ReadOnly = true; - this.commentDataGridViewTextBoxColumn.Width = 76; + this.viewIPDBPageToolStripMenuItem.Name = "viewIPDBPageToolStripMenuItem"; + this.viewIPDBPageToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.viewIPDBPageToolStripMenuItem.Text = "View IPDB Page"; + this.viewIPDBPageToolStripMenuItem.Click += new System.EventHandler(this.viewIPDBPageToolStripMenuItem_Click); // - // themeDataGridViewTextBoxColumn + // findGamesFromIPDBNotInMyDatabaseToolStripMenuItem // - this.themeDataGridViewTextBoxColumn.DataPropertyName = "Theme"; - this.themeDataGridViewTextBoxColumn.HeaderText = "Theme"; - this.themeDataGridViewTextBoxColumn.Name = "themeDataGridViewTextBoxColumn"; - this.themeDataGridViewTextBoxColumn.ReadOnly = true; - this.themeDataGridViewTextBoxColumn.Width = 65; + this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Name = "findGamesFromIPDBNotInMyDatabaseToolStripMenuItem"; + this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Text = "Find Games From IPDB Not in My Database"; // - // authorDataGridViewTextBoxColumn + // showGamesWithUpdatesToolStripMenuItem // - this.authorDataGridViewTextBoxColumn.DataPropertyName = "Author"; - this.authorDataGridViewTextBoxColumn.HeaderText = "Author"; - this.authorDataGridViewTextBoxColumn.Name = "authorDataGridViewTextBoxColumn"; - this.authorDataGridViewTextBoxColumn.ReadOnly = true; - this.authorDataGridViewTextBoxColumn.Width = 63; + this.showGamesWithUpdatesToolStripMenuItem.Name = "showGamesWithUpdatesToolStripMenuItem"; + this.showGamesWithUpdatesToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.showGamesWithUpdatesToolStripMenuItem.Text = "Show Games With Updates"; // - // versionDataGridViewTextBoxColumn + // refreshListToolStripMenuItem // - this.versionDataGridViewTextBoxColumn.DataPropertyName = "Version"; - this.versionDataGridViewTextBoxColumn.HeaderText = "Version"; - this.versionDataGridViewTextBoxColumn.Name = "versionDataGridViewTextBoxColumn"; - this.versionDataGridViewTextBoxColumn.ReadOnly = true; - this.versionDataGridViewTextBoxColumn.Width = 67; + this.refreshListToolStripMenuItem.Name = "refreshListToolStripMenuItem"; + this.refreshListToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.refreshListToolStripMenuItem.Text = "Refresh List"; + this.refreshListToolStripMenuItem.Click += new System.EventHandler(this.refreshListToolStripMenuItem_Click); // - // iPDBNumberDataGridViewTextBoxColumn + // openMediaFolderToolStripMenuItem // - this.iPDBNumberDataGridViewTextBoxColumn.DataPropertyName = "IPDBNumber"; - this.iPDBNumberDataGridViewTextBoxColumn.HeaderText = "IPDB #"; - this.iPDBNumberDataGridViewTextBoxColumn.Name = "iPDBNumberDataGridViewTextBoxColumn"; - this.iPDBNumberDataGridViewTextBoxColumn.ReadOnly = true; - this.iPDBNumberDataGridViewTextBoxColumn.Width = 67; - // - // dateAddedDataGridViewTextBoxColumn - // - this.dateAddedDataGridViewTextBoxColumn.DataPropertyName = "DateAdded"; - this.dateAddedDataGridViewTextBoxColumn.HeaderText = "Date Added"; - this.dateAddedDataGridViewTextBoxColumn.Name = "dateAddedDataGridViewTextBoxColumn"; - this.dateAddedDataGridViewTextBoxColumn.ReadOnly = true; - this.dateAddedDataGridViewTextBoxColumn.Width = 89; - // - // dateModifiedDataGridViewTextBoxColumn - // - this.dateModifiedDataGridViewTextBoxColumn.DataPropertyName = "DateModified"; - this.dateModifiedDataGridViewTextBoxColumn.HeaderText = "Date Modified"; - this.dateModifiedDataGridViewTextBoxColumn.Name = "dateModifiedDataGridViewTextBoxColumn"; - this.dateModifiedDataGridViewTextBoxColumn.ReadOnly = true; - this.dateModifiedDataGridViewTextBoxColumn.Width = 98; - // - // hasUpdatesAvailableDataGridViewCheckBoxColumn - // - this.hasUpdatesAvailableDataGridViewCheckBoxColumn.DataPropertyName = "HasUpdatesAvailable"; - this.hasUpdatesAvailableDataGridViewCheckBoxColumn.HeaderText = "HasUpdatesAvailable"; - this.hasUpdatesAvailableDataGridViewCheckBoxColumn.Name = "hasUpdatesAvailableDataGridViewCheckBoxColumn"; - this.hasUpdatesAvailableDataGridViewCheckBoxColumn.ReadOnly = true; - this.hasUpdatesAvailableDataGridViewCheckBoxColumn.Width = 115; - // - // romDataGridViewTextBoxColumn - // - this.romDataGridViewTextBoxColumn.DataPropertyName = "Rom"; - this.romDataGridViewTextBoxColumn.HeaderText = "Rom"; - this.romDataGridViewTextBoxColumn.Name = "romDataGridViewTextBoxColumn"; - this.romDataGridViewTextBoxColumn.ReadOnly = true; - this.romDataGridViewTextBoxColumn.Width = 54; - // - // backglassStatusDataGridViewTextBoxColumn - // - this.backglassStatusDataGridViewTextBoxColumn.DataPropertyName = "BackglassStatus"; - this.backglassStatusDataGridViewTextBoxColumn.HeaderText = "Backglass Media"; - this.backglassStatusDataGridViewTextBoxColumn.Name = "backglassStatusDataGridViewTextBoxColumn"; - this.backglassStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.backglassStatusDataGridViewTextBoxColumn.Width = 113; - // - // dMDStatusDataGridViewTextBoxColumn - // - this.dMDStatusDataGridViewTextBoxColumn.DataPropertyName = "DMDStatus"; - this.dMDStatusDataGridViewTextBoxColumn.HeaderText = "DMD Media"; - this.dMDStatusDataGridViewTextBoxColumn.Name = "dMDStatusDataGridViewTextBoxColumn"; - this.dMDStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.dMDStatusDataGridViewTextBoxColumn.Width = 89; - // - // realDMDColorStatusDataGridViewTextBoxColumn - // - this.realDMDColorStatusDataGridViewTextBoxColumn.DataPropertyName = "RealDMDColorStatus"; - this.realDMDColorStatusDataGridViewTextBoxColumn.HeaderText = "Read DMD Color Media"; - this.realDMDColorStatusDataGridViewTextBoxColumn.Name = "realDMDColorStatusDataGridViewTextBoxColumn"; - this.realDMDColorStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.realDMDColorStatusDataGridViewTextBoxColumn.Width = 145; - // - // readDMDStatusDataGridViewTextBoxColumn - // - this.readDMDStatusDataGridViewTextBoxColumn.DataPropertyName = "ReadDMDStatus"; - this.readDMDStatusDataGridViewTextBoxColumn.HeaderText = "Read DMD Media"; - this.readDMDStatusDataGridViewTextBoxColumn.Name = "readDMDStatusDataGridViewTextBoxColumn"; - this.readDMDStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.readDMDStatusDataGridViewTextBoxColumn.Width = 118; - // - // tableStatusDataGridViewTextBoxColumn - // - this.tableStatusDataGridViewTextBoxColumn.DataPropertyName = "TableStatus"; - this.tableStatusDataGridViewTextBoxColumn.HeaderText = "Table Media"; - this.tableStatusDataGridViewTextBoxColumn.Name = "tableStatusDataGridViewTextBoxColumn"; - this.tableStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.tableStatusDataGridViewTextBoxColumn.Width = 91; - // - // tableDesktopStatusDataGridViewTextBoxColumn - // - this.tableDesktopStatusDataGridViewTextBoxColumn.DataPropertyName = "TableDesktopStatus"; - this.tableDesktopStatusDataGridViewTextBoxColumn.HeaderText = "Table Desktop Media"; - this.tableDesktopStatusDataGridViewTextBoxColumn.Name = "tableDesktopStatusDataGridViewTextBoxColumn"; - this.tableDesktopStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.tableDesktopStatusDataGridViewTextBoxColumn.Width = 134; - // - // topperStatusDataGridViewTextBoxColumn - // - this.topperStatusDataGridViewTextBoxColumn.DataPropertyName = "TopperStatus"; - this.topperStatusDataGridViewTextBoxColumn.HeaderText = "Topper Media"; - this.topperStatusDataGridViewTextBoxColumn.Name = "topperStatusDataGridViewTextBoxColumn"; - this.topperStatusDataGridViewTextBoxColumn.ReadOnly = true; - this.topperStatusDataGridViewTextBoxColumn.Width = 98; - // - // ManufacturerMediaStatus - // - this.ManufacturerMediaStatus.DataPropertyName = "ManufacturerMediaStatus"; - this.ManufacturerMediaStatus.HeaderText = "Manufacturer Media"; - this.ManufacturerMediaStatus.Name = "ManufacturerMediaStatus"; - this.ManufacturerMediaStatus.ReadOnly = true; - this.ManufacturerMediaStatus.Width = 127; - // - // hasWheelImageDataGridViewCheckBoxColumn - // - this.hasWheelImageDataGridViewCheckBoxColumn.DataPropertyName = "HasWheelImage"; - this.hasWheelImageDataGridViewCheckBoxColumn.HeaderText = "Wheel Image"; - this.hasWheelImageDataGridViewCheckBoxColumn.Name = "hasWheelImageDataGridViewCheckBoxColumn"; - this.hasWheelImageDataGridViewCheckBoxColumn.ReadOnly = true; - this.hasWheelImageDataGridViewCheckBoxColumn.Width = 76; - // - // HasInstructionCard - // - this.HasInstructionCard.DataPropertyName = "HasInstructionCard"; - this.HasInstructionCard.HeaderText = "Instruction Card"; - this.HasInstructionCard.Name = "HasInstructionCard"; - this.HasInstructionCard.ReadOnly = true; - this.HasInstructionCard.Width = 87; - // - // HasFlyer - // - this.HasFlyer.DataPropertyName = "HasFlyer"; - this.HasFlyer.HeaderText = "Flyer"; - this.HasFlyer.Name = "HasFlyer"; - this.HasFlyer.ReadOnly = true; - this.HasFlyer.Width = 35; - // - // HasLaunchAudio - // - this.HasLaunchAudio.DataPropertyName = "HasLaunchAudio"; - this.HasLaunchAudio.HeaderText = "Launch Audio"; - this.HasLaunchAudio.Name = "HasLaunchAudio"; - this.HasLaunchAudio.ReadOnly = true; - this.HasLaunchAudio.Width = 79; - // - // HasTableAudio - // - this.HasTableAudio.DataPropertyName = "HasTableAudio"; - this.HasTableAudio.HeaderText = "Table Audio Media"; - this.HasTableAudio.Name = "HasTableAudio"; - this.HasTableAudio.ReadOnly = true; - this.HasTableAudio.Width = 102; - // - // contextMenuStripGridActions - // - this.contextMenuStripGridActions.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.editToolStripMenuItem, - this.findMediaToolStripMenuItem, - this.recordMediaToolStripMenuItem, - this.previewMediaToolStripMenuItem, - this.addGameToolStripMenuItem, - this.deleteGameToolStripMenuItem, - this.launchGameToolStripMenuItem, - this.viewIPDBPageToolStripMenuItem, - this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem, - this.showGamesWithUpdatesToolStripMenuItem, - this.refreshListToolStripMenuItem, - this.openMediaFolderToolStripMenuItem}); - this.contextMenuStripGridActions.Name = "contextMenuStripGridActions"; - this.contextMenuStripGridActions.Size = new System.Drawing.Size(303, 290); - // - // editToolStripMenuItem - // - this.editToolStripMenuItem.Name = "editToolStripMenuItem"; - this.editToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.editToolStripMenuItem.Text = "Edit"; - this.editToolStripMenuItem.Click += new System.EventHandler(this.editToolStripMenuItem_Click); - // - // findMediaToolStripMenuItem - // - this.findMediaToolStripMenuItem.Name = "findMediaToolStripMenuItem"; - this.findMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.findMediaToolStripMenuItem.Text = "Find Media"; - // - // recordMediaToolStripMenuItem - // - this.recordMediaToolStripMenuItem.Name = "recordMediaToolStripMenuItem"; - this.recordMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.recordMediaToolStripMenuItem.Text = "Record Media"; - // - // previewMediaToolStripMenuItem - // - this.previewMediaToolStripMenuItem.Name = "previewMediaToolStripMenuItem"; - this.previewMediaToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.previewMediaToolStripMenuItem.Text = "Preview Media"; - // - // addGameToolStripMenuItem - // - this.addGameToolStripMenuItem.Name = "addGameToolStripMenuItem"; - this.addGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.addGameToolStripMenuItem.Text = "Add Game"; - // - // deleteGameToolStripMenuItem - // - this.deleteGameToolStripMenuItem.Name = "deleteGameToolStripMenuItem"; - this.deleteGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.deleteGameToolStripMenuItem.Text = "Delete Game"; - this.deleteGameToolStripMenuItem.Click += new System.EventHandler(this.deleteGameToolStripMenuItem_Click); - // - // launchGameToolStripMenuItem - // - this.launchGameToolStripMenuItem.Name = "launchGameToolStripMenuItem"; - this.launchGameToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.launchGameToolStripMenuItem.Text = "Launch Game"; - // - // viewIPDBPageToolStripMenuItem - // - this.viewIPDBPageToolStripMenuItem.Name = "viewIPDBPageToolStripMenuItem"; - this.viewIPDBPageToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.viewIPDBPageToolStripMenuItem.Text = "View IPDB Page"; - this.viewIPDBPageToolStripMenuItem.Click += new System.EventHandler(this.viewIPDBPageToolStripMenuItem_Click); - // - // findGamesFromIPDBNotInMyDatabaseToolStripMenuItem - // - this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Name = "findGamesFromIPDBNotInMyDatabaseToolStripMenuItem"; - this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.findGamesFromIPDBNotInMyDatabaseToolStripMenuItem.Text = "Find Games From IPDB Not in My Database"; - // - // showGamesWithUpdatesToolStripMenuItem - // - this.showGamesWithUpdatesToolStripMenuItem.Name = "showGamesWithUpdatesToolStripMenuItem"; - this.showGamesWithUpdatesToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.showGamesWithUpdatesToolStripMenuItem.Text = "Show Games With Updates"; - // - // frontEndGameBindingSource - // - this.frontEndGameBindingSource.DataSource = typeof(PinCab.Utils.ViewModels.FrontEndGameViewModel); + this.openMediaFolderToolStripMenuItem.Name = "openMediaFolderToolStripMenuItem"; + this.openMediaFolderToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.openMediaFolderToolStripMenuItem.Text = "Open Media Folder"; + this.openMediaFolderToolStripMenuItem.Click += new System.EventHandler(this.openMediaFolderToolStripMenuItem_Click); // // txtLog // @@ -545,20 +322,13 @@ private void InitializeComponent() this.txtLog.Location = new System.Drawing.Point(0, 0); this.txtLog.Multiline = true; this.txtLog.Name = "txtLog"; - this.txtLog.Size = new System.Drawing.Size(955, 96); + this.txtLog.Size = new System.Drawing.Size(955, 102); this.txtLog.TabIndex = 4; // - // progressBar - // - this.progressBar.Dock = System.Windows.Forms.DockStyle.Bottom; - this.progressBar.Location = new System.Drawing.Point(0, 530); - this.progressBar.Name = "progressBar"; - this.progressBar.Size = new System.Drawing.Size(955, 23); - this.progressBar.TabIndex = 8; - // // backgroundWorkerProgressBar // this.backgroundWorkerProgressBar.WorkerReportsProgress = true; + this.backgroundWorkerProgressBar.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorkerProgressBar_ProgressChanged); // // panel1 // @@ -597,12 +367,14 @@ private void InitializeComponent() // // cmbDatabase // + this.cmbDatabase.DisplayMember = "DatabaseFilePathShort"; this.cmbDatabase.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.cmbDatabase.FormattingEnabled = true; this.cmbDatabase.Location = new System.Drawing.Point(236, 4); this.cmbDatabase.Name = "cmbDatabase"; this.cmbDatabase.Size = new System.Drawing.Size(264, 21); this.cmbDatabase.TabIndex = 6; + this.cmbDatabase.ValueMember = "DatabaseFilePathShort"; this.cmbDatabase.SelectedIndexChanged += new System.EventHandler(this.cmbDatabase_SelectedIndexChanged); // // lblDatabase @@ -701,14 +473,14 @@ private void InitializeComponent() // mediaAuditToolStripMenuItem // this.mediaAuditToolStripMenuItem.Name = "mediaAuditToolStripMenuItem"; - this.mediaAuditToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.mediaAuditToolStripMenuItem.Size = new System.Drawing.Size(141, 22); this.mediaAuditToolStripMenuItem.Text = "Media Audit"; this.mediaAuditToolStripMenuItem.Click += new System.EventHandler(this.mediaAuditToolStripMenuItem_Click); // // massRecordToolStripMenuItem // this.massRecordToolStripMenuItem.Name = "massRecordToolStripMenuItem"; - this.massRecordToolStripMenuItem.Size = new System.Drawing.Size(180, 22); + this.massRecordToolStripMenuItem.Size = new System.Drawing.Size(141, 22); this.massRecordToolStripMenuItem.Text = "Mass Record"; this.massRecordToolStripMenuItem.Click += new System.EventHandler(this.massRecordToolStripMenuItem_Click); // @@ -719,27 +491,293 @@ private void InitializeComponent() this.helpToolStripMenuItem.Text = "Help"; this.helpToolStripMenuItem.Click += new System.EventHandler(this.helpToolStripMenuItem_Click); // - // refreshListToolStripMenuItem + // fileNameDataGridViewTextBoxColumn // - this.refreshListToolStripMenuItem.Name = "refreshListToolStripMenuItem"; - this.refreshListToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.refreshListToolStripMenuItem.Text = "Refresh List"; - this.refreshListToolStripMenuItem.Click += new System.EventHandler(this.refreshListToolStripMenuItem_Click); + this.fileNameDataGridViewTextBoxColumn.DataPropertyName = "FileName"; + this.fileNameDataGridViewTextBoxColumn.HeaderText = "FileName"; + this.fileNameDataGridViewTextBoxColumn.Name = "fileNameDataGridViewTextBoxColumn"; + this.fileNameDataGridViewTextBoxColumn.ReadOnly = true; + this.fileNameDataGridViewTextBoxColumn.Width = 76; // - // openMediaFolderToolStripMenuItem + // descriptionDataGridViewTextBoxColumn // - this.openMediaFolderToolStripMenuItem.Name = "openMediaFolderToolStripMenuItem"; - this.openMediaFolderToolStripMenuItem.Size = new System.Drawing.Size(302, 22); - this.openMediaFolderToolStripMenuItem.Text = "Open Media Folder"; - this.openMediaFolderToolStripMenuItem.Click += new System.EventHandler(this.openMediaFolderToolStripMenuItem_Click); + this.descriptionDataGridViewTextBoxColumn.DataPropertyName = "Description"; + this.descriptionDataGridViewTextBoxColumn.HeaderText = "Description"; + this.descriptionDataGridViewTextBoxColumn.Name = "descriptionDataGridViewTextBoxColumn"; + this.descriptionDataGridViewTextBoxColumn.ReadOnly = true; + this.descriptionDataGridViewTextBoxColumn.Width = 85; + // + // manufacturerDataGridViewTextBoxColumn + // + this.manufacturerDataGridViewTextBoxColumn.DataPropertyName = "Manufacturer"; + this.manufacturerDataGridViewTextBoxColumn.HeaderText = "Manufacturer"; + this.manufacturerDataGridViewTextBoxColumn.Name = "manufacturerDataGridViewTextBoxColumn"; + this.manufacturerDataGridViewTextBoxColumn.ReadOnly = true; + this.manufacturerDataGridViewTextBoxColumn.Width = 95; + // + // yearDataGridViewTextBoxColumn + // + this.yearDataGridViewTextBoxColumn.DataPropertyName = "Year"; + this.yearDataGridViewTextBoxColumn.HeaderText = "Year"; + this.yearDataGridViewTextBoxColumn.Name = "yearDataGridViewTextBoxColumn"; + this.yearDataGridViewTextBoxColumn.ReadOnly = true; + this.yearDataGridViewTextBoxColumn.Width = 54; + // + // typeDataGridViewTextBoxColumn + // + this.typeDataGridViewTextBoxColumn.DataPropertyName = "Type"; + this.typeDataGridViewTextBoxColumn.HeaderText = "Type"; + this.typeDataGridViewTextBoxColumn.Name = "typeDataGridViewTextBoxColumn"; + this.typeDataGridViewTextBoxColumn.ReadOnly = true; + this.typeDataGridViewTextBoxColumn.Width = 56; + // + // enabledDataGridViewTextBoxColumn + // + this.enabledDataGridViewTextBoxColumn.DataPropertyName = "Enabled"; + this.enabledDataGridViewTextBoxColumn.HeaderText = "Enabled"; + this.enabledDataGridViewTextBoxColumn.Name = "enabledDataGridViewTextBoxColumn"; + this.enabledDataGridViewTextBoxColumn.ReadOnly = true; + this.enabledDataGridViewTextBoxColumn.Width = 71; + // + // alternateExeDataGridViewTextBoxColumn + // + this.alternateExeDataGridViewTextBoxColumn.DataPropertyName = "AlternateExe"; + this.alternateExeDataGridViewTextBoxColumn.HeaderText = "AlternateExe"; + this.alternateExeDataGridViewTextBoxColumn.Name = "alternateExeDataGridViewTextBoxColumn"; + this.alternateExeDataGridViewTextBoxColumn.ReadOnly = true; + this.alternateExeDataGridViewTextBoxColumn.Width = 92; + // + // hideDmdDataGridViewTextBoxColumn + // + this.hideDmdDataGridViewTextBoxColumn.DataPropertyName = "HideDmd"; + this.hideDmdDataGridViewTextBoxColumn.HeaderText = "HideDmd"; + this.hideDmdDataGridViewTextBoxColumn.Name = "hideDmdDataGridViewTextBoxColumn"; + this.hideDmdDataGridViewTextBoxColumn.ReadOnly = true; + this.hideDmdDataGridViewTextBoxColumn.Width = 76; + // + // hideTopperDataGridViewTextBoxColumn + // + this.hideTopperDataGridViewTextBoxColumn.DataPropertyName = "HideTopper"; + this.hideTopperDataGridViewTextBoxColumn.HeaderText = "HideTopper"; + this.hideTopperDataGridViewTextBoxColumn.Name = "hideTopperDataGridViewTextBoxColumn"; + this.hideTopperDataGridViewTextBoxColumn.ReadOnly = true; + this.hideTopperDataGridViewTextBoxColumn.Width = 88; + // + // hideBackglassDataGridViewTextBoxColumn + // + this.hideBackglassDataGridViewTextBoxColumn.DataPropertyName = "HideBackglass"; + this.hideBackglassDataGridViewTextBoxColumn.HeaderText = "HideBackglass"; + this.hideBackglassDataGridViewTextBoxColumn.Name = "hideBackglassDataGridViewTextBoxColumn"; + this.hideBackglassDataGridViewTextBoxColumn.ReadOnly = true; + this.hideBackglassDataGridViewTextBoxColumn.Width = 103; + // + // ratingDataGridViewTextBoxColumn + // + this.ratingDataGridViewTextBoxColumn.DataPropertyName = "Rating"; + this.ratingDataGridViewTextBoxColumn.HeaderText = "Rating"; + this.ratingDataGridViewTextBoxColumn.Name = "ratingDataGridViewTextBoxColumn"; + this.ratingDataGridViewTextBoxColumn.ReadOnly = true; + this.ratingDataGridViewTextBoxColumn.Width = 63; + // + // playersDataGridViewTextBoxColumn + // + this.playersDataGridViewTextBoxColumn.DataPropertyName = "Players"; + this.playersDataGridViewTextBoxColumn.HeaderText = "Players"; + this.playersDataGridViewTextBoxColumn.Name = "playersDataGridViewTextBoxColumn"; + this.playersDataGridViewTextBoxColumn.ReadOnly = true; + this.playersDataGridViewTextBoxColumn.Width = 66; + // + // commentDataGridViewTextBoxColumn + // + this.commentDataGridViewTextBoxColumn.DataPropertyName = "Comment"; + this.commentDataGridViewTextBoxColumn.HeaderText = "Comment"; + this.commentDataGridViewTextBoxColumn.Name = "commentDataGridViewTextBoxColumn"; + this.commentDataGridViewTextBoxColumn.ReadOnly = true; + this.commentDataGridViewTextBoxColumn.Width = 76; + // + // themeDataGridViewTextBoxColumn + // + this.themeDataGridViewTextBoxColumn.DataPropertyName = "Theme"; + this.themeDataGridViewTextBoxColumn.HeaderText = "Theme"; + this.themeDataGridViewTextBoxColumn.Name = "themeDataGridViewTextBoxColumn"; + this.themeDataGridViewTextBoxColumn.ReadOnly = true; + this.themeDataGridViewTextBoxColumn.Width = 65; + // + // authorDataGridViewTextBoxColumn + // + this.authorDataGridViewTextBoxColumn.DataPropertyName = "Author"; + this.authorDataGridViewTextBoxColumn.HeaderText = "Author"; + this.authorDataGridViewTextBoxColumn.Name = "authorDataGridViewTextBoxColumn"; + this.authorDataGridViewTextBoxColumn.ReadOnly = true; + this.authorDataGridViewTextBoxColumn.Width = 63; + // + // versionDataGridViewTextBoxColumn + // + this.versionDataGridViewTextBoxColumn.DataPropertyName = "Version"; + this.versionDataGridViewTextBoxColumn.HeaderText = "Version"; + this.versionDataGridViewTextBoxColumn.Name = "versionDataGridViewTextBoxColumn"; + this.versionDataGridViewTextBoxColumn.ReadOnly = true; + this.versionDataGridViewTextBoxColumn.Width = 67; + // + // iPDBNumberDataGridViewTextBoxColumn + // + this.iPDBNumberDataGridViewTextBoxColumn.DataPropertyName = "IPDBNumber"; + this.iPDBNumberDataGridViewTextBoxColumn.HeaderText = "IPDB #"; + this.iPDBNumberDataGridViewTextBoxColumn.Name = "iPDBNumberDataGridViewTextBoxColumn"; + this.iPDBNumberDataGridViewTextBoxColumn.ReadOnly = true; + this.iPDBNumberDataGridViewTextBoxColumn.Width = 67; + // + // dateAddedDataGridViewTextBoxColumn + // + this.dateAddedDataGridViewTextBoxColumn.DataPropertyName = "DateAdded"; + this.dateAddedDataGridViewTextBoxColumn.HeaderText = "Date Added"; + this.dateAddedDataGridViewTextBoxColumn.Name = "dateAddedDataGridViewTextBoxColumn"; + this.dateAddedDataGridViewTextBoxColumn.ReadOnly = true; + this.dateAddedDataGridViewTextBoxColumn.Width = 89; + // + // dateModifiedDataGridViewTextBoxColumn + // + this.dateModifiedDataGridViewTextBoxColumn.DataPropertyName = "DateModified"; + this.dateModifiedDataGridViewTextBoxColumn.HeaderText = "Date Modified"; + this.dateModifiedDataGridViewTextBoxColumn.Name = "dateModifiedDataGridViewTextBoxColumn"; + this.dateModifiedDataGridViewTextBoxColumn.ReadOnly = true; + this.dateModifiedDataGridViewTextBoxColumn.Width = 98; + // + // hasUpdatesAvailableDataGridViewCheckBoxColumn + // + this.hasUpdatesAvailableDataGridViewCheckBoxColumn.DataPropertyName = "HasUpdatesAvailable"; + this.hasUpdatesAvailableDataGridViewCheckBoxColumn.HeaderText = "HasUpdatesAvailable"; + this.hasUpdatesAvailableDataGridViewCheckBoxColumn.Name = "hasUpdatesAvailableDataGridViewCheckBoxColumn"; + this.hasUpdatesAvailableDataGridViewCheckBoxColumn.ReadOnly = true; + this.hasUpdatesAvailableDataGridViewCheckBoxColumn.Width = 115; + // + // romDataGridViewTextBoxColumn + // + this.romDataGridViewTextBoxColumn.DataPropertyName = "Rom"; + this.romDataGridViewTextBoxColumn.HeaderText = "Rom"; + this.romDataGridViewTextBoxColumn.Name = "romDataGridViewTextBoxColumn"; + this.romDataGridViewTextBoxColumn.ReadOnly = true; + this.romDataGridViewTextBoxColumn.Width = 54; + // + // backglassStatusDataGridViewTextBoxColumn + // + this.backglassStatusDataGridViewTextBoxColumn.DataPropertyName = "BackglassStatus"; + this.backglassStatusDataGridViewTextBoxColumn.HeaderText = "Backglass Media"; + this.backglassStatusDataGridViewTextBoxColumn.Name = "backglassStatusDataGridViewTextBoxColumn"; + this.backglassStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.backglassStatusDataGridViewTextBoxColumn.Width = 113; + // + // dMDStatusDataGridViewTextBoxColumn + // + this.dMDStatusDataGridViewTextBoxColumn.DataPropertyName = "DMDStatus"; + this.dMDStatusDataGridViewTextBoxColumn.HeaderText = "DMD Media"; + this.dMDStatusDataGridViewTextBoxColumn.Name = "dMDStatusDataGridViewTextBoxColumn"; + this.dMDStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.dMDStatusDataGridViewTextBoxColumn.Width = 89; + // + // realDMDColorStatusDataGridViewTextBoxColumn + // + this.realDMDColorStatusDataGridViewTextBoxColumn.DataPropertyName = "RealDMDColorStatus"; + this.realDMDColorStatusDataGridViewTextBoxColumn.HeaderText = "Read DMD Color Media"; + this.realDMDColorStatusDataGridViewTextBoxColumn.Name = "realDMDColorStatusDataGridViewTextBoxColumn"; + this.realDMDColorStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.realDMDColorStatusDataGridViewTextBoxColumn.Width = 145; + // + // readDMDStatusDataGridViewTextBoxColumn + // + this.readDMDStatusDataGridViewTextBoxColumn.DataPropertyName = "ReadDMDStatus"; + this.readDMDStatusDataGridViewTextBoxColumn.HeaderText = "Read DMD Media"; + this.readDMDStatusDataGridViewTextBoxColumn.Name = "readDMDStatusDataGridViewTextBoxColumn"; + this.readDMDStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.readDMDStatusDataGridViewTextBoxColumn.Width = 118; + // + // tableStatusDataGridViewTextBoxColumn + // + this.tableStatusDataGridViewTextBoxColumn.DataPropertyName = "TableStatus"; + this.tableStatusDataGridViewTextBoxColumn.HeaderText = "Table Media"; + this.tableStatusDataGridViewTextBoxColumn.Name = "tableStatusDataGridViewTextBoxColumn"; + this.tableStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.tableStatusDataGridViewTextBoxColumn.Width = 91; + // + // tableDesktopStatusDataGridViewTextBoxColumn + // + this.tableDesktopStatusDataGridViewTextBoxColumn.DataPropertyName = "TableDesktopStatus"; + this.tableDesktopStatusDataGridViewTextBoxColumn.HeaderText = "Table Desktop Media"; + this.tableDesktopStatusDataGridViewTextBoxColumn.Name = "tableDesktopStatusDataGridViewTextBoxColumn"; + this.tableDesktopStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.tableDesktopStatusDataGridViewTextBoxColumn.Width = 134; + // + // topperStatusDataGridViewTextBoxColumn + // + this.topperStatusDataGridViewTextBoxColumn.DataPropertyName = "TopperStatus"; + this.topperStatusDataGridViewTextBoxColumn.HeaderText = "Topper Media"; + this.topperStatusDataGridViewTextBoxColumn.Name = "topperStatusDataGridViewTextBoxColumn"; + this.topperStatusDataGridViewTextBoxColumn.ReadOnly = true; + this.topperStatusDataGridViewTextBoxColumn.Width = 98; + // + // ManufacturerMediaStatus + // + this.ManufacturerMediaStatus.DataPropertyName = "ManufacturerMediaStatus"; + this.ManufacturerMediaStatus.HeaderText = "Manufacturer Media"; + this.ManufacturerMediaStatus.Name = "ManufacturerMediaStatus"; + this.ManufacturerMediaStatus.ReadOnly = true; + this.ManufacturerMediaStatus.Width = 127; + // + // hasWheelImageDataGridViewCheckBoxColumn + // + this.hasWheelImageDataGridViewCheckBoxColumn.DataPropertyName = "HasWheelImage"; + this.hasWheelImageDataGridViewCheckBoxColumn.HeaderText = "Wheel Image"; + this.hasWheelImageDataGridViewCheckBoxColumn.Name = "hasWheelImageDataGridViewCheckBoxColumn"; + this.hasWheelImageDataGridViewCheckBoxColumn.ReadOnly = true; + this.hasWheelImageDataGridViewCheckBoxColumn.Width = 76; + // + // frontEndGameBindingSource + // + this.frontEndGameBindingSource.DataSource = typeof(PinCab.Utils.ViewModels.FrontEndGameViewModel); + // + // statusStripBottom + // + this.statusStripBottom.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripStatusLabel, + this.toolStripStatusLabelSpacer, + this.toolStripProgressBar}); + this.statusStripBottom.Location = new System.Drawing.Point(0, 531); + this.statusStripBottom.Name = "statusStripBottom"; + this.statusStripBottom.Size = new System.Drawing.Size(955, 22); + this.statusStripBottom.TabIndex = 10; + this.statusStripBottom.Text = "statusStrip1"; + // + // toolStripStatusLabel + // + this.toolStripStatusLabel.Name = "toolStripStatusLabel"; + this.toolStripStatusLabel.Size = new System.Drawing.Size(67, 17); + this.toolStripStatusLabel.Text = "Status Here"; + // + // toolStripStatusLabelSpacer + // + this.toolStripStatusLabelSpacer.Name = "toolStripStatusLabelSpacer"; + this.toolStripStatusLabelSpacer.Size = new System.Drawing.Size(740, 17); + this.toolStripStatusLabelSpacer.Spring = true; + // + // toolStripProgressBar + // + this.toolStripProgressBar.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripProgressBar.Name = "toolStripProgressBar"; + this.toolStripProgressBar.Size = new System.Drawing.Size(100, 16); + // + // tableAuditToolStripMenuItem + // + this.tableAuditToolStripMenuItem.Name = "tableAuditToolStripMenuItem"; + this.tableAuditToolStripMenuItem.Size = new System.Drawing.Size(302, 22); + this.tableAuditToolStripMenuItem.Text = "Table Audit"; // // GameManagerForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(955, 553); + this.Controls.Add(this.statusStripBottom); this.Controls.Add(this.splitContainer1); - this.Controls.Add(this.progressBar); this.Controls.Add(this.panel1); this.Controls.Add(this.menuStrip1); this.Name = "GameManagerForm"; @@ -752,11 +790,13 @@ private void InitializeComponent() this.splitContainer1.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.dataGridViewGameList)).EndInit(); this.contextMenuStripGridActions.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.frontEndGameBindingSource)).EndInit(); this.panel1.ResumeLayout(false); this.panel1.PerformLayout(); this.menuStrip1.ResumeLayout(false); this.menuStrip1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.frontEndGameBindingSource)).EndInit(); + this.statusStripBottom.ResumeLayout(false); + this.statusStripBottom.PerformLayout(); this.ResumeLayout(false); this.PerformLayout(); @@ -772,7 +812,6 @@ private void InitializeComponent() private System.Windows.Forms.ToolStripMenuItem addGameToolStripMenuItem; private System.Windows.Forms.BindingSource frontEndGameBindingSource; private System.Windows.Forms.TextBox txtLog; - private System.Windows.Forms.ProgressBar progressBar; private System.ComponentModel.BackgroundWorker backgroundWorkerProgressBar; private System.Windows.Forms.Panel panel1; private System.Windows.Forms.Label lblInfo; @@ -834,5 +873,10 @@ private void InitializeComponent() private System.Windows.Forms.ToolStripMenuItem massRecordToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem refreshListToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem openMediaFolderToolStripMenuItem; + private System.Windows.Forms.StatusStrip statusStripBottom; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabelSpacer; + private System.Windows.Forms.ToolStripProgressBar toolStripProgressBar; + private System.Windows.Forms.ToolStripMenuItem tableAuditToolStripMenuItem; } } \ No newline at end of file diff --git a/PinCab.Configurator/GameManagerForm.cs b/PinCab.Configurator/GameManagerForm.cs index 2d31913..a409660 100644 --- a/PinCab.Configurator/GameManagerForm.cs +++ b/PinCab.Configurator/GameManagerForm.cs @@ -3,6 +3,7 @@ using PinCab.Utils.Models.PinballX; using PinCab.Utils.Utils; using PinCab.Utils.ViewModels; +using PinCab.Utils.WinForms; using Serilog; using System; using System.Collections.Generic; @@ -63,7 +64,7 @@ private void LoadDefaultsFromSavedSettings() { foreach (var itm in cmbDatabase.Items) { - if (itm.ToString() == _manager.Settings.LastSelectedDatabaseFile) + if (((DatabaseFileViewModel)itm).DatabaseFilePathShort == _manager.Settings.LastSelectedDatabaseFile) cmbDatabase.SelectedItem = itm; } } @@ -93,7 +94,7 @@ private void cmbFrontEnd_SelectedIndexChanged(object sender, EventArgs e) if (frontEnd.System == FrontEndSystem.PinballX) { foreach (var system in _manager.PinballXSystems) //Get the short name of the database, not the full path - cmbDatabase.Items.AddRange(system.GetDatabaseFilesWithoutDatabasePath().ToArray()); + cmbDatabase.Items.AddRange(system.GetDatabaseFileViewModel().ToArray()); txtLog.Text = string.Join("\r\n", _manager.GetFrontEndWarnings(frontEnd)); } else @@ -138,20 +139,51 @@ private void RefreshGameGrid() if (cmbDatabase.SelectedIndex >= 0) { var frontEnd = cmbFrontEnd.SelectedItem as FrontEnd; - _fullGameListCache = _manager.GetGamesForFrontEndAndDatabase(frontEnd, cmbDatabase.SelectedItem.ToString()); - frontEndGameBindingSource.DataSource = _fullGameListCache.ToSortableBindingList(); + var databaseItem = cmbDatabase.SelectedItem as DatabaseFileViewModel; + _fullGameListCache = _manager.GetGamesForFrontEndAndDatabase(frontEnd, databaseItem.DatabaseFilePathShort); + var list = GetSearchCriteria(); + frontEndGameBindingSource.DataSource = list.ToSortableBindingList(); if (frontEnd.System == FrontEndSystem.PinballX) { - var system = _manager.PinballXSystems.FirstOrDefault(p => p.DatabaseFiles.Any(c => c.Contains(cmbDatabase.SelectedItem.ToString()))); + var system = _manager.PinballXSystems.FirstOrDefault(p => p.DatabaseFiles.Any(c => c.Contains(databaseItem.DatabaseFilePathShort))); if (system.Enabled) lblDatabaseStatus.Text = "Enabled"; else lblDatabaseStatus.Text = "Disabled"; } + UpdateToolstripStatus(); } } + private List GetSearchCriteria() + { + string searchText = txtSearch.Text.ToLower(); + if (!string.IsNullOrEmpty(searchText)) + { + return _fullGameListCache.Where(p => + (!string.IsNullOrEmpty(p.Rom) && p.Rom.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Year) && p.Year.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.FileName) && p.FileName.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Description) && p.Description.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Comment) && p.Comment.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Author) && p.Author.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.AlternateExe) && p.AlternateExe.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Manufacturer) && p.Manufacturer.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Theme) && p.Theme.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Type) && p.Type.ToLower().Contains(searchText)) || + (!string.IsNullOrEmpty(p.Version) && p.Version.ToLower().Contains(searchText)) + ).ToList(); + } + return _fullGameListCache; + } + + private void UpdateToolstripStatus() + { + var entriesInGrid = frontEndGameBindingSource.DataSource as SortableBindingList; + toolStripStatusLabel.Text = $"Total Database Entries: {_fullGameListCache.Count} Filtered: {entriesInGrid.Count}"; + } + private void AddOrUpdateLog(string text) { if (string.IsNullOrEmpty(txtLog.Text)) @@ -187,27 +219,15 @@ private void GameManagerForm_FormClosing(object sender, FormClosingEventArgs e) } if (cmbDatabase.SelectedIndex >= 0) { - _manager.Settings.LastSelectedDatabaseFile = cmbDatabase.SelectedItem.ToString(); + var databaseItem = cmbDatabase.SelectedItem as DatabaseFileViewModel; + _manager.Settings.LastSelectedDatabaseFile = databaseItem.DatabaseFilePathShort; } _manager.SaveSettings(_manager.Settings); } private void txtSearch_TextChanged(object sender, EventArgs e) { - string searchText = txtSearch.Text.ToLower(); - dataGridViewGameList.DataSource = _fullGameListCache.Where(p => - (!string.IsNullOrEmpty(p.Rom) && p.Rom.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Year) && p.Year.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.FileName) && p.FileName.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Description) && p.Description.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Comment) && p.Comment.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Author) && p.Author.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.AlternateExe) && p.AlternateExe.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Manufacturer) && p.Manufacturer.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Theme) && p.Theme.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Type) && p.Type.ToLower().Contains(searchText)) || - (!string.IsNullOrEmpty(p.Version) && p.Version.ToLower().Contains(searchText)) - ).ToSortableBindingList(); + RefreshGameGrid(); } private void helpToolStripMenuItem_Click(object sender, EventArgs e) @@ -321,5 +341,25 @@ private void openMediaFolderToolStripMenuItem_Click(object sender, EventArgs e) Process.Start(_manager.PinballXSystems[0].MediaPath); } } + + private void addGameToolStripMenuItem_Click(object sender, EventArgs e) + { + var newGame = new FrontEndGameViewModel(); + var frontEnd = cmbFrontEnd.SelectedItem as FrontEnd; + var databaseFile = cmbDatabase.SelectedItem as DatabaseFileViewModel; + newGame.FrontEnd = frontEnd; + newGame.DatabaseFile = databaseFile.DatabaseFile; + var mediaAuditForm = new AddEditGameForm(newGame, newGame.DatabaseFile, _manager, _ipdbForm); + var result = mediaAuditForm.ShowDialog(this); + if (result == DialogResult.OK) + { + RefreshGameGrid(); + } + } + + private void backgroundWorkerProgressBar_ProgressChanged(object sender, ProgressChangedEventArgs e) + { + toolStripProgressBar.Value = e.ProgressPercentage; + } } } diff --git a/PinCab.Configurator/GameManagerForm.resx b/PinCab.Configurator/GameManagerForm.resx index e6ef32c..3d8dc3f 100644 --- a/PinCab.Configurator/GameManagerForm.resx +++ b/PinCab.Configurator/GameManagerForm.resx @@ -144,4 +144,7 @@ 426, 23 + + 774, 19 + \ No newline at end of file diff --git a/PinCab.Configurator/IpdbBrowserForm.Designer.cs b/PinCab.Configurator/IpdbBrowserForm.Designer.cs index 9f6c730..f5a6fe9 100644 --- a/PinCab.Configurator/IpdbBrowserForm.Designer.cs +++ b/PinCab.Configurator/IpdbBrowserForm.Designer.cs @@ -30,9 +30,10 @@ protected override void Dispose(bool disposing) private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); + System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); this.ipdbDatabaseSettingBindingSource = new System.Windows.Forms.BindingSource(this.components); this.panelFilterCriteria = new System.Windows.Forms.Panel(); + this.chkOverrideDisplayName = new System.Windows.Forms.CheckBox(); this.lblSearch = new System.Windows.Forms.Label(); this.txtSearch = new System.Windows.Forms.TextBox(); this.splitContainerTopAndBottomGrids = new System.Windows.Forms.SplitContainer(); @@ -46,11 +47,12 @@ private void InitializeComponent() this.DatabaseTypeString = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.splitContainer1 = new System.Windows.Forms.SplitContainer(); this.dataGridViewIpdb = new System.Windows.Forms.DataGridView(); - this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); - this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.btnCancel = new System.Windows.Forms.Button(); this.btnSelect = new System.Windows.Forms.Button(); - this.chkOverrideDisplayName = new System.Windows.Forms.CheckBox(); + this.dataGridViewTextBoxColumn4 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.Manufacturer = new System.Windows.Forms.DataGridViewTextBoxColumn(); + this.DateOfManufacture = new System.Windows.Forms.DataGridViewTextBoxColumn(); ((System.ComponentModel.ISupportInitialize)(this.ipdbDatabaseSettingBindingSource)).BeginInit(); this.panelFilterCriteria.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainerTopAndBottomGrids)).BeginInit(); @@ -77,6 +79,16 @@ private void InitializeComponent() this.panelFilterCriteria.Size = new System.Drawing.Size(610, 32); this.panelFilterCriteria.TabIndex = 8; // + // chkOverrideDisplayName + // + this.chkOverrideDisplayName.AutoSize = true; + this.chkOverrideDisplayName.Location = new System.Drawing.Point(262, 5); + this.chkOverrideDisplayName.Name = "chkOverrideDisplayName"; + this.chkOverrideDisplayName.Size = new System.Drawing.Size(134, 17); + this.chkOverrideDisplayName.TabIndex = 2; + this.chkOverrideDisplayName.Text = "Override Display Name"; + this.chkOverrideDisplayName.UseVisualStyleBackColor = true; + // // lblSearch // this.lblSearch.AutoSize = true; @@ -116,8 +128,8 @@ private void InitializeComponent() // DatabaseTagsString // this.DatabaseTagsString.DataPropertyName = "DatabaseTagsString"; - dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True; - this.DatabaseTagsString.DefaultCellStyle = dataGridViewCellStyle3; + dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True; + this.DatabaseTagsString.DefaultCellStyle = dataGridViewCellStyle1; this.DatabaseTagsString.HeaderText = "Tags"; this.DatabaseTagsString.Name = "DatabaseTagsString"; this.DatabaseTagsString.ReadOnly = true; @@ -200,7 +212,9 @@ private void InitializeComponent() this.dataGridViewIpdb.ClipboardCopyMode = System.Windows.Forms.DataGridViewClipboardCopyMode.EnableWithoutHeaderText; this.dataGridViewIpdb.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.dataGridViewTextBoxColumn4, - this.dataGridViewTextBoxColumn1}); + this.dataGridViewTextBoxColumn1, + this.Manufacturer, + this.DateOfManufacture}); this.dataGridViewIpdb.DataSource = this.ipdbDatabaseSettingBindingSource; this.dataGridViewIpdb.Dock = System.Windows.Forms.DockStyle.Fill; this.dataGridViewIpdb.Location = new System.Drawing.Point(0, 0); @@ -211,23 +225,6 @@ private void InitializeComponent() this.dataGridViewIpdb.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridViewIpdb_CellDoubleClick); this.dataGridViewIpdb.DataBindingComplete += new System.Windows.Forms.DataGridViewBindingCompleteEventHandler(this.dataGridViewIpdb_DataBindingComplete); // - // dataGridViewTextBoxColumn4 - // - this.dataGridViewTextBoxColumn4.DataPropertyName = "IpdbId"; - this.dataGridViewTextBoxColumn4.HeaderText = "Ipdb"; - this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; - this.dataGridViewTextBoxColumn4.ReadOnly = true; - this.dataGridViewTextBoxColumn4.Width = 53; - // - // dataGridViewTextBoxColumn1 - // - this.dataGridViewTextBoxColumn1.DataPropertyName = "Title"; - this.dataGridViewTextBoxColumn1.HeaderText = "Title"; - this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; - this.dataGridViewTextBoxColumn1.ReadOnly = true; - this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.True; - this.dataGridViewTextBoxColumn1.Width = 52; - // // btnCancel // this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel; @@ -250,15 +247,38 @@ private void InitializeComponent() this.btnSelect.UseVisualStyleBackColor = true; this.btnSelect.Click += new System.EventHandler(this.btnSelect_Click); // - // chkOverrideDisplayName + // dataGridViewTextBoxColumn4 // - this.chkOverrideDisplayName.AutoSize = true; - this.chkOverrideDisplayName.Location = new System.Drawing.Point(262, 5); - this.chkOverrideDisplayName.Name = "chkOverrideDisplayName"; - this.chkOverrideDisplayName.Size = new System.Drawing.Size(134, 17); - this.chkOverrideDisplayName.TabIndex = 2; - this.chkOverrideDisplayName.Text = "Override Display Name"; - this.chkOverrideDisplayName.UseVisualStyleBackColor = true; + this.dataGridViewTextBoxColumn4.DataPropertyName = "IpdbId"; + this.dataGridViewTextBoxColumn4.HeaderText = "Ipdb"; + this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; + this.dataGridViewTextBoxColumn4.ReadOnly = true; + this.dataGridViewTextBoxColumn4.Width = 53; + // + // dataGridViewTextBoxColumn1 + // + this.dataGridViewTextBoxColumn1.DataPropertyName = "Title"; + this.dataGridViewTextBoxColumn1.HeaderText = "Title"; + this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; + this.dataGridViewTextBoxColumn1.ReadOnly = true; + this.dataGridViewTextBoxColumn1.Resizable = System.Windows.Forms.DataGridViewTriState.True; + this.dataGridViewTextBoxColumn1.Width = 52; + // + // Manufacturer + // + this.Manufacturer.DataPropertyName = "Manufacturer"; + this.Manufacturer.HeaderText = "Manufacturer"; + this.Manufacturer.Name = "Manufacturer"; + this.Manufacturer.ReadOnly = true; + this.Manufacturer.Width = 95; + // + // DateOfManufacture + // + this.DateOfManufacture.DataPropertyName = "DateOfManufacture"; + this.DateOfManufacture.HeaderText = "Date"; + this.DateOfManufacture.Name = "DateOfManufacture"; + this.DateOfManufacture.ReadOnly = true; + this.DateOfManufacture.Width = 55; // // IpdbBrowserForm // @@ -300,10 +320,12 @@ private void InitializeComponent() private System.Windows.Forms.DataGridViewTextBoxColumn DatabaseTypeString; private System.Windows.Forms.SplitContainer splitContainer1; private System.Windows.Forms.DataGridView dataGridViewIpdb; - private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4; - private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; private System.Windows.Forms.Button btnCancel; private System.Windows.Forms.Button btnSelect; public System.Windows.Forms.CheckBox chkOverrideDisplayName; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn4; + private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1; + private System.Windows.Forms.DataGridViewTextBoxColumn Manufacturer; + private System.Windows.Forms.DataGridViewTextBoxColumn DateOfManufacture; } } \ No newline at end of file diff --git a/PinCab.Configurator/IpdbBrowserForm.resx b/PinCab.Configurator/IpdbBrowserForm.resx index a05f6f2..62afd6b 100644 --- a/PinCab.Configurator/IpdbBrowserForm.resx +++ b/PinCab.Configurator/IpdbBrowserForm.resx @@ -144,7 +144,10 @@ True - + + True + + True diff --git a/PinCab.Utils/Models/PinballX/PinballXSystem.cs b/PinCab.Utils/Models/PinballX/PinballXSystem.cs index ea2d595..46904ea 100644 --- a/PinCab.Utils/Models/PinballX/PinballXSystem.cs +++ b/PinCab.Utils/Models/PinballX/PinballXSystem.cs @@ -1,5 +1,6 @@ using IniParser.Model; using PinCab.Utils.Utils.PinballX; +using PinCab.Utils.ViewModels; using Serilog; using System; using System.Collections.Generic; @@ -64,11 +65,13 @@ public PinballXSystem(string pinballXIniFilePath, string name, KeyDataCollection SetByData(data, platform); } - public List GetDatabaseFilesWithoutDatabasePath() + public List GetDatabaseFileViewModel() { - var list = new List(); + var list = new List(); foreach (var database in DatabaseFiles) - list.Add(database.Replace(DatabasePath.Replace(Name, string.Empty), string.Empty)); + { + list.Add(new DatabaseFileViewModel() { DatabaseFile = database, DatabaseFilePathShort = database.Replace(DatabasePath.Replace(Name, string.Empty), string.Empty) }); + } return list; } diff --git a/PinCab.Utils/PinCab.Utils.csproj b/PinCab.Utils/PinCab.Utils.csproj index 23b9e76..93897e4 100644 --- a/PinCab.Utils/PinCab.Utils.csproj +++ b/PinCab.Utils/PinCab.Utils.csproj @@ -155,6 +155,7 @@ + diff --git a/PinCab.Utils/ViewModels/DatabaseFileViewModel.cs b/PinCab.Utils/ViewModels/DatabaseFileViewModel.cs new file mode 100644 index 0000000..5e84c2a --- /dev/null +++ b/PinCab.Utils/ViewModels/DatabaseFileViewModel.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace PinCab.Utils.ViewModels +{ + public class DatabaseFileViewModel + { + public DatabaseFileViewModel() { } + + public string DatabaseFile { get; set; } + public string DatabaseFilePathShort { get; set; } + } +} diff --git a/readme.md b/readme.md index cfc6d77..db1b012 100644 --- a/readme.md +++ b/readme.md @@ -93,17 +93,6 @@ Logging information is in the Log.txt file in the application root folder. #### Database Browser ![Database Browser](https://github.com/xantari/PinCabScreenConfigurator/raw/master/Screenshots/DatabaseBrowserScreenshot.png "Database Browser") -# TODO -1. Add command line switch to actually run the FFMPeg commands to capture video and move the resulting videos to the correct location (depending on front end) -2. Create help HTML pages and hookup to the program -3. Add a feature that will compare your table list in PinballY / PinballX / Pinup Popper and show you missing and extra media (such as old outdated recordings from renamed tables, etc that don't match the tablename exactly) -for things like Wheels / Backglass / Playfield / Launch Audio / Toppers / etc. - a. Add function to rename a table, and have it rename all corresponding files (All media, Backglass directB2s file) so that when you name your tables with the version # of the table all the media comes along with it. - b. Option to right click a missing media cell and it will automatically popup a browser to search for that media - c. Hook into PuPmedia.php on VPinball.com to fetch media as well - d. Hook into PinballX's (GameEx) media library (if you have defined your GameEx credentials) - e. Maintain an install time of the table in a local database (extra fields in PinballY/PinballX XML, and already a field in PinUpPoppers Games table), so you can compare the last updated date/time stamp in the pinball game database to see if updates to a table are available. - # Thank you! Thanks go to [Soroush Falahati](https://github.com/falahati) for his excellent [WindowsDisplayApi](https://github.com/falahati/WindowsDisplayAPI) and [EDIDParser](https://github.com/falahati/EDIDParser) libraries!