/* frmMain.cs $\r
- \r
- This file is part of the HandBrake source code.\r
- Homepage: <http://handbrake.fr/>.\r
- It may be used under the terms of the GNU General Public License. */\r
+ This file is part of the HandBrake source code.\r
+ Homepage: <http://handbrake.fr/>.\r
+ It may be used under the terms of the GNU General Public License. */\r
\r
namespace Handbrake\r
{\r
\r
private void mnu_importMacPreset_Click(object sender, EventArgs e)\r
{\r
- importPreset();\r
+ ImportPreset();\r
}\r
\r
private void btn_new_preset_Click(object sender, EventArgs e)\r
\r
private void pmnu_import_Click(object sender, EventArgs e)\r
{\r
- importPreset();\r
+ ImportPreset();\r
}\r
\r
private void pmnu_saveChanges_Click(object sender, EventArgs e)\r
}\r
}\r
\r
- private void importPreset()\r
+ private void ImportPreset()\r
{\r
if (openPreset.ShowDialog() == DialogResult.OK)\r
{\r
else\r
{\r
PresetLoader.LoadPreset(this, parsed, parsed.PresetName, parsed.UsesPictureSettings);\r
- presetHandler.Add(parsed.PresetName,\r
- QueryGenerator.GenerateCliQuery(this, drop_mode.SelectedIndex, 0, null),\r
- parsed.UsesPictureSettings);\r
-\r
if (presetHandler.Add(parsed.PresetName + " (Imported)",\r
QueryGenerator.GenerateCliQuery(this, drop_mode.SelectedIndex, 0, null),\r
parsed.UsesPictureSettings))\r
if (overwrite == DialogResult.Yes)\r
{\r
if (encodeQueue.Count == 0)\r
- encodeQueue.Add(query, sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
+ encodeQueue.Add(query, getTitle(), sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
\r
queueWindow.SetQueue();\r
if (encodeQueue.Count > 1)\r
"There is already a queue item for this destination path. \n\n If you continue, the encode will be overwritten. Do you wish to continue?",\r
"Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);\r
if (result == DialogResult.Yes)\r
- encodeQueue.Add(query, sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
+ encodeQueue.Add(query, getTitle(), sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
}\r
else\r
- encodeQueue.Add(query, sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
+ encodeQueue.Add(query, getTitle(), sourcePath, text_destination.Text, (rtf_query.Text != string.Empty));\r
\r
lbl_encode.Text = encodeQueue.Count + " encode(s) pending in the queue";\r
\r
drop_chapterFinish.Items.Clear();\r
\r
// If the dropdown is set to automatic nothing else needs to be done.\r
- // Otheriwse if its not, title data has to be loased from parsing.\r
+ // Otheriwse if its not, title data has to be loaded from parsing.\r
if (drp_dvdtitle.Text != "Automatic")\r
{\r
selectedTitle = drp_dvdtitle.SelectedItem as Title;\r
drop_chapterFinish.Text = drop_chapterFinish.Items[drop_chapterFinish.Items.Count - 1].ToString();\r
\r
// Populate the Audio Channels Dropdown\r
- AudioSettings.SetTrackList(selectedTitle);\r
+ AudioSettings.SetTrackList(selectedTitle, CurrentlySelectedPreset);\r
\r
// Populate the Subtitles dropdown\r
Subtitles.SetSubtitleTrackAuto(selectedTitle.Subtitles.ToArray());\r
break;\r
case 2:\r
if (\r
- !Path.GetExtension(DVD_Save.FileName).Equals(".mkv",\r
- StringComparison.InvariantCultureIgnoreCase))\r
+ !Path.GetExtension(DVD_Save.FileName).Equals(".mkv", StringComparison.InvariantCultureIgnoreCase))\r
DVD_Save.FileName = DVD_Save.FileName.Replace(".mp4", ".mkv").Replace(".m4v", ".mkv");\r
break;\r
default:\r
double multiplier = 1.0 / cqStep;\r
double value = slider_videoQuality.Value * multiplier;\r
\r
- switch (Properties.Settings.Default.x264cqstep.ToString(culture))\r
- {\r
- case "0.2":\r
- slider_videoQuality.Maximum = 255;\r
- break;\r
- case "0.25":\r
- slider_videoQuality.Maximum = 204;\r
- break;\r
- case "0.5":\r
- slider_videoQuality.Maximum = 102;\r
- break;\r
- case "1":\r
- slider_videoQuality.Maximum = 51;\r
- break;\r
- default:\r
- slider_videoQuality.Maximum = 51;\r
- break;\r
- }\r
+ slider_videoQuality.Maximum = (int)(51 / Properties.Settings.Default.x264cqstep);\r
+\r
if (value < slider_videoQuality.Maximum)\r
slider_videoQuality.Value = slider_videoQuality.Maximum - (int)value;\r
\r
double rfValue = 51.0 - slider_videoQuality.Value * cqStep;\r
\r
// Change the maximum value for the slider\r
- switch (Properties.Settings.Default.x264cqstep.ToString(new CultureInfo("en-US")))\r
- {\r
- case "0.2":\r
- slider_videoQuality.Maximum = 255;\r
- break;\r
- case "0.25":\r
- slider_videoQuality.Maximum = 204;\r
- break;\r
- case "0.5":\r
- slider_videoQuality.Maximum = 102;\r
- break;\r
- case "1":\r
- slider_videoQuality.Maximum = 51;\r
- break;\r
- default:\r
- slider_videoQuality.Maximum = 51;\r
- break;\r
- }\r
+ slider_videoQuality.Maximum = (int)(51 / Properties.Settings.Default.x264cqstep);\r
\r
// Reset the CQ slider to RF0\r
slider_videoQuality.Value = slider_videoQuality.Maximum;\r
drp_dvdtitle.SelectedItem = Main.SelectLongestTitle(currentSource);\r
\r
// Enable the creation of chapter markers if the file is an image of a dvd.\r
- if (sourcePath.ToLower().Contains(".iso") || sourcePath.Contains("VIDEO_TS") ||\r
- Directory.Exists(Path.Combine(sourcePath, "VIDEO_TS")))\r
+ int start, end;\r
+ int.TryParse(drop_chapterStart.Items[0].ToString(), out start);\r
+ int.TryParse(drop_chapterFinish.Items[drop_chapterFinish.Items.Count - 1].ToString(), out end);\r
+ if (end > start)\r
Check_ChapterMarkers.Enabled = true;\r
else\r
{\r
public void RecievingJob(Job job)\r
{\r
string query = job.Query;\r
- StartScan(job.Source, 0);\r
-\r
+ StartScan(job.Source, job.Title);\r
\r
if (query != null)\r
{\r
treeView_presets.Update();\r
}\r
\r
+ /// <summary>\r
+ /// Get the title from the selected item in the title dropdown.\r
+ /// </summary>\r
+ /// <returns>\r
+ /// The title.\r
+ /// </returns>\r
+ private int getTitle()\r
+ {\r
+ int title = 0;\r
+ if (drp_dvdtitle.SelectedItem != null)\r
+ {\r
+ string[] titleInfo = drp_dvdtitle.SelectedItem.ToString().Split(' ');\r
+ int.TryParse(titleInfo[0], out title);\r
+ }\r
+\r
+ return title;\r
+ }\r
+\r
#endregion\r
\r
#region Overrides\r