X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=win%2FC%23%2FfrmQueue.cs;h=326fb72411b7d85ecbdb58de1bf6e44ddbc30640;hb=b8c7cf18f82ad8552e4a79ab3e93794a2e7759e5;hp=352978960565caf1fa194c8a8985ae2816f6f26e;hpb=a80d8f21b6b9d16ed292f90eb36e3c12072ea69a;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/win/C#/frmQueue.cs b/win/C#/frmQueue.cs index 35297896..326fb724 100644 --- a/win/C#/frmQueue.cs +++ b/win/C#/frmQueue.cs @@ -10,46 +10,51 @@ using System.ComponentModel; using System.Windows.Forms; using Handbrake.EncodeQueue; using System.Collections.ObjectModel; +using Handbrake.Model; namespace Handbrake { public partial class frmQueue : Form { private delegate void UpdateHandler(); - private EncodeAndQueueHandler queue; + private Queue queue; + private frmMain mainWindow; - public frmQueue(EncodeAndQueueHandler q) + public frmQueue(Queue q, frmMain mw) { InitializeComponent(); + this.mainWindow = mw; + this.queue = q; - queue.NewJobStarted += new EventHandler(queueOnEncodeStart); - queue.QueueCompleted += new EventHandler(queueOnQueueFinished); - queue.QueuePauseRequested += new EventHandler(queueOnPaused); + queue.EncodeStarted += new EventHandler(QueueOnEncodeStart); + queue.QueueCompleted += new EventHandler(QueueOnQueueFinished); + queue.QueuePauseRequested += new EventHandler(QueueOnPaused); } - void queueOnPaused(object sender, EventArgs e) + + private void QueueOnPaused(object sender, EventArgs e) { - setUIEncodeFinished(); - updateUIElements(); + SetUIEncodeFinished(); + UpdateUIElements(); } - void queueOnQueueFinished(object sender, EventArgs e) + private void QueueOnQueueFinished(object sender, EventArgs e) { - setUIEncodeFinished(); - resetQueue(); // Reset the Queue Window + SetUIEncodeFinished(); + ResetQueue(); // Reset the Queue Window } - void queueOnEncodeStart(object sender, EventArgs e) + private void QueueOnEncodeStart(object sender, EventArgs e) { - setUIEncodeStarted(); // make sure the UI is set correctly - setCurrentEncodeInformation(); - updateUIElements(); // Redraw the Queue, a new encode has started. + SetUIEncodeStarted(); // make sure the UI is set correctly + SetCurrentEncodeInformation(); + UpdateUIElements(); // Redraw the Queue, a new encode has started. } /// /// Initializes the Queue list with the Arraylist from the Queue class /// - public void setQueue() + public void SetQueue() { - updateUIElements(); + UpdateUIElements(); } /// @@ -66,7 +71,7 @@ namespace Handbrake /// Indicates whether to call setQueue() before showing the window public void Show(bool doSetQueue) { - if (doSetQueue) setQueue(); + if (doSetQueue) SetQueue(); base.Show(); //Activate(); @@ -77,48 +82,49 @@ namespace Handbrake { if (queue.PauseRequested) { - setUIEncodeStarted(); + SetUIEncodeStarted(); MessageBox.Show("Encoding restarted", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); } - if (!queue.isEncoding) - queue.StartEncodeQueue(); + if (!queue.IsEncoding) + queue.Start(); } private void btn_pause_Click(object sender, EventArgs e) { - queue.RequestPause(); - setUIEncodeFinished(); - resetQueue(); + queue.Pause(); + SetUIEncodeFinished(); + ResetQueue(); MessageBox.Show("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.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); } + // Window Display Management - private void setUIEncodeStarted() + private void SetUIEncodeStarted() { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(setUIEncodeStarted)); + BeginInvoke(new UpdateHandler(SetUIEncodeStarted)); return; } btn_encode.Enabled = false; btn_pause.Visible = true; } - private void setUIEncodeFinished() + private void SetUIEncodeFinished() { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(setUIEncodeFinished)); + BeginInvoke(new UpdateHandler(SetUIEncodeFinished)); return; } btn_pause.Visible = false; btn_encode.Enabled = true; } - private void resetQueue() + private void ResetQueue() { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(resetQueue)); + BeginInvoke(new UpdateHandler(ResetQueue)); return; } btn_pause.Visible = false; @@ -133,11 +139,11 @@ namespace Handbrake lbl_encodesPending.Text = list_queue.Items.Count + " encode(s) pending"; } - private void redrawQueue() + private void RedrawQueue() { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(redrawQueue)); + BeginInvoke(new UpdateHandler(RedrawQueue)); return; } @@ -171,7 +177,7 @@ namespace Handbrake // Display The Audio Track Information string audio = string.Empty; - foreach (Functions.AudioTrack track in parsed.AudioInformation) + foreach (AudioTrack track in parsed.AudioInformation) { if (audio != "") audio += ", " + track.Encoder; @@ -183,24 +189,24 @@ namespace Handbrake list_queue.Items.Add(item); } } - private void updateUIElements() + private void UpdateUIElements() { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(updateUIElements)); + BeginInvoke(new UpdateHandler(UpdateUIElements)); return; } - redrawQueue(); + RedrawQueue(); lbl_encodesPending.Text = list_queue.Items.Count + " encode(s) pending"; } - private void setCurrentEncodeInformation() + private void SetCurrentEncodeInformation() { try { if (InvokeRequired) { - BeginInvoke(new UpdateHandler(setCurrentEncodeInformation)); + BeginInvoke(new UpdateHandler(SetCurrentEncodeInformation)); } // found query is a global varible @@ -224,7 +230,7 @@ namespace Handbrake // Display The Audio Track Information string audio = string.Empty; - foreach (Functions.AudioTrack track in parsed.AudioInformation) + foreach (AudioTrack track in parsed.AudioInformation) { if (audio != "") audio += ", " + track.Encoder; @@ -238,7 +244,7 @@ namespace Handbrake // Do Nothing } } - private void deleteSelectedItems() + private void DeleteSelectedItems() { // If there are selected items if (list_queue.SelectedIndices.Count > 0) @@ -255,9 +261,9 @@ namespace Handbrake // Remove each selected item foreach (int selectedIndex in selectedIndices) - queue.RemoveJob(selectedIndex); + queue.Remove(selectedIndex); - updateUIElements(); + UpdateUIElements(); // Select the item where the first deleted item was previously if (firstSelectedIndex < list_queue.Items.Count) @@ -270,34 +276,34 @@ namespace Handbrake // Queue Management private void mnu_up_Click(object sender, EventArgs e) { - moveUp(); + MoveUp(); } private void mnu_Down_Click(object sender, EventArgs e) { - moveDown(); + MoveDown(); } private void mnu_delete_Click(object sender, EventArgs e) { - deleteSelectedItems(); + DeleteSelectedItems(); } private void btn_up_Click(object sender, EventArgs e) { - moveUp(); + MoveUp(); } private void btn_down_Click(object sender, EventArgs e) { - moveDown(); + MoveDown(); } private void btn_delete_Click(object sender, EventArgs e) { - deleteSelectedItems(); + DeleteSelectedItems(); } private void list_queue_deleteKey(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Delete) - deleteSelectedItems(); + DeleteSelectedItems(); } - private void moveUp() + private void MoveUp() { // If there are selected items and the first item is not selected if (list_queue.SelectedIndices.Count > 0 && !list_queue.SelectedIndices.Contains(0)) @@ -311,7 +317,7 @@ namespace Handbrake foreach (int selectedIndex in selectedIndices) queue.MoveUp(selectedIndex); - updateUIElements(); + UpdateUIElements(); // Keep the selected item(s) selected, now moved up one index foreach (int selectedIndex in selectedIndices) @@ -321,7 +327,7 @@ namespace Handbrake list_queue.Select(); // Activate the control to show the selected items } - private void moveDown() + private void MoveDown() { // If there are selected items and the last item is not selected if (list_queue.SelectedIndices.Count > 0 && @@ -339,7 +345,7 @@ namespace Handbrake foreach (int selectedIndex in selectedIndices) queue.MoveDown(selectedIndex); - updateUIElements(); + UpdateUIElements(); // Keep the selected item(s) selected, now moved down one index foreach (int selectedIndex in selectedIndices) @@ -373,17 +379,34 @@ namespace Handbrake OpenFile.ShowDialog(); if (OpenFile.FileName != String.Empty) queue.LoadQueueFromFile(OpenFile.FileName); - updateUIElements(); + UpdateUIElements(); } private void mnu_readd_Click(object sender, EventArgs e) { if (!queue.LastEncode.IsEmpty) { - queue.AddJob(queue.LastEncode.Query, queue.LastEncode.Source, queue.LastEncode.Destination, queue.LastEncode.CustomQuery); - updateUIElements(); + queue.Add(queue.LastEncode.Query, queue.LastEncode.Source, queue.LastEncode.Destination, queue.LastEncode.CustomQuery); + UpdateUIElements(); + } + } + private void mnu_reconfigureJob_Click(object sender, EventArgs e) + { + if (list_queue.SelectedIndices != null) + { + lock (queue) + { + lock (list_queue) + { + int index = list_queue.SelectedIndices[0]; + mainWindow.RecievingJob(queue.GetJob(index)); + queue.Remove(index); + RedrawQueue(); + } + } } } + // Hide's the window when the user tries to "x" out of the window instead of closing it. protected override void OnClosing(CancelEventArgs e) { @@ -391,6 +414,5 @@ namespace Handbrake this.Hide(); base.OnClosing(e); } - } }