drp_audioTrack.SelectedIndex = drp_audioTrack.Items.Count >= 2 ? 1 : 0;\r
else\r
{\r
- if (Properties.Settings.Default.DubAudio) // "Dub Foreign language audio" \r
+ if (Properties.Settings.Default.DubMode > 1) // "Dub Foreign language audio" \r
{\r
int i = 0;\r
foreach (object item in drp_audioTrack.Items)\r
srtFile = drp_subtitleTracks.SelectedItem.ToString();\r
srtLangVal = srt_lang.SelectedItem.ToString();\r
srtCode = srt_charcode.SelectedItem.ToString();\r
- srtOffsetMs = (int) srt_offset.Value;\r
+ srtOffsetMs = (int)srt_offset.Value;\r
if (defaultSub == "Yes") SetNoSrtDefault();\r
}\r
else\r
\r
SubtitleInfo track = new SubtitleInfo\r
{\r
- Track = trackName, \r
- Forced = forcedVal, \r
- Burned = burnedVal, \r
- Default = defaultSub, \r
- SrtLang = srtLangVal, \r
- SrtCharCode = srtCode, \r
- SrtOffset = srtOffsetMs, \r
- SrtPath = srtPath, \r
+ Track = trackName,\r
+ Forced = forcedVal,\r
+ Burned = burnedVal,\r
+ Default = defaultSub,\r
+ SrtLang = srtLangVal,\r
+ SrtCharCode = srtCode,\r
+ SrtOffset = srtOffsetMs,\r
+ SrtPath = srtPath,\r
SrtFileName = srtFile\r
};\r
\r
\r
int c = 0;\r
if (lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[0].Text.ToLower().Contains(".srt"))\r
- // We have an SRT\r
+ // We have an SRT\r
{\r
foreach (var item in drp_subtitleTracks.Items)\r
{\r
lv_subList.Select();\r
\r
subList[lv_subList.SelectedIndices[0]].Forced = check_forced.Checked ? "Yes" : "No";\r
- // Update SubList List<SubtitleInfo> \r
+ // Update SubList List<SubtitleInfo> \r
}\r
\r
/// <summary>\r
lv_subList.Select();\r
\r
subList[lv_subList.SelectedIndices[0]].Burned = check_burned.Checked ? "Yes" : "No";\r
- // Update SubList List<SubtitleInfo> \r
+ // Update SubList List<SubtitleInfo> \r
}\r
\r
/// <summary>\r
lv_subList.Select();\r
\r
subList[lv_subList.SelectedIndices[0]].Default = check_default.Checked ? "Yes" : "No";\r
- // Update SubList List<SubtitleInfo>\r
+ // Update SubList List<SubtitleInfo>\r
}\r
\r
/// <summary>\r
lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[6].Text = srt_offset.Value.ToString();\r
lv_subList.Select();\r
\r
- subList[lv_subList.SelectedIndices[0]].SrtOffset = (int) srt_offset.Value;\r
- // Update SubList List<SubtitleInfo>\r
+ subList[lv_subList.SelectedIndices[0]].SrtOffset = (int)srt_offset.Value;\r
+ // Update SubList List<SubtitleInfo>\r
}\r
\r
/// <summary>\r
lv_subList.Select();\r
\r
subList[lv_subList.SelectedIndices[0]].SrtCharCode = srt_charcode.SelectedItem.ToString();\r
- // Update SubList List<SubtitleInfo>\r
+ // Update SubList List<SubtitleInfo>\r
}\r
\r
/// <summary>\r
lv_subList.Select();\r
\r
subList[lv_subList.SelectedIndices[0]].SrtLang = srt_lang.SelectedItem.ToString();\r
- // Update SubList List<SubtitleInfo>\r
+ // Update SubList List<SubtitleInfo>\r
}\r
\r
/* Right Click Menu */\r
// Handle Native Language and "Dub Foreign language audio" and "Use Foreign language audio and Subtitles" Options\r
if (Properties.Settings.Default.NativeLanguage != "Any")\r
{\r
- if (!Properties.Settings.Default.DubAudio) // We need to add a subtitle track if this is false.\r
+ if (Properties.Settings.Default.DubMode != 1) // We need to add a subtitle track if this is false.\r
{\r
- int i = 0;\r
foreach (object item in drp_subtitleTracks.Items)\r
{\r
if (item.ToString().Contains(Properties.Settings.Default.NativeLanguage))\r
- drp_subtitleTracks.SelectedIndex = i;\r
-\r
- i++;\r
+ {\r
+ drp_subtitleTracks.SelectedItem = item;\r
+ BtnAddSubTrackClick(this, new EventArgs());\r
+ }\r
}\r
\r
- BtnAddSubTrackClick(this, new EventArgs());\r
+ if (drp_subtitleTracks.SelectedIndex == 0 && Properties.Settings.Default.useClosedCaption)\r
+ {\r
+ foreach (object item in drp_subtitleTracks.Items)\r
+ {\r
+ if (item.ToString().Contains("Closed"))\r
+ {\r
+ drp_subtitleTracks.SelectedItem = item;\r
+ BtnAddSubTrackClick(this, new EventArgs());\r
+ }\r
+ }\r
+ } \r
}\r
}\r
}\r
\r
[global::System.Configuration.UserScopedSettingAttribute()]\r
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
- [global::System.Configuration.DefaultSettingValueAttribute("False")]\r
- public bool DubAudio {\r
+ [global::System.Configuration.DefaultSettingValueAttribute("0")]\r
+ public int DubMode {\r
get {\r
- return ((bool)(this["DubAudio"]));\r
+ return ((int)(this["DubMode"]));\r
}\r
set {\r
- this["DubAudio"] = value;\r
+ this["DubMode"] = value;\r
}\r
}\r
\r
this["preventSleep"] = value;\r
}\r
}\r
+ \r
+ [global::System.Configuration.UserScopedSettingAttribute()]\r
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
+ [global::System.Configuration.DefaultSettingValueAttribute("False")]\r
+ public bool useClosedCaption {\r
+ get {\r
+ return ((bool)(this["useClosedCaption"]));\r
+ }\r
+ set {\r
+ this["useClosedCaption"] = value;\r
+ }\r
+ }\r
}\r
}\r
<Setting Name="NativeLanguage" Type="System.String" Scope="User">\r
<Value Profile="(Default)">Any</Value>\r
</Setting>\r
- <Setting Name="DubAudio" Type="System.Boolean" Scope="User">\r
- <Value Profile="(Default)">False</Value>\r
+ <Setting Name="DubMode" Type="System.Int32" Scope="User">\r
+ <Value Profile="(Default)">0</Value>\r
</Setting>\r
<Setting Name="hb_platform" Type="System.String" Scope="User">\r
<Value Profile="(Default)" />\r
<Setting Name="preventSleep" Type="System.Boolean" Scope="User">\r
<Value Profile="(Default)">False</Value>\r
</Setting>\r
+ <Setting Name="useClosedCaption" Type="System.Boolean" Scope="User">\r
+ <Value Profile="(Default)">False</Value>\r
+ </Setting>\r
</Settings>\r
</SettingsFile>
\ No newline at end of file
<setting name="NativeLanguage" serializeAs="String">\r
<value>Any</value>\r
</setting>\r
- <setting name="DubAudio" serializeAs="String">\r
- <value>False</value>\r
+ <setting name="DubMode" serializeAs="String">\r
+ <value>0</value>\r
</setting>\r
<setting name="hb_platform" serializeAs="String">\r
<value />\r
<setting name="preventSleep" serializeAs="String">\r
<value>False</value>\r
</setting>\r
+ <setting name="useClosedCaption" serializeAs="String">\r
+ <value>False</value>\r
+ </setting>\r
</Handbrake.Properties.Settings>\r
</userSettings>\r
<startup />\r
this.openFile_vlc = new System.Windows.Forms.OpenFileDialog();\r
this.panel1 = new System.Windows.Forms.Panel();\r
this.panel2 = new System.Windows.Forms.Panel();\r
+ this.check_AddCCTracks = new System.Windows.Forms.CheckBox();\r
+ this.radio_preferredAudioAndSubs = new System.Windows.Forms.RadioButton();\r
this.tab_options.SuspendLayout();\r
this.tab_general.SuspendLayout();\r
this.tab_picture.SuspendLayout();\r
// \r
// tab_audio_sub\r
// \r
+ this.tab_audio_sub.Controls.Add(this.radio_preferredAudioAndSubs);\r
+ this.tab_audio_sub.Controls.Add(this.check_AddCCTracks);\r
this.tab_audio_sub.Controls.Add(this.label31);\r
this.tab_audio_sub.Controls.Add(this.label15);\r
this.tab_audio_sub.Controls.Add(this.radio_foreignAndSubs);\r
this.panel1.Controls.Add(this.pictureBox2);\r
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;\r
this.panel1.Location = new System.Drawing.Point(0, 0);\r
- this.panel1.Margin = new System.Windows.Forms.Padding(0, 0, 0, 0);\r
+ this.panel1.Margin = new System.Windows.Forms.Padding(0);\r
this.panel1.Name = "panel1";\r
this.panel1.Size = new System.Drawing.Size(615, 65);\r
this.panel1.TabIndex = 62;\r
this.panel2.Size = new System.Drawing.Size(615, 10);\r
this.panel2.TabIndex = 59;\r
// \r
+ // check_AddCCTracks\r
+ // \r
+ this.check_AddCCTracks.AutoSize = true;\r
+ this.check_AddCCTracks.Location = new System.Drawing.Point(200, 131);\r
+ this.check_AddCCTracks.Name = "check_AddCCTracks";\r
+ this.check_AddCCTracks.Size = new System.Drawing.Size(199, 17);\r
+ this.check_AddCCTracks.TabIndex = 92;\r
+ this.check_AddCCTracks.Text = "Add Closed Captions when available";\r
+ this.ToolTip.SetToolTip(this.check_AddCCTracks, "Add any CC tracks if they exist");\r
+ this.check_AddCCTracks.UseVisualStyleBackColor = true;\r
+ this.check_AddCCTracks.CheckedChanged += new System.EventHandler(this.check_AddCCTracks_CheckedChanged);\r
+ // \r
+ // radio_preferredAudioAndSubs\r
+ // \r
+ this.radio_preferredAudioAndSubs.AutoSize = true;\r
+ this.radio_preferredAudioAndSubs.Location = new System.Drawing.Point(200, 99);\r
+ this.radio_preferredAudioAndSubs.Name = "radio_preferredAudioAndSubs";\r
+ this.radio_preferredAudioAndSubs.Size = new System.Drawing.Size(254, 17);\r
+ this.radio_preferredAudioAndSubs.TabIndex = 93;\r
+ this.radio_preferredAudioAndSubs.TabStop = true;\r
+ this.radio_preferredAudioAndSubs.Text = "Use Preferred Language for Audio and Subtitles";\r
+ this.ToolTip.SetToolTip(this.radio_preferredAudioAndSubs, "Use Preferred Language for Audio and Subtitle.");\r
+ this.radio_preferredAudioAndSubs.UseVisualStyleBackColor = true;\r
+ this.radio_preferredAudioAndSubs.CheckedChanged += new System.EventHandler(this.radio_preferredAudioAndSubs_CheckedChanged);\r
+ // \r
// frmOptions\r
// \r
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);\r
private System.Windows.Forms.Label label11;\r
private System.Windows.Forms.Panel panel1;\r
private System.Windows.Forms.Panel panel2;\r
+ private System.Windows.Forms.RadioButton radio_preferredAudioAndSubs;\r
+ private System.Windows.Forms.CheckBox check_AddCCTracks;\r
}\r
}
\ No newline at end of file
using HandBrake.ApplicationServices;\r
\r
using Handbrake.Functions;\r
+ using Handbrake.Model;\r
using Handbrake.Properties;\r
\r
/// <summary>\r
\r
drop_preferredLang.SelectedItem = Properties.Settings.Default.NativeLanguage;\r
\r
- if (Properties.Settings.Default.DubAudio)\r
- radio_dub.Checked = true;\r
- else\r
- radio_foreignAndSubs.Checked = true;\r
+ switch (Settings.Default.DubMode)\r
+ {\r
+ case 1:\r
+ radio_dub.Checked = true;\r
+ break;\r
+ case 2:\r
+ radio_foreignAndSubs.Checked = true;\r
+ break;\r
+ case 3:\r
+ radio_preferredAudioAndSubs.Checked = true;\r
+ break;\r
+ }\r
\r
// #############################\r
// CLI\r
// Priority level for encodes\r
drp_Priority.Text = Properties.Settings.Default.processPriority;\r
\r
- check_preventSleep.Checked = Properties.Settings.Default.preventSleep; \r
+ check_preventSleep.Checked = Properties.Settings.Default.preventSleep;\r
\r
// Log Verbosity Level\r
cb_logVerboseLvl.SelectedIndex = Properties.Settings.Default.verboseLevel;\r
private void radio_dub_CheckedChanged(object sender, EventArgs e)\r
{\r
if (radio_dub.Checked)\r
- Properties.Settings.Default.DubAudio = true;\r
+ Properties.Settings.Default.DubMode = 1;\r
}\r
\r
private void radio_foreignAndSubs_CheckedChanged(object sender, EventArgs e)\r
{\r
if (radio_foreignAndSubs.Checked)\r
- Properties.Settings.Default.DubAudio = false;\r
+ Properties.Settings.Default.DubMode = 2;\r
+ }\r
+\r
+ private void radio_preferredAudioAndSubs_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ if (radio_preferredAudioAndSubs.Checked)\r
+ Properties.Settings.Default.DubMode = 3;\r
+ }\r
+\r
+ private void check_AddCCTracks_CheckedChanged(object sender, EventArgs e)\r
+ {\r
+ Settings.Default.useClosedCaption = check_AddCCTracks.Checked;\r
}\r
\r
#endregion\r
\r
private void btn_clearLogs_Click(object sender, EventArgs e)\r
{\r
- DialogResult result = MessageBox.Show("Are you sure you wish to clear the log file directory?", "Clear Logs", \r
+ DialogResult result = MessageBox.Show("Are you sure you wish to clear the log file directory?", "Clear Logs",\r
MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);\r
if (result == DialogResult.Yes)\r
{\r
Main.ClearLogs();\r
- MessageBox.Show(this, "HandBrake's Log file directory has been cleared!", "Notice", MessageBoxButtons.OK, \r
+ MessageBox.Show(this, "HandBrake's Log file directory has been cleared!", "Notice", MessageBoxButtons.OK,\r
MessageBoxIcon.Information);\r
}\r
}\r
\r
#endregion\r
\r
-\r
private void btn_close_Click(object sender, EventArgs e)\r
{\r
Properties.Settings.Default.Save(); // Small hack for Vista. Seems to work fine on XP without this\r
/// </summary>\r
private static void UpdateApplicationServicesSettings()\r
{\r
- string versionId = String.Format("Windows GUI {1} {0}", Settings.Default.hb_build, Settings.Default.hb_version);\r
- Init.SetupSettings(versionId, Program.InstanceId, Settings.Default.CompletionOption, Settings.Default.noDvdNav,\r
- Settings.Default.growlEncode, Settings.Default.growlQueue,\r
- Settings.Default.processPriority, Settings.Default.saveLogPath, Settings.Default.saveLogToSpecifiedPath,\r
- Settings.Default.saveLogWithVideo, Settings.Default.showCliForInGuiEncodeStatus, Settings.Default.preventSleep);\r
+ string versionId = String.Format(\r
+ "Windows GUI {1} {0}", Settings.Default.hb_build, Settings.Default.hb_version);\r
+ Init.SetupSettings(\r
+ versionId,\r
+ Program.InstanceId,\r
+ Settings.Default.CompletionOption,\r
+ Settings.Default.noDvdNav,\r
+ Settings.Default.growlEncode,\r
+ Settings.Default.growlQueue,\r
+ Settings.Default.processPriority,\r
+ Settings.Default.saveLogPath,\r
+ Settings.Default.saveLogToSpecifiedPath,\r
+ Settings.Default.saveLogWithVideo,\r
+ Settings.Default.showCliForInGuiEncodeStatus,\r
+ Settings.Default.preventSleep);\r
}\r
}\r
}
\ No newline at end of file
<metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
<value>132, 18</value>\r
</metadata>\r
+ <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+ <value>132, 18</value>\r
+ </metadata>\r
<data name="check_m4v.ToolTip" xml:space="preserve">\r
<value>Use .m4v instead of .mp4 for MP4 files\r
\r