System.Windows.Forms.Label Label38;\r
System.Windows.Forms.ContextMenuStrip notifyIconMenu;\r
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmMain));\r
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();\r
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();\r
this.btn_restore = new System.Windows.Forms.ToolStripMenuItem();\r
this.DVD_Save = new System.Windows.Forms.SaveFileDialog();\r
this.File_Save = new System.Windows.Forms.SaveFileDialog();\r
this.btn_add2Queue = new System.Windows.Forms.ToolStripButton();\r
this.btn_showQueue = new System.Windows.Forms.ToolStripButton();\r
this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();\r
- this.btn_vidPreview = new System.Windows.Forms.ToolStripButton();\r
this.btn_ActivityWindow = new System.Windows.Forms.ToolStripButton();\r
this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);\r
this.StatusStrip = new System.Windows.Forms.StatusStrip();\r
this.lbl_encode = new System.Windows.Forms.ToolStripStatusLabel();\r
+ this.tb_preview = new System.Windows.Forms.ToolStripDropDownButton();\r
+ this.mnu_qtpreview = new System.Windows.Forms.ToolStripMenuItem();\r
+ this.mnu_vlcpreview = new System.Windows.Forms.ToolStripMenuItem();\r
Label38 = new System.Windows.Forms.Label();\r
notifyIconMenu = new System.Windows.Forms.ContextMenuStrip(this.components);\r
notifyIconMenu.SuspendLayout();\r
// \r
// number\r
// \r
- dataGridViewCellStyle1.Format = "N0";\r
- dataGridViewCellStyle1.NullValue = null;\r
- this.number.DefaultCellStyle = dataGridViewCellStyle1;\r
+ dataGridViewCellStyle3.Format = "N0";\r
+ dataGridViewCellStyle3.NullValue = null;\r
+ this.number.DefaultCellStyle = dataGridViewCellStyle3;\r
this.number.HeaderText = "Chapter Number";\r
this.number.MaxInputLength = 3;\r
this.number.Name = "number";\r
this.btn_add2Queue,\r
this.btn_showQueue,\r
this.toolStripSeparator4,\r
- this.btn_vidPreview,\r
+ this.tb_preview,\r
this.btn_ActivityWindow});\r
this.toolStrip1.Location = new System.Drawing.Point(0, 24);\r
this.toolStrip1.Name = "toolStrip1";\r
this.toolStripSeparator4.Name = "toolStripSeparator4";\r
this.toolStripSeparator4.Size = new System.Drawing.Size(6, 39);\r
// \r
- // btn_vidPreview\r
- // \r
- this.btn_vidPreview.Image = global::Handbrake.Properties.Resources.picture;\r
- this.btn_vidPreview.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
- this.btn_vidPreview.ImageTransparentColor = System.Drawing.Color.Magenta;\r
- this.btn_vidPreview.Name = "btn_vidPreview";\r
- this.btn_vidPreview.Size = new System.Drawing.Size(81, 36);\r
- this.btn_vidPreview.Text = "Preview";\r
- this.btn_vidPreview.Click += new System.EventHandler(this.btn_vidPreview_Click);\r
- // \r
// btn_ActivityWindow\r
// \r
this.btn_ActivityWindow.Image = global::Handbrake.Properties.Resources.ActivityWindow;\r
this.lbl_encode.Size = new System.Drawing.Size(31, 17);\r
this.lbl_encode.Text = "{0}";\r
// \r
+ // tb_preview\r
+ // \r
+ this.tb_preview.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
+ this.mnu_qtpreview,\r
+ this.mnu_vlcpreview});\r
+ this.tb_preview.Image = global::Handbrake.Properties.Resources.picture;\r
+ this.tb_preview.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
+ this.tb_preview.ImageTransparentColor = System.Drawing.Color.Magenta;\r
+ this.tb_preview.Name = "tb_preview";\r
+ this.tb_preview.Size = new System.Drawing.Size(90, 36);\r
+ this.tb_preview.Text = "Preview";\r
+ // \r
+ // mnu_qtpreview\r
+ // \r
+ this.mnu_qtpreview.Name = "mnu_qtpreview";\r
+ this.mnu_qtpreview.Size = new System.Drawing.Size(185, 22);\r
+ this.mnu_qtpreview.Text = "Preview in QuickTime";\r
+ this.mnu_qtpreview.Click += new System.EventHandler(this.mnu_qtpreview_Click);\r
+ // \r
+ // mnu_vlcpreview\r
+ // \r
+ this.mnu_vlcpreview.Name = "mnu_vlcpreview";\r
+ this.mnu_vlcpreview.Size = new System.Drawing.Size(185, 22);\r
+ this.mnu_vlcpreview.Text = "Preview in VLC";\r
+ this.mnu_vlcpreview.Click += new System.EventHandler(this.mnu_vlcpreview_Click);\r
+ // \r
// frmMain\r
// \r
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
private System.Windows.Forms.ToolStripSeparator sep1;\r
private System.Windows.Forms.ToolStripMenuItem pmnu_delete;\r
private System.Windows.Forms.SplitContainer splitContainer1;\r
- private System.Windows.Forms.ToolStripButton btn_vidPreview;\r
private System.Windows.Forms.Button btn_RemoveAudioTrack;\r
private System.Windows.Forms.Button btn_addAudioTrack;\r
private System.Windows.Forms.ColumnHeader col_Source;\r
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;\r
private System.Windows.Forms.ToolStripMenuItem audioList_remove;\r
private System.Windows.Forms.ImageList AudioMenuRowHeightHack;\r
+ private System.Windows.Forms.ToolStripDropDownButton tb_preview;\r
+ private System.Windows.Forms.ToolStripMenuItem mnu_qtpreview;\r
+ private System.Windows.Forms.ToolStripMenuItem mnu_vlcpreview;\r
\r
}\r
}
\ No newline at end of file
\r
// Globals: Mainly used for tracking.\r
private frmQueue queueWindow;\r
- private frmGenPreview preview;\r
+ private frmGenPreview vlcpreview;\r
+ private frmPreview qtpreview;\r
private string lastAction = null;\r
public int maxWidth = 0;\r
public int maxHeight = 0;\r
queueWindow.setQueue(encodeQueue);\r
queueWindow.Show();\r
}\r
- private void btn_vidPreview_Click(object sender, EventArgs e)\r
+ private void mnu_vlcpreview_Click(object sender, EventArgs e)\r
{\r
if (text_source.Text == "" || text_source.Text == "Click 'Source' to continue" || text_destination.Text == "")\r
MessageBox.Show("No source OR destination selected.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
else\r
{\r
- if (preview == null)\r
+ if (vlcpreview == null)\r
{\r
- preview = new frmGenPreview(this);\r
- preview.Show();\r
+ vlcpreview = new frmGenPreview(this);\r
+ vlcpreview.Show();\r
}\r
- else if (preview.IsDisposed)\r
+ else if (vlcpreview.IsDisposed)\r
{\r
- preview = new frmGenPreview(this);\r
- preview.Show();\r
+ vlcpreview = new frmGenPreview(this);\r
+ vlcpreview.Show();\r
+ }\r
+ else\r
+ MessageBox.Show("The preview window is already open!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+ }\r
+ }\r
+ private void mnu_qtpreview_Click(object sender, EventArgs e)\r
+ {\r
+ if (text_source.Text == "" || text_source.Text == "Click 'Source' to continue" || text_destination.Text == "")\r
+ MessageBox.Show("No source OR destination selected.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+ else\r
+ {\r
+ if (qtpreview == null)\r
+ {\r
+ qtpreview = new frmPreview(this);\r
+ qtpreview.Show();\r
+ }\r
+ else if (qtpreview.IsDisposed)\r
+ {\r
+ qtpreview = new frmPreview(this);\r
+ qtpreview.Show();\r
}\r
else\r
MessageBox.Show("The preview window is already open!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
String currently_playing = "";\r
frmMain mainWindow;\r
private Process hbProc;\r
+ private Thread player;\r
\r
public frmPreview(frmMain mw)\r
{\r
cb_duration.SelectedIndex = 1;\r
}\r
\r
- private void OpenMovie(string url)\r
+ private void play()\r
+ {\r
+ player = new Thread(OpenMovie);\r
+ player.IsBackground = true;\r
+ player.Start();\r
+ }\r
+\r
+ [STAThread]\r
+ private void OpenMovie()\r
{\r
try\r
{\r
- QTControl.URL = url;\r
+ if (this.InvokeRequired)\r
+ {\r
+ this.BeginInvoke(new UpdateUIHandler(OpenMovie));\r
+ return;\r
+ }\r
+ QTControl.URL = currently_playing;\r
QTControl.Width = QTControl.Movie.Width;\r
QTControl.Height = QTControl.Movie.Height;\r
// The initial control size is 64,64. If we do not reload the clip here\r
// it'll scale the video from 64,64. \r
// Unsure why as it correctly resizes the control to the movies actual size.\r
- QTControl.URL = url; \r
+ QTControl.URL = currently_playing; \r
QTControl.SetScale(0);\r
QTControl.Show();\r
\r
MessageBox.Show("Unable to open movie:\n\n" + ex.ToString());\r
}\r
}\r
-\r
+ \r
#region Encode Sample\r
private void btn_encode_Click(object sender, EventArgs e)\r
{\r
if (mainWindow.text_destination.Text != "")\r
currently_playing = mainWindow.text_destination.Text.Replace(".m", "_sample.m").Replace(".avi", "_sample.avi").Replace(".ogm", "_sample.ogm");\r
\r
- OpenMovie(currently_playing);\r
+ play();\r
lbl_encode.Text = "";\r
}\r
catch (Exception exc)\r