OSDN Git Service

WinGui:
authorsr55 <sr55@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Fri, 11 Jun 2010 21:08:44 +0000 (21:08 +0000)
committersr55 <sr55@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Fri, 11 Jun 2010 21:08:44 +0000 (21:08 +0000)
- Fixes some issues with status labels not updating correctly on the queue window.
- Now includes encode status on the queue window.
- Minor UI tweaks.

git-svn-id: svn://localhost/HandBrake/trunk@3377 b64f7644-9d1e-0410-96f1-a4d463321fa5

win/C#/HandBrake.ApplicationServices/EncodeProgressEventArgs.cs
win/C#/HandBrake.ApplicationServices/Services/Encode.cs
win/C#/frmQueue.Designer.cs
win/C#/frmQueue.cs

index 8939e11..f51b3ab 100644 (file)
@@ -36,5 +36,10 @@ namespace HandBrake.ApplicationServices
         /// Gets or sets Task.\r
         /// </summary>\r
         public int Task { get; set; }\r
+\r
+        /// <summary>\r
+        /// Gets or sets TaskCount.\r
+        /// </summary>\r
+        public int TaskCount { get; set; }\r
     }\r
 }\r
index d4e971e..cb6dbee 100644 (file)
@@ -595,7 +595,8 @@ namespace HandBrake.ApplicationServices.Services
                     CurrentFrameRate = currentFps,\r
                     EstimatedTimeLeft = timeRemaining,\r
                     PercentComplete = percentComplete,\r
-                    Task = currentTask\r
+                    Task = currentTask,\r
+                    TaskCount = taskCount\r
                 };\r
 \r
             if (this.EncodeStatusChanged != null)\r
index e6f0a2e..a8997e1 100644 (file)
@@ -35,15 +35,7 @@ namespace Handbrake
         {\r
             this.components = new System.ComponentModel.Container();\r
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmQueue));\r
-            this.btn_down = new System.Windows.Forms.Button();\r
-            this.btn_up = new System.Windows.Forms.Button();\r
-            this.btn_delete = new System.Windows.Forms.Button();\r
             this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);\r
-            this.label4 = new System.Windows.Forms.Label();\r
-            this.lbl_chapt = new System.Windows.Forms.Label();\r
-            this.lbl_title = new System.Windows.Forms.Label();\r
-            this.lbl_aEnc = new System.Windows.Forms.Label();\r
-            this.lbl_vEnc = new System.Windows.Forms.Label();\r
             this.lbl_dest = new System.Windows.Forms.Label();\r
             this.lbl_source = new System.Windows.Forms.Label();\r
             this.label1 = new System.Windows.Forms.Label();\r
@@ -60,12 +52,12 @@ namespace Handbrake
             this.mnu_readd = new System.Windows.Forms.ToolStripMenuItem();\r
             this.SaveFile = new System.Windows.Forms.SaveFileDialog();\r
             this.list_queue = new System.Windows.Forms.ListView();\r
-            this.Title = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
-            this.Chapters = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
-            this.Source = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
-            this.Destination = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
-            this.EncoderVideo = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
-            this.Audio = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));\r
+            this.Title = new System.Windows.Forms.ColumnHeader();\r
+            this.Chapters = new System.Windows.Forms.ColumnHeader();\r
+            this.Source = new System.Windows.Forms.ColumnHeader();\r
+            this.Destination = new System.Windows.Forms.ColumnHeader();\r
+            this.EncoderVideo = new System.Windows.Forms.ColumnHeader();\r
+            this.Audio = new System.Windows.Forms.ColumnHeader();\r
             this.mnu_queue = new System.Windows.Forms.ContextMenuStrip(this.components);\r
             this.mnu_up = new System.Windows.Forms.ToolStripMenuItem();\r
             this.mnu_Down = new System.Windows.Forms.ToolStripMenuItem();\r
@@ -76,140 +68,35 @@ namespace Handbrake
             this.statusStrip1 = new System.Windows.Forms.StatusStrip();\r
             this.lbl_encodesPending = new System.Windows.Forms.ToolStripStatusLabel();\r
             this.OpenFile = new System.Windows.Forms.OpenFileDialog();\r
+            this.lbl_encodeStatus = new System.Windows.Forms.Label();\r
             this.splitContainer1 = new System.Windows.Forms.SplitContainer();\r
-            this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();\r
-            this.panel3 = new System.Windows.Forms.Panel();\r
-            this.panel2 = new System.Windows.Forms.Panel();\r
             this.panel1 = new System.Windows.Forms.Panel();\r
+            this.panel2 = new System.Windows.Forms.Panel();\r
+            this.lbl_encodeOptions = new System.Windows.Forms.Label();\r
             this.toolStrip1.SuspendLayout();\r
             this.mnu_queue.SuspendLayout();\r
             this.statusStrip1.SuspendLayout();\r
             this.splitContainer1.Panel1.SuspendLayout();\r
             this.splitContainer1.Panel2.SuspendLayout();\r
             this.splitContainer1.SuspendLayout();\r
-            this.tableLayoutPanel1.SuspendLayout();\r
             this.SuspendLayout();\r
             // \r
-            // btn_down\r
-            // \r
-            this.btn_down.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));\r
-            this.btn_down.BackColor = System.Drawing.SystemColors.ControlLight;\r
-            this.btn_down.FlatAppearance.BorderColor = System.Drawing.Color.Black;\r
-            this.btn_down.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.btn_down.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));\r
-            this.btn_down.Location = new System.Drawing.Point(625, 52);\r
-            this.btn_down.Name = "btn_down";\r
-            this.tableLayoutPanel1.SetRowSpan(this.btn_down, 2);\r
-            this.btn_down.Size = new System.Drawing.Size(64, 22);\r
-            this.btn_down.TabIndex = 33;\r
-            this.btn_down.TabStop = false;\r
-            this.btn_down.Text = "Down";\r
-            this.toolTip1.SetToolTip(this.btn_down, "Move the selected item down 1 place in the queue");\r
-            this.btn_down.UseVisualStyleBackColor = true;\r
-            this.btn_down.Click += new System.EventHandler(this.BtnDownClick);\r
-            // \r
-            // btn_up\r
-            // \r
-            this.btn_up.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));\r
-            this.btn_up.BackColor = System.Drawing.SystemColors.ControlLight;\r
-            this.btn_up.FlatAppearance.BorderColor = System.Drawing.Color.Black;\r
-            this.btn_up.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.btn_up.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));\r
-            this.btn_up.Location = new System.Drawing.Point(564, 52);\r
-            this.btn_up.Name = "btn_up";\r
-            this.tableLayoutPanel1.SetRowSpan(this.btn_up, 2);\r
-            this.btn_up.Size = new System.Drawing.Size(55, 22);\r
-            this.btn_up.TabIndex = 32;\r
-            this.btn_up.TabStop = false;\r
-            this.btn_up.Text = "Up";\r
-            this.toolTip1.SetToolTip(this.btn_up, "Move the selected item up 1 place in the queue.");\r
-            this.btn_up.UseVisualStyleBackColor = true;\r
-            this.btn_up.Click += new System.EventHandler(this.BtnUpClick);\r
-            // \r
-            // btn_delete\r
-            // \r
-            this.btn_delete.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));\r
-            this.btn_delete.BackColor = System.Drawing.SystemColors.ControlLight;\r
-            this.btn_delete.FlatAppearance.BorderColor = System.Drawing.Color.Black;\r
-            this.btn_delete.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.btn_delete.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));\r
-            this.btn_delete.Location = new System.Drawing.Point(695, 52);\r
-            this.btn_delete.Name = "btn_delete";\r
-            this.tableLayoutPanel1.SetRowSpan(this.btn_delete, 2);\r
-            this.btn_delete.Size = new System.Drawing.Size(64, 22);\r
-            this.btn_delete.TabIndex = 31;\r
-            this.btn_delete.TabStop = false;\r
-            this.btn_delete.Text = "Delete";\r
-            this.toolTip1.SetToolTip(this.btn_delete, "Remove the selected item from the queue");\r
-            this.btn_delete.UseVisualStyleBackColor = true;\r
-            this.btn_delete.Click += new System.EventHandler(this.BtnDeleteClick);\r
-            // \r
-            // label4\r
-            // \r
-            this.label4.AutoSize = true;\r
-            this.label4.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label4.Location = new System.Drawing.Point(125, 49);\r
-            this.label4.Name = "label4";\r
-            this.tableLayoutPanel1.SetRowSpan(this.label4, 2);\r
-            this.label4.Size = new System.Drawing.Size(48, 26);\r
-            this.label4.TabIndex = 70;\r
-            this.label4.Text = "Video:\r\nAudio:";\r
-            // \r
-            // lbl_chapt\r
-            // \r
-            this.lbl_chapt.AutoSize = true;\r
-            this.lbl_chapt.Location = new System.Drawing.Point(108, 62);\r
-            this.lbl_chapt.Name = "lbl_chapt";\r
-            this.lbl_chapt.Size = new System.Drawing.Size(11, 13);\r
-            this.lbl_chapt.TabIndex = 69;\r
-            this.lbl_chapt.Text = "-";\r
-            // \r
-            // lbl_title\r
-            // \r
-            this.lbl_title.AccessibleRole = System.Windows.Forms.AccessibleRole.None;\r
-            this.lbl_title.AutoSize = true;\r
-            this.lbl_title.Location = new System.Drawing.Point(108, 49);\r
-            this.lbl_title.Name = "lbl_title";\r
-            this.lbl_title.Size = new System.Drawing.Size(11, 13);\r
-            this.lbl_title.TabIndex = 68;\r
-            this.lbl_title.Text = "-";\r
-            // \r
-            // lbl_aEnc\r
-            // \r
-            this.lbl_aEnc.AutoSize = true;\r
-            this.lbl_aEnc.Location = new System.Drawing.Point(179, 62);\r
-            this.lbl_aEnc.Name = "lbl_aEnc";\r
-            this.lbl_aEnc.Size = new System.Drawing.Size(11, 13);\r
-            this.lbl_aEnc.TabIndex = 67;\r
-            this.lbl_aEnc.Text = "-";\r
-            // \r
-            // lbl_vEnc\r
-            // \r
-            this.lbl_vEnc.AutoSize = true;\r
-            this.lbl_vEnc.Location = new System.Drawing.Point(179, 49);\r
-            this.lbl_vEnc.Name = "lbl_vEnc";\r
-            this.lbl_vEnc.Size = new System.Drawing.Size(11, 13);\r
-            this.lbl_vEnc.TabIndex = 66;\r
-            this.lbl_vEnc.Text = "-";\r
-            // \r
             // lbl_dest\r
             // \r
-            this.lbl_dest.AutoSize = true;\r
-            this.tableLayoutPanel1.SetColumnSpan(this.lbl_dest, 6);\r
-            this.lbl_dest.Location = new System.Drawing.Point(108, 36);\r
+            this.lbl_dest.AutoEllipsis = true;\r
+            this.lbl_dest.Location = new System.Drawing.Point(117, 60);\r
             this.lbl_dest.Name = "lbl_dest";\r
-            this.lbl_dest.Size = new System.Drawing.Size(11, 13);\r
+            this.lbl_dest.Size = new System.Drawing.Size(671, 13);\r
             this.lbl_dest.TabIndex = 65;\r
             this.lbl_dest.Text = "-";\r
             this.lbl_dest.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;\r
             // \r
             // lbl_source\r
             // \r
-            this.lbl_source.AutoSize = true;\r
-            this.tableLayoutPanel1.SetColumnSpan(this.lbl_source, 6);\r
-            this.lbl_source.Location = new System.Drawing.Point(108, 23);\r
+            this.lbl_source.AutoEllipsis = true;\r
+            this.lbl_source.Location = new System.Drawing.Point(117, 47);\r
             this.lbl_source.Name = "lbl_source";\r
-            this.lbl_source.Size = new System.Drawing.Size(11, 13);\r
+            this.lbl_source.Size = new System.Drawing.Size(671, 13);\r
             this.lbl_source.TabIndex = 64;\r
             this.lbl_source.Text = "-";\r
             // \r
@@ -217,18 +104,17 @@ namespace Handbrake
             // \r
             this.label1.AutoSize = true;\r
             this.label1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label1.Location = new System.Drawing.Point(3, 23);\r
+            this.label1.Location = new System.Drawing.Point(12, 47);\r
             this.label1.Name = "label1";\r
-            this.tableLayoutPanel1.SetRowSpan(this.label1, 4);\r
-            this.label1.Size = new System.Drawing.Size(99, 52);\r
+            this.label1.Size = new System.Drawing.Size(85, 39);\r
             this.label1.TabIndex = 63;\r
-            this.label1.Text = "Source:\r\nDestination:\r\nDVD Title:\r\nDVD Chapters:";\r
+            this.label1.Text = "Source:\r\nDestination:\r\nOptions:";\r
             // \r
             // label3\r
             // \r
             this.label3.AutoSize = true;\r
             this.label3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.label3.Location = new System.Drawing.Point(3, 0);\r
+            this.label3.Location = new System.Drawing.Point(12, 9);\r
             this.label3.Name = "label3";\r
             this.label3.Size = new System.Drawing.Size(82, 13);\r
             this.label3.TabIndex = 62;\r
@@ -245,7 +131,7 @@ namespace Handbrake
             this.toolStrip1.Location = new System.Drawing.Point(0, 0);\r
             this.toolStrip1.Name = "toolStrip1";\r
             this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;\r
-            this.toolStrip1.Size = new System.Drawing.Size(787, 39);\r
+            this.toolStrip1.Size = new System.Drawing.Size(813, 39);\r
             this.toolStrip1.TabIndex = 71;\r
             this.toolStrip1.Text = "toolStrip1";\r
             // \r
@@ -349,9 +235,9 @@ namespace Handbrake
             this.list_queue.FullRowSelect = true;\r
             this.list_queue.GridLines = true;\r
             this.list_queue.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;\r
-            this.list_queue.Location = new System.Drawing.Point(13, 0);\r
+            this.list_queue.Location = new System.Drawing.Point(15, 0);\r
             this.list_queue.Name = "list_queue";\r
-            this.list_queue.Size = new System.Drawing.Size(761, 219);\r
+            this.list_queue.Size = new System.Drawing.Size(773, 214);\r
             this.list_queue.TabIndex = 72;\r
             this.list_queue.UseCompatibleStateImageBehavior = false;\r
             this.list_queue.View = System.Windows.Forms.View.Details;\r
@@ -397,43 +283,43 @@ namespace Handbrake
             this.toolStripSeparator4,\r
             this.mnu_delete});\r
             this.mnu_queue.Name = "mnu_queue";\r
-            this.mnu_queue.Size = new System.Drawing.Size(153, 126);\r
+            this.mnu_queue.Size = new System.Drawing.Size(139, 104);\r
             // \r
             // mnu_up\r
             // \r
             this.mnu_up.Name = "mnu_up";\r
-            this.mnu_up.Size = new System.Drawing.Size(152, 22);\r
+            this.mnu_up.Size = new System.Drawing.Size(138, 22);\r
             this.mnu_up.Text = "Move Up";\r
             this.mnu_up.Click += new System.EventHandler(this.MnuUpClick);\r
             // \r
             // mnu_Down\r
             // \r
             this.mnu_Down.Name = "mnu_Down";\r
-            this.mnu_Down.Size = new System.Drawing.Size(152, 22);\r
+            this.mnu_Down.Size = new System.Drawing.Size(138, 22);\r
             this.mnu_Down.Text = "Move Down";\r
             this.mnu_Down.Click += new System.EventHandler(this.MnuDownClick);\r
             // \r
             // toolStripSeparator3\r
             // \r
             this.toolStripSeparator3.Name = "toolStripSeparator3";\r
-            this.toolStripSeparator3.Size = new System.Drawing.Size(149, 6);\r
+            this.toolStripSeparator3.Size = new System.Drawing.Size(135, 6);\r
             // \r
             // mnu_edit\r
             // \r
             this.mnu_edit.Name = "mnu_edit";\r
-            this.mnu_edit.Size = new System.Drawing.Size(152, 22);\r
+            this.mnu_edit.Size = new System.Drawing.Size(138, 22);\r
             this.mnu_edit.Text = "Edit";\r
             this.mnu_edit.Click += new System.EventHandler(this.MnuEditClick);\r
             // \r
             // toolStripSeparator4\r
             // \r
             this.toolStripSeparator4.Name = "toolStripSeparator4";\r
-            this.toolStripSeparator4.Size = new System.Drawing.Size(149, 6);\r
+            this.toolStripSeparator4.Size = new System.Drawing.Size(135, 6);\r
             // \r
             // mnu_delete\r
             // \r
             this.mnu_delete.Name = "mnu_delete";\r
-            this.mnu_delete.Size = new System.Drawing.Size(152, 22);\r
+            this.mnu_delete.Size = new System.Drawing.Size(138, 22);\r
             this.mnu_delete.Text = "Delete";\r
             this.mnu_delete.Click += new System.EventHandler(this.MnuDeleteClick);\r
             // \r
@@ -441,10 +327,10 @@ namespace Handbrake
             // \r
             this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
             this.lbl_encodesPending});\r
-            this.statusStrip1.Location = new System.Drawing.Point(0, 368);\r
+            this.statusStrip1.Location = new System.Drawing.Point(0, 363);\r
             this.statusStrip1.Name = "statusStrip1";\r
             this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 12, 0);\r
-            this.statusStrip1.Size = new System.Drawing.Size(787, 22);\r
+            this.statusStrip1.Size = new System.Drawing.Size(813, 22);\r
             this.statusStrip1.TabIndex = 73;\r
             this.statusStrip1.Text = "statusStrip1";\r
             // \r
@@ -460,94 +346,71 @@ namespace Handbrake
             // \r
             this.OpenFile.Filter = "HandBrake Queue|*.queue";\r
             // \r
+            // lbl_encodeStatus\r
+            // \r
+            this.lbl_encodeStatus.AutoSize = true;\r
+            this.lbl_encodeStatus.Location = new System.Drawing.Point(12, 30);\r
+            this.lbl_encodeStatus.Name = "lbl_encodeStatus";\r
+            this.lbl_encodeStatus.Size = new System.Drawing.Size(38, 13);\r
+            this.lbl_encodeStatus.TabIndex = 73;\r
+            this.lbl_encodeStatus.Text = "Ready";\r
+            // \r
             // splitContainer1\r
             // \r
             this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;\r
-            this.splitContainer1.IsSplitterFixed = true;\r
             this.splitContainer1.Location = new System.Drawing.Point(0, 39);\r
             this.splitContainer1.Name = "splitContainer1";\r
             this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;\r
             // \r
             // splitContainer1.Panel1\r
             // \r
-            this.splitContainer1.Panel1.Controls.Add(this.tableLayoutPanel1);\r
+            this.splitContainer1.Panel1.Controls.Add(this.lbl_encodeOptions);\r
+            this.splitContainer1.Panel1.Controls.Add(this.label3);\r
+            this.splitContainer1.Panel1.Controls.Add(this.lbl_dest);\r
+            this.splitContainer1.Panel1.Controls.Add(this.label1);\r
+            this.splitContainer1.Panel1.Controls.Add(this.lbl_encodeStatus);\r
+            this.splitContainer1.Panel1.Controls.Add(this.lbl_source);\r
             // \r
             // splitContainer1.Panel2\r
             // \r
             this.splitContainer1.Panel2.Controls.Add(this.list_queue);\r
-            this.splitContainer1.Panel2.Controls.Add(this.panel3);\r
             this.splitContainer1.Panel2.Controls.Add(this.panel2);\r
             this.splitContainer1.Panel2.Controls.Add(this.panel1);\r
-            this.splitContainer1.Size = new System.Drawing.Size(787, 329);\r
-            this.splitContainer1.SplitterDistance = 94;\r
-            this.splitContainer1.SplitterWidth = 1;\r
+            this.splitContainer1.Size = new System.Drawing.Size(813, 324);\r
+            this.splitContainer1.SplitterDistance = 106;\r
             this.splitContainer1.TabIndex = 74;\r
             // \r
-            // tableLayoutPanel1\r
-            // \r
-            this.tableLayoutPanel1.AutoSize = true;\r
-            this.tableLayoutPanel1.ColumnCount = 7;\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.Controls.Add(this.label1, 0, 2);\r
-            this.tableLayoutPanel1.Controls.Add(this.btn_delete, 6, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.btn_down, 5, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_aEnc, 3, 5);\r
-            this.tableLayoutPanel1.Controls.Add(this.btn_up, 4, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_source, 1, 2);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_vEnc, 3, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.label4, 2, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_dest, 1, 3);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_title, 1, 4);\r
-            this.tableLayoutPanel1.Controls.Add(this.lbl_chapt, 1, 5);\r
-            this.tableLayoutPanel1.Controls.Add(this.label3, 0, 0);\r
-            this.tableLayoutPanel1.Location = new System.Drawing.Point(13, 13);\r
-            this.tableLayoutPanel1.Name = "tableLayoutPanel1";\r
-            this.tableLayoutPanel1.RowCount = 6;\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 10F));\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());\r
-            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());\r
-            this.tableLayoutPanel1.Size = new System.Drawing.Size(762, 77);\r
-            this.tableLayoutPanel1.TabIndex = 71;\r
-            // \r
-            // panel3\r
-            // \r
-            this.panel3.Dock = System.Windows.Forms.DockStyle.Bottom;\r
-            this.panel3.Location = new System.Drawing.Point(13, 219);\r
-            this.panel3.Name = "panel3";\r
-            this.panel3.Size = new System.Drawing.Size(761, 15);\r
-            this.panel3.TabIndex = 77;\r
+            // panel1\r
+            // \r
+            this.panel1.Dock = System.Windows.Forms.DockStyle.Left;\r
+            this.panel1.Location = new System.Drawing.Point(0, 0);\r
+            this.panel1.Name = "panel1";\r
+            this.panel1.Size = new System.Drawing.Size(15, 214);\r
+            this.panel1.TabIndex = 0;\r
             // \r
             // panel2\r
             // \r
             this.panel2.Dock = System.Windows.Forms.DockStyle.Right;\r
-            this.panel2.Location = new System.Drawing.Point(774, 0);\r
+            this.panel2.Location = new System.Drawing.Point(788, 0);\r
             this.panel2.Name = "panel2";\r
-            this.panel2.Size = new System.Drawing.Size(13, 234);\r
-            this.panel2.TabIndex = 76;\r
+            this.panel2.Size = new System.Drawing.Size(25, 214);\r
+            this.panel2.TabIndex = 1;\r
             // \r
-            // panel1\r
+            // lbl_encodeOptions\r
             // \r
-            this.panel1.Dock = System.Windows.Forms.DockStyle.Left;\r
-            this.panel1.Location = new System.Drawing.Point(0, 0);\r
-            this.panel1.Name = "panel1";\r
-            this.panel1.Size = new System.Drawing.Size(13, 234);\r
-            this.panel1.TabIndex = 75;\r
+            this.lbl_encodeOptions.AutoEllipsis = true;\r
+            this.lbl_encodeOptions.Location = new System.Drawing.Point(117, 73);\r
+            this.lbl_encodeOptions.Name = "lbl_encodeOptions";\r
+            this.lbl_encodeOptions.Size = new System.Drawing.Size(671, 33);\r
+            this.lbl_encodeOptions.TabIndex = 74;\r
+            this.lbl_encodeOptions.Text = "-";\r
             // \r
             // frmQueue\r
             // \r
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;\r
-            this.ClientSize = new System.Drawing.Size(787, 390);\r
+            this.ClientSize = new System.Drawing.Size(813, 385);\r
             this.Controls.Add(this.splitContainer1);\r
             this.Controls.Add(this.statusStrip1);\r
             this.Controls.Add(this.toolStrip1);\r
@@ -566,8 +429,6 @@ namespace Handbrake
             this.splitContainer1.Panel1.PerformLayout();\r
             this.splitContainer1.Panel2.ResumeLayout(false);\r
             this.splitContainer1.ResumeLayout(false);\r
-            this.tableLayoutPanel1.ResumeLayout(false);\r
-            this.tableLayoutPanel1.PerformLayout();\r
             this.ResumeLayout(false);\r
             this.PerformLayout();\r
 \r
@@ -575,15 +436,7 @@ namespace Handbrake
 \r
         #endregion\r
 \r
-        internal System.Windows.Forms.Button btn_down;\r
-        internal System.Windows.Forms.Button btn_up;\r
-        internal System.Windows.Forms.Button btn_delete;\r
         private System.Windows.Forms.ToolTip toolTip1;\r
-        private System.Windows.Forms.Label label4;\r
-        private System.Windows.Forms.Label lbl_chapt;\r
-        private System.Windows.Forms.Label lbl_title;\r
-        private System.Windows.Forms.Label lbl_aEnc;\r
-        private System.Windows.Forms.Label lbl_vEnc;\r
         private System.Windows.Forms.Label lbl_dest;\r
         private System.Windows.Forms.Label lbl_source;\r
         private System.Windows.Forms.Label label1;\r
@@ -607,10 +460,6 @@ namespace Handbrake
         private System.Windows.Forms.ToolStripMenuItem mnu_export;\r
         private System.Windows.Forms.OpenFileDialog OpenFile;\r
         private System.Windows.Forms.ToolStripStatusLabel lbl_encodesPending;\r
-        private System.Windows.Forms.SplitContainer splitContainer1;\r
-        private System.Windows.Forms.Panel panel2;\r
-        private System.Windows.Forms.Panel panel1;\r
-        private System.Windows.Forms.Panel panel3;\r
         private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;\r
         private System.Windows.Forms.ToolStripMenuItem mnu_readd;\r
         private System.Windows.Forms.ContextMenuStrip mnu_queue;\r
@@ -618,8 +467,12 @@ namespace Handbrake
         private System.Windows.Forms.ToolStripMenuItem mnu_Down;\r
         private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;\r
         private System.Windows.Forms.ToolStripMenuItem mnu_delete;\r
-        private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;\r
         private System.Windows.Forms.ToolStripMenuItem mnu_edit;\r
         private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;\r
+        private System.Windows.Forms.Label lbl_encodeStatus;\r
+        private System.Windows.Forms.SplitContainer splitContainer1;\r
+        private System.Windows.Forms.Panel panel2;\r
+        private System.Windows.Forms.Panel panel1;\r
+        private System.Windows.Forms.Label lbl_encodeOptions;\r
     }\r
 }\r
index f45ed39..b5a37bc 100644 (file)
@@ -9,6 +9,7 @@ namespace Handbrake
     using System.Collections.Generic;\r
     using System.Collections.ObjectModel;\r
     using System.ComponentModel;\r
+    using System.IO;\r
     using System.Windows.Forms;\r
     using Functions;\r
 \r
@@ -57,6 +58,80 @@ namespace Handbrake
             queue.EncodeStarted += new EventHandler(QueueOnEncodeStart);\r
             queue.QueueCompleted += new EventHandler(QueueOnQueueFinished);\r
             queue.QueuePauseRequested += new EventHandler(QueueOnPaused);\r
+            queue.QueueListChanged += new EventHandler(queue_QueueListChanged);\r
+\r
+            queue.EncodeStarted += new EventHandler(queue_EncodeStarted);\r
+            queue.EncodeEnded += new EventHandler(queue_EncodeEnded);\r
+        }\r
+\r
+        /// <summary>\r
+        /// Queue Changed\r
+        /// </summary>\r
+        /// <param name="sender">\r
+        /// The sender.\r
+        /// </param>\r
+        /// <param name="e">\r
+        /// The e.\r
+        /// </param>\r
+        private void queue_QueueListChanged(object sender, EventArgs e)\r
+        {\r
+            UpdateUiElementsOnQueueChange();\r
+        }\r
+\r
+        /// <summary>\r
+        /// Encode Ended\r
+        /// </summary>\r
+        /// <param name="sender">\r
+        /// The sender.\r
+        /// </param>\r
+        /// <param name="e">\r
+        /// The e.\r
+        /// </param>\r
+        private void queue_EncodeEnded(object sender, EventArgs e)\r
+        {\r
+            queue.EncodeStatusChanged -= EncodeQueue_EncodeStatusChanged;\r
+            ResetEncodeText();\r
+        }\r
+\r
+        /// <summary>\r
+        /// Queue Started\r
+        /// </summary>\r
+        /// <param name="sender">\r
+        /// The sender.\r
+        /// </param>\r
+        /// <param name="e">\r
+        /// The e.\r
+        /// </param>\r
+        private void queue_EncodeStarted(object sender, EventArgs e)\r
+        {\r
+            this.SetCurrentEncodeInformation();\r
+            queue.EncodeStatusChanged += EncodeQueue_EncodeStatusChanged;        \r
+        }\r
+\r
+        /// <summary>\r
+        /// Display the Encode Status\r
+        /// </summary>\r
+        /// <param name="sender">\r
+        /// The sender.\r
+        /// </param>\r
+        /// <param name="e">\r
+        /// The e.\r
+        /// </param>\r
+        private void EncodeQueue_EncodeStatusChanged(object sender, HandBrake.ApplicationServices.EncodeProgressEventArgs e)\r
+        {\r
+            if (this.InvokeRequired)\r
+            {\r
+                this.BeginInvoke(new Encode.EncodeProgessStatus(EncodeQueue_EncodeStatusChanged), new[] { sender, e });\r
+                return;\r
+            }\r
+\r
+            lbl_encodeStatus.Text =\r
+                string.Format(\r
+                "Encoding: Pass {0} of {1}, {2:00.00}% Time Remaining: {3}",\r
+                e.Task,\r
+                e.Task,\r
+                e.PercentComplete,\r
+                e.EstimatedTimeLeft);\r
         }\r
 \r
         /// <summary>\r
@@ -71,7 +146,7 @@ namespace Handbrake
         private void QueueOnPaused(object sender, EventArgs e)\r
         {\r
             SetUiEncodeFinished();\r
-            UpdateUiElements();\r
+            UpdateUiElementsOnQueueChange();\r
         }\r
 \r
         /// <summary>\r
@@ -101,8 +176,7 @@ namespace Handbrake
         private void QueueOnEncodeStart(object sender, EventArgs e)\r
         {\r
             SetUiEncodeStarted(); // make sure the UI is set correctly\r
-            SetCurrentEncodeInformation();\r
-            UpdateUiElements(); // Redraw the Queue, a new encode has started.\r
+            UpdateUiElementsOnQueueChange(); // Redraw the Queue, a new encode has started.\r
         }\r
 \r
         /// <summary>\r
@@ -110,7 +184,7 @@ namespace Handbrake
         /// </summary>\r
         public void SetQueue()\r
         {\r
-            UpdateUiElements();\r
+            UpdateUiElementsOnQueueChange();\r
         }\r
 \r
         /// <summary>\r
@@ -143,8 +217,8 @@ namespace Handbrake
                 SetUiEncodeStarted();\r
             }\r
 \r
-            if (!queue.IsEncoding)\r
-                queue.Start();\r
+            lbl_encodeStatus.Text = "Encoding ...";\r
+            queue.Start();\r
         }\r
 \r
         /// <summary>\r
@@ -159,8 +233,6 @@ namespace Handbrake
         private void BtnPauseClick(object sender, EventArgs e)\r
         {\r
             queue.Pause();\r
-            SetUiEncodeFinished();\r
-            ResetQueue();\r
             MessageBox.Show(\r
                 "No further items on the queue will start. The current encode process will continue until it is finished. \nClick 'Encode' when you wish to continue encoding the queue.",\r
                 "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
@@ -209,12 +281,24 @@ namespace Handbrake
             btn_pause.Visible = false;\r
             btn_encode.Enabled = true;\r
 \r
+            ResetEncodeText();\r
+        }\r
+\r
+        /// <summary>\r
+        /// Reset the current job text\r
+        /// </summary>\r
+        private void ResetEncodeText()\r
+        {\r
+            if (InvokeRequired)\r
+            {\r
+                BeginInvoke(new UpdateHandler(ResetEncodeText));\r
+                return;\r
+            }\r
+            lbl_encodeStatus.Text = "Ready";\r
+\r
             lbl_source.Text = "-";\r
             lbl_dest.Text = "-";\r
-            lbl_vEnc.Text = "-";\r
-            lbl_aEnc.Text = "-";\r
-            lbl_title.Text = "-";\r
-            lbl_chapt.Text = "-";\r
+            lbl_encodeOptions.Text = "-";\r
 \r
             lbl_encodesPending.Text = list_queue.Items.Count + " encode(s) pending";\r
         }\r
@@ -276,11 +360,11 @@ namespace Handbrake
         /// <summary>\r
         /// Update the UI elements\r
         /// </summary>\r
-        private void UpdateUiElements()\r
+        private void UpdateUiElementsOnQueueChange()\r
         {\r
             if (InvokeRequired)\r
             {\r
-                BeginInvoke(new UpdateHandler(UpdateUiElements));\r
+                BeginInvoke(new UpdateHandler(UpdateUiElementsOnQueueChange));\r
                 return;\r
             }\r
 \r
@@ -300,75 +384,45 @@ namespace Handbrake
                     BeginInvoke(new UpdateHandler(SetCurrentEncodeInformation));\r
                 }\r
 \r
-                // found query is a global varible\r
                 QueryParser parsed = QueryParser.Parse(queue.LastEncode.Query);\r
-                lbl_source.Text = queue.LastEncode.Source;\r
-                lbl_dest.Text = queue.LastEncode.Destination;\r
-\r
-                lbl_title.Text = parsed.Title == 0 ? "Auto" : parsed.Title.ToString();\r
 \r
+                // Get title and chapters\r
+                string title = parsed.Title == 0 ? "Auto" : parsed.Title.ToString();\r
+                string chapterlbl;\r
                 if (Equals(parsed.ChapterStart, 0))\r
-                    lbl_chapt.Text = "Auto";\r
+                    chapterlbl = "Auto";\r
                 else\r
                 {\r
                     string chapters = parsed.ChapterStart.ToString();\r
                     if (parsed.ChapterFinish != 0)\r
                         chapters = chapters + " - " + parsed.ChapterFinish;\r
-                    lbl_chapt.Text = chapters;\r
+                    chapterlbl = chapters;\r
                 }\r
 \r
-                lbl_vEnc.Text = parsed.VideoEncoder;\r
-\r
-                // Display The Audio Track Information\r
+                // Get audio information\r
                 string audio = string.Empty;\r
                 foreach (AudioTrack track in parsed.AudioInformation)\r
                 {\r
-                    if (audio != string.Empty)\r
+                    if (audio != string.Empty) \r
                         audio += ", " + track.Encoder;\r
                     else\r
                         audio = track.Encoder;\r
                 }\r
-                lbl_aEnc.Text = audio;\r
-            }\r
+\r
+                // found query is a global varible        \r
+                lbl_encodeStatus.Text = "Encoding ...";\r
+                lbl_source.Text = queue.LastEncode.Source + "(Title: " + title + " Chapters: " + chapterlbl + ")";\r
+                lbl_dest.Text = queue.LastEncode.Destination;\r
+                lbl_encodeOptions.Text = "Video: " + parsed.VideoEncoder + " Audio: " + audio + Environment.NewLine +\r
+                                    "x264 Options: " + parsed.H264Query;\r
+               }\r
             catch (Exception)\r
             {\r
                 // Do Nothing\r
             }\r
         }\r
 \r
-        /// <summary>\r
-        /// Delete the currently selected items on the queue\r
-        /// </summary>\r
-        private void DeleteSelectedItems()\r
-        {\r
-            // If there are selected items\r
-            if (list_queue.SelectedIndices.Count > 0)\r
-            {\r
-                // Save the selected indices to select them after the move\r
-                List<int> selectedIndices = new List<int>(list_queue.SelectedIndices.Count);\r
-                foreach (int selectedIndex in list_queue.SelectedIndices)\r
-                    selectedIndices.Add(selectedIndex);\r
-\r
-                int firstSelectedIndex = selectedIndices[0];\r
-\r
-                // Reverse the list to delete the items from last to first (preserves indices)\r
-                selectedIndices.Reverse();\r
-\r
-                // Remove each selected item\r
-                foreach (int selectedIndex in selectedIndices)\r
-                    queue.Remove(selectedIndex);\r
-\r
-                UpdateUiElements();\r
-\r
-                // Select the item where the first deleted item was previously\r
-                if (firstSelectedIndex < list_queue.Items.Count)\r
-                    list_queue.Items[firstSelectedIndex].Selected = true;\r
-            }\r
-\r
-            list_queue.Select(); // Activate the control to show the selected items\r
-        }\r
-\r
-        // Queue Management\r
+        /* Right Click Menu */\r
         /// <summary>\r
         /// Handle the Move Up Menu Item\r
         /// </summary>\r
@@ -437,47 +491,7 @@ namespace Handbrake
             DeleteSelectedItems();\r
         }\r
 \r
-        /// <summary>\r
-        /// Handle the Button Up Click\r
-        /// </summary>\r
-        /// <param name="sender">\r
-        /// The sender.\r
-        /// </param>\r
-        /// <param name="e">\r
-        /// The e.\r
-        /// </param>\r
-        private void BtnUpClick(object sender, EventArgs e)\r
-        {\r
-            MoveUp();\r
-        }\r
-\r
-        /// <summary>\r
-        /// Handle the button down click\r
-        /// </summary>\r
-        /// <param name="sender">\r
-        /// The sender.\r
-        /// </param>\r
-        /// <param name="e">\r
-        /// The e.\r
-        /// </param>\r
-        private void BtnDownClick(object sender, EventArgs e)\r
-        {\r
-            MoveDown();\r
-        }\r
-\r
-        /// <summary>\r
-        /// Handle the delete button click\r
-        /// </summary>\r
-        /// <param name="sender">\r
-        /// The sender.\r
-        /// </param>\r
-        /// <param name="e">\r
-        /// The e.\r
-        /// </param>\r
-        private void BtnDeleteClick(object sender, EventArgs e)\r
-        {\r
-            DeleteSelectedItems();\r
-        }\r
+        /* Keyboard Shortcuts */\r
 \r
         /// <summary>\r
         /// Handle the delete keyboard press\r
@@ -494,6 +508,8 @@ namespace Handbrake
                 DeleteSelectedItems();\r
         }\r
 \r
+        /* Queue Management */\r
+\r
         /// <summary>\r
         /// Move items up in the queue\r
         /// </summary>\r
@@ -511,8 +527,6 @@ namespace Handbrake
                 foreach (int selectedIndex in selectedIndices)\r
                     queue.MoveUp(selectedIndex);\r
 \r
-                UpdateUiElements();\r
-\r
                 // Keep the selected item(s) selected, now moved up one index\r
                 foreach (int selectedIndex in selectedIndices)\r
                     if (selectedIndex - 1 > -1) // Defensive programming: ensure index is good\r
@@ -543,8 +557,6 @@ namespace Handbrake
                 foreach (int selectedIndex in selectedIndices)\r
                     queue.MoveDown(selectedIndex);\r
 \r
-                UpdateUiElements();\r
-\r
                 // Keep the selected item(s) selected, now moved down one index\r
                 foreach (int selectedIndex in selectedIndices)\r
                     if (selectedIndex + 1 < list_queue.Items.Count) // Defensive programming: ensure index is good\r
@@ -554,7 +566,37 @@ namespace Handbrake
             list_queue.Select(); // Activate the control to show the selected items\r
         }\r
 \r
-        // Queue Import/Export Features\r
+        /// <summary>\r
+        /// Delete the currently selected items on the queue\r
+        /// </summary>\r
+        private void DeleteSelectedItems()\r
+        {\r
+            // If there are selected items\r
+            if (list_queue.SelectedIndices.Count > 0)\r
+            {\r
+                // Save the selected indices to select them after the move\r
+                List<int> selectedIndices = new List<int>(list_queue.SelectedIndices.Count);\r
+                foreach (int selectedIndex in list_queue.SelectedIndices)\r
+                    selectedIndices.Add(selectedIndex);\r
+\r
+                int firstSelectedIndex = selectedIndices[0];\r
+\r
+                // Reverse the list to delete the items from last to first (preserves indices)\r
+                selectedIndices.Reverse();\r
+\r
+                // Remove each selected item\r
+                foreach (int selectedIndex in selectedIndices)\r
+                    queue.Remove(selectedIndex);\r
+\r
+                // Select the item where the first deleted item was previously\r
+                if (firstSelectedIndex < list_queue.Items.Count)\r
+                    list_queue.Items[firstSelectedIndex].Selected = true;\r
+            }\r
+\r
+            list_queue.Select(); // Activate the control to show the selected items\r
+        }\r
+\r
+        /* Queue Import / Export features */\r
 \r
         /// <summary>\r
         /// Create a batch script\r
@@ -607,7 +649,6 @@ namespace Handbrake
             OpenFile.ShowDialog();\r
             if (OpenFile.FileName != String.Empty)\r
                 queue.LoadQueueFromFile(OpenFile.FileName);\r
-            UpdateUiElements();\r
         }\r
 \r
         /// <summary>\r
@@ -629,10 +670,11 @@ namespace Handbrake
                     queue.LastEncode.Source,\r
                     queue.LastEncode.Destination,\r
                     queue.LastEncode.CustomQuery);\r
-                UpdateUiElements();\r
             }\r
         }\r
 \r
+        /* Overrides */\r
+\r
         /// <summary>\r
         /// Hide's the window when the user tries to "x" out of the window instead of closing it.\r
         /// </summary>\r