summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsr55 <[email protected]>2011-07-23 19:13:05 +0000
committersr55 <[email protected]>2011-07-23 19:13:05 +0000
commit0acf6155a9410cd1faf207b2cf77fc31f392e396 (patch)
tree9178cd036b455c39004448ee4fa3f9601fc1249d
parent80dc05bf339c0bbe492a6d20ccc013812c4582c2 (diff)
WinGui: Auto Selection of Audio and Subtitles - Patch by vendolis (Thanks!)
Adds finer grained control of the Automatic Audio and Subtitle selection feature. Adds the ability to select multiple languages. https://reviews.handbrake.fr/r/158/ git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4127 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r--win/CS/Controls/AudioPanel.cs129
-rw-r--r--win/CS/Controls/Subtitles.cs108
-rw-r--r--win/CS/HandBrake.ApplicationServices/Services/Interfaces/IUserSettingService.cs12
-rw-r--r--win/CS/HandBrake.ApplicationServices/Services/UserSettingService.cs19
-rw-r--r--win/CS/Properties/Resources.Designer.cs30
-rw-r--r--win/CS/Properties/Resources.resx132
-rw-r--r--win/CS/Properties/Settings.Designer.cs53
-rw-r--r--win/CS/Properties/Settings.settings15
-rw-r--r--win/CS/Resources/arrow_down.pngbin0 -> 625 bytes
-rw-r--r--win/CS/Resources/arrow_left.pngbin0 -> 654 bytes
-rw-r--r--win/CS/Resources/arrow_right.pngbin0 -> 793 bytes
-rw-r--r--win/CS/Resources/arrow_up.pngbin0 -> 669 bytes
-rw-r--r--win/CS/app.config17
-rw-r--r--win/CS/frmOptions.Designer.cs714
-rw-r--r--win/CS/frmOptions.cs296
15 files changed, 1304 insertions, 221 deletions
diff --git a/win/CS/Controls/AudioPanel.cs b/win/CS/Controls/AudioPanel.cs
index fefd694ac..fe56bfbdd 100644
--- a/win/CS/Controls/AudioPanel.cs
+++ b/win/CS/Controls/AudioPanel.cs
@@ -6,6 +6,7 @@
namespace Handbrake.Controls
{
using System;
+ using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
@@ -213,7 +214,7 @@ namespace Handbrake.Controls
}
}
- if (this.AudioTracks.Count > 0)
+ if (selectedTitle.AudioTracks.Count > 0)
{
this.AutomaticTrackSelection();
}
@@ -553,69 +554,115 @@ namespace Handbrake.Controls
/// </summary>
private void AutomaticTrackSelection()
{
+ // Sanity check that we have Audio Tracks and if not, clear the track list.
if (drp_audioTrack.SelectedItem != null && drp_audioTrack.SelectedItem.ToString() == AudioHelper.NoneFound.Description)
{
this.AudioTracks.Clear();
return;
}
- // Handle Native Language and "Dub Foreign language audio" and "Use Foreign language audio and Subtitles" Options
+ // Remove all old Audiotracks before adding new ones.
+ this.AudioTracks.Clear();
+
+ // Array with the Index numbers of the prefered and additional languages.
+ // This allows to have for each language the order in which they appear in the DVD list.
+ Dictionary<String, ArrayList> languageIndex = new Dictionary<String, ArrayList>();
+
+ // This is used to keep the Prefered Language in the front and the other languages in order.
+ ArrayList languageOrder = new ArrayList();
+
+ // New DUB Settings
+ int mode = Properties.Settings.Default.DubModeAudio;
+
if (Properties.Settings.Default.NativeLanguage == "Any")
+ mode = 2;
+
+ // Native Language is not 'Any', so initialising the Language Dictionary
+ if (mode >= 3)
{
- drp_audioTrack.SelectedIndex = 0;
- foreach (AudioTrack track in this.audioTracks)
+ languageIndex.Add(Properties.Settings.Default.NativeLanguage, new ArrayList());
+ languageOrder.Add(Properties.Settings.Default.NativeLanguage);
+
+ foreach (string item in Properties.Settings.Default.SelectedLanguages)
{
- if (this.drp_audioTrack.SelectedItem != null)
+ if (!languageIndex.ContainsKey(item))
{
- track.ScannedTrack = this.drp_audioTrack.SelectedItem as Audio;
+ languageIndex.Add(item, new ArrayList());
+ languageOrder.Add(item);
}
}
- }
- else
- {
- int mode = Properties.Settings.Default.DubMode;
- switch (mode)
+
+ bool elementFound = false;
+ int i = 0;
+ foreach (object item in drp_audioTrack.Items)
{
- case 1:
- case 3:
- // Dub Foreign Language Audio
- // Select the prefered language audio, or the first track if it doesn't exist.
- int i = 0;
- foreach (object item in drp_audioTrack.Items)
+ foreach (KeyValuePair<String, ArrayList> kvp in languageIndex)
+ {
+ if (item.ToString().Contains(kvp.Key))
{
- if (item.ToString().Contains(Properties.Settings.Default.NativeLanguage))
+ // Only the first Element if the "Only One Audio"-option is chosen.
+ if (!Properties.Settings.Default.addOnlyOneAudioPerLanguage || kvp.Value.Count == 0)
{
- drp_audioTrack.SelectedIndex = i;
- break;
+ kvp.Value.Add(i);
}
- i++;
+ elementFound = true;
}
+ }
- if (drp_audioTrack.SelectedItem != null)
- foreach (AudioTrack track in this.audioTracks)
- track.ScannedTrack =
- drp_audioTrack.SelectedItem as Audio;
- else
+ i++;
+ }
+
+ // If there are no selected languages found, the first available will be taken.
+ if (!elementFound)
+ mode = 2;
+ }
+
+ switch (mode)
+ {
+ case 1: // Adding all audio tracks
+ this.mnu_AddAll_Click(this, EventArgs.Empty);
+ break;
+ case 2: // Adding only the first Audio Track
+ drp_audioTrack.SelectedIndex = 0;
+ if (drp_audioTrack.SelectedItem != null)
+ this.AddAudioTrack_Click(this, EventArgs.Empty);
+ break;
+ case 3:
+ foreach (string item in languageOrder)
+ {
+ if (languageIndex[item].Count > 0)
{
- drp_audioTrack.SelectedIndex = 0;
+ foreach (int i in languageIndex[item])
+ {
+ drp_audioTrack.SelectedIndex = i;
+ if (drp_audioTrack.SelectedItem != null)
+ {
+ this.AddAudioTrack_Click(this, EventArgs.Empty);
+ audioList.ClearSelection();
+ }
+ }
+ }
+ }
+ break;
+ case 4:
+ if (languageIndex[(string)languageOrder[0]].Count > 0)
+ {
+ foreach (int i in languageIndex[(string)languageOrder[0]])
+ {
+ drp_audioTrack.SelectedIndex = i;
if (drp_audioTrack.SelectedItem != null)
- foreach (AudioTrack track in this.audioTracks)
- track.ScannedTrack = drp_audioTrack.SelectedItem as Audio;
+ {
+ this.AddAudioTrack_Click(this, EventArgs.Empty);
+ audioList.ClearSelection();
+ }
}
-
- break;
- case 2:
- default:
- // Select the first track which is hopefully the default and foreign track.
- drp_audioTrack.SelectedIndex = 0;
-
- if (drp_audioTrack.SelectedItem != null)
- foreach (AudioTrack track in this.audioTracks)
- track.ScannedTrack = drp_audioTrack.SelectedItem as Audio;
- break;
- }
+ }
+ break;
}
+
+ // Revert the selection back tio the first item.
+ drp_audioTrack.SelectedIndex = 0;
}
/// <summary>
diff --git a/win/CS/Controls/Subtitles.cs b/win/CS/Controls/Subtitles.cs
index e277a8c1a..1c8bef8cc 100644
--- a/win/CS/Controls/Subtitles.cs
+++ b/win/CS/Controls/Subtitles.cs
@@ -6,6 +6,7 @@
namespace Handbrake.Controls
{
using System;
+ using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
@@ -190,23 +191,114 @@ namespace Handbrake.Controls
/// </summary>
public void AutomaticSubtitleSelection()
{
- // Handle Native Language and "Dub Foreign language audio" and "Use Foreign language audio and Subtitles" Options
- if (Properties.Settings.Default.NativeLanguage != "Any")
+ // Avoid trying to add elements when no subtitles are there.
+ if (drp_subtitleTracks.Items.Count < 2)
{
- if (Properties.Settings.Default.DubMode != 1) // We need to add a subtitle track if this is false.
+ return;
+ }
+
+ this.Clear();
+
+ // Array with the Index numbers of the prefered and additional languages.
+ // This allows to have for each language the order in which they appear in the DVD list.
+ Dictionary<String, ArrayList> languageIndex = new Dictionary<String, ArrayList>();
+
+ // This is used to keep the Prefered Language in the front and the other languages in order.
+ ArrayList languageOrder = new ArrayList();
+
+ // New DUB Settings
+ int mode = Properties.Settings.Default.DubModeSubtitle;
+
+ if (Properties.Settings.Default.NativeLanguage == "Any")
+ mode = 0;
+
+ // Native Language is not 'Any', so initialising the Language Dictionary
+ if (mode >= 3)
+ {
+ languageIndex.Add(Properties.Settings.Default.NativeLanguage, new ArrayList());
+ languageOrder.Add(Properties.Settings.Default.NativeLanguage);
+
+ foreach (string item in Properties.Settings.Default.SelectedLanguages)
{
- foreach (object item in drp_subtitleTracks.Items)
+ if (!languageIndex.ContainsKey(item))
{
- if (item.ToString().Contains(Properties.Settings.Default.NativeLanguage))
+ languageIndex.Add(item, new ArrayList());
+ languageOrder.Add(item);
+ }
+ }
+
+ bool elementFound = false;
+ int i = 0;
+ foreach (object item in drp_subtitleTracks.Items)
+ {
+ foreach (KeyValuePair<String, ArrayList> kvp in languageIndex)
+ {
+ if (item.ToString().Contains(kvp.Key))
{
- drp_subtitleTracks.SelectedItem = item;
- BtnAddSubTrackClick(this, new EventArgs());
+ kvp.Value.Add(i);
+ elementFound = true;
}
}
+
+ i++;
}
+
+ // If there are no selected languages found, the first available will be taken.
+ if (!elementFound)
+ mode = 2;
}
+ switch (mode)
+ {
+ case 1: // Adding all audio tracks
+ for (int i = 1; i < drp_subtitleTracks.Items.Count; i++)
+ {
+ drp_subtitleTracks.SelectedIndex = i;
+ this.BtnAddSubTrackClick(this, new EventArgs());
+ }
+ break;
+ case 2: // Adding only the first Audio Track
+ drp_subtitleTracks.SelectedIndex = 1;
+ if (drp_subtitleTracks.SelectedItem != null)
+ this.BtnAddSubTrackClick(this, new EventArgs());
+ break;
+ case 3:
+ foreach (string item in languageOrder)
+ {
+ if (languageIndex[item].Count > 0)
+ {
+ foreach (int i in languageIndex[item])
+ {
+ drp_subtitleTracks.SelectedIndex = i;
+ if (drp_subtitleTracks.SelectedItem != null)
+ {
+ this.BtnAddSubTrackClick(this, new EventArgs());
+ //subList.ClearSelection();
+ }
+ }
+ }
+ }
+ break;
+ case 4:
+ if (languageIndex[(string)languageOrder[0]].Count > 0)
+ {
+ foreach (int i in languageIndex[(string)languageOrder[0]])
+ {
+ drp_subtitleTracks.SelectedIndex = i;
+ if (drp_subtitleTracks.SelectedItem != null)
+ {
+ this.BtnAddSubTrackClick(this, new EventArgs());
+ //subList.ClearSelection();
+ }
+ }
+ }
+ break;
+ }
+
+ // Revert the selection back tio the first item.
+ drp_subtitleTracks.SelectedIndex = 0;
+ // Add Closed Captions if the user has the option enabled.
if (Properties.Settings.Default.useClosedCaption)
{
foreach (object item in drp_subtitleTracks.Items)
@@ -214,7 +306,7 @@ namespace Handbrake.Controls
if (item.ToString().Contains("Closed"))
{
drp_subtitleTracks.SelectedItem = item;
- BtnAddSubTrackClick(this, new EventArgs());
+ BtnAddSubTrackClick(this, EventArgs.Empty);
}
}
}
diff --git a/win/CS/HandBrake.ApplicationServices/Services/Interfaces/IUserSettingService.cs b/win/CS/HandBrake.ApplicationServices/Services/Interfaces/IUserSettingService.cs
index 46ca316f4..9a96edab2 100644
--- a/win/CS/HandBrake.ApplicationServices/Services/Interfaces/IUserSettingService.cs
+++ b/win/CS/HandBrake.ApplicationServices/Services/Interfaces/IUserSettingService.cs
@@ -65,5 +65,17 @@ namespace HandBrake.ApplicationServices.Services.Interfaces
/// The settings value
/// </returns>
double GetUserSettingDouble(string name);
+
+ /// <summary>
+ /// Get an StringCollection type user setting
+ /// </summary>
+ /// <param name="name">
+ /// The setting name
+ /// </param>
+ /// <returns>
+ /// The settings value
+ /// </returns>
+ System.Collections.Specialized.StringCollection GetUserSettingStringCollection(string name);
+
}
} \ No newline at end of file
diff --git a/win/CS/HandBrake.ApplicationServices/Services/UserSettingService.cs b/win/CS/HandBrake.ApplicationServices/Services/UserSettingService.cs
index 87d77324f..f6d6c55e2 100644
--- a/win/CS/HandBrake.ApplicationServices/Services/UserSettingService.cs
+++ b/win/CS/HandBrake.ApplicationServices/Services/UserSettingService.cs
@@ -91,5 +91,24 @@ namespace HandBrake.ApplicationServices.Services
return value;
}
+
+ /// <summary>
+ /// Get an StringCollection type user setting
+ /// </summary>
+ /// <param name="name">
+ /// The setting name
+ /// </param>
+ /// <returns>
+ /// The settings value
+ /// </returns>
+ public System.Collections.Specialized.StringCollection GetUserSettingStringCollection(string name)
+ {
+ System.Collections.Specialized.StringCollection value;
+
+ value = (System.Collections.Specialized.StringCollection) Properties.Settings.Default[name];
+
+ return value;
+ }
+
}
}
diff --git a/win/CS/Properties/Resources.Designer.cs b/win/CS/Properties/Resources.Designer.cs
index 81617ccdb..43f3aa29a 100644
--- a/win/CS/Properties/Resources.Designer.cs
+++ b/win/CS/Properties/Resources.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:4.0.30319.1
+// Runtime Version:4.0.30319.235
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -95,6 +95,34 @@ namespace Handbrake.Properties {
}
}
+ internal static System.Drawing.Bitmap arrow_down {
+ get {
+ object obj = ResourceManager.GetObject("arrow_down", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ internal static System.Drawing.Bitmap arrow_left {
+ get {
+ object obj = ResourceManager.GetObject("arrow_left", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ internal static System.Drawing.Bitmap arrow_right {
+ get {
+ object obj = ResourceManager.GetObject("arrow_right", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
+ internal static System.Drawing.Bitmap arrow_up {
+ get {
+ object obj = ResourceManager.GetObject("arrow_up", resourceCulture);
+ return ((System.Drawing.Bitmap)(obj));
+ }
+ }
+
internal static System.Drawing.Bitmap Close {
get {
object obj = ResourceManager.GetObject("Close", resourceCulture);
diff --git a/win/CS/Properties/Resources.resx b/win/CS/Properties/Resources.resx
index 9b2288d09..8267bd007 100644
--- a/win/CS/Properties/Resources.resx
+++ b/win/CS/Properties/Resources.resx
@@ -118,109 +118,121 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="General_Preferences" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\General Preferences.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="Pref_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Pref_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
<data name="ActivityWindow" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ActivityWindow.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
+ <data name="Help16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Help16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="Download" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\download.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="info16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\info16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="picture" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\picture.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
<data name="Play" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Play.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Pause" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Pause.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="Restore" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Restore.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Output_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Output_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="AddToQueue_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\AddToQueue_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Queue_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Queue_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="window" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\resources\window.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Movies" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Movies.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Movies_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Movies_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="folder" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\folder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="AddToQueue" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\AddToQueue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\resources\copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="Pref_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Pref_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="disc_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\resources\disc_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="ActivityWindow_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\resources\activitywindow_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="Output_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Output_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="hb16" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\hb16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="logo128" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\logo128.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="Pause" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Pause.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="Help24" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Help24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="Help32" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Help32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="hb32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\hb32.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Help16" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Help16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="Queue_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Queue_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="info16" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\info16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="ActivityWindow_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\resources\activitywindow_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="General_Preferences" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\General Preferences.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="logo64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\logo64.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="stop" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\stop.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="folder" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\folder.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="save" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="ErrorX" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\ErrorX.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Queue" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Queue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="copy" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\resources\copy.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="window" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\resources\window.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="Close" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="picture" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\picture.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="save" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\save.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="AddToQueue_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\AddToQueue_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="AddToQueue" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\AddToQueue.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Play_small" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Play_small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Download" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\download.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="Restore" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Restore.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="logo128" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\logo128.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="ErrorX" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\ErrorX.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="Help24" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Help24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
- </data>
- <data name="Help32" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Help32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="Movies_Small" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\Movies_Small.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Add16" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Add16.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
+ <data name="hb16" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\hb16.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
<data name="Options24" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Options24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="Close" type="System.Resources.ResXFileRef, System.Windows.Forms">
- <value>..\Resources\Close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ <data name="arrow_left" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\arrow_left.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="arrow_right" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\arrow_right.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="arrow_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\arrow_down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
+ </data>
+ <data name="arrow_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
+ <value>..\Resources\arrow_up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root> \ No newline at end of file
diff --git a/win/CS/Properties/Settings.Designer.cs b/win/CS/Properties/Settings.Designer.cs
index b97ad5ed4..a2da3dc99 100644
--- a/win/CS/Properties/Settings.Designer.cs
+++ b/win/CS/Properties/Settings.Designer.cs
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
-// Runtime Version:4.0.30319.225
+// Runtime Version:4.0.30319.235
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -252,7 +252,7 @@ namespace Handbrake.Properties {
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
- [global::System.Configuration.DefaultSettingValueAttribute("0")]
+ [global::System.Configuration.DefaultSettingValueAttribute("255")]
public int DubMode {
get {
return ((int)(this["DubMode"]));
@@ -393,5 +393,54 @@ namespace Handbrake.Properties {
this["defaultPlayer"] = value;
}
}
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("<?xml version=\"1.0\" encoding=\"utf-16\"?>\r\n<ArrayOfString xmlns:xsi=\"http://www.w3." +
+ "org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" />")]
+ public global::System.Collections.Specialized.StringCollection SelectedLanguages {
+ get {
+ return ((global::System.Collections.Specialized.StringCollection)(this["SelectedLanguages"]));
+ }
+ set {
+ this["SelectedLanguages"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("4")]
+ public int DubModeAudio {
+ get {
+ return ((int)(this["DubModeAudio"]));
+ }
+ set {
+ this["DubModeAudio"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("0")]
+ public int DubModeSubtitle {
+ get {
+ return ((int)(this["DubModeSubtitle"]));
+ }
+ set {
+ this["DubModeSubtitle"] = value;
+ }
+ }
+
+ [global::System.Configuration.UserScopedSettingAttribute()]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Configuration.DefaultSettingValueAttribute("True")]
+ public bool addOnlyOneAudioPerLanguage {
+ get {
+ return ((bool)(this["addOnlyOneAudioPerLanguage"]));
+ }
+ set {
+ this["addOnlyOneAudioPerLanguage"] = value;
+ }
+ }
}
}
diff --git a/win/CS/Properties/Settings.settings b/win/CS/Properties/Settings.settings
index 1e27ad776..7e9eac8e7 100644
--- a/win/CS/Properties/Settings.settings
+++ b/win/CS/Properties/Settings.settings
@@ -60,7 +60,7 @@
<Value Profile="(Default)">Any</Value>
</Setting>
<Setting Name="DubMode" Type="System.Int32" Scope="User">
- <Value Profile="(Default)">0</Value>
+ <Value Profile="(Default)">255</Value>
</Setting>
<Setting Name="CliExeHash" Type="System.String" Scope="User">
<Value Profile="(Default)" />
@@ -95,5 +95,18 @@
<Setting Name="defaultPlayer" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
+ <Setting Name="SelectedLanguages" Type="System.Collections.Specialized.StringCollection" Scope="User">
+ <Value Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
+&lt;ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" /&gt;</Value>
+ </Setting>
+ <Setting Name="DubModeAudio" Type="System.Int32" Scope="User">
+ <Value Profile="(Default)">4</Value>
+ </Setting>
+ <Setting Name="DubModeSubtitle" Type="System.Int32" Scope="User">
+ <Value Profile="(Default)">0</Value>
+ </Setting>
+ <Setting Name="addOnlyOneAudioPerLanguage" Type="System.Boolean" Scope="User">
+ <Value Profile="(Default)">True</Value>
+ </Setting>
</Settings>
</SettingsFile> \ No newline at end of file
diff --git a/win/CS/Resources/arrow_down.png b/win/CS/Resources/arrow_down.png
new file mode 100644
index 000000000..9a8de4f4a
--- /dev/null
+++ b/win/CS/Resources/arrow_down.png
Binary files differ
diff --git a/win/CS/Resources/arrow_left.png b/win/CS/Resources/arrow_left.png
new file mode 100644
index 000000000..713030f29
--- /dev/null
+++ b/win/CS/Resources/arrow_left.png
Binary files differ
diff --git a/win/CS/Resources/arrow_right.png b/win/CS/Resources/arrow_right.png
new file mode 100644
index 000000000..a270c5479
--- /dev/null
+++ b/win/CS/Resources/arrow_right.png
Binary files differ
diff --git a/win/CS/Resources/arrow_up.png b/win/CS/Resources/arrow_up.png
new file mode 100644
index 000000000..530daed53
--- /dev/null
+++ b/win/CS/Resources/arrow_up.png
Binary files differ
diff --git a/win/CS/app.config b/win/CS/app.config
index 1ec2d1e86..a95fe0be3 100644
--- a/win/CS/app.config
+++ b/win/CS/app.config
@@ -68,7 +68,7 @@
<value>Any</value>
</setting>
<setting name="DubMode" serializeAs="String">
- <value>0</value>
+ <value>255</value>
</setting>
<setting name="CliExeHash" serializeAs="String">
<value />
@@ -103,6 +103,21 @@
<setting name="defaultPlayer" serializeAs="String">
<value>False</value>
</setting>
+ <setting name="SelectedLanguages" serializeAs="Xml">
+ <value>
+ <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
+ </value>
+ </setting>
+ <setting name="DubModeAudio" serializeAs="String">
+ <value>4</value>
+ </setting>
+ <setting name="DubModeSubtitle" serializeAs="String">
+ <value>0</value>
+ </setting>
+ <setting name="addOnlyOneAudioPerLanguage" serializeAs="String">
+ <value>True</value>
+ </setting>
</Handbrake.Properties.Settings>
</userSettings>
diff --git a/win/CS/frmOptions.Designer.cs b/win/CS/frmOptions.Designer.cs
index 04350e9b3..37d5567e1 100644
--- a/win/CS/frmOptions.Designer.cs
+++ b/win/CS/frmOptions.Designer.cs
@@ -71,13 +71,46 @@ namespace Handbrake
this.txt_vlcPath = new System.Windows.Forms.TextBox();
this.label36 = new System.Windows.Forms.Label();
this.tab_audio_sub = new System.Windows.Forms.TabPage();
- this.radio_preferredAudioAndSubs = new System.Windows.Forms.RadioButton();
+ this.groupBox3 = new System.Windows.Forms.GroupBox();
+ this.label48 = new System.Windows.Forms.Label();
+ this.groupBox2 = new System.Windows.Forms.GroupBox();
+ this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
+ this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
+ this.radio_Audio_Selected = new System.Windows.Forms.RadioButton();
+ this.radio_Audio_None = new System.Windows.Forms.RadioButton();
+ this.radio_Audio_PrefOnly = new System.Windows.Forms.RadioButton();
+ this.radio_Audio_All = new System.Windows.Forms.RadioButton();
+ this.radio_Audio_First = new System.Windows.Forms.RadioButton();
+ this.label42 = new System.Windows.Forms.Label();
+ this.label43 = new System.Windows.Forms.Label();
this.check_AddCCTracks = new System.Windows.Forms.CheckBox();
+ this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
+ this.label45 = new System.Windows.Forms.Label();
+ this.label41 = new System.Windows.Forms.Label();
+ this.label47 = new System.Windows.Forms.Label();
+ this.label46 = new System.Windows.Forms.Label();
+ this.label44 = new System.Windows.Forms.Label();
+ this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
+ this.radio_Subtitle_Selected = new System.Windows.Forms.RadioButton();
+ this.radio_Subtitle_None = new System.Windows.Forms.RadioButton();
+ this.radio_Subtitle_PrefOnly = new System.Windows.Forms.RadioButton();
+ this.radio_Subtitle_All = new System.Windows.Forms.RadioButton();
+ this.radio_Subtitle_First = new System.Windows.Forms.RadioButton();
+ this.check_AddOnlyOneAudioPerLanguage = new System.Windows.Forms.CheckBox();
+ this.groupBox1 = new System.Windows.Forms.GroupBox();
+ this.panel3 = new System.Windows.Forms.Panel();
+ this.button_moveLanguageDown = new System.Windows.Forms.Button();
+ this.button_moveLanguageUp = new System.Windows.Forms.Button();
+ this.label40 = new System.Windows.Forms.Label();
+ this.label39 = new System.Windows.Forms.Label();
+ this.button_clearLanguage = new System.Windows.Forms.Button();
+ this.button_removeLanguage = new System.Windows.Forms.Button();
+ this.button_addLanguage = new System.Windows.Forms.Button();
+ this.listBox_selectedLanguages = new System.Windows.Forms.ListBox();
+ this.listBox_availableLanguages = new System.Windows.Forms.ListBox();
this.label31 = new System.Windows.Forms.Label();
this.label15 = new System.Windows.Forms.Label();
- this.radio_foreignAndSubs = new System.Windows.Forms.RadioButton();
this.drop_preferredLang = new System.Windows.Forms.ComboBox();
- this.radio_dub = new System.Windows.Forms.RadioButton();
this.tab_cli = new System.Windows.Forms.TabPage();
this.label11 = new System.Windows.Forms.Label();
this.check_preventSleep = new System.Windows.Forms.CheckBox();
@@ -111,7 +144,6 @@ namespace Handbrake
this.check_disablePresetNotification = new System.Windows.Forms.CheckBox();
this.label28 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
- this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.pathFinder = new System.Windows.Forms.FolderBrowserDialog();
this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
this.textBox1 = new System.Windows.Forms.TextBox();
@@ -146,15 +178,24 @@ namespace Handbrake
this.panel1 = new System.Windows.Forms.Panel();
this.label37 = new System.Windows.Forms.Label();
this.panel2 = new System.Windows.Forms.Panel();
+ this.pictureBox2 = new System.Windows.Forms.PictureBox();
this.tab_options.SuspendLayout();
this.tab_general.SuspendLayout();
this.tab_outputFiles.SuspendLayout();
this.tab_picture.SuspendLayout();
this.tab_audio_sub.SuspendLayout();
+ this.groupBox3.SuspendLayout();
+ this.groupBox2.SuspendLayout();
+ this.tableLayoutPanel1.SuspendLayout();
+ this.tableLayoutPanel2.SuspendLayout();
+ this.tableLayoutPanel4.SuspendLayout();
+ this.tableLayoutPanel3.SuspendLayout();
+ this.groupBox1.SuspendLayout();
+ this.panel3.SuspendLayout();
this.tab_cli.SuspendLayout();
this.tab_advanced.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
this.panel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
this.SuspendLayout();
//
// btn_close
@@ -244,8 +285,8 @@ namespace Handbrake
this.txt_SendFileArgs.Size = new System.Drawing.Size(178, 21);
this.txt_SendFileArgs.TabIndex = 108;
this.ToolTip.SetToolTip(this.txt_SendFileArgs, "These are the command line arguments that will be placed before the file name.\r\ne" +
- ".g vlc.exe {your arguments} output_file.mp4\r\n\r\nThis can be left blank for many" +
- " applications.\r\n");
+ ".g vlc.exe {your arguments} output_file.mp4\r\n\r\nThis can be left blank for many" +
+ " applications.\r\n");
this.txt_SendFileArgs.TextChanged += new System.EventHandler(this.txt_SendFileArgs_TextChanged);
//
// lbl_sendFileTo
@@ -266,7 +307,7 @@ namespace Handbrake
this.check_sendFileTo.TabIndex = 106;
this.check_sendFileTo.Text = "Send File to:";
this.ToolTip.SetToolTip(this.check_sendFileTo, "Automatically send the output file to another application after encoding has comp" +
- "leted.");
+ "leted.");
this.check_sendFileTo.UseVisualStyleBackColor = true;
this.check_sendFileTo.CheckedChanged += new System.EventHandler(this.check_sendFileTo_CheckedChanged);
//
@@ -293,7 +334,7 @@ namespace Handbrake
this.check_growlEncode.TabIndex = 99;
this.check_growlEncode.Text = "Growl after Encode Completes";
this.ToolTip.SetToolTip(this.check_growlEncode, "If you have \"Growl for Windows\" installed, you can use this feature to see growl " +
- "alerts on your desktop.");
+ "alerts on your desktop.");
this.check_growlEncode.UseVisualStyleBackColor = false;
this.check_growlEncode.CheckedChanged += new System.EventHandler(this.check_growlEncode_CheckedChanged);
//
@@ -307,7 +348,7 @@ namespace Handbrake
this.check_GrowlQueue.TabIndex = 98;
this.check_GrowlQueue.Text = "Growl after Queue Completes";
this.ToolTip.SetToolTip(this.check_GrowlQueue, "If you have \"Growl for Windows\" installed, you can use this feature to see growl " +
- "alerts on your desktop.");
+ "alerts on your desktop.");
this.check_GrowlQueue.UseVisualStyleBackColor = false;
this.check_GrowlQueue.CheckedChanged += new System.EventHandler(this.check_GrowlQueue_CheckedChanged);
//
@@ -361,7 +402,7 @@ namespace Handbrake
this.check_updateCheck.TabIndex = 68;
this.check_updateCheck.Text = "Check for updates";
this.ToolTip.SetToolTip(this.check_updateCheck, "Enables the built in update checker. This check is performed when the application" +
- " starts.");
+ " starts.");
this.check_updateCheck.UseVisualStyleBackColor = false;
this.check_updateCheck.CheckedChanged += new System.EventHandler(this.check_updateCheck_CheckedChanged);
//
@@ -405,8 +446,8 @@ namespace Handbrake
this.txt_autoNameFormat.Size = new System.Drawing.Size(349, 21);
this.txt_autoNameFormat.TabIndex = 79;
this.ToolTip.SetToolTip(this.txt_autoNameFormat, "Define the format of the automatically named file.\r\ne.g {source}_{title}_some-te" +
- "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
- "sources values.");
+ "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
+ "sources values.");
this.txt_autoNameFormat.TextChanged += new System.EventHandler(this.txt_autoNameFormat_TextChanged);
//
// label7
@@ -527,7 +568,7 @@ namespace Handbrake
this.check_TitleCase.TabIndex = 101;
this.check_TitleCase.Text = "Change case to Title Case";
this.ToolTip.SetToolTip(this.check_TitleCase, "For the {source} option:.\r\nChange the source name to Title Case\r\ne.g \"MOVIE NAME\"" +
- " to \"Movie Name\"\r\n");
+ " to \"Movie Name\"\r\n");
this.check_TitleCase.UseVisualStyleBackColor = true;
this.check_TitleCase.CheckedChanged += new System.EventHandler(this.check_TitleCase_CheckedChanged);
//
@@ -590,7 +631,7 @@ namespace Handbrake
this.txt_vlcPath.Size = new System.Drawing.Size(395, 21);
this.txt_vlcPath.TabIndex = 81;
this.ToolTip.SetToolTip(this.txt_vlcPath, "The path where VLC is installed on this system.\r\nThis is used for the video previ" +
- "ew feature.");
+ "ew feature.");
this.txt_vlcPath.TextChanged += new System.EventHandler(this.txt_vlcPath_TextChanged);
//
// label36
@@ -604,13 +645,12 @@ namespace Handbrake
//
// tab_audio_sub
//
- this.tab_audio_sub.Controls.Add(this.radio_preferredAudioAndSubs);
- this.tab_audio_sub.Controls.Add(this.check_AddCCTracks);
+ this.tab_audio_sub.Controls.Add(this.groupBox3);
+ this.tab_audio_sub.Controls.Add(this.groupBox2);
+ this.tab_audio_sub.Controls.Add(this.groupBox1);
this.tab_audio_sub.Controls.Add(this.label31);
this.tab_audio_sub.Controls.Add(this.label15);
- this.tab_audio_sub.Controls.Add(this.radio_foreignAndSubs);
this.tab_audio_sub.Controls.Add(this.drop_preferredLang);
- this.tab_audio_sub.Controls.Add(this.radio_dub);
this.tab_audio_sub.Location = new System.Drawing.Point(4, 22);
this.tab_audio_sub.Name = "tab_audio_sub";
this.tab_audio_sub.Padding = new System.Windows.Forms.Padding(3);
@@ -619,37 +659,505 @@ namespace Handbrake
this.tab_audio_sub.Text = "Audio and Subtitles";
this.tab_audio_sub.UseVisualStyleBackColor = true;
//
- // radio_preferredAudioAndSubs
- //
- this.radio_preferredAudioAndSubs.AutoSize = true;
- this.radio_preferredAudioAndSubs.Location = new System.Drawing.Point(200, 99);
- this.radio_preferredAudioAndSubs.Name = "radio_preferredAudioAndSubs";
- this.radio_preferredAudioAndSubs.Size = new System.Drawing.Size(250, 17);
- this.radio_preferredAudioAndSubs.TabIndex = 93;
- this.radio_preferredAudioAndSubs.TabStop = true;
- this.radio_preferredAudioAndSubs.Text = "Use Preferred Language for Audio and Subtitles";
- this.ToolTip.SetToolTip(this.radio_preferredAudioAndSubs, "Use Preferred Language for Audio and Subtitle.");
- this.radio_preferredAudioAndSubs.UseVisualStyleBackColor = true;
- this.radio_preferredAudioAndSubs.CheckedChanged += new System.EventHandler(this.radio_preferredAudioAndSubs_CheckedChanged);
+ // groupBox3
+ //
+ this.groupBox3.Controls.Add(this.label48);
+ this.groupBox3.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.groupBox3.Location = new System.Drawing.Point(6, 78);
+ this.groupBox3.Name = "groupBox3";
+ this.groupBox3.Size = new System.Drawing.Size(155, 90);
+ this.groupBox3.TabIndex = 105;
+ this.groupBox3.TabStop = false;
+ this.groupBox3.Text = "WARNING";
+ this.groupBox3.Visible = false;
+ //
+ // label48
+ //
+ this.label48.AutoSize = true;
+ this.label48.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.label48.Location = new System.Drawing.Point(6, 19);
+ this.label48.Name = "label48";
+ this.label48.Size = new System.Drawing.Size(143, 56);
+ this.label48.TabIndex = 0;
+ this.label48.Text = "As long as the \r\nPreferred Language is \r\n\"Any\", the advanced \r\noptions are not av" +
+ "ailable.";
+ this.label48.TextAlign = System.Drawing.ContentAlignment.TopCenter;
+ //
+ // groupBox2
+ //
+ this.groupBox2.Controls.Add(this.tableLayoutPanel1);
+ this.groupBox2.Location = new System.Drawing.Point(0, 231);
+ this.groupBox2.Name = "groupBox2";
+ this.groupBox2.Size = new System.Drawing.Size(577, 120);
+ this.groupBox2.TabIndex = 104;
+ this.groupBox2.TabStop = false;
+ this.groupBox2.Text = "Add Automatically";
+ //
+ // tableLayoutPanel1
+ //
+ this.tableLayoutPanel1.ColumnCount = 3;
+ this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 51F));
+ this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 324F));
+ this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 239F));
+ this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel2, 1, 1);
+ this.tableLayoutPanel1.Controls.Add(this.label42, 0, 1);
+ this.tableLayoutPanel1.Controls.Add(this.label43, 0, 2);
+ this.tableLayoutPanel1.Controls.Add(this.check_AddCCTracks, 2, 2);
+ this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel4, 1, 0);
+ this.tableLayoutPanel1.Controls.Add(this.tableLayoutPanel3, 1, 2);
+ this.tableLayoutPanel1.Controls.Add(this.check_AddOnlyOneAudioPerLanguage, 2, 1);
+ this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 16);
+ this.tableLayoutPanel1.Name = "tableLayoutPanel1";
+ this.tableLayoutPanel1.RowCount = 3;
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
+ this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
+ this.tableLayoutPanel1.Size = new System.Drawing.Size(574, 73);
+ this.tableLayoutPanel1.TabIndex = 102;
+ //
+ // tableLayoutPanel2
+ //
+ this.tableLayoutPanel2.ColumnCount = 10;
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 18F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 23F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 42F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 32F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 39F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel2.Controls.Add(this.radio_Audio_Selected, 3, 0);
+ this.tableLayoutPanel2.Controls.Add(this.radio_Audio_None, 9, 0);
+ this.tableLayoutPanel2.Controls.Add(this.radio_Audio_PrefOnly, 5, 0);
+ this.tableLayoutPanel2.Controls.Add(this.radio_Audio_All, 1, 0);
+ this.tableLayoutPanel2.Controls.Add(this.radio_Audio_First, 7, 0);
+ this.tableLayoutPanel2.Location = new System.Drawing.Point(54, 23);
+ this.tableLayoutPanel2.Name = "tableLayoutPanel2";
+ this.tableLayoutPanel2.RowCount = 1;
+ this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel2.Size = new System.Drawing.Size(318, 20);
+ this.tableLayoutPanel2.TabIndex = 6;
+ //
+ // radio_Audio_Selected
+ //
+ this.radio_Audio_Selected.AutoSize = true;
+ this.radio_Audio_Selected.Location = new System.Drawing.Point(80, 3);
+ this.radio_Audio_Selected.Name = "radio_Audio_Selected";
+ this.radio_Audio_Selected.Size = new System.Drawing.Size(14, 13);
+ this.radio_Audio_Selected.TabIndex = 7;
+ this.radio_Audio_Selected.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Audio_Selected, "Includes Prefered and Selected Languages");
+ this.radio_Audio_Selected.UseVisualStyleBackColor = true;
+ this.radio_Audio_Selected.CheckedChanged += new System.EventHandler(this.radio_Audio_Selected_CheckedChanged);
+ //
+ // radio_Audio_None
+ //
+ this.radio_Audio_None.AutoSize = true;
+ this.radio_Audio_None.Location = new System.Drawing.Point(285, 3);
+ this.radio_Audio_None.Name = "radio_Audio_None";
+ this.radio_Audio_None.Size = new System.Drawing.Size(14, 13);
+ this.radio_Audio_None.TabIndex = 10;
+ this.radio_Audio_None.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Audio_None, "Do not add anything.");
+ this.radio_Audio_None.UseVisualStyleBackColor = true;
+ this.radio_Audio_None.CheckedChanged += new System.EventHandler(this.radio_Audio_None_CheckedChanged);
+ //
+ // radio_Audio_PrefOnly
+ //
+ this.radio_Audio_PrefOnly.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.radio_Audio_PrefOnly.AutoSize = true;
+ this.radio_Audio_PrefOnly.Checked = true;
+ this.radio_Audio_PrefOnly.Location = new System.Drawing.Point(158, 3);
+ this.radio_Audio_PrefOnly.Name = "radio_Audio_PrefOnly";
+ this.radio_Audio_PrefOnly.Size = new System.Drawing.Size(26, 14);
+ this.radio_Audio_PrefOnly.TabIndex = 6;
+ this.radio_Audio_PrefOnly.TabStop = true;
+ this.radio_Audio_PrefOnly.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.radio_Audio_PrefOnly, "Only the prefered language.");
+ this.radio_Audio_PrefOnly.UseVisualStyleBackColor = true;
+ this.radio_Audio_PrefOnly.CheckedChanged += new System.EventHandler(this.radio_Audio_PrefOnly_CheckedChanged);
+ //
+ // radio_Audio_All
+ //
+ this.radio_Audio_All.AutoSize = true;
+ this.radio_Audio_All.Location = new System.Drawing.Point(21, 3);
+ this.radio_Audio_All.Name = "radio_Audio_All";
+ this.radio_Audio_All.Size = new System.Drawing.Size(14, 13);
+ this.radio_Audio_All.TabIndex = 9;
+ this.radio_Audio_All.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Audio_All, "All available languages.");
+ this.radio_Audio_All.UseVisualStyleBackColor = true;
+ this.radio_Audio_All.CheckedChanged += new System.EventHandler(this.radio_Audio_All_CheckedChanged);
+ //
+ // radio_Audio_First
+ //
+ this.radio_Audio_First.AutoSize = true;
+ this.radio_Audio_First.Location = new System.Drawing.Point(229, 3);
+ this.radio_Audio_First.Name = "radio_Audio_First";
+ this.radio_Audio_First.Size = new System.Drawing.Size(14, 13);
+ this.radio_Audio_First.TabIndex = 8;
+ this.radio_Audio_First.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Audio_First, "Take the first language on the source.");
+ this.radio_Audio_First.UseVisualStyleBackColor = true;
+ this.radio_Audio_First.CheckedChanged += new System.EventHandler(this.radio_Audio_First_CheckedChanged);
+ //
+ // label42
+ //
+ this.label42.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label42.AutoSize = true;
+ this.label42.Location = new System.Drawing.Point(14, 20);
+ this.label42.Name = "label42";
+ this.label42.Size = new System.Drawing.Size(34, 26);
+ this.label42.TabIndex = 0;
+ this.label42.Text = "Audio";
+ this.label42.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // label43
+ //
+ this.label43.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label43.AutoSize = true;
+ this.label43.Location = new System.Drawing.Point(5, 46);
+ this.label43.Name = "label43";
+ this.label43.Size = new System.Drawing.Size(43, 27);
+ this.label43.TabIndex = 1;
+ this.label43.Text = "Subtitle";
+ this.label43.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// check_AddCCTracks
//
this.check_AddCCTracks.AutoSize = true;
- this.check_AddCCTracks.Location = new System.Drawing.Point(200, 131);
+ this.check_AddCCTracks.Location = new System.Drawing.Point(378, 49);
this.check_AddCCTracks.Name = "check_AddCCTracks";
- this.check_AddCCTracks.Size = new System.Drawing.Size(198, 17);
+ this.check_AddCCTracks.Size = new System.Drawing.Size(199, 17);
this.check_AddCCTracks.TabIndex = 92;
this.check_AddCCTracks.Text = "Add Closed Captions when available";
this.ToolTip.SetToolTip(this.check_AddCCTracks, "Add any CC tracks if they exist");
this.check_AddCCTracks.UseVisualStyleBackColor = true;
this.check_AddCCTracks.CheckedChanged += new System.EventHandler(this.check_AddCCTracks_CheckedChanged);
//
+ // tableLayoutPanel4
+ //
+ this.tableLayoutPanel4.ColumnCount = 9;
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 16.98113F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.702191F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 18.55346F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.702191F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 26.41509F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.702191F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 15.72405F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 1.702191F));
+ this.tableLayoutPanel4.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 15.31972F));
+ this.tableLayoutPanel4.Controls.Add(this.label45, 2, 0);
+ this.tableLayoutPanel4.Controls.Add(this.label41, 8, 0);
+ this.tableLayoutPanel4.Controls.Add(this.label47, 0, 0);
+ this.tableLayoutPanel4.Controls.Add(this.label46, 6, 0);
+ this.tableLayoutPanel4.Controls.Add(this.label44, 4, 0);
+ this.tableLayoutPanel4.Location = new System.Drawing.Point(54, 3);
+ this.tableLayoutPanel4.Name = "tableLayoutPanel4";
+ this.tableLayoutPanel4.RowCount = 1;
+ this.tableLayoutPanel4.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel4.Size = new System.Drawing.Size(318, 14);
+ this.tableLayoutPanel4.TabIndex = 4;
+ //
+ // label45
+ //
+ this.label45.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label45.AutoSize = true;
+ this.label45.Location = new System.Drawing.Point(62, 1);
+ this.label45.Name = "label45";
+ this.label45.Size = new System.Drawing.Size(53, 13);
+ this.label45.TabIndex = 3;
+ this.label45.Text = "Selected";
+ this.label45.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.label45, "Includes Prefered and Selected Languages");
+ //
+ // label41
+ //
+ this.label41.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label41.AutoSize = true;
+ this.label41.Location = new System.Drawing.Point(270, 1);
+ this.label41.Name = "label41";
+ this.label41.Size = new System.Drawing.Size(45, 13);
+ this.label41.TabIndex = 6;
+ this.label41.Text = "None";
+ this.label41.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.label41, "Do not add anything.");
+ //
+ // label47
+ //
+ this.label47.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label47.AutoSize = true;
+ this.label47.Location = new System.Drawing.Point(3, 1);
+ this.label47.Name = "label47";
+ this.label47.Size = new System.Drawing.Size(48, 13);
+ this.label47.TabIndex = 5;
+ this.label47.Text = "All";
+ this.label47.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.label47, "All available languages.");
+ //
+ // label46
+ //
+ this.label46.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label46.AutoSize = true;
+ this.label46.Location = new System.Drawing.Point(215, 1);
+ this.label46.Name = "label46";
+ this.label46.Size = new System.Drawing.Size(44, 13);
+ this.label46.TabIndex = 4;
+ this.label46.Text = "First";
+ this.label46.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.label46, "Take the first language on the source.");
+ //
+ // label44
+ //
+ this.label44.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.label44.AutoSize = true;
+ this.label44.Location = new System.Drawing.Point(126, 1);
+ this.label44.Name = "label44";
+ this.label44.Size = new System.Drawing.Size(78, 13);
+ this.label44.TabIndex = 2;
+ this.label44.Text = "Only Prefered";
+ this.label44.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.label44, "Only the prefered language.");
+ //
+ // tableLayoutPanel3
+ //
+ this.tableLayoutPanel3.ColumnCount = 10;
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 18F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 22F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 43F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 33F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 38F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 22F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 34F));
+ this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 36F));
+ this.tableLayoutPanel3.Controls.Add(this.radio_Subtitle_Selected, 3, 0);
+ this.tableLayoutPanel3.Controls.Add(this.radio_Subtitle_None, 9, 0);
+ this.tableLayoutPanel3.Controls.Add(this.radio_Subtitle_PrefOnly, 5, 0);
+ this.tableLayoutPanel3.Controls.Add(this.radio_Subtitle_All, 1, 0);
+ this.tableLayoutPanel3.Controls.Add(this.radio_Subtitle_First, 7, 0);
+ this.tableLayoutPanel3.Location = new System.Drawing.Point(54, 49);
+ this.tableLayoutPanel3.Name = "tableLayoutPanel3";
+ this.tableLayoutPanel3.RowCount = 1;
+ this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
+ this.tableLayoutPanel3.Size = new System.Drawing.Size(318, 20);
+ this.tableLayoutPanel3.TabIndex = 7;
+ //
+ // radio_Subtitle_Selected
+ //
+ this.radio_Subtitle_Selected.AutoSize = true;
+ this.radio_Subtitle_Selected.Location = new System.Drawing.Point(79, 3);
+ this.radio_Subtitle_Selected.Name = "radio_Subtitle_Selected";
+ this.radio_Subtitle_Selected.Size = new System.Drawing.Size(14, 13);
+ this.radio_Subtitle_Selected.TabIndex = 7;
+ this.radio_Subtitle_Selected.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Subtitle_Selected, "Includes Prefered and Selected Languages");
+ this.radio_Subtitle_Selected.UseVisualStyleBackColor = true;
+ this.radio_Subtitle_Selected.CheckedChanged += new System.EventHandler(this.radio_Subtitle_Selected_CheckedChanged);
+ //
+ // radio_Subtitle_None
+ //
+ this.radio_Subtitle_None.AutoSize = true;
+ this.radio_Subtitle_None.Location = new System.Drawing.Point(285, 3);
+ this.radio_Subtitle_None.Name = "radio_Subtitle_None";
+ this.radio_Subtitle_None.Size = new System.Drawing.Size(14, 13);
+ this.radio_Subtitle_None.TabIndex = 10;
+ this.radio_Subtitle_None.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Subtitle_None, "Do not add anything.");
+ this.radio_Subtitle_None.UseVisualStyleBackColor = true;
+ this.radio_Subtitle_None.CheckedChanged += new System.EventHandler(this.radio_Subtitle_None_CheckedChanged);
+ //
+ // radio_Subtitle_PrefOnly
+ //
+ this.radio_Subtitle_PrefOnly.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
+ | System.Windows.Forms.AnchorStyles.Left)
+ | System.Windows.Forms.AnchorStyles.Right)));
+ this.radio_Subtitle_PrefOnly.AutoSize = true;
+ this.radio_Subtitle_PrefOnly.Checked = true;
+ this.radio_Subtitle_PrefOnly.Location = new System.Drawing.Point(158, 3);
+ this.radio_Subtitle_PrefOnly.Name = "radio_Subtitle_PrefOnly";
+ this.radio_Subtitle_PrefOnly.Size = new System.Drawing.Size(27, 14);
+ this.radio_Subtitle_PrefOnly.TabIndex = 6;
+ this.radio_Subtitle_PrefOnly.TabStop = true;
+ this.radio_Subtitle_PrefOnly.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.ToolTip.SetToolTip(this.radio_Subtitle_PrefOnly, "Only the prefered language.");
+ this.radio_Subtitle_PrefOnly.UseVisualStyleBackColor = true;
+ this.radio_Subtitle_PrefOnly.CheckedChanged += new System.EventHandler(this.radio_Subtitle_PrefOnly_CheckedChanged);
+ //
+ // radio_Subtitle_All
+ //
+ this.radio_Subtitle_All.AutoSize = true;
+ this.radio_Subtitle_All.Location = new System.Drawing.Point(21, 3);
+ this.radio_Subtitle_All.Name = "radio_Subtitle_All";
+ this.radio_Subtitle_All.Size = new System.Drawing.Size(14, 13);
+ this.radio_Subtitle_All.TabIndex = 9;
+ this.radio_Subtitle_All.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Subtitle_All, "All available languages.");
+ this.radio_Subtitle_All.UseVisualStyleBackColor = true;
+ this.radio_Subtitle_All.CheckedChanged += new System.EventHandler(this.radio_Subtitle_All_CheckedChanged);
+ //
+ // radio_Subtitle_First
+ //
+ this.radio_Subtitle_First.AutoSize = true;
+ this.radio_Subtitle_First.Location = new System.Drawing.Point(229, 3);
+ this.radio_Subtitle_First.Name = "radio_Subtitle_First";
+ this.radio_Subtitle_First.Size = new System.Drawing.Size(14, 13);
+ this.radio_Subtitle_First.TabIndex = 8;
+ this.radio_Subtitle_First.TabStop = true;
+ this.ToolTip.SetToolTip(this.radio_Subtitle_First, "Take the first language on the source.");
+ this.radio_Subtitle_First.UseVisualStyleBackColor = true;
+ this.radio_Subtitle_First.CheckedChanged += new System.EventHandler(this.radio_Subtitle_First_CheckedChanged);
+ //
+ // check_AddOnlyOneAudioPerLanguage
+ //
+ this.check_AddOnlyOneAudioPerLanguage.AutoSize = true;
+ this.check_AddOnlyOneAudioPerLanguage.Location = new System.Drawing.Point(378, 23);
+ this.check_AddOnlyOneAudioPerLanguage.Name = "check_AddOnlyOneAudioPerLanguage";
+ this.check_AddOnlyOneAudioPerLanguage.Size = new System.Drawing.Size(192, 17);
+ this.check_AddOnlyOneAudioPerLanguage.TabIndex = 93;
+ this.check_AddOnlyOneAudioPerLanguage.Text = "Add Only One Audio Per Language";
+ this.ToolTip.SetToolTip(this.check_AddOnlyOneAudioPerLanguage, "Only add one audiotrack of each selected language.");
+ this.check_AddOnlyOneAudioPerLanguage.UseVisualStyleBackColor = true;
+ this.check_AddOnlyOneAudioPerLanguage.CheckedChanged += new System.EventHandler(this.check_AddOnlyOneAudioPerLanguage_CheckedChanged);
+ //
+ // groupBox1
+ //
+ this.groupBox1.Controls.Add(this.panel3);
+ this.groupBox1.Location = new System.Drawing.Point(167, 15);
+ this.groupBox1.Name = "groupBox1";
+ this.groupBox1.Size = new System.Drawing.Size(389, 210);
+ this.groupBox1.TabIndex = 103;
+ this.groupBox1.TabStop = false;
+ this.groupBox1.Text = "Additional Languages";
+ //
+ // panel3
+ //
+ this.panel3.Controls.Add(this.button_moveLanguageDown);
+ this.panel3.Controls.Add(this.button_moveLanguageUp);
+ this.panel3.Controls.Add(this.label40);
+ this.panel3.Controls.Add(this.label39);
+ this.panel3.Controls.Add(this.button_clearLanguage);
+ this.panel3.Controls.Add(this.button_removeLanguage);
+ this.panel3.Controls.Add(this.button_addLanguage);
+ this.panel3.Controls.Add(this.listBox_selectedLanguages);
+ this.panel3.Controls.Add(this.listBox_availableLanguages);
+ this.panel3.Location = new System.Drawing.Point(6, 15);
+ this.panel3.Name = "panel3";
+ this.panel3.Size = new System.Drawing.Size(377, 189);
+ this.panel3.TabIndex = 101;
+ //
+ // button_moveLanguageDown
+ //
+ this.button_moveLanguageDown.Image = global::Handbrake.Properties.Resources.arrow_down;
+ this.button_moveLanguageDown.Location = new System.Drawing.Point(348, 98);
+ this.button_moveLanguageDown.Name = "button_moveLanguageDown";
+ this.button_moveLanguageDown.Size = new System.Drawing.Size(25, 27);
+ this.button_moveLanguageDown.TabIndex = 102;
+ this.ToolTip.SetToolTip(this.button_moveLanguageDown, "Move selected languages down in the order.");
+ this.button_moveLanguageDown.UseVisualStyleBackColor = true;
+ this.button_moveLanguageDown.Click += new System.EventHandler(this.button_moveLanguageDown_Click);
+ //
+ // button_moveLanguageUp
+ //
+ this.button_moveLanguageUp.Image = global::Handbrake.Properties.Resources.arrow_up;
+ this.button_moveLanguageUp.Location = new System.Drawing.Point(348, 65);
+ this.button_moveLanguageUp.Name = "button_moveLanguageUp";
+ this.button_moveLanguageUp.Size = new System.Drawing.Size(25, 27);
+ this.button_moveLanguageUp.TabIndex = 101;
+ this.ToolTip.SetToolTip(this.button_moveLanguageUp, "Move selected languages up in the order.");
+ this.button_moveLanguageUp.UseVisualStyleBackColor = true;
+ this.button_moveLanguageUp.Click += new System.EventHandler(this.button_moveLanguageUp_Click);
+ //
+ // label40
+ //
+ this.label40.AutoSize = true;
+ this.label40.Location = new System.Drawing.Point(205, 7);
+ this.label40.Name = "label40";
+ this.label40.Size = new System.Drawing.Size(103, 13);
+ this.label40.TabIndex = 100;
+ this.label40.Text = "Selected Languages";
+ //
+ // label39
+ //
+ this.label39.AutoSize = true;
+ this.label39.Location = new System.Drawing.Point(7, 7);
+ this.label39.Name = "label39";
+ this.label39.Size = new System.Drawing.Size(105, 13);
+ this.label39.TabIndex = 99;
+ this.label39.Text = "Available Languages";
+ //
+ // button_clearLanguage
+ //
+ this.button_clearLanguage.Location = new System.Drawing.Point(153, 155);
+ this.button_clearLanguage.Name = "button_clearLanguage";
+ this.button_clearLanguage.Size = new System.Drawing.Size(49, 28);
+ this.button_clearLanguage.TabIndex = 98;
+ this.button_clearLanguage.Text = "Clear";
+ this.ToolTip.SetToolTip(this.button_clearLanguage, "Clear the list of selected languages.");
+ this.button_clearLanguage.UseVisualStyleBackColor = true;
+ this.button_clearLanguage.Click += new System.EventHandler(this.button_clearLanguage_Click);
+ //
+ // button_removeLanguage
+ //
+ this.button_removeLanguage.Image = global::Handbrake.Properties.Resources.arrow_left;
+ this.button_removeLanguage.Location = new System.Drawing.Point(153, 99);
+ this.button_removeLanguage.Name = "button_removeLanguage";
+ this.button_removeLanguage.Size = new System.Drawing.Size(49, 28);
+ this.button_removeLanguage.TabIndex = 97;
+ this.ToolTip.SetToolTip(this.button_removeLanguage, "Remove language from selected languages.");
+ this.button_removeLanguage.UseVisualStyleBackColor = true;
+ this.button_removeLanguage.Click += new System.EventHandler(this.button_removeLanguage_Click);
+ //
+ // button_addLanguage
+ //
+ this.button_addLanguage.Image = global::Handbrake.Properties.Resources.arrow_right;
+ this.button_addLanguage.Location = new System.Drawing.Point(153, 65);
+ this.button_addLanguage.Name = "button_addLanguage";
+ this.button_addLanguage.Size = new System.Drawing.Size(49, 28);
+ this.button_addLanguage.TabIndex = 96;
+ this.ToolTip.SetToolTip(this.button_addLanguage, "Add Language to selected languages.");
+ this.button_addLanguage.UseVisualStyleBackColor = true;
+ this.button_addLanguage.Click += new System.EventHandler(this.button_addLanguage_Click);
+ //
+ // listBox_selectedLanguages
+ //
+ this.listBox_selectedLanguages.FormattingEnabled = true;
+ this.listBox_selectedLanguages.Location = new System.Drawing.Point(208, 23);
+ this.listBox_selectedLanguages.Name = "listBox_selectedLanguages";
+ this.listBox_selectedLanguages.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
+ this.listBox_selectedLanguages.Size = new System.Drawing.Size(137, 160);
+ this.listBox_selectedLanguages.TabIndex = 95;
+ this.listBox_selectedLanguages.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listBox_selectedLanguages_MouseDoubleClick);
+ //
+ // listBox_availableLanguages
+ //
+ this.listBox_availableLanguages.FormattingEnabled = true;
+ this.listBox_availableLanguages.Location = new System.Drawing.Point(10, 23);
+ this.listBox_availableLanguages.Name = "listBox_availableLanguages";
+ this.listBox_availableLanguages.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
+ this.listBox_availableLanguages.Size = new System.Drawing.Size(137, 160);
+ this.listBox_availableLanguages.Sorted = true;
+ this.listBox_availableLanguages.TabIndex = 94;
+ this.listBox_availableLanguages.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listBox_availableLanguages_MouseDoubleClick);
+ //
// label31
//
this.label31.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.label31.AutoSize = true;
this.label31.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label31.Location = new System.Drawing.Point(16, 19);
+ this.label31.Location = new System.Drawing.Point(16, 8);
this.label31.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
this.label31.Name = "label31";
this.label31.Size = new System.Drawing.Size(52, 13);
@@ -659,51 +1167,24 @@ namespace Handbrake
// label15
//
this.label15.AutoSize = true;
- this.label15.Location = new System.Drawing.Point(87, 19);
+ this.label15.Location = new System.Drawing.Point(16, 35);
this.label15.Name = "label15";
this.label15.Size = new System.Drawing.Size(107, 13);
this.label15.TabIndex = 88;
this.label15.Text = "Preferred Language:";
//
- // radio_foreignAndSubs
- //
- this.radio_foreignAndSubs.AutoSize = true;
- this.radio_foreignAndSubs.Location = new System.Drawing.Point(200, 76);
- this.radio_foreignAndSubs.Name = "radio_foreignAndSubs";
- this.radio_foreignAndSubs.Size = new System.Drawing.Size(347, 17);
- this.radio_foreignAndSubs.TabIndex = 90;
- this.radio_foreignAndSubs.TabStop = true;
- this.radio_foreignAndSubs.Text = "Use foreign language audio and add first preferred language subtitle.";
- this.ToolTip.SetToolTip(this.radio_foreignAndSubs, "Use foreign language audio and add first subtitle track of prefered language.\r\n");
- this.radio_foreignAndSubs.UseVisualStyleBackColor = true;
- this.radio_foreignAndSubs.CheckedChanged += new System.EventHandler(this.radio_foreignAndSubs_CheckedChanged);
- //
// drop_preferredLang
//
this.drop_preferredLang.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.drop_preferredLang.FormattingEnabled = true;
- this.drop_preferredLang.Location = new System.Drawing.Point(200, 16);
+ this.drop_preferredLang.Location = new System.Drawing.Point(19, 51);
this.drop_preferredLang.Name = "drop_preferredLang";
this.drop_preferredLang.Size = new System.Drawing.Size(118, 21);
this.drop_preferredLang.TabIndex = 87;
this.ToolTip.SetToolTip(this.drop_preferredLang, "The number of processor\'s / processor cores. Unless your having problems, leave o" +
- "n Automatic.");
+ "n Automatic.");
this.drop_preferredLang.SelectedIndexChanged += new System.EventHandler(this.drop_preferredLang_SelectedIndexChanged);
//
- // radio_dub
- //
- this.radio_dub.AutoSize = true;
- this.radio_dub.Location = new System.Drawing.Point(200, 53);
- this.radio_dub.Name = "radio_dub";
- this.radio_dub.Size = new System.Drawing.Size(167, 17);
- this.radio_dub.TabIndex = 89;
- this.radio_dub.TabStop = true;
- this.radio_dub.Text = "DUB Foreign Language Audio";
- this.ToolTip.SetToolTip(this.radio_dub, "This option will select your prefered language of audio for the source if one exi" +
- "sts.");
- this.radio_dub.UseVisualStyleBackColor = true;
- this.radio_dub.CheckedChanged += new System.EventHandler(this.radio_dub_CheckedChanged);
- //
// tab_cli
//
this.tab_cli.Controls.Add(this.label11);
@@ -765,7 +1246,7 @@ namespace Handbrake
this.check_clearOldLogs.TabIndex = 90;
this.check_clearOldLogs.Text = "Clear logs older than 30 days";
this.ToolTip.SetToolTip(this.check_clearOldLogs, "Clear logs which are older than 30 days.\r\nThis only applies to HandBrakes Applica" +
- "tion Data Log folder.");
+ "tion Data Log folder.");
this.check_clearOldLogs.UseVisualStyleBackColor = true;
this.check_clearOldLogs.CheckedChanged += new System.EventHandler(this.check_clearOldLogs_CheckedChanged);
//
@@ -847,7 +1328,7 @@ namespace Handbrake
this.drp_Priority.Size = new System.Drawing.Size(111, 21);
this.drp_Priority.TabIndex = 43;
this.ToolTip.SetToolTip(this.drp_Priority, "Set the application priority level for the CLI. \r\nIt\'s best to leave this on Belo" +
- "w Normal if you wish to use your system whilst encoding with HandBrake.\r\n");
+ "w Normal if you wish to use your system whilst encoding with HandBrake.\r\n");
this.drp_Priority.SelectedIndexChanged += new System.EventHandler(this.drp_Priority_SelectedIndexChanged);
//
// check_logsInSpecifiedLocation
@@ -990,7 +1471,7 @@ namespace Handbrake
this.drop_previewScanCount.Size = new System.Drawing.Size(85, 21);
this.drop_previewScanCount.TabIndex = 95;
this.ToolTip.SetToolTip(this.drop_previewScanCount, "Allows a greater number of preview frames to be selectable on the \"Preview\" windo" +
- "w.\r\n\r\nThis can in some cases improve the accuracy of the auto crop feature.");
+ "w.\r\n\r\nThis can in some cases improve the accuracy of the auto crop feature.");
this.drop_previewScanCount.SelectedIndexChanged += new System.EventHandler(this.drop_previewScanCount_SelectedIndexChanged);
//
// label33
@@ -1026,8 +1507,8 @@ namespace Handbrake
this.check_trayStatusAlerts.TabIndex = 93;
this.check_trayStatusAlerts.Text = "Display status messages from tray icon (balloon popups)";
this.ToolTip.SetToolTip(this.check_trayStatusAlerts, "Minimize the window to the system tray rather than the task bar.\r\nThe system tray" +
- " icon has encode status notifications.\r\nNote: requires restart to take effect!\r\n" +
- "");
+ " icon has encode status notifications.\r\nNote: requires restart to take effect!\r\n" +
+ "");
this.check_trayStatusAlerts.UseVisualStyleBackColor = false;
this.check_trayStatusAlerts.CheckedChanged += new System.EventHandler(this.check_trayStatusAlerts_CheckedChanged);
//
@@ -1042,8 +1523,8 @@ namespace Handbrake
this.check_mainMinimize.TabIndex = 82;
this.check_mainMinimize.Text = "Minimize to system tray (Requires Restart)";
this.ToolTip.SetToolTip(this.check_mainMinimize, "Minimize the window to the system tray rather than the task bar.\r\nThe system tray" +
- " icon has encode status notifications.\r\nNote: requires restart to take effect!\r\n" +
- "");
+ " icon has encode status notifications.\r\nNote: requires restart to take effect!\r\n" +
+ "");
this.check_mainMinimize.UseVisualStyleBackColor = false;
this.check_mainMinimize.CheckedChanged += new System.EventHandler(this.check_mainMinimize_CheckedChanged);
//
@@ -1082,7 +1563,7 @@ namespace Handbrake
this.check_queryEditorTab.TabIndex = 84;
this.check_queryEditorTab.Text = "Enable \"Query Editor\" tab (Requires Restart)";
this.ToolTip.SetToolTip(this.check_queryEditorTab, "Enables the Query Editor tab on the main window. Requires program restart to take" +
- " effect.");
+ " effect.");
this.check_queryEditorTab.UseVisualStyleBackColor = false;
this.check_queryEditorTab.CheckedChanged += new System.EventHandler(this.check_queryEditorTab_CheckedChanged);
//
@@ -1134,7 +1615,7 @@ namespace Handbrake
this.check_disablePresetNotification.TabIndex = 91;
this.check_disablePresetNotification.Text = "Disable built-in preset update notification";
this.ToolTip.SetToolTip(this.check_disablePresetNotification, "Disables the notification you recieve when presets are updated when a new version" +
- " of HandBrake is installed.");
+ " of HandBrake is installed.");
this.check_disablePresetNotification.UseVisualStyleBackColor = false;
this.check_disablePresetNotification.CheckedChanged += new System.EventHandler(this.check_disablePresetNotification_CheckedChanged);
//
@@ -1159,16 +1640,6 @@ namespace Handbrake
this.label8.TabIndex = 61;
this.label8.Text = "Options";
//
- // pictureBox2
- //
- this.pictureBox2.Image = global::Handbrake.Properties.Resources.General_Preferences;
- this.pictureBox2.Location = new System.Drawing.Point(12, 9);
- this.pictureBox2.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
- this.pictureBox2.Name = "pictureBox2";
- this.pictureBox2.Size = new System.Drawing.Size(32, 32);
- this.pictureBox2.TabIndex = 60;
- this.pictureBox2.TabStop = false;
- //
// ToolTip
//
this.ToolTip.Active = false;
@@ -1186,8 +1657,8 @@ namespace Handbrake
this.textBox1.Size = new System.Drawing.Size(255, 20);
this.textBox1.TabIndex = 79;
this.ToolTip.SetToolTip(this.textBox1, "Define the format of the automatically named file.\r\ne.g {source}_{title}_some-te" +
- "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
- "sources values.");
+ "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
+ "sources values.");
//
// textBox2
//
@@ -1233,7 +1704,7 @@ namespace Handbrake
this.checkBox3.TabIndex = 68;
this.checkBox3.Text = "Check for updates";
this.ToolTip.SetToolTip(this.checkBox3, "Enables the built in update checker. This check is performed when the application" +
- " starts.");
+ " starts.");
this.checkBox3.UseVisualStyleBackColor = false;
//
// checkBox4
@@ -1275,8 +1746,8 @@ namespace Handbrake
this.textBox3.Size = new System.Drawing.Size(255, 20);
this.textBox3.TabIndex = 79;
this.ToolTip.SetToolTip(this.textBox3, "Define the format of the automatically named file.\r\ne.g {source}_{title}_some-te" +
- "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
- "sources values.");
+ "xt\r\n{source} {title} {chapters} will be automatically substituted for the input " +
+ "sources values.");
//
// textBox4
//
@@ -1322,7 +1793,7 @@ namespace Handbrake
this.checkBox7.TabIndex = 68;
this.checkBox7.Text = "Check for updates";
this.ToolTip.SetToolTip(this.checkBox7, "Enables the built in update checker. This check is performed when the application" +
- " starts.");
+ " starts.");
this.checkBox7.UseVisualStyleBackColor = false;
//
// checkBox8
@@ -1543,6 +2014,16 @@ namespace Handbrake
this.panel2.Size = new System.Drawing.Size(614, 10);
this.panel2.TabIndex = 59;
//
+ // pictureBox2
+ //
+ this.pictureBox2.Image = global::Handbrake.Properties.Resources.General_Preferences;
+ this.pictureBox2.Location = new System.Drawing.Point(12, 9);
+ this.pictureBox2.Margin = new System.Windows.Forms.Padding(3, 0, 3, 3);
+ this.pictureBox2.Name = "pictureBox2";
+ this.pictureBox2.Size = new System.Drawing.Size(32, 32);
+ this.pictureBox2.TabIndex = 60;
+ this.pictureBox2.TabStop = false;
+ //
// frmOptions
//
this.AcceptButton = this.btn_close;
@@ -1573,13 +2054,27 @@ namespace Handbrake
this.tab_picture.PerformLayout();
this.tab_audio_sub.ResumeLayout(false);
this.tab_audio_sub.PerformLayout();
+ this.groupBox3.ResumeLayout(false);
+ this.groupBox3.PerformLayout();
+ this.groupBox2.ResumeLayout(false);
+ this.tableLayoutPanel1.ResumeLayout(false);
+ this.tableLayoutPanel1.PerformLayout();
+ this.tableLayoutPanel2.ResumeLayout(false);
+ this.tableLayoutPanel2.PerformLayout();
+ this.tableLayoutPanel4.ResumeLayout(false);
+ this.tableLayoutPanel4.PerformLayout();
+ this.tableLayoutPanel3.ResumeLayout(false);
+ this.tableLayoutPanel3.PerformLayout();
+ this.groupBox1.ResumeLayout(false);
+ this.panel3.ResumeLayout(false);
+ this.panel3.PerformLayout();
this.tab_cli.ResumeLayout(false);
this.tab_cli.PerformLayout();
this.tab_advanced.ResumeLayout(false);
this.tab_advanced.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
this.ResumeLayout(false);
}
@@ -1668,8 +2163,6 @@ namespace Handbrake
private System.Windows.Forms.TabPage tab_audio_sub;
internal System.Windows.Forms.ComboBox drop_preferredLang;
private System.Windows.Forms.Label label31;
- private System.Windows.Forms.RadioButton radio_foreignAndSubs;
- private System.Windows.Forms.RadioButton radio_dub;
private System.Windows.Forms.Label label15;
internal System.Windows.Forms.Button btn_browse;
internal System.Windows.Forms.CheckBox check_growlEncode;
@@ -1684,7 +2177,6 @@ namespace Handbrake
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
- private System.Windows.Forms.RadioButton radio_preferredAudioAndSubs;
private System.Windows.Forms.CheckBox check_AddCCTracks;
private System.Windows.Forms.Label label34;
internal System.Windows.Forms.Label label35;
@@ -1697,5 +2189,41 @@ namespace Handbrake
private System.Windows.Forms.TabPage tab_outputFiles;
private System.Windows.Forms.Label label38;
private System.Windows.Forms.TextBox txt_SendFileArgs;
+ private System.Windows.Forms.Panel panel3;
+ private System.Windows.Forms.Label label40;
+ private System.Windows.Forms.Label label39;
+ private System.Windows.Forms.Button button_clearLanguage;
+ private System.Windows.Forms.Button button_removeLanguage;
+ private System.Windows.Forms.Button button_addLanguage;
+ private System.Windows.Forms.ListBox listBox_selectedLanguages;
+ private System.Windows.Forms.ListBox listBox_availableLanguages;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
+ private System.Windows.Forms.Label label42;
+ private System.Windows.Forms.Label label43;
+ private System.Windows.Forms.Label label44;
+ private System.Windows.Forms.Label label45;
+ private System.Windows.Forms.Label label46;
+ private System.Windows.Forms.Label label47;
+ private System.Windows.Forms.RadioButton radio_Audio_PrefOnly;
+ private System.Windows.Forms.GroupBox groupBox1;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
+ private System.Windows.Forms.RadioButton radio_Audio_Selected;
+ private System.Windows.Forms.RadioButton radio_Audio_First;
+ private System.Windows.Forms.RadioButton radio_Audio_All;
+ private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
+ private System.Windows.Forms.RadioButton radio_Subtitle_PrefOnly;
+ private System.Windows.Forms.RadioButton radio_Subtitle_Selected;
+ private System.Windows.Forms.RadioButton radio_Subtitle_First;
+ private System.Windows.Forms.RadioButton radio_Subtitle_All;
+ private System.Windows.Forms.CheckBox check_AddOnlyOneAudioPerLanguage;
+ private System.Windows.Forms.GroupBox groupBox2;
+ private System.Windows.Forms.RadioButton radio_Audio_None;
+ private System.Windows.Forms.Label label41;
+ private System.Windows.Forms.RadioButton radio_Subtitle_None;
+ private System.Windows.Forms.Button button_moveLanguageUp;
+ private System.Windows.Forms.Button button_moveLanguageDown;
+ private System.Windows.Forms.GroupBox groupBox3;
+ private System.Windows.Forms.Label label48;
}
} \ No newline at end of file
diff --git a/win/CS/frmOptions.cs b/win/CS/frmOptions.cs
index a0753cfcc..b216b9d2e 100644
--- a/win/CS/frmOptions.cs
+++ b/win/CS/frmOptions.cs
@@ -35,9 +35,25 @@ namespace Handbrake
mainWindow = mw;
IDictionary<string, string> langList = LanguageUtilities.MapLanguages();
+
+ foreach (string selectedItem in Properties.Settings.Default.SelectedLanguages)
+ {
+ // removing wrong keys when a new Language list comes out.
+ if(langList.ContainsKey(selectedItem))
+ listBox_selectedLanguages.Items.Add(selectedItem);
+ }
+
foreach (string item in langList.Keys)
+ {
drop_preferredLang.Items.Add(item);
+ // In the available languages should be no "Any" and no selected language.
+ if ((item != "Any") && (!Properties.Settings.Default.SelectedLanguages.Contains(item)))
+ {
+ listBox_availableLanguages.Items.Add(item);
+ }
+ }
+
// #############################
// General
// #############################
@@ -119,19 +135,82 @@ namespace Handbrake
drop_preferredLang.SelectedItem = Properties.Settings.Default.NativeLanguage;
- switch (Settings.Default.DubMode)
+ if (Settings.Default.DubMode != 255)
{
+ switch (Settings.Default.DubMode)
+ {
+ case 0:
+ Settings.Default.DubModeAudio = 2;
+ Settings.Default.DubModeSubtitle = 0;
+ Settings.Default.DubMode = 255;
+ break;
+ case 1:
+ Settings.Default.DubModeAudio = 4;
+ Settings.Default.DubModeSubtitle = 0;
+ Settings.Default.DubMode = 255;
+ break;
+ case 2:
+ Settings.Default.DubModeAudio = 2;
+ Settings.Default.DubModeSubtitle = 4;
+ Settings.Default.DubMode = 255;
+ break;
+ case 3:
+ Settings.Default.DubModeAudio = 4;
+ Settings.Default.DubModeSubtitle = 4;
+ Settings.Default.DubMode = 255;
+ break;
+ default:
+ Settings.Default.DubMode = 255;
+ break;
+ }
+ }
+
+ switch (Settings.Default.DubModeAudio)
+ {
+ case 0:
+ radio_Audio_None.Checked = true;
+ break;
case 1:
- radio_dub.Checked = true;
+ radio_Audio_All.Checked = true;
break;
case 2:
- radio_foreignAndSubs.Checked = true;
+ radio_Audio_First.Checked = true;
break;
case 3:
- radio_preferredAudioAndSubs.Checked = true;
+ radio_Audio_Selected.Checked = true;
+ break;
+ case 4:
+ radio_Audio_PrefOnly.Checked = true;
+ break;
+ default:
+ radio_Audio_None.Checked = true;
+ break;
+ }
+
+ switch (Settings.Default.DubModeSubtitle)
+ {
+ case 0:
+ radio_Subtitle_None.Checked = true;
+ break;
+ case 1:
+ radio_Subtitle_All.Checked = true;
+ break;
+ case 2:
+ radio_Subtitle_First.Checked = true;
+ break;
+ case 3:
+ radio_Subtitle_Selected.Checked = true;
+ break;
+ case 4:
+ radio_Subtitle_PrefOnly.Checked = true;
+ break;
+ default:
+ radio_Subtitle_None.Checked = true;
break;
}
+ check_AddOnlyOneAudioPerLanguage.Checked = Properties.Settings.Default.addOnlyOneAudioPerLanguage;
+
check_AddCCTracks.Checked = Properties.Settings.Default.useClosedCaption;
// #############################
@@ -321,7 +400,6 @@ namespace Handbrake
private void cb_mp4FileMode_SelectedIndexChanged(object sender, EventArgs e)
{
-
Properties.Settings.Default.useM4v = cb_mp4FileMode.SelectedIndex;
}
@@ -358,24 +436,214 @@ namespace Handbrake
private void drop_preferredLang_SelectedIndexChanged(object sender, EventArgs e)
{
Properties.Settings.Default.NativeLanguage = drop_preferredLang.SelectedItem.ToString();
+
+ if (Properties.Settings.Default.NativeLanguage == "Any")
+ {
+ this.groupBox1.Enabled = false;
+ this.groupBox2.Enabled = false;
+ this.groupBox3.Visible = true;
+ }
+ else
+ {
+ this.groupBox1.Enabled = true;
+ this.groupBox2.Enabled = true;
+ this.groupBox3.Visible = false;
+ }
+ }
+
+ private void button_removeLanguage_Click(object sender, EventArgs e)
+ {
+ if (listBox_selectedLanguages.SelectedItems.Count > 0)
+ {
+ String[] movedItems = new String[listBox_selectedLanguages.SelectedItems.Count];
+
+ listBox_selectedLanguages.SelectedItems.CopyTo(movedItems, 0);
+
+ listBox_availableLanguages.Items.AddRange(movedItems);
+
+ listBox_selectedLanguages.SelectedItems.Clear();
+ foreach (string item in movedItems)
+ {
+ listBox_selectedLanguages.Items.Remove(item);
+
+ if (Properties.Settings.Default.SelectedLanguages.Contains(item))
+ Properties.Settings.Default.SelectedLanguages.Remove(item);
+ }
+ }
+ }
+
+ private void button_addLanguage_Click(object sender, EventArgs e)
+ {
+ if (listBox_availableLanguages.SelectedItems.Count > 0)
+ {
+ String[] movedItems = new String[listBox_availableLanguages.SelectedItems.Count];
+
+ listBox_availableLanguages.SelectedItems.CopyTo(movedItems, 0);
+
+ listBox_selectedLanguages.Items.AddRange(movedItems);
+ Properties.Settings.Default.SelectedLanguages.AddRange(movedItems);
+
+ listBox_availableLanguages.SelectedItems.Clear();
+ foreach (string item in movedItems)
+ {
+ listBox_availableLanguages.Items.Remove(item);
+ }
+ }
+ }
+
+ private void button_clearLanguage_Click(object sender, EventArgs e)
+ {
+ if (listBox_selectedLanguages.Items.Count > 0)
+ {
+ String[] movedItems = new String[listBox_selectedLanguages.Items.Count];
+
+ listBox_selectedLanguages.Items.CopyTo(movedItems, 0);
+
+ listBox_availableLanguages.Items.AddRange(movedItems);
+
+ foreach (string item in movedItems)
+ {
+ listBox_selectedLanguages.Items.Remove(item);
+
+ if (Properties.Settings.Default.SelectedLanguages.Contains(item))
+ Properties.Settings.Default.SelectedLanguages.Remove(item);
+ }
+ }
+ }
+
+ private void button_moveLanguageUp_Click(object sender, EventArgs e)
+ {
+ int ilevel = 0;
+ if (listBox_selectedLanguages.SelectedItems.Count > 0)
+ {
+ ListBox.SelectedIndexCollection selectedItems = listBox_selectedLanguages.SelectedIndices;
+ int[] index_selectedItems = new int[selectedItems.Count];
+
+ for (int i = 0; i < selectedItems.Count; i++)
+ index_selectedItems[i] = selectedItems[i];
+
+ for (int i = 0; i < index_selectedItems.Length; i++)
+ {
+ ilevel = index_selectedItems[i];
+
+ if ((ilevel - 1 >= 0) && (ilevel - 1 >= i))
+ {
+ String lvitem = (String)listBox_selectedLanguages.Items[ilevel];
+ listBox_selectedLanguages.Items.Remove(lvitem);
+ listBox_selectedLanguages.Items.Insert(ilevel - 1, lvitem);
+ listBox_selectedLanguages.SetSelected(ilevel - 1, true);
+
+ // Do the same on the Property.
+ Properties.Settings.Default.SelectedLanguages.Remove(lvitem);
+ Properties.Settings.Default.SelectedLanguages.Insert(ilevel - 1, lvitem);
+ }
+ }
+ }
+ }
+
+ private void button_moveLanguageDown_Click(object sender, EventArgs e)
+ {
+ int ilevel = 0;
+ if (listBox_selectedLanguages.SelectedItems.Count > 0)
+ {
+ ListBox.SelectedIndexCollection selectedItems = listBox_selectedLanguages.SelectedIndices;
+ int[] index_selectedItems = new int[selectedItems.Count];
+
+ for (int i = 0; i < selectedItems.Count; i++)
+ index_selectedItems[i] = selectedItems[i];
+
+ for (int i = index_selectedItems.Length - 1; i >= 0 ; i--)
+ {
+ ilevel = index_selectedItems[i];
+
+ if ((ilevel + 1 >= 0) && (ilevel + 1 <= listBox_selectedLanguages.Items.Count - (index_selectedItems.Length - i)))
+ {
+ String lvitem = (String)listBox_selectedLanguages.Items[ilevel];
+ listBox_selectedLanguages.Items.Remove(lvitem);
+ listBox_selectedLanguages.Items.Insert(ilevel + 1, lvitem);
+ listBox_selectedLanguages.SetSelected(ilevel + 1, true);
+
+ // Do the same on the Property.
+ Properties.Settings.Default.SelectedLanguages.Remove(lvitem);
+ Properties.Settings.Default.SelectedLanguages.Insert(ilevel + 1, lvitem);
+ }
+ }
+ }
+ }
+
+ private void listBox_selectedLanguages_MouseDoubleClick(object sender, MouseEventArgs e)
+ {
+ this.button_removeLanguage_Click(this, new EventArgs());
+ }
+
+ private void listBox_availableLanguages_MouseDoubleClick(object sender, MouseEventArgs e)
+ {
+ this.button_addLanguage_Click(this, new EventArgs());
+ }
+
+ private void radio_Audio_None_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Audio_None.Checked)
+ Properties.Settings.Default.DubModeAudio = 0;
+ }
+
+ private void radio_Audio_All_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Audio_All.Checked)
+ Properties.Settings.Default.DubModeAudio = 1;
+ }
+
+ private void radio_Audio_First_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Audio_First.Checked)
+ Properties.Settings.Default.DubModeAudio = 2;
+ }
+
+ private void radio_Audio_Selected_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Audio_Selected.Checked)
+ Properties.Settings.Default.DubModeAudio = 3;
+ }
+
+ private void radio_Audio_PrefOnly_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Audio_PrefOnly.Checked)
+ Properties.Settings.Default.DubModeAudio = 4;
+ }
+
+ private void radio_Subtitle_None_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Subtitle_None.Checked)
+ Properties.Settings.Default.DubModeSubtitle = 0;
+ }
+
+ private void radio_Subtitle_All_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Subtitle_All.Checked)
+ Properties.Settings.Default.DubModeSubtitle = 1;
+ }
+
+ private void radio_Subtitle_First_CheckedChanged(object sender, EventArgs e)
+ {
+ if (radio_Subtitle_First.Checked)
+ Properties.Settings.Default.DubModeSubtitle = 2;
}
- private void radio_dub_CheckedChanged(object sender, EventArgs e)
+ private void radio_Subtitle_Selected_CheckedChanged(object sender, EventArgs e)
{
- if (radio_dub.Checked)
- Properties.Settings.Default.DubMode = 1;
+ if (radio_Subtitle_Selected.Checked)
+ Properties.Settings.Default.DubModeSubtitle = 3;
}
- private void radio_foreignAndSubs_CheckedChanged(object sender, EventArgs e)
+ private void radio_Subtitle_PrefOnly_CheckedChanged(object sender, EventArgs e)
{
- if (radio_foreignAndSubs.Checked)
- Properties.Settings.Default.DubMode = 2;
+ if (radio_Subtitle_PrefOnly.Checked)
+ Properties.Settings.Default.DubModeSubtitle = 4;
}
- private void radio_preferredAudioAndSubs_CheckedChanged(object sender, EventArgs e)
+ private void check_AddOnlyOneAudioPerLanguage_CheckedChanged(object sender, EventArgs e)
{
- if (radio_preferredAudioAndSubs.Checked)
- Properties.Settings.Default.DubMode = 3;
+ Settings.Default.addOnlyOneAudioPerLanguage = check_AddOnlyOneAudioPerLanguage.Checked;
}
private void check_AddCCTracks_CheckedChanged(object sender, EventArgs e)