2 using System.Collections.Generic;
\r
3 using System.ComponentModel;
\r
5 using System.Drawing;
\r
7 using System.Windows.Forms;
\r
8 using System.Threading;
\r
9 using System.Diagnostics;
\r
13 public partial class frmQueue : Form
\r
15 private delegate void ProgressUpdateHandler();
\r
19 InitializeComponent();
\r
22 int initialListCount = 0;
\r
23 bool started = false;
\r
26 private void btn_q_encoder_Click(object sender, EventArgs e)
\r
28 progressBar.Value = 0;
\r
29 lbl_progressValue.Text = "0 %";
\r
30 progressBar.Step = 100 / list_queue.Items.Count;
\r
31 progressBar.Update();
\r
32 ThreadPool.QueueUserWorkItem(startProc);
\r
37 * Code to Handle the CLI and updating of the UI as each process is completed.
\r
40 private void startProc(object state)
\r
43 initialListCount = list_queue.Items.Count;
\r
44 for (int i = 0; i < initialListCount; i++)
\r
46 string query = list_queue.Items[0].ToString();
\r
48 Functions.CLI process = new Functions.CLI();
\r
49 Process hbProc = process.runCli(this, query, false, false, false, false);
\r
51 hbProc.WaitForExit();
\r
56 if ((initialListCount - i) != (list_queue.Items.Count))
\r
63 MessageBox.Show("Encode Queue Completed!", "Alert", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
\r
66 private void updateUIElements()
\r
68 if (this.InvokeRequired)
\r
70 this.BeginInvoke(new ProgressUpdateHandler(updateUIElements));
\r
73 this.list_queue.Items.RemoveAt(0);
\r
74 progressBar.PerformStep();
\r
75 lbl_progressValue.Text = string.Format("{0} %", progressBar.Value);
\r
76 progressBar.Update();
\r
79 private void resetQueue()
\r
81 if (this.InvokeRequired)
\r
83 this.BeginInvoke(new ProgressUpdateHandler(resetQueue));
\r
86 lbl_progressValue.Text = "0 %";
\r
87 progressBar.Value = 0;
\r
88 progressBar.Update();
\r
93 * Code to Re-arrange / Delete items from the Queue
\r
96 private void btn_up_Click(object sender, EventArgs e)
\r
98 int count = list_queue.Items.Count;
\r
99 int itemToMove = list_queue.SelectedIndex;
\r
100 int previousItemint = 0;
\r
101 String previousItem = "";
\r
103 if (itemToMove > 0)
\r
105 previousItemint = itemToMove - 1;
\r
106 previousItem = list_queue.Items[previousItemint].ToString();
\r
107 list_queue.Items[previousItemint] = list_queue.Items[itemToMove];
\r
108 list_queue.Items[itemToMove] = previousItem;
\r
109 list_queue.SelectedIndex = list_queue.SelectedIndex - 1;
\r
113 private void btn_down_Click(object sender, EventArgs e)
\r
115 int count = list_queue.Items.Count;
\r
116 int itemToMove = list_queue.SelectedIndex;
\r
117 int itemAfterInt = 0;
\r
118 String itemAfter = "";
\r
120 if (itemToMove < (count - 1))
\r
122 itemAfterInt = itemToMove + 1;
\r
123 itemAfter = list_queue.Items[itemAfterInt].ToString();
\r
124 list_queue.Items[itemAfterInt] = list_queue.Items[itemToMove];
\r
125 list_queue.Items[itemToMove] = itemAfter;
\r
126 list_queue.SelectedIndex = list_queue.SelectedIndex + 1;
\r
130 private void btn_delete_Click(object sender, EventArgs e)
\r
132 list_queue.Items.Remove(list_queue.SelectedItem);
\r
133 if (started == true)
\r
134 initialListCount--;
\r
138 * Hide the Queue Window
\r
140 private void btn_Close_Click(object sender, EventArgs e)
\r