From c2484902304acc1b108faf7f295a481df45cbaa3 Mon Sep 17 00:00:00 2001 From: chudov Date: Mon, 8 Dec 2008 11:18:15 +0000 Subject: [PATCH] label edit --- CUERipper/frmCUERipper.Designer.cs | 16 ++++++++----- CUERipper/frmCUERipper.cs | 38 ++++++++++++++++++++++++++---- CUERipper/frmCUERipper.resx | 28 +++++++++++++--------- 3 files changed, 61 insertions(+), 21 deletions(-) diff --git a/CUERipper/frmCUERipper.Designer.cs b/CUERipper/frmCUERipper.Designer.cs index bb139f9..f1bc0cf 100644 --- a/CUERipper/frmCUERipper.Designer.cs +++ b/CUERipper/frmCUERipper.Designer.cs @@ -36,8 +36,8 @@ namespace CUERipper this.toolStripProgressBar1 = new System.Windows.Forms.ToolStripProgressBar(); this.toolStripProgressBar2 = new System.Windows.Forms.ToolStripProgressBar(); this.listTracks = new System.Windows.Forms.ListView(); - this.TrackNo = new System.Windows.Forms.ColumnHeader(); this.Title = new System.Windows.Forms.ColumnHeader(); + this.TrackNo = new System.Windows.Forms.ColumnHeader(); this.Start = new System.Windows.Forms.ColumnHeader(); this.Length = new System.Windows.Forms.ColumnHeader(); this.buttonGo = new System.Windows.Forms.Button(); @@ -96,24 +96,28 @@ namespace CUERipper // resources.ApplyResources(this.listTracks, "listTracks"); this.listTracks.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { - this.TrackNo, this.Title, + this.TrackNo, this.Start, this.Length}); this.listTracks.FullRowSelect = true; this.listTracks.GridLines = true; + this.listTracks.LabelEdit = true; this.listTracks.Name = "listTracks"; this.listTracks.UseCompatibleStateImageBehavior = false; this.listTracks.View = System.Windows.Forms.View.Details; - // - // TrackNo - // - resources.ApplyResources(this.TrackNo, "TrackNo"); + this.listTracks.DoubleClick += new System.EventHandler(this.listTracks_DoubleClick); + this.listTracks.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.listTracks_PreviewKeyDown); + this.listTracks.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listTracks_KeyDown); // // Title // resources.ApplyResources(this.Title, "Title"); // + // TrackNo + // + resources.ApplyResources(this.TrackNo, "TrackNo"); + // // Start // resources.ApplyResources(this.Start, "Start"); diff --git a/CUERipper/frmCUERipper.cs b/CUERipper/frmCUERipper.cs index ca0edea..1e57be6 100644 --- a/CUERipper/frmCUERipper.cs +++ b/CUERipper/frmCUERipper.cs @@ -124,7 +124,10 @@ namespace CUERipper }); } _workThread = null; - SetupControls(); + this.BeginInvoke((MethodInvoker)delegate() + { + SetupControls(); + }); } private void buttonGo_Click(object sender, EventArgs e) @@ -182,14 +185,14 @@ namespace CUERipper if (comboRelease.SelectedItem == null || comboRelease.SelectedItem is string) { for (int i = 1; i <= _reader.TOC.AudioTracks; i++) - listTracks.Items.Add(new ListViewItem(new string[] { _reader.TOC[i].Number.ToString(), "Track " + _reader.TOC[i].Number.ToString(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF })); + listTracks.Items.Add(new ListViewItem(new string[] { "Track " + _reader.TOC[i].Number.ToString(), _reader.TOC[i].Number.ToString(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF })); return; } Release release = (Release) comboRelease.SelectedItem; for (int i = 1; i <= _reader.TOC.AudioTracks; i++) { Track track = release.GetTracks()[(int)_reader.TOC[i].Number - 1]; - listTracks.Items.Add(new ListViewItem(new string[] { _reader.TOC[i].Number.ToString(), track.GetTitle(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF })); + listTracks.Items.Add(new ListViewItem(new string[] { track.GetTitle(), _reader.TOC[i].Number.ToString(), _reader.TOC[i].StartMSF, _reader.TOC[i].LengthMSF })); } } @@ -246,9 +249,9 @@ namespace CUERipper comboRelease.Items.Add("MusicBrainz: not found"); }); _workThread = null; - SetupControls(); this.BeginInvoke((MethodInvoker)delegate() { + SetupControls(); comboRelease.SelectedIndex = 0; }); } @@ -272,6 +275,33 @@ namespace CUERipper SetupControls(); _workThread.Start(_reader); } + + private void listTracks_DoubleClick(object sender, EventArgs e) + { + listTracks.FocusedItem.BeginEdit(); + } + + private void listTracks_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.F2) + { + listTracks.FocusedItem.BeginEdit(); + } + } + + private void listTracks_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) + { + if (e.KeyCode == Keys.Enter) + { + if (listTracks.FocusedItem.Index + 1 < listTracks.Items.Count)// && e.Label != null) + { + listTracks.FocusedItem.Selected = false; + listTracks.FocusedItem = listTracks.Items[listTracks.FocusedItem.Index + 1]; + listTracks.FocusedItem.Selected = true; + listTracks.FocusedItem.BeginEdit(); + } + } + } } public class StopException : Exception diff --git a/CUERipper/frmCUERipper.resx b/CUERipper/frmCUERipper.resx index 3cf4b51..c675e9c 100644 --- a/CUERipper/frmCUERipper.resx +++ b/CUERipper/frmCUERipper.resx @@ -192,11 +192,8 @@ Top, Left, Right - - # - - - 30 + + 1 Title @@ -204,6 +201,15 @@ 307 + + 0 + + + # + + + 30 + Start @@ -489,18 +495,18 @@ System.Windows.Forms.ToolStripProgressBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - TrackNo - - - System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - Title System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + TrackNo + + + System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + Start