summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorsr55 <[email protected]>2012-06-14 17:38:21 +0000
committersr55 <[email protected]>2012-06-14 17:38:21 +0000
commit92292ed049a2f87f00cad38dcb659fe6b4f68623 (patch)
tree06c8adfce3c847a943f8a4460dfdc64f2de39807 /win
parentd3f5f2227d5fad9cd49f669ce8919a7857b9e964 (diff)
WinGui: Remove the legacy WinForms GUI.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4732 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'win')
-rw-r--r--win/CS/Controls/AdvancedEncoderOpts.Designer.cs100
-rw-r--r--win/CS/Controls/AdvancedEncoderOpts.cs70
-rw-r--r--win/CS/Controls/AdvancedEncoderOpts.resx123
-rw-r--r--win/CS/Controls/AudioPanel.Designer.cs600
-rw-r--r--win/CS/Controls/AudioPanel.cs1276
-rw-r--r--win/CS/Controls/AudioPanel.resx175
-rw-r--r--win/CS/Controls/Filters.Designer.cs343
-rw-r--r--win/CS/Controls/Filters.cs469
-rw-r--r--win/CS/Controls/Filters.resx120
-rw-r--r--win/CS/Controls/PictureSettings.Designer.cs688
-rw-r--r--win/CS/Controls/PictureSettings.cs572
-rw-r--r--win/CS/Controls/PictureSettings.resx120
-rw-r--r--win/CS/Controls/Subtitles.Designer.cs442
-rw-r--r--win/CS/Controls/Subtitles.cs938
-rw-r--r--win/CS/Controls/Subtitles.resx135
-rw-r--r--win/CS/Controls/x264Panel.Designer.cs775
-rw-r--r--win/CS/Controls/x264Panel.cs1082
-rw-r--r--win/CS/Controls/x264Panel.resx241
-rw-r--r--win/CS/DEPRECATED WARNING.txt3
-rw-r--r--win/CS/Functions/Main.cs527
-rw-r--r--win/CS/Functions/PresetLoader.cs349
-rw-r--r--win/CS/Functions/QueryGenerator.cs873
-rw-r--r--win/CS/Functions/ToolStripRenderOverride.cs51
-rw-r--r--win/CS/HandBrake10.sln16
-rw-r--r--win/CS/HandBrakeCS.csproj241
-rw-r--r--win/CS/HandBrakeWPF/HandBrakeWPF.csproj8
-rw-r--r--win/CS/HandBrakeWPF/releasenotes.html29
-rw-r--r--win/CS/Installer/Installer.nsi325
-rw-r--r--win/CS/Installer/Installer64.nsi328
-rw-r--r--win/CS/Installer/MakeNightly.nsi.tmpl327
-rw-r--r--win/CS/Installer/MakeNightly64.nsi.tmpl326
-rw-r--r--win/CS/Model/ActivityLogMode.cs23
-rw-r--r--win/CS/Model/QueryEncodeMode.cs16
-rw-r--r--win/CS/Model/QueryPictureSettingsMode.cs18
-rw-r--r--win/CS/Model/SourceType.cs33
-rw-r--r--win/CS/Program.cs124
-rw-r--r--win/CS/Resources/ActivityWindow.pngbin1277 -> 0 bytes
-rw-r--r--win/CS/Resources/ActivityWindow_small.pngbin3490 -> 0 bytes
-rw-r--r--win/CS/Resources/Add16.pngbin595 -> 0 bytes
-rw-r--r--win/CS/Resources/AddToQueue.pngbin1913 -> 0 bytes
-rw-r--r--win/CS/Resources/AddToQueue_small.pngbin829 -> 0 bytes
-rw-r--r--win/CS/Resources/Close.pngbin1038 -> 0 bytes
-rw-r--r--win/CS/Resources/ErrorX.pngbin10369 -> 0 bytes
-rw-r--r--win/CS/Resources/General Preferences.pngbin1490 -> 0 bytes
-rw-r--r--win/CS/Resources/Help16.pngbin3499 -> 0 bytes
-rw-r--r--win/CS/Resources/Help24.pngbin1684 -> 0 bytes
-rw-r--r--win/CS/Resources/Help32.pngbin2531 -> 0 bytes
-rw-r--r--win/CS/Resources/Movies.pngbin2258 -> 0 bytes
-rw-r--r--win/CS/Resources/Movies_Small.pngbin3629 -> 0 bytes
-rw-r--r--win/CS/Resources/Options24.pngbin857 -> 0 bytes
-rw-r--r--win/CS/Resources/Output_Small.pngbin3232 -> 0 bytes
-rw-r--r--win/CS/Resources/Pause.pngbin1715 -> 0 bytes
-rw-r--r--win/CS/Resources/Play.pngbin1792 -> 0 bytes
-rw-r--r--win/CS/Resources/Play_small.pngbin1166 -> 0 bytes
-rw-r--r--win/CS/Resources/Pref_Small.pngbin3353 -> 0 bytes
-rw-r--r--win/CS/Resources/Queue.pngbin1676 -> 0 bytes
-rw-r--r--win/CS/Resources/Queue_Small.pngbin3573 -> 0 bytes
-rw-r--r--win/CS/Resources/Restore.pngbin541 -> 0 bytes
-rw-r--r--win/CS/Resources/arrow_down.pngbin625 -> 0 bytes
-rw-r--r--win/CS/Resources/arrow_left.pngbin654 -> 0 bytes
-rw-r--r--win/CS/Resources/arrow_right.pngbin793 -> 0 bytes
-rw-r--r--win/CS/Resources/arrow_up.pngbin669 -> 0 bytes
-rw-r--r--win/CS/Resources/copy.pngbin3291 -> 0 bytes
-rw-r--r--win/CS/Resources/disc_small.pngbin3575 -> 0 bytes
-rw-r--r--win/CS/Resources/download.pngbin4569 -> 0 bytes
-rw-r--r--win/CS/Resources/folder.pngbin463 -> 0 bytes
-rw-r--r--win/CS/Resources/hb16.pngbin3746 -> 0 bytes
-rw-r--r--win/CS/Resources/hb32.pngbin5935 -> 0 bytes
-rw-r--r--win/CS/Resources/info16.pngbin3495 -> 0 bytes
-rw-r--r--win/CS/Resources/logo128.pngbin31046 -> 0 bytes
-rw-r--r--win/CS/Resources/logo64.pngbin11967 -> 0 bytes
-rw-r--r--win/CS/Resources/picture.pngbin698 -> 0 bytes
-rw-r--r--win/CS/Resources/save.pngbin3115 -> 0 bytes
-rw-r--r--win/CS/Resources/stop.pngbin1341 -> 0 bytes
-rw-r--r--win/CS/Resources/window.pngbin935 -> 0 bytes
-rw-r--r--win/CS/ToolWindows/AdvancedAudio.Designer.cs183
-rw-r--r--win/CS/ToolWindows/AdvancedAudio.cs156
-rw-r--r--win/CS/ToolWindows/AdvancedAudio.resx500
-rw-r--r--win/CS/ToolWindows/BatchAdd.Designer.cs224
-rw-r--r--win/CS/ToolWindows/BatchAdd.cs149
-rw-r--r--win/CS/ToolWindows/BatchAdd.resx500
-rw-r--r--win/CS/ToolWindows/DownloadUpdate.Designer.cs111
-rw-r--r--win/CS/ToolWindows/DownloadUpdate.cs122
-rw-r--r--win/CS/ToolWindows/DownloadUpdate.resx670
-rw-r--r--win/CS/ToolWindows/ExceptionWindow.cs81
-rw-r--r--win/CS/ToolWindows/ExceptionWindow.designer.cs187
-rw-r--r--win/CS/ToolWindows/ExceptionWindow.resx868
-rw-r--r--win/CS/ToolWindows/TitleSpecificScan.Designer.cs121
-rw-r--r--win/CS/ToolWindows/TitleSpecificScan.cs55
-rw-r--r--win/CS/ToolWindows/TitleSpecificScan.resx500
-rw-r--r--win/CS/ToolWindows/UpdateInfo.Designer.cs241
-rw-r--r--win/CS/ToolWindows/UpdateInfo.cs125
-rw-r--r--win/CS/ToolWindows/UpdateInfo.resx1021
-rw-r--r--win/CS/UserSettingConstants.cs48
-rw-r--r--win/CS/app.config19
-rw-r--r--win/CS/build.xml3
-rw-r--r--win/CS/defaultsettings.xml443
-rw-r--r--win/CS/frmAbout.Designer.cs165
-rw-r--r--win/CS/frmAbout.cs47
-rw-r--r--win/CS/frmAbout.resx515
-rw-r--r--win/CS/frmActivityWindow.Designer.cs186
-rw-r--r--win/CS/frmActivityWindow.cs493
-rw-r--r--win/CS/frmActivityWindow.resx523
-rw-r--r--win/CS/frmAddPreset.Designer.cs246
-rw-r--r--win/CS/frmAddPreset.cs141
-rw-r--r--win/CS/frmAddPreset.resx503
-rw-r--r--win/CS/frmMain.Designer.cs2011
-rw-r--r--win/CS/frmMain.cs2685
-rw-r--r--win/CS/frmMain.resx1031
-rw-r--r--win/CS/frmOptions.Designer.cs2019
-rw-r--r--win/CS/frmOptions.cs735
-rw-r--r--win/CS/frmOptions.resx552
-rw-r--r--win/CS/frmPreview.Designer.cs176
-rw-r--r--win/CS/frmPreview.cs303
-rw-r--r--win/CS/frmPreview.resx500
-rw-r--r--win/CS/frmQueue.Designer.cs560
-rw-r--r--win/CS/frmQueue.cs786
-rw-r--r--win/CS/frmQueue.resx536
-rw-r--r--win/CS/handbrakepineapple.icobin22486 -> 0 bytes
119 files changed, 3 insertions, 32923 deletions
diff --git a/win/CS/Controls/AdvancedEncoderOpts.Designer.cs b/win/CS/Controls/AdvancedEncoderOpts.Designer.cs
deleted file mode 100644
index 4ee6d85cf..000000000
--- a/win/CS/Controls/AdvancedEncoderOpts.Designer.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-/* x264Panel.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- partial class AdvancedEncoderOpts
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- this.label43 = new System.Windows.Forms.Label();
- this.advancedQuery = new System.Windows.Forms.RichTextBox();
- this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
- this.label64 = new System.Windows.Forms.Label();
- this.SuspendLayout();
- //
- // label43
- //
- this.label43.AutoSize = true;
- this.label43.BackColor = System.Drawing.Color.Transparent;
- this.label43.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label43.Location = new System.Drawing.Point(13, 13);
- this.label43.Name = "label43";
- this.label43.Size = new System.Drawing.Size(63, 13);
- this.label43.TabIndex = 49;
- this.label43.Text = "Advanced";
- //
- // advancedQuery
- //
- this.advancedQuery.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.advancedQuery.Location = new System.Drawing.Point(16, 53);
- this.advancedQuery.Name = "advancedQuery";
- this.advancedQuery.Size = new System.Drawing.Size(688, 128);
- this.advancedQuery.TabIndex = 80;
- this.advancedQuery.Text = "";
- //
- // ToolTip
- //
- this.ToolTip.Active = false;
- this.ToolTip.AutomaticDelay = 1000;
- this.ToolTip.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
- //
- // label64
- //
- this.label64.AutoSize = true;
- this.label64.Location = new System.Drawing.Point(13, 35);
- this.label64.Name = "label64";
- this.label64.Size = new System.Drawing.Size(163, 13);
- this.label64.TabIndex = 81;
- this.label64.Text = "Encoder advanced option string:";
- //
- // x264Panel
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.label64);
- this.Controls.Add(this.advancedQuery);
- this.Controls.Add(this.label43);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Size = new System.Drawing.Size(720, 305);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.Label label43;
- internal System.Windows.Forms.RichTextBox advancedQuery;
- private System.Windows.Forms.ToolTip ToolTip;
- internal System.Windows.Forms.Label label64;
- }
-}
diff --git a/win/CS/Controls/AdvancedEncoderOpts.cs b/win/CS/Controls/AdvancedEncoderOpts.cs
deleted file mode 100644
index b3f42913a..000000000
--- a/win/CS/Controls/AdvancedEncoderOpts.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-/* AdvancedEncoderOpts.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- /// <summary>
- /// The x264 Panel
- /// </summary>
- public partial class AdvancedEncoderOpts : UserControl
- {
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="AdvancedEncoderOpts"/> class.
- /// </summary>
- public AdvancedEncoderOpts()
- {
- InitializeComponent();
-
- if (this.UserSettingService.GetUserSetting<bool>(UserSettingConstants.TooltipEnable))
- ToolTip.Active = true;
- }
-
- /// <summary>
- /// Gets or sets the X264 query string
- /// </summary>
- public string AdavancedQuery
- {
- get
- {
- return advancedQuery.Text;
- }
-
- set
- {
- advancedQuery.Text = value;
- }
- }
-
- /// <summary>
- /// Sets a value indicating whether IsDisabled.
- /// </summary>
- public bool IsDisabled
- {
- set
- {
- if (value)
- {
- this.advancedQuery.Enabled = false;
- this.advancedQuery.Text = "Advanced encoder option passthrough is not currently supported for the encoder you have chosen.";
- }
- else
- {
- this.advancedQuery.Enabled = true;
- this.advancedQuery.Text = string.Empty;
- }
- }
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/AdvancedEncoderOpts.resx b/win/CS/Controls/AdvancedEncoderOpts.resx
deleted file mode 100644
index 89a8b3473..000000000
--- a/win/CS/Controls/AdvancedEncoderOpts.resx
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
-</root> \ No newline at end of file
diff --git a/win/CS/Controls/AudioPanel.Designer.cs b/win/CS/Controls/AudioPanel.Designer.cs
deleted file mode 100644
index 3a4653853..000000000
--- a/win/CS/Controls/AudioPanel.Designer.cs
+++ /dev/null
@@ -1,600 +0,0 @@
-/* AudioPanel.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- partial class AudioPanel
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AudioPanel));
- this.audioMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.audioList_MoveToTop = new System.Windows.Forms.ToolStripMenuItem();
- this.audioList_moveup = new System.Windows.Forms.ToolStripMenuItem();
- this.audioList_movedown = new System.Windows.Forms.ToolStripMenuItem();
- this.audioList_MoveToBottom = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
- this.audioList_remove = new System.Windows.Forms.ToolStripMenuItem();
- this.label68 = new System.Windows.Forms.Label();
- this.drp_audioEncoder = new System.Windows.Forms.ComboBox();
- this.drp_audioMix = new System.Windows.Forms.ComboBox();
- this.drp_audioTrack = new System.Windows.Forms.ComboBox();
- this.drp_audioBitrate = new System.Windows.Forms.ComboBox();
- this.drp_audioSample = new System.Windows.Forms.ComboBox();
- this.AudioMenuRowHeightHack = new System.Windows.Forms.ImageList(this.components);
- this.audioList = new System.Windows.Forms.DataGridView();
- this.Source = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.AudioCodec = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.Mixdown = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.Samplerate = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.Bitrate = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.DRC = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.Gain = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.ToolTips = new System.Windows.Forms.ToolTip(this.components);
- this.drp_passthruFallback = new System.Windows.Forms.ComboBox();
- this.gb_autoPassthru = new System.Windows.Forms.GroupBox();
- this.label1 = new System.Windows.Forms.Label();
- this.check_dtshd = new System.Windows.Forms.CheckBox();
- this.check_dts = new System.Windows.Forms.CheckBox();
- this.check_ac3 = new System.Windows.Forms.CheckBox();
- this.check_aac = new System.Windows.Forms.CheckBox();
- this.check_mp3 = new System.Windows.Forms.CheckBox();
- this.btn_AdvancedAudio = new System.Windows.Forms.Button();
- this.btn_addAudioTrack = new wyDay.Controls.SplitButton();
- this.AddTrackMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_AddAll = new System.Windows.Forms.ToolStripMenuItem();
- this.btn_RemoveTrack = new wyDay.Controls.SplitButton();
- this.RemoveTrackMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_ClearAll = new System.Windows.Forms.ToolStripMenuItem();
- this.audioMenu.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.audioList)).BeginInit();
- this.gb_autoPassthru.SuspendLayout();
- this.AddTrackMenu.SuspendLayout();
- this.RemoveTrackMenu.SuspendLayout();
- this.SuspendLayout();
- //
- // audioMenu
- //
- this.audioMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.audioList_MoveToTop,
- this.audioList_moveup,
- this.audioList_movedown,
- this.audioList_MoveToBottom,
- this.toolStripSeparator2,
- this.audioList_remove});
- this.audioMenu.Name = "audioMenu";
- this.audioMenu.Size = new System.Drawing.Size(165, 120);
- //
- // audioList_MoveToTop
- //
- this.audioList_MoveToTop.Name = "audioList_MoveToTop";
- this.audioList_MoveToTop.Size = new System.Drawing.Size(164, 22);
- this.audioList_MoveToTop.Text = "Move to Top";
- this.audioList_MoveToTop.Click += new System.EventHandler(this.audioList_MoveToTop_Click);
- //
- // audioList_moveup
- //
- this.audioList_moveup.Name = "audioList_moveup";
- this.audioList_moveup.Size = new System.Drawing.Size(164, 22);
- this.audioList_moveup.Text = "Move Up";
- this.audioList_moveup.Click += new System.EventHandler(this.AudioList_moveup_Click);
- //
- // audioList_movedown
- //
- this.audioList_movedown.Name = "audioList_movedown";
- this.audioList_movedown.Size = new System.Drawing.Size(164, 22);
- this.audioList_movedown.Text = "Move Down";
- this.audioList_movedown.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.audioList_movedown.Click += new System.EventHandler(this.AudioList_movedown_Click);
- //
- // audioList_MoveToBottom
- //
- this.audioList_MoveToBottom.Name = "audioList_MoveToBottom";
- this.audioList_MoveToBottom.Size = new System.Drawing.Size(164, 22);
- this.audioList_MoveToBottom.Text = "Move To Bottom";
- this.audioList_MoveToBottom.Click += new System.EventHandler(this.audioList_MoveToBottom_Click);
- //
- // toolStripSeparator2
- //
- this.toolStripSeparator2.Name = "toolStripSeparator2";
- this.toolStripSeparator2.Size = new System.Drawing.Size(161, 6);
- //
- // audioList_remove
- //
- this.audioList_remove.Name = "audioList_remove";
- this.audioList_remove.Size = new System.Drawing.Size(164, 22);
- this.audioList_remove.Text = "Remove";
- this.audioList_remove.Click += new System.EventHandler(this.AudioList_remove_Click);
- //
- // label68
- //
- this.label68.AutoSize = true;
- this.label68.BackColor = System.Drawing.Color.Transparent;
- this.label68.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label68.Location = new System.Drawing.Point(13, 13);
- this.label68.Name = "label68";
- this.label68.Size = new System.Drawing.Size(80, 13);
- this.label68.TabIndex = 49;
- this.label68.Text = "Audio Tracks";
- //
- // drp_audioEncoder
- //
- this.drp_audioEncoder.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_audioEncoder.FormattingEnabled = true;
- this.drp_audioEncoder.Items.AddRange(new object[] {
- "AAC (faac)",
- "AAC (ffmpeg)",
- "MP3 (lame)",
- "Vorbis (vorbis)",
- "AC3 Passthru",
- "AC3 (ffmpeg)",
- "DTS Passthru"});
- this.drp_audioEncoder.Location = new System.Drawing.Point(191, 66);
- this.drp_audioEncoder.Name = "drp_audioEncoder";
- this.drp_audioEncoder.Size = new System.Drawing.Size(111, 21);
- this.drp_audioEncoder.TabIndex = 52;
- this.ToolTips.SetToolTip(this.drp_audioEncoder, "Set the audio codec to encode the selected track with.");
- this.drp_audioEncoder.SelectedIndexChanged += new System.EventHandler(this.ControlChanged);
- //
- // drp_audioMix
- //
- this.drp_audioMix.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_audioMix.Enabled = false;
- this.drp_audioMix.FormattingEnabled = true;
- this.drp_audioMix.Items.AddRange(new object[] {
- "Automatic",
- "None",
- "Mono",
- "Stereo",
- "Dolby Surround",
- "Dolby Pro Logic II",
- "6-channel discrete"});
- this.drp_audioMix.Location = new System.Drawing.Point(309, 66);
- this.drp_audioMix.Name = "drp_audioMix";
- this.drp_audioMix.Size = new System.Drawing.Size(147, 21);
- this.drp_audioMix.TabIndex = 54;
- this.ToolTips.SetToolTip(this.drp_audioMix, "Set the mixdown for the selected audio track.");
- this.drp_audioMix.SelectedIndexChanged += new System.EventHandler(this.ControlChanged);
- //
- // drp_audioTrack
- //
- this.drp_audioTrack.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_audioTrack.FormattingEnabled = true;
- this.drp_audioTrack.Items.AddRange(new object[] {
- "Automatic"});
- this.drp_audioTrack.Location = new System.Drawing.Point(16, 66);
- this.drp_audioTrack.Name = "drp_audioTrack";
- this.drp_audioTrack.Size = new System.Drawing.Size(170, 21);
- this.drp_audioTrack.TabIndex = 50;
- this.ToolTips.SetToolTip(this.drp_audioTrack, "The list of audio tracks available from your source.");
- this.drp_audioTrack.SelectedIndexChanged += new System.EventHandler(this.ControlChanged);
- //
- // drp_audioBitrate
- //
- this.drp_audioBitrate.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_audioBitrate.Enabled = false;
- this.drp_audioBitrate.FormattingEnabled = true;
- this.drp_audioBitrate.Items.AddRange(new object[] {
- "32",
- "40",
- "48",
- "56",
- "64",
- "80",
- "96",
- "112",
- "128",
- "160"});
- this.drp_audioBitrate.Location = new System.Drawing.Point(534, 66);
- this.drp_audioBitrate.Name = "drp_audioBitrate";
- this.drp_audioBitrate.Size = new System.Drawing.Size(67, 21);
- this.drp_audioBitrate.TabIndex = 58;
- this.ToolTips.SetToolTip(this.drp_audioBitrate, "Set the bitrate for the selected audio track.");
- this.drp_audioBitrate.SelectedIndexChanged += new System.EventHandler(this.ControlChanged);
- //
- // drp_audioSample
- //
- this.drp_audioSample.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_audioSample.Enabled = false;
- this.drp_audioSample.FormattingEnabled = true;
- this.drp_audioSample.Items.AddRange(new object[] {
- "Auto",
- "48",
- "44.1",
- "32",
- "24",
- "22.05"});
- this.drp_audioSample.Location = new System.Drawing.Point(461, 66);
- this.drp_audioSample.Name = "drp_audioSample";
- this.drp_audioSample.Size = new System.Drawing.Size(67, 21);
- this.drp_audioSample.TabIndex = 56;
- this.ToolTips.SetToolTip(this.drp_audioSample, "Set the samplerate for the selected audio track.");
- this.drp_audioSample.SelectedIndexChanged += new System.EventHandler(this.ControlChanged);
- //
- // AudioMenuRowHeightHack
- //
- this.AudioMenuRowHeightHack.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
- this.AudioMenuRowHeightHack.ImageSize = new System.Drawing.Size(1, 18);
- this.AudioMenuRowHeightHack.TransparentColor = System.Drawing.Color.Transparent;
- //
- // audioList
- //
- this.audioList.AllowUserToAddRows = false;
- this.audioList.AllowUserToResizeColumns = false;
- this.audioList.AllowUserToResizeRows = false;
- this.audioList.BackgroundColor = System.Drawing.Color.White;
- this.audioList.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.None;
- this.audioList.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
- this.audioList.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
- this.Source,
- this.AudioCodec,
- this.Mixdown,
- this.Samplerate,
- this.Bitrate,
- this.DRC,
- this.Gain});
- this.audioList.ContextMenuStrip = this.audioMenu;
- this.audioList.GridColor = System.Drawing.Color.White;
- this.audioList.Location = new System.Drawing.Point(16, 94);
- this.audioList.Name = "audioList";
- this.audioList.RowHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.None;
- this.audioList.RowHeadersVisible = false;
- this.audioList.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;
- this.audioList.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
- this.audioList.ShowCellErrors = false;
- this.audioList.ShowCellToolTips = false;
- this.audioList.ShowEditingIcon = false;
- this.audioList.ShowRowErrors = false;
- this.audioList.Size = new System.Drawing.Size(685, 200);
- this.audioList.TabIndex = 67;
- this.ToolTips.SetToolTip(this.audioList, resources.GetString("audioList.ToolTip"));
- this.audioList.SelectionChanged += new System.EventHandler(this.audioList_SelectionChanged);
- //
- // Source
- //
- this.Source.DataPropertyName = "TrackDisplay";
- this.Source.FillWeight = 49.69727F;
- this.Source.HeaderText = "Source";
- this.Source.Name = "Source";
- this.Source.ReadOnly = true;
- this.Source.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.Source.Width = 170;
- //
- // AudioCodec
- //
- this.AudioCodec.DataPropertyName = "AudioEncoderDisplayValue";
- this.AudioCodec.HeaderText = "Audio Codec";
- this.AudioCodec.Name = "AudioCodec";
- this.AudioCodec.ReadOnly = true;
- this.AudioCodec.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.AudioCodec.Width = 120;
- //
- // Mixdown
- //
- this.Mixdown.DataPropertyName = "AudioMixdownDisplayValue";
- this.Mixdown.FillWeight = 49.69727F;
- this.Mixdown.HeaderText = "Mixdown";
- this.Mixdown.Name = "Mixdown";
- this.Mixdown.ReadOnly = true;
- this.Mixdown.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.Mixdown.Width = 150;
- //
- // Samplerate
- //
- this.Samplerate.DataPropertyName = "SampleRateDisplayValue";
- this.Samplerate.FillWeight = 49.69727F;
- this.Samplerate.HeaderText = "Samplerate";
- this.Samplerate.Name = "Samplerate";
- this.Samplerate.ReadOnly = true;
- this.Samplerate.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.Samplerate.Width = 75;
- //
- // Bitrate
- //
- this.Bitrate.DataPropertyName = "BitRateDisplayValue";
- this.Bitrate.FillWeight = 49.69727F;
- this.Bitrate.HeaderText = "Bitrate";
- this.Bitrate.Name = "Bitrate";
- this.Bitrate.ReadOnly = true;
- this.Bitrate.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.Bitrate.Width = 75;
- //
- // DRC
- //
- this.DRC.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- this.DRC.DataPropertyName = "DRC";
- this.DRC.FillWeight = 96.36334F;
- this.DRC.HeaderText = "DRC";
- this.DRC.Name = "DRC";
- this.DRC.ReadOnly = true;
- this.DRC.Resizable = System.Windows.Forms.DataGridViewTriState.True;
- this.DRC.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- //
- // Gain
- //
- this.Gain.DataPropertyName = "Gain";
- this.Gain.HeaderText = "Gain (dB)";
- this.Gain.Name = "Gain";
- this.Gain.ReadOnly = true;
- this.Gain.Width = 60;
- //
- // ToolTips
- //
- this.ToolTips.AutomaticDelay = 1500;
- //
- // drp_passthruFallback
- //
- this.drp_passthruFallback.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_passthruFallback.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.drp_passthruFallback.FormattingEnabled = true;
- this.drp_passthruFallback.Location = new System.Drawing.Point(327, 15);
- this.drp_passthruFallback.Name = "drp_passthruFallback";
- this.drp_passthruFallback.Size = new System.Drawing.Size(111, 19);
- this.drp_passthruFallback.TabIndex = 75;
- this.ToolTips.SetToolTip(this.drp_passthruFallback, "The Audio Encoder that will be used, if there is no suitable passthru option.");
- this.drp_passthruFallback.SelectedIndexChanged += new System.EventHandler(this.drp_passthruFallback_SelectedIndexChanged);
- //
- // gb_autoPassthru
- //
- this.gb_autoPassthru.Controls.Add(this.label1);
- this.gb_autoPassthru.Controls.Add(this.drp_passthruFallback);
- this.gb_autoPassthru.Controls.Add(this.check_dtshd);
- this.gb_autoPassthru.Controls.Add(this.check_dts);
- this.gb_autoPassthru.Controls.Add(this.check_ac3);
- this.gb_autoPassthru.Controls.Add(this.check_aac);
- this.gb_autoPassthru.Controls.Add(this.check_mp3);
- this.gb_autoPassthru.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.gb_autoPassthru.Location = new System.Drawing.Point(256, 19);
- this.gb_autoPassthru.Name = "gb_autoPassthru";
- this.gb_autoPassthru.Size = new System.Drawing.Size(445, 40);
- this.gb_autoPassthru.TabIndex = 74;
- this.gb_autoPassthru.TabStop = false;
- this.gb_autoPassthru.Text = "Auto Passthru";
- this.ToolTips.SetToolTip(this.gb_autoPassthru, resources.GetString("gb_autoPassthru.ToolTip"));
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(279, 18);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(42, 11);
- this.label1.TabIndex = 76;
- this.label1.Text = "Fallback:";
- //
- // check_dtshd
- //
- this.check_dtshd.AutoSize = true;
- this.check_dtshd.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.check_dtshd.Location = new System.Drawing.Point(214, 17);
- this.check_dtshd.Name = "check_dtshd";
- this.check_dtshd.Size = new System.Drawing.Size(60, 15);
- this.check_dtshd.TabIndex = 4;
- this.check_dtshd.Text = "DTS-HD";
- this.ToolTips.SetToolTip(this.check_dtshd, "Allow DTS-HD Passthru");
- this.check_dtshd.UseVisualStyleBackColor = true;
- this.check_dtshd.CheckedChanged += new System.EventHandler(this.autoPassthru_CheckedChanged);
- //
- // check_dts
- //
- this.check_dts.AutoSize = true;
- this.check_dts.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.check_dts.Location = new System.Drawing.Point(163, 17);
- this.check_dts.Name = "check_dts";
- this.check_dts.Size = new System.Drawing.Size(43, 15);
- this.check_dts.TabIndex = 3;
- this.check_dts.Text = "DTS";
- this.ToolTips.SetToolTip(this.check_dts, "Allow DTS Passthru");
- this.check_dts.UseVisualStyleBackColor = true;
- this.check_dts.CheckedChanged += new System.EventHandler(this.autoPassthru_CheckedChanged);
- //
- // check_ac3
- //
- this.check_ac3.AutoSize = true;
- this.check_ac3.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.check_ac3.Location = new System.Drawing.Point(111, 17);
- this.check_ac3.Name = "check_ac3";
- this.check_ac3.Size = new System.Drawing.Size(43, 15);
- this.check_ac3.TabIndex = 2;
- this.check_ac3.Text = "AC3";
- this.ToolTips.SetToolTip(this.check_ac3, "Allow AC3 Passthru");
- this.check_ac3.UseVisualStyleBackColor = true;
- this.check_ac3.CheckedChanged += new System.EventHandler(this.autoPassthru_CheckedChanged);
- //
- // check_aac
- //
- this.check_aac.AutoSize = true;
- this.check_aac.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.check_aac.Location = new System.Drawing.Point(58, 17);
- this.check_aac.Name = "check_aac";
- this.check_aac.Size = new System.Drawing.Size(45, 15);
- this.check_aac.TabIndex = 1;
- this.check_aac.Text = "AAC";
- this.ToolTips.SetToolTip(this.check_aac, "Allow AAC Passthru");
- this.check_aac.UseVisualStyleBackColor = true;
- this.check_aac.CheckedChanged += new System.EventHandler(this.autoPassthru_CheckedChanged);
- //
- // check_mp3
- //
- this.check_mp3.AutoSize = true;
- this.check_mp3.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.check_mp3.Location = new System.Drawing.Point(6, 17);
- this.check_mp3.Name = "check_mp3";
- this.check_mp3.Size = new System.Drawing.Size(43, 15);
- this.check_mp3.TabIndex = 0;
- this.check_mp3.Text = "MP3";
- this.ToolTips.SetToolTip(this.check_mp3, "Allow MP3 Passthru");
- this.check_mp3.UseVisualStyleBackColor = true;
- this.check_mp3.CheckedChanged += new System.EventHandler(this.autoPassthru_CheckedChanged);
- //
- // btn_AdvancedAudio
- //
- this.btn_AdvancedAudio.BackColor = System.Drawing.Color.Transparent;
- this.btn_AdvancedAudio.Enabled = false;
- this.btn_AdvancedAudio.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_AdvancedAudio.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_AdvancedAudio.Location = new System.Drawing.Point(607, 65);
- this.btn_AdvancedAudio.Name = "btn_AdvancedAudio";
- this.btn_AdvancedAudio.Size = new System.Drawing.Size(94, 23);
- this.btn_AdvancedAudio.TabIndex = 70;
- this.btn_AdvancedAudio.Text = "Advanced";
- this.btn_AdvancedAudio.UseVisualStyleBackColor = false;
- this.btn_AdvancedAudio.Click += new System.EventHandler(this.btn_AdvancedAudio_Click);
- //
- // btn_addAudioTrack
- //
- this.btn_addAudioTrack.AutoSize = true;
- this.btn_addAudioTrack.ContextMenuStrip = this.AddTrackMenu;
- this.btn_addAudioTrack.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_addAudioTrack.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_addAudioTrack.Location = new System.Drawing.Point(16, 37);
- this.btn_addAudioTrack.Name = "btn_addAudioTrack";
- this.btn_addAudioTrack.Size = new System.Drawing.Size(92, 23);
- this.btn_addAudioTrack.SplitMenuStrip = this.AddTrackMenu;
- this.btn_addAudioTrack.TabIndex = 72;
- this.btn_addAudioTrack.Text = "Add Track";
- this.btn_addAudioTrack.UseVisualStyleBackColor = true;
- this.btn_addAudioTrack.Click += new System.EventHandler(this.AddAudioTrack_Click);
- //
- // AddTrackMenu
- //
- this.AddTrackMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_AddAll});
- this.AddTrackMenu.Name = "audioMenu";
- this.AddTrackMenu.Size = new System.Drawing.Size(114, 26);
- //
- // mnu_AddAll
- //
- this.mnu_AddAll.Name = "mnu_AddAll";
- this.mnu_AddAll.Size = new System.Drawing.Size(113, 22);
- this.mnu_AddAll.Text = "Add All";
- this.mnu_AddAll.Click += new System.EventHandler(this.mnu_AddAll_Click);
- //
- // btn_RemoveTrack
- //
- this.btn_RemoveTrack.AutoSize = true;
- this.btn_RemoveTrack.ContextMenuStrip = this.RemoveTrackMenu;
- this.btn_RemoveTrack.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_RemoveTrack.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_RemoveTrack.Location = new System.Drawing.Point(114, 37);
- this.btn_RemoveTrack.Name = "btn_RemoveTrack";
- this.btn_RemoveTrack.Size = new System.Drawing.Size(82, 23);
- this.btn_RemoveTrack.SplitMenuStrip = this.RemoveTrackMenu;
- this.btn_RemoveTrack.TabIndex = 73;
- this.btn_RemoveTrack.Text = "Remove";
- this.btn_RemoveTrack.UseVisualStyleBackColor = true;
- this.btn_RemoveTrack.Click += new System.EventHandler(this.Btn_remove_track_click);
- //
- // RemoveTrackMenu
- //
- this.RemoveTrackMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_ClearAll});
- this.RemoveTrackMenu.Name = "audioMenu";
- this.RemoveTrackMenu.Size = new System.Drawing.Size(119, 26);
- //
- // mnu_ClearAll
- //
- this.mnu_ClearAll.Name = "mnu_ClearAll";
- this.mnu_ClearAll.Size = new System.Drawing.Size(118, 22);
- this.mnu_ClearAll.Text = "Clear All";
- this.mnu_ClearAll.Click += new System.EventHandler(this.Mnu_clear_all_click);
- //
- // AudioPanel
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.gb_autoPassthru);
- this.Controls.Add(this.drp_audioTrack);
- this.Controls.Add(this.btn_AdvancedAudio);
- this.Controls.Add(this.drp_audioSample);
- this.Controls.Add(this.btn_RemoveTrack);
- this.Controls.Add(this.audioList);
- this.Controls.Add(this.label68);
- this.Controls.Add(this.btn_addAudioTrack);
- this.Controls.Add(this.drp_audioBitrate);
- this.Controls.Add(this.drp_audioMix);
- this.Controls.Add(this.drp_audioEncoder);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Name = "AudioPanel";
- this.Size = new System.Drawing.Size(720, 310);
- this.audioMenu.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.audioList)).EndInit();
- this.gb_autoPassthru.ResumeLayout(false);
- this.gb_autoPassthru.PerformLayout();
- this.AddTrackMenu.ResumeLayout(false);
- this.RemoveTrackMenu.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.Label label68;
- internal System.Windows.Forms.ComboBox drp_audioEncoder;
- internal System.Windows.Forms.ComboBox drp_audioMix;
- internal System.Windows.Forms.ComboBox drp_audioTrack;
- internal System.Windows.Forms.ComboBox drp_audioSample;
- private System.Windows.Forms.ImageList AudioMenuRowHeightHack;
- private System.Windows.Forms.ContextMenuStrip audioMenu;
- private System.Windows.Forms.ToolStripMenuItem audioList_moveup;
- private System.Windows.Forms.ToolStripMenuItem audioList_movedown;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
- private System.Windows.Forms.ToolStripMenuItem audioList_remove;
- internal System.Windows.Forms.ComboBox drp_audioBitrate;
- private System.Windows.Forms.DataGridView audioList;
- private System.Windows.Forms.ToolTip ToolTips;
- private System.Windows.Forms.Button btn_AdvancedAudio;
- private System.Windows.Forms.ToolStripMenuItem audioList_MoveToTop;
- private System.Windows.Forms.ToolStripMenuItem audioList_MoveToBottom;
- private wyDay.Controls.SplitButton btn_addAudioTrack;
- private System.Windows.Forms.ContextMenuStrip AddTrackMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_AddAll;
- private wyDay.Controls.SplitButton btn_RemoveTrack;
- private System.Windows.Forms.ContextMenuStrip RemoveTrackMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_ClearAll;
- private System.Windows.Forms.DataGridViewTextBoxColumn Source;
- private System.Windows.Forms.DataGridViewTextBoxColumn AudioCodec;
- private System.Windows.Forms.DataGridViewTextBoxColumn Mixdown;
- private System.Windows.Forms.DataGridViewTextBoxColumn Samplerate;
- private System.Windows.Forms.DataGridViewTextBoxColumn Bitrate;
- private System.Windows.Forms.DataGridViewTextBoxColumn DRC;
- private System.Windows.Forms.DataGridViewTextBoxColumn Gain;
- private System.Windows.Forms.GroupBox gb_autoPassthru;
- private System.Windows.Forms.CheckBox check_dtshd;
- private System.Windows.Forms.CheckBox check_dts;
- private System.Windows.Forms.CheckBox check_ac3;
- private System.Windows.Forms.CheckBox check_aac;
- private System.Windows.Forms.CheckBox check_mp3;
- private System.Windows.Forms.Label label1;
- internal System.Windows.Forms.ComboBox drp_passthruFallback;
- }
-}
diff --git a/win/CS/Controls/AudioPanel.cs b/win/CS/Controls/AudioPanel.cs
deleted file mode 100644
index 48c165158..000000000
--- a/win/CS/Controls/AudioPanel.cs
+++ /dev/null
@@ -1,1276 +0,0 @@
-/* AudioPanel.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Collections.Specialized;
- using System.ComponentModel;
- using System.Drawing;
- using System.Globalization;
- using System.Linq;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Functions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
- using HandBrake.Interop.Model.Encoding;
-
- using Handbrake.ToolWindows;
-
- /// <summary>
- /// The AudioPanel Control
- /// </summary>
- public partial class AudioPanel : UserControl
- {
- #region Private Variables
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Audio Tracks
- /// </summary>
- private readonly BindingList<AudioTrack> audioTracks = new BindingList<AudioTrack>();
-
- /// <summary>
- /// Mixdown
- /// </summary>
- private const string None = "None";
-
- /// <summary>
- /// The Advanced Audio Backing object
- /// </summary>
- private AdvancedAudio advancedAudio = new AdvancedAudio();
-
- #endregion
-
- #region Constructor and Events
-
- /// <summary>
- /// Initializes a new instance of the <see cref="AudioPanel"/> class.
- /// </summary>
- public AudioPanel()
- {
- InitializeComponent();
-
- this.ScannedTracks = new BindingList<Audio>
- {
- AudioHelper.NoneFound
- };
-
- this.audioList.AutoGenerateColumns = false;
- this.audioList.DataSource = audioTracks;
-
- drp_audioMix.SelectedItem = "Dolby Pro Logic II";
- drp_audioSample.SelectedIndex = 1;
- drp_audioBitrate.SelectedItem = "160";
- drp_audioEncoder.SelectedItem = "AAC (faac)";
-
- drp_audioTrack.DataSource = this.ScannedTracks;
-
- // Setup Auto-Passthru Settings
- this.PassthruSettings = new AllowedPassthru();
- this.SetPassthruSettings(this.PassthruSettings);
- this.gb_autoPassthru.Visible = this.UserSettingService.GetUserSetting<bool>(UserSettingConstants.ShowAdvancedAudioPassthruOpts);
- }
-
- /// <summary>
- /// The audio list has changed
- /// </summary>
- public event EventHandler AudioListChanged;
-
- #endregion
-
- #region Properties
-
- /// <summary>
- /// Gets or sets ScannedTracks.
- /// </summary>
- private BindingList<Audio> ScannedTracks { get; set; }
-
- /// <summary>
- /// Gets the AudioTracks Collection
- /// </summary>
- public BindingList<AudioTrack> AudioTracks
- {
- get
- {
- return this.audioTracks;
- }
- }
-
- /// <summary>
- /// Gets or sets PassthruSettings.
- /// </summary>
- public AllowedPassthru PassthruSettings { get; set; }
-
- #endregion
-
- #region Public Methods
-
- /// <summary>
- /// Set the File Container. This funciton is used to limit the available options for each file container.
- /// </summary>
- /// <param name="path">
- /// the file path
- /// </param>
- public void SetContainer(string path)
- {
- string oldval = drp_audioEncoder.Text;
- string fallbackOldVal = drp_passthruFallback.Text;
-
- drp_audioEncoder.Items.Clear();
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Faac));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.ffaac));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.AacPassthru));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Lame));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Mp3Passthru));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Ac3Passthrough));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Ac3));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.DtsPassthrough));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.DtsHDPassthrough));
-
- drp_passthruFallback.Items.Clear();
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Faac));
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.ffaac));
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Lame));
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Ac3));
-
- if (path.Contains("MKV"))
- {
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Vorbis));
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.ffflac));
-
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Vorbis));
- drp_passthruFallback.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.ffflac));
- }
-
- drp_audioEncoder.Items.Add(EnumHelper<AudioEncoder>.GetDisplay(AudioEncoder.Passthrough));
-
- if (!drp_audioEncoder.Items.Contains(oldval))
- drp_audioEncoder.SelectedIndex = 0;
- else
- drp_audioEncoder.SelectedItem = oldval;
-
- if (!drp_passthruFallback.Items.Contains(fallbackOldVal))
- drp_passthruFallback.SelectedIndex = 3;
- else
- drp_passthruFallback.SelectedItem = fallbackOldVal;
- }
-
- /// <summary>
- /// Checks if the settings used required the .m4v (rather than .mp4) extension
- /// </summary>
- /// <returns>True if m4v is required</returns>
- public bool RequiresM4V()
- {
- return this.AudioTracks.Any(item => item.Encoder == AudioEncoder.Ac3Passthrough || item.Encoder == AudioEncoder.Ac3);
- }
-
- /// <summary>
- /// Load an arraylist of AudioTrack items into the list.
- /// </summary>
- /// <param name="preset">
- /// The preset.
- /// </param>
- public void LoadTracks(Preset preset)
- {
- ClearAudioList();
-
- ObservableCollection<AudioTrack> tracks = new ObservableCollection<AudioTrack>(preset.Task.AudioTracks);
- this.PassthruSettings = preset.Task.AllowedPassthruOptions != null ? new AllowedPassthru(preset.Task.AllowedPassthruOptions) : new AllowedPassthru(false);
- this.SetPassthruSettings(this.PassthruSettings);
-
- if (this.drp_audioTrack.SelectedItem != null && this.drp_audioTrack.SelectedItem.ToString() == AudioHelper.NoneFound.Description)
- return;
-
- foreach (AudioTrack track in tracks)
- {
- AudioTrack audioTrack = new AudioTrack
- {
- Encoder = track.Encoder,
- MixDown = track.MixDown,
- SampleRate = track.SampleRate,
- Bitrate = track.Bitrate,
- Gain = track.Gain,
- DRC = track.DRC,
- };
-
- if (track.Encoder == AudioEncoder.Ac3Passthrough || track.Encoder == AudioEncoder.DtsPassthrough ||
- track.Encoder == AudioEncoder.DtsHDPassthrough || track.Encoder == AudioEncoder.AacPassthru || track.Encoder == AudioEncoder.Mp3Passthru)
- {
- audioTrack.MixDown = HandBrake.Interop.Model.Encoding.Mixdown.None;
- audioTrack.Bitrate = 0;
- }
-
- this.audioTracks.Add(audioTrack);
- }
-
- // It's a Preset, if the TrackNumber is 0, so allow the Automatic Track Selection to run after we've setup the presets audio settings.
- if (tracks.Count == 0 || tracks[0].ScannedTrack.TrackNumber == 0)
- {
- this.AutomaticTrackSelection();
- }
-
- // Make sure correct audio encoder is still selected.
- this.CheckAndFixPassthruCompatibility();
-
- if (this.AudioListChanged != null)
- this.AudioListChanged(this, new EventArgs());
- }
-
- /// <summary>
- /// Set the Track list dropdown from the parsed title captured during the scan
- /// </summary>
- /// <param name="selectedTitle">The selected title</param>
- /// <param name="preset">A preset</param>
- public void SetTrackListAfterTitleChange(Title selectedTitle, Preset preset)
- {
- // Reset
- this.AudioTracks.Clear();
- this.ScannedTracks.Clear();
-
- if (selectedTitle.AudioTracks.Count == 0)
- {
- this.ScannedTracks.Add(AudioHelper.NoneFound);
- this.drp_audioTrack.Refresh();
- drp_audioTrack.SelectedIndex = 0;
- return;
- }
-
- // Setup the Audio track source dropdown with the new audio tracks.
- this.drp_audioTrack.SelectedItem = null;
- foreach (Audio track in selectedTitle.AudioTracks)
- {
- this.ScannedTracks.Add(track);
- }
-
- drp_audioTrack.SelectedItem = this.ScannedTracks.FirstOrDefault();
-
- // Add any tracks the preset has, if there is a preset and no audio tracks in the list currently
- if (audioList.Rows.Count == 0 && preset != null)
- {
- EncodeTask parsed = QueryParserUtility.Parse(preset.Query);
- foreach (AudioTrack audioTrack in parsed.AudioTracks)
- {
- audioTrack.ScannedTrack = drp_audioTrack.SelectedItem as Audio;
- this.audioTracks.Add(audioTrack);
- }
- }
-
- if (selectedTitle.AudioTracks.Count > 0)
- {
- this.AutomaticTrackSelection();
- }
-
- // Make sure correct audio encoder is still selected.
- this.CheckAndFixPassthruCompatibility();
- }
-
- #endregion
-
- #region Control and ListView
-
- /// <summary>
- /// one of the controls has changed. Event handler
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void ControlChanged(object sender, EventArgs e)
- {
- Control ctl = (Control)sender;
-
- // Some Sanity Checking
- if (audioList.SelectedRows.Count == 0)
- {
- RefreshEnabledControls();
- return;
- }
-
- AudioTrack track = audioList.SelectedRows[0].DataBoundItem as AudioTrack;
- if (track == null)
- {
- return;
- }
-
- drp_audioMix.Enabled = drp_audioBitrate.Enabled = drp_audioSample.Enabled = btn_AdvancedAudio.Enabled = true;
-
- // Handle the changed control and selected audio track.
- switch (ctl.Name)
- {
- case "drp_audioTrack":
- if (audioList.Rows.Count != 0 && audioList.SelectedRows.Count != 0 && drp_audioTrack.SelectedItem != null)
- {
- track.ScannedTrack = drp_audioTrack.SelectedItem as Audio;
-
- // Correct bad passthru option
- if (this.IsIncompatiblePassthru(track))
- {
- AudioEncoder encoder = GetCompatiblePassthru(track, false);
- drp_audioEncoder.SelectedItem = EnumHelper<AudioEncoder>.GetDisplay(encoder);
- }
- }
- break;
- case "drp_audioEncoder":
- SetMixDown(EnumHelper<Mixdown>.GetDisplay(track.MixDown));
-
- // Configure the widgets with values
- if (drp_audioEncoder.Text.Contains("Passthru"))
- {
- track.Gain = 0;
- track.DRC = 0;
- }
-
- this.RefreshEnabledControls();
-
- if (drp_audioEncoder.Text.Contains("Flac"))
- {
- drp_audioBitrate.Enabled = false;
- track.Bitrate = 0;
- }
-
- // Update an item in the Audio list if required.
- track.Encoder = EnumHelper<AudioEncoder>.GetValue(drp_audioEncoder.Text);
-
- // Correct bad passthru option
- if (this.IsIncompatiblePassthru(track))
- {
- AudioEncoder encoder = GetCompatiblePassthru(track, false);
- drp_audioEncoder.SelectedItem = EnumHelper<AudioEncoder>.GetDisplay(encoder);
- }
- break;
- case "drp_audioMix":
- SetBitrate(track.Bitrate);
-
- if (drp_audioMix.SelectedItem != null)
- {
- track.MixDown = EnumHelper<Mixdown>.GetValue(drp_audioMix.Text);
- }
-
- break;
- case "drp_audioSample":
-
- double samplerate;
- double.TryParse(drp_audioSample.Text, NumberStyles.Any, CultureInfo.InvariantCulture, out samplerate);
- track.SampleRate = samplerate;
- break;
- case "drp_audioBitrate":
- // Update an item in the Audio list if required.
- int bitrate;
- int.TryParse(drp_audioBitrate.Text, out bitrate);
-
- track.Bitrate = bitrate;
- break;
- }
-
- audioList.Refresh();
- }
-
- /// <summary>
- /// The Audio List selected index changed event handler
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void audioList_SelectionChanged(object sender, EventArgs e)
- {
- // Set the dropdown controls based on the selected item in the Audio List.
- if (audioList.Rows.Count != 0 && audioList.SelectedRows.Count != 0)
- {
- AudioTrack track = audioList.SelectedRows[0].DataBoundItem as AudioTrack;
- if (track != null)
- {
- drp_audioTrack.SelectedItem = track.ScannedTrack;
- drp_audioEncoder.SelectedItem = EnumHelper<AudioEncoder>.GetDisplay(track.Encoder);
- drp_audioMix.SelectedItem = EnumHelper<Mixdown>.GetDisplay(track.MixDown);
- drp_audioSample.SelectedItem = track.SampleRateDisplayValue;
- drp_audioBitrate.SelectedItem = track.BitRateDisplayValue;
-
- // Set the Advanced Control.
- if (!advancedAudio.IsDisposed)
- advancedAudio.Track = track;
-
- this.RefreshEnabledControls();
- }
- }
- }
-
- #endregion
-
- #region Track Controls
-
- /// <summary>
- /// The Add Audio Track button event handler
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void AddAudioTrack_Click(object sender, EventArgs e)
- {
- if (drp_audioTrack.Text == "None Found")
- {
- MessageBox.Show(
- "Your source appears to have no audio tracks, or no tracks in a format that HandBrake supports.",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- return;
- }
-
- // Get Some Values
- int bitrate;
- double samplerate;
-
- int.TryParse(drp_audioBitrate.Text, out bitrate);
- double.TryParse(drp_audioSample.Text, NumberStyles.Any, CultureInfo.InvariantCulture, out samplerate);
-
- // Create the Model
- AudioTrack track = new AudioTrack
- {
- ScannedTrack = this.drp_audioTrack.SelectedItem as Audio,
- Encoder = EnumHelper<AudioEncoder>.GetValue(this.drp_audioEncoder.Text),
- MixDown = EnumHelper<Mixdown>.GetValue(this.drp_audioMix.Text),
- SampleRate = samplerate,
- Bitrate = bitrate,
- Gain = 0,
- DRC = 0,
- };
-
- // Force an update of the mixdown control
- this.SetMixDown(EnumHelper<Mixdown>.GetDisplay(track.MixDown));
- this.SetBitrate(track.Bitrate);
-
- this.audioTracks.Add(track);
-
- // The Audio List has changed to raise the event.
- if (this.AudioListChanged != null)
- this.AudioListChanged(this, new EventArgs());
-
- // Select the newly added track and select the control
- audioList.ClearSelection();
- audioList.Rows[audioList.Rows.Count - 1].Selected = true;
- audioList.Select();
- }
-
- /// <summary>
- /// Add all the Audio Tracks that are not currently on the Lust
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void mnu_AddAll_Click(object sender, EventArgs e)
- {
- if (drp_audioTrack.Text == "None Found")
- {
- MessageBox.Show(
- "Your source appears to have no audio tracks, or no tracks in a format that HandBrake supports.",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- return;
- }
-
- bool trackAdded = false;
- foreach (Audio sourceTrack in this.ScannedTracks)
- {
- // Check if the Track already exists on the list. If it does, skip to the next
- bool foundTrack = false;
- foreach (AudioTrack currentTrack in this.AudioTracks)
- {
- if (currentTrack.Track.HasValue && currentTrack.Track.Value == sourceTrack.TrackNumber)
- {
- // Set a flag to indicate we've found a track
- foundTrack = true;
- continue;
- }
- }
-
- if (foundTrack)
- {
- // Skip to the nxet Source Track, We already have this one in the list.
- continue;
- }
-
- // Create the Model
- AudioTrack track = new AudioTrack
- {
- ScannedTrack = sourceTrack,
- };
-
- this.audioTracks.Add(track);
- trackAdded = true;
- }
-
- // If we added a track, then fire the event
- if (trackAdded)
- {
- // The Audio List has changed to raise the event.
- if (this.AudioListChanged != null)
- this.AudioListChanged(this, new EventArgs());
- }
- }
-
- /// <summary>
- /// Remove an Audio Track
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void Btn_remove_track_click(object sender, EventArgs e)
- {
- RemoveTrack();
- }
-
- /// <summary>
- /// Clear all audio tracks
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void Mnu_clear_all_click(object sender, EventArgs e)
- {
- this.ClearAudioList();
- }
-
- #endregion
-
- #region Audio List Menu
-
- /// <summary>
- /// The Audio List Move Up menu item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void AudioList_moveup_Click(object sender, EventArgs e)
- {
- MoveTrack(true);
- }
-
- /// <summary>
- /// The audio list move down menu item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void AudioList_movedown_Click(object sender, EventArgs e)
- {
- MoveTrack(false);
- }
-
- /// <summary>
- /// The audio list remove menu item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void AudioList_remove_Click(object sender, EventArgs e)
- {
- RemoveTrack();
- }
-
- /// <summary>
- /// Move to Top
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Args</param>
- private void audioList_MoveToTop_Click(object sender, EventArgs e)
- {
- MoveTo(true);
- }
-
- /// <summary>
- /// Move to Bottom
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Args</param>
- private void audioList_MoveToBottom_Click(object sender, EventArgs e)
- {
- this.MoveTo(false);
- }
-
- #endregion
-
- #region Private Functions
-
- /// <summary>
- /// Refresh the enabled controls
- /// </summary>
- private void RefreshEnabledControls()
- {
- // Configure the widgets with values
- if (drp_audioEncoder.Text.Contains("Passthru"))
- {
- drp_audioMix.Enabled = drp_audioBitrate.Enabled = drp_audioSample.Enabled = btn_AdvancedAudio.Enabled = false;
- }
- else
- {
- drp_audioMix.Enabled = drp_audioBitrate.Enabled = drp_audioSample.Enabled = btn_AdvancedAudio.Enabled = true;
- }
-
- if (drp_audioEncoder.Text.Contains("Flac"))
- {
- drp_audioBitrate.Enabled = false;
- }
- }
-
- /// <summary>
- /// Attempt to automatically select the correct audio tracks based on the users settings.
- /// </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;
- }
-
- if (this.UserSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguage) == "Any")
- {
- // If we have Any as the preferred Language, just set the first track to all audio tracks.
- drp_audioTrack.SelectedIndex = 0;
- foreach (AudioTrack track in this.audioTracks)
- {
- if (this.drp_audioTrack.SelectedItem != null)
- {
- track.ScannedTrack = this.drp_audioTrack.SelectedItem as Audio;
- }
- }
-
- }
- else
- {
- // Otherwise, set all the tracks to the first track of the preferred language.
- foreach (Audio item in drp_audioTrack.Items)
- {
- if (item.Language.Contains(this.UserSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguage)))
- {
- drp_audioTrack.SelectedItem = item;
- break;
- }
- }
-
- foreach (AudioTrack track in this.audioTracks)
- {
- if (this.drp_audioTrack.SelectedItem != null)
- {
- track.ScannedTrack = this.drp_audioTrack.SelectedItem as Audio;
- }
- }
- }
-
- // 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>();
-
- // Now add any additional Langauges tracks on top of the presets tracks.
- int mode = this.UserSettingService.GetUserSetting<int>(UserSettingConstants.DubModeAudio);
- ArrayList languageOrder = new ArrayList(); // This is used to keep the Prefered Language in the front and the other languages in order. TODO this is no longer required, refactor this.
- if (mode > 1)
- {
- foreach (string item in this.UserSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages))
- {
- if (!languageIndex.ContainsKey(item))
- {
- languageIndex.Add(item, new ArrayList());
- languageOrder.Add(item);
- }
- }
-
- bool elementFound = false;
- int i = 0;
- foreach (object item in drp_audioTrack.Items)
- {
- foreach (KeyValuePair<String, ArrayList> kvp in languageIndex)
- {
- if (item.ToString().Contains(kvp.Key))
- {
- // Only the first Element if the "Only One Audio"-option is chosen.
- if (!this.UserSettingService.GetUserSetting<bool>(UserSettingConstants.AddOnlyOneAudioPerLanguage) || kvp.Value.Count == 0)
- {
- kvp.Value.Add(i);
- }
-
- elementFound = true;
- }
- }
-
- i++;
- }
-
- // There are no additional Languages, so we don't need to continue processing.
- if (!elementFound)
- {
- // return;
- }
- }
-
- switch (mode)
- {
- case 1: // Adding all remaining audio tracks
- this.mnu_AddAll_Click(this, EventArgs.Empty);
- break;
- case 2: // Add Langauges tracks for the additional languages selected, in-order.
- audioList.ClearSelection();
- foreach (string item in languageOrder)
- {
- if (languageIndex[item].Count > 0)
- {
- foreach (int i in languageIndex[item])
- {
- drp_audioTrack.SelectedIndex = i;
- if (drp_audioTrack.SelectedItem != null)
- {
- Audio track = drp_audioTrack.SelectedItem as Audio;
- if (track != null)
- {
- if (!TrackExists(track))
- {
- this.AddAudioTrack_Click(this, EventArgs.Empty);
- audioList.ClearSelection();
- }
- }
- }
- }
- }
- }
- break;
- }
- }
-
- /// <summary>
- /// Clear the audio list
- /// </summary>
- private void ClearAudioList()
- {
- this.AudioTracks.Clear();
-
- //drp_audioMix.Enabled = drp_audioBitrate.Enabled = drp_audioSample.Enabled = btn_AdvancedAudio.Enabled = true;
-
- if (this.AudioListChanged != null)
- this.AudioListChanged(this, new EventArgs());
- }
-
- /// <summary>
- /// Remove an audio track from the list
- /// </summary>
- private void RemoveTrack()
- {
- // Remove the Item and reselect the control if the following conditions are met.
- if (audioList.SelectedRows.Count != 0)
- {
- // The Audio List is about to change so raise the event.
- if (this.AudioListChanged != null)
- this.AudioListChanged(this, new EventArgs());
-
- // Record the current selected index.
- int currentPosition = audioList.SelectedRows[0].Index;
-
- audioList.Rows.Remove(audioList.SelectedRows[0]);
-
- // Now reslect the correct item and give focus to the audio list.
- if (audioList.Rows.Count != 0)
- {
- audioList.ClearSelection();
- if (currentPosition <= (audioList.Rows.Count - 1))
- audioList.Rows[currentPosition].Selected = true;
- else if (currentPosition > (audioList.Rows.Count - 1))
- audioList.Rows[audioList.Rows.Count - 1].Selected = true;
-
- audioList.Select();
- }
- }
- }
-
- /// <summary>
- /// Move an audio track up or down the audio list
- /// </summary>
- /// <param name="up">
- /// The up.
- /// </param>
- private void MoveTrack(bool up)
- {
- if (audioList.SelectedRows.Count == 0) return;
-
- DataGridViewRow item = audioList.SelectedRows[0];
- AudioTrack track = item.DataBoundItem as AudioTrack;
- int index = item.Index;
-
- if (up) index--;
- else index++;
-
- if (index < audioList.Rows.Count || (audioList.Rows.Count > index && index >= 0))
- {
- this.AudioTracks.Remove(track);
- this.audioTracks.Insert(index, track);
- this.audioList.ClearSelection();
- this.audioList.Rows[index].Selected = true;
- }
- }
-
- /// <summary>
- /// Move to
- /// </summary>
- /// <param name="top">
- /// The top.
- /// </param>
- private void MoveTo(bool top)
- {
- if (audioList.SelectedRows.Count == 0) return;
-
- DataGridViewRow item = audioList.SelectedRows[0];
- AudioTrack track = item.DataBoundItem as AudioTrack;
- int index = item.Index;
-
- if (top) index = 0;
- else index = this.audioList.Rows.Count - 1;
-
- if (index < audioList.Rows.Count || (audioList.Rows.Count > index && index >= 0))
- {
- this.AudioTracks.Remove(track);
- this.audioTracks.Insert(index, track);
- this.audioList.ClearSelection();
- this.audioList.Rows[index].Selected = true;
- }
- }
-
- /// <summary>
- /// Set the bitrate dropdown
- /// </summary>
- /// <param name="currentValue">
- /// The current Value.
- /// </param>
- private void SetBitrate(int currentValue)
- {
- int max = 0;
- string defaultRate = "160";
-
- // Remove defaults
- drp_audioBitrate.Items.Remove("Auto");
- drp_audioBitrate.Items.Remove("192");
- drp_audioBitrate.Items.Remove("224");
- drp_audioBitrate.Items.Remove("256");
- drp_audioBitrate.Items.Remove("320");
- drp_audioBitrate.Items.Remove("384");
- drp_audioBitrate.Items.Remove("448");
- drp_audioBitrate.Items.Remove("640");
- drp_audioBitrate.Items.Remove("768");
- drp_audioBitrate.Items.Remove("0");
-
- // Find Max and Defaults based on encoders
- switch (drp_audioEncoder.Text)
- {
- case "AAC (faac)":
- case "AAC (ffmpeg)":
- max = drp_audioMix.Text.Contains("6-channel") ? 768 : 320;
- defaultRate = "160";
- break;
- case "MP3 (lame)":
- max = 320;
- defaultRate = "160";
- break;
- case "Vorbis (vorbis)":
- defaultRate = "160";
- max = 384;
- break;
- case "AC3 (ffmpeg)":
- defaultRate = "640";
- max = 640;
- break;
- case "Flac (ffmpeg)":
- defaultRate = "0";
- drp_audioBitrate.Items.Add("0");
- max = 0;
- break;
- }
-
- if (drp_audioEncoder.Text.Contains("Passthru"))
- {
- drp_audioBitrate.Items.Add("Auto");
- defaultRate = "Auto";
- drp_audioSample.SelectedItem = "Auto";
- }
-
- // Re-add appropiate options
- if (max > 160)
- {
- drp_audioBitrate.Items.Add("192");
- drp_audioBitrate.Items.Add("224");
- drp_audioBitrate.Items.Add("256");
- drp_audioBitrate.Items.Add("320");
- }
-
- if (max > 320)
- {
- drp_audioBitrate.Items.Add("384");
- }
-
- if (max >= 640)
- {
- drp_audioBitrate.Items.Add("448");
- drp_audioBitrate.Items.Add("640");
- }
-
- if (max == 768)
- {
- drp_audioBitrate.Items.Add("768");
- }
-
- // Set the Current Value, or default value if the value is out of bounds
-
- if (currentValue <= max && currentValue != 0)
- {
- drp_audioBitrate.SelectedItem = currentValue.ToString();
- }
- else
- {
- drp_audioBitrate.SelectedItem = defaultRate;
- }
- }
-
- /// <summary>
- /// Set the mixdown dropdown
- /// </summary>
- /// <param name="currentMixdown">
- /// The current Mixdown.
- /// </param>
- private void SetMixDown(string currentMixdown)
- {
- drp_audioMix.Items.Clear();
- drp_audioMix.Items.Add("Mono");
- drp_audioMix.Items.Add("Stereo");
- drp_audioMix.Items.Add("Dolby Surround");
- drp_audioMix.Items.Add("Dolby Pro Logic II");
- drp_audioMix.Items.Add("6-channel discrete");
- drp_audioMix.Items.Add(None);
-
- switch (drp_audioEncoder.Text)
- {
- case "AAC (faac)":
- case "AAC (ffmpeg)":
- drp_audioMix.Items.Remove(None);
- drp_audioMix.SelectedItem = currentMixdown ?? "Dolby Pro Logic II";
- break;
- case "MP3 (lame)":
- drp_audioMix.Items.Remove("6-channel discrete");
- drp_audioMix.Items.Remove(None);
- drp_audioMix.SelectedItem = currentMixdown ?? "Dolby Pro Logic II";
- break;
- case "Vorbis (vorbis)":
- drp_audioMix.Items.Remove(None);
- drp_audioMix.SelectedItem = currentMixdown ?? "Dolby Pro Logic II";
- break;
- case "AC3 (ffmpeg)":
- drp_audioMix.Items.Remove(None);
- drp_audioMix.SelectedItem = currentMixdown ?? "Dolby Pro Logic II";
- break;
- case "AC3 Passthru":
- case "DTS Passthru":
- case "DTS-HD Passthru":
- case "AAC Passthru":
- case "MP3 Passthru":
- case "Auto Passthru":
- drp_audioMix.SelectedItem = None;
- break;
- }
-
- if (drp_audioMix.SelectedItem == null)
- {
- drp_audioMix.SelectedItem = "Dolby Pro Logic II";
- }
- }
-
- /// <summary>
- /// Check if a track already exists
- /// </summary>
- /// <param name="sourceTrack">
- /// The source track.
- /// </param>
- /// <returns>
- /// True if it does
- /// </returns>
- private bool TrackExists(Audio sourceTrack)
- {
- foreach (AudioTrack currentTrack in this.AudioTracks)
- {
- if (currentTrack.Track.HasValue && currentTrack.Track.Value == sourceTrack.TrackNumber)
- {
- return true;
- }
- }
- return false;
- }
-
- /// <summary>
- /// For a given Audio Track, is the chosen Passthru option supported
- /// </summary>
- /// <param name="track">
- /// The track.
- /// </param>
- /// <returns>
- /// True if it is.
- /// </returns>
- private bool IsIncompatiblePassthru(AudioTrack track)
- {
- if (track.ScannedTrack == null || string.IsNullOrEmpty(track.ScannedTrack.Format))
- {
- return false;
- }
-
-
- // If the track isn't AC3, and the encoder is, change it.
- if (track.Encoder == AudioEncoder.Ac3Passthrough && !track.ScannedTrack.Format.Contains("AC3"))
- {
- return true;
- }
-
- // If the track isn't DTS, and the encoder is, change it.
- if (track.Encoder == AudioEncoder.DtsPassthrough || track.Encoder == AudioEncoder.DtsHDPassthrough
- && !track.ScannedTrack.Format.Contains("DTS"))
- {
- return true;
- }
-
- // If the track isn't AAC, and the encoder is, change it.
- if (track.Encoder == AudioEncoder.AacPassthru && !track.ScannedTrack.Format.Contains("aac"))
- {
- return true;
- }
-
- // If the track isn't MP3, and the encoder is, change it.
- if (track.Encoder == AudioEncoder.Mp3Passthru && !track.ScannedTrack.Format.Contains("mp3"))
- {
- return true;
- }
-
- return false;
- }
-
- /// <summary>
- /// Get a compatible passthru, or default to aac.
- /// </summary>
- /// <param name="track">
- /// The track.
- /// </param>
- /// <param name="useAutoPassthruOptions">
- /// The use Auto Passthru Options.
- /// </param>
- /// <returns>
- /// AN Audio encoder.
- /// </returns>
- private AudioEncoder GetCompatiblePassthru(AudioTrack track, bool useAutoPassthruOptions)
- {
- if (useAutoPassthruOptions)
- {
- if (track.ScannedTrack.Format.Contains("AC3") && this.check_ac3.Checked)
- {
- return AudioEncoder.Ac3Passthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("DTS") && this.check_dts.Checked)
- {
- return AudioEncoder.DtsPassthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("DTS-HD") && this.check_dtshd.Checked)
- {
- return AudioEncoder.DtsPassthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("aac") && this.check_aac.Checked)
- {
- return AudioEncoder.AacPassthru;
- }
-
- if (track.ScannedTrack.Format.Contains("mp3") && this.check_mp3.Checked)
- {
- return AudioEncoder.Mp3Passthru;
- }
- }
- else
- {
- if (track.ScannedTrack.Format.Contains("AC3"))
- {
- return AudioEncoder.Ac3Passthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("DTS"))
- {
- return AudioEncoder.DtsPassthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("DTS-HD"))
- {
- return AudioEncoder.DtsPassthrough;
- }
-
- if (track.ScannedTrack.Format.Contains("aac"))
- {
- return AudioEncoder.AacPassthru;
- }
-
- if (track.ScannedTrack.Format.Contains("mp3"))
- {
- return AudioEncoder.Mp3Passthru;
- }
- }
-
- return EnumHelper<AudioEncoder>.GetValue(drp_passthruFallback.SelectedItem.ToString());
- }
-
- /// <summary>
- /// Fix any invalid passthru problems.
- /// </summary>
- private void CheckAndFixPassthruCompatibility()
- {
- // Make sure correct audio encoder is still selected.
- foreach (AudioTrack track in this.audioTracks)
- {
- if (this.IsIncompatiblePassthru(track))
- {
- track.Encoder = GetCompatiblePassthru(track, true);
- }
- }
- }
-
- /// <summary>
- /// Setup the Passthru Settings Panel
- /// </summary>
- /// <param name="settings">
- /// The settings.
- /// </param>
- private void SetPassthruSettings(AllowedPassthru settings)
- {
- if (settings == null)
- {
- settings = this.PassthruSettings;
- }
-
- this.check_aac.Checked = settings.AudioAllowAACPass;
- this.check_mp3.Checked = settings.AudioAllowMP3Pass;
- this.check_ac3.Checked = settings.AudioAllowAC3Pass;
- this.check_dts.Checked = settings.AudioAllowDTSPass;
- this.check_dtshd.Checked = settings.AudioAllowDTSHDPass;
- this.drp_passthruFallback.SelectedItem = EnumHelper<AudioEncoder>.GetDisplay(settings.AudioEncoderFallback);
- }
-
- #endregion
-
- /// <summary>
- /// Open the Advanced Audio Settings UI
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_AdvancedAudio_Click(object sender, EventArgs e)
- {
- if (audioList.SelectedRows.Count == 0)
- {
- MessageBox.Show(
- "Please select an audio track.", "No Track Selected", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
-
- if (advancedAudio.IsDisposed)
- {
- advancedAudio = new AdvancedAudio { Track = this.audioList.SelectedRows[0].DataBoundItem as AudioTrack };
- }
-
- advancedAudio.Show();
- }
-
- /// <summary>
- /// Handle changes in the Checked Passthru Options
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void autoPassthru_CheckedChanged(object sender, EventArgs e)
- {
- this.PassthruSettings.IsEnabled = true;
- if (sender == this.check_mp3)
- {
- this.PassthruSettings.AudioAllowMP3Pass = this.check_mp3.Checked;
- }
-
- if (sender == this.check_aac)
- {
- this.PassthruSettings.AudioAllowAACPass = this.check_aac.Checked;
- }
-
- if (sender == this.check_ac3)
- {
- this.PassthruSettings.AudioAllowAC3Pass = this.check_ac3.Checked;
- }
-
- if (sender == this.check_dts)
- {
- this.PassthruSettings.AudioAllowDTSPass = this.check_dts.Checked;
- }
-
- if (sender == this.check_dtshd)
- {
- this.PassthruSettings.AudioAllowDTSHDPass = this.check_dtshd.Checked;
- }
- }
-
- /// <summary>
- /// Set the fallback encoder
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void drp_passthruFallback_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.PassthruSettings.IsEnabled = true;
- this.PassthruSettings.AudioEncoderFallback =
- EnumHelper<AudioEncoder>.GetValue(drp_passthruFallback.SelectedItem.ToString());
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/AudioPanel.resx b/win/CS/Controls/AudioPanel.resx
deleted file mode 100644
index 085fa5c90..000000000
--- a/win/CS/Controls/AudioPanel.resx
+++ /dev/null
@@ -1,175 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="audioMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>216, 16</value>
- </metadata>
- <metadata name="ToolTips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>330, 16</value>
- </metadata>
- <metadata name="AudioMenuRowHeightHack.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>35, 17</value>
- </metadata>
- <metadata name="Source.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="AudioCodec.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="Mixdown.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="Samplerate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="Bitrate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="DRC.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="Gain.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="audioList.ToolTip" xml:space="preserve">
- <value>The audio tracks to be encoded into the output file.
-
-Note: When a track is selected on this grid, the dropdown controls above will alter the selected track.
-
-If you want to add multiple tracks, you can hit the add button several times, then select each track
-and alter its settings after adding them.</value>
- </data>
- <data name="gb_autoPassthru.ToolTip" xml:space="preserve">
- <value>Controls the behaviour of the Audio Codec dropdown when passthru options are selected.
-
-When an incorrect passthru option is selected, it will try to fall back to the correct one if the
-format checkbox in the "Auto Passthru" section is checked.
-
-If there is no suitable passthru option, it will use the "Fallkback" encoder.
-
-These settings are global to all Audio Tracks.
-These settings are stored in the presets.</value>
- </data>
- <metadata name="AddTrackMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>427, 16</value>
- </metadata>
- <metadata name="RemoveTrackMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>561, 16</value>
- </metadata>
-</root> \ No newline at end of file
diff --git a/win/CS/Controls/Filters.Designer.cs b/win/CS/Controls/Filters.Designer.cs
deleted file mode 100644
index 6b415f3b9..000000000
--- a/win/CS/Controls/Filters.Designer.cs
+++ /dev/null
@@ -1,343 +0,0 @@
-namespace Handbrake.Controls
-{
- partial class Filters
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.text_customDT = new System.Windows.Forms.TextBox();
- this.label18 = new System.Windows.Forms.Label();
- this.drop_detelecine = new System.Windows.Forms.ComboBox();
- this.text_customDC = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
- this.drop_decomb = new System.Windows.Forms.ComboBox();
- this.text_customDI = new System.Windows.Forms.TextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.drop_deinterlace = new System.Windows.Forms.ComboBox();
- this.text_customDN = new System.Windows.Forms.TextBox();
- this.label3 = new System.Windows.Forms.Label();
- this.drop_denoise = new System.Windows.Forms.ComboBox();
- this.slider_deblock = new System.Windows.Forms.TrackBar();
- this.check_grayscale = new System.Windows.Forms.CheckBox();
- this.label8 = new System.Windows.Forms.Label();
- this.lbl_deblockVal = new System.Windows.Forms.Label();
- this.label68 = new System.Windows.Forms.Label();
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- ((System.ComponentModel.ISupportInitialize)(this.slider_deblock)).BeginInit();
- this.tableLayoutPanel1.SuspendLayout();
- this.SuspendLayout();
- //
- // text_customDT
- //
- this.text_customDT.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.text_customDT.Location = new System.Drawing.Point(251, 3);
- this.text_customDT.Name = "text_customDT";
- this.text_customDT.Size = new System.Drawing.Size(115, 21);
- this.text_customDT.TabIndex = 47;
- this.text_customDT.Visible = false;
- //
- // label18
- //
- this.label18.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label18.AutoSize = true;
- this.label18.BackColor = System.Drawing.Color.Transparent;
- this.label18.Location = new System.Drawing.Point(0, 7);
- this.label18.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label18.Name = "label18";
- this.label18.Size = new System.Drawing.Size(61, 13);
- this.label18.TabIndex = 46;
- this.label18.Text = "Detelecine:";
- //
- // drop_detelecine
- //
- this.drop_detelecine.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.drop_detelecine.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_detelecine.FormattingEnabled = true;
- this.drop_detelecine.Items.AddRange(new object[] {
- "Off",
- "Custom",
- "Default"});
- this.drop_detelecine.Location = new System.Drawing.Point(71, 3);
- this.drop_detelecine.Name = "drop_detelecine";
- this.drop_detelecine.Size = new System.Drawing.Size(174, 21);
- this.drop_detelecine.TabIndex = 45;
- this.drop_detelecine.SelectedIndexChanged += new System.EventHandler(this.DropDetelecineSelectedIndexChanged);
- //
- // text_customDC
- //
- this.text_customDC.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.text_customDC.Location = new System.Drawing.Point(251, 30);
- this.text_customDC.Name = "text_customDC";
- this.text_customDC.Size = new System.Drawing.Size(115, 21);
- this.text_customDC.TabIndex = 50;
- this.text_customDC.Visible = false;
- //
- // label1
- //
- this.label1.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label1.AutoSize = true;
- this.label1.BackColor = System.Drawing.Color.Transparent;
- this.label1.Location = new System.Drawing.Point(0, 34);
- this.label1.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(49, 13);
- this.label1.TabIndex = 49;
- this.label1.Text = "Decomb:";
- //
- // drop_decomb
- //
- this.drop_decomb.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.drop_decomb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_decomb.FormattingEnabled = true;
- this.drop_decomb.Items.AddRange(new object[] {
- "Off",
- "Custom",
- "Default",
- "Fast",
- "Bob"});
- this.drop_decomb.Location = new System.Drawing.Point(71, 30);
- this.drop_decomb.Name = "drop_decomb";
- this.drop_decomb.Size = new System.Drawing.Size(174, 21);
- this.drop_decomb.TabIndex = 48;
- this.drop_decomb.SelectedIndexChanged += new System.EventHandler(this.DropDecombSelectedIndexChanged);
- //
- // text_customDI
- //
- this.text_customDI.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.text_customDI.Location = new System.Drawing.Point(251, 57);
- this.text_customDI.Name = "text_customDI";
- this.text_customDI.Size = new System.Drawing.Size(115, 21);
- this.text_customDI.TabIndex = 53;
- this.text_customDI.Visible = false;
- //
- // label2
- //
- this.label2.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label2.AutoSize = true;
- this.label2.BackColor = System.Drawing.Color.Transparent;
- this.label2.Location = new System.Drawing.Point(0, 61);
- this.label2.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(65, 13);
- this.label2.TabIndex = 52;
- this.label2.Text = "Deinterlace:";
- //
- // drop_deinterlace
- //
- this.drop_deinterlace.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.drop_deinterlace.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_deinterlace.FormattingEnabled = true;
- this.drop_deinterlace.Items.AddRange(new object[] {
- "Off",
- "Custom",
- "Fast",
- "Slow",
- "Slower",
- "Bob"});
- this.drop_deinterlace.Location = new System.Drawing.Point(71, 57);
- this.drop_deinterlace.Name = "drop_deinterlace";
- this.drop_deinterlace.Size = new System.Drawing.Size(174, 21);
- this.drop_deinterlace.TabIndex = 51;
- this.drop_deinterlace.SelectedIndexChanged += new System.EventHandler(this.DropDeinterlaceSelectedIndexChanged);
- //
- // text_customDN
- //
- this.text_customDN.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.text_customDN.Location = new System.Drawing.Point(251, 84);
- this.text_customDN.Name = "text_customDN";
- this.text_customDN.Size = new System.Drawing.Size(115, 21);
- this.text_customDN.TabIndex = 56;
- this.text_customDN.Visible = false;
- //
- // label3
- //
- this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label3.AutoSize = true;
- this.label3.BackColor = System.Drawing.Color.Transparent;
- this.label3.Location = new System.Drawing.Point(0, 88);
- this.label3.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(49, 13);
- this.label3.TabIndex = 55;
- this.label3.Text = "Denoise:";
- //
- // drop_denoise
- //
- this.drop_denoise.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.drop_denoise.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_denoise.FormattingEnabled = true;
- this.drop_denoise.Items.AddRange(new object[] {
- "Off",
- "Custom",
- "Weak",
- "Medium",
- "Strong"});
- this.drop_denoise.Location = new System.Drawing.Point(71, 84);
- this.drop_denoise.Name = "drop_denoise";
- this.drop_denoise.Size = new System.Drawing.Size(174, 21);
- this.drop_denoise.TabIndex = 54;
- this.drop_denoise.SelectedIndexChanged += new System.EventHandler(this.DropDenoiseSelectedIndexChanged);
- //
- // slider_deblock
- //
- this.slider_deblock.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.slider_deblock.BackColor = System.Drawing.SystemColors.Window;
- this.slider_deblock.Location = new System.Drawing.Point(71, 111);
- this.slider_deblock.Maximum = 15;
- this.slider_deblock.Minimum = 4;
- this.slider_deblock.Name = "slider_deblock";
- this.slider_deblock.Size = new System.Drawing.Size(174, 45);
- this.slider_deblock.TabIndex = 58;
- this.slider_deblock.Value = 4;
- this.slider_deblock.Scroll += new System.EventHandler(this.SliderDeblockScroll);
- //
- // check_grayscale
- //
- this.check_grayscale.AutoSize = true;
- this.check_grayscale.BackColor = System.Drawing.Color.Transparent;
- this.check_grayscale.Location = new System.Drawing.Point(71, 162);
- this.check_grayscale.Name = "check_grayscale";
- this.check_grayscale.Size = new System.Drawing.Size(119, 17);
- this.check_grayscale.TabIndex = 57;
- this.check_grayscale.Text = "Grayscale Encoding";
- this.check_grayscale.UseVisualStyleBackColor = false;
- //
- // label8
- //
- this.label8.AutoSize = true;
- this.label8.BackColor = System.Drawing.Color.Transparent;
- this.label8.Location = new System.Drawing.Point(0, 115);
- this.label8.Margin = new System.Windows.Forms.Padding(0, 7, 3, 3);
- this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(48, 13);
- this.label8.TabIndex = 60;
- this.label8.Text = "Deblock:";
- //
- // lbl_deblockVal
- //
- this.lbl_deblockVal.AutoSize = true;
- this.lbl_deblockVal.BackColor = System.Drawing.Color.Transparent;
- this.lbl_deblockVal.Location = new System.Drawing.Point(251, 115);
- this.lbl_deblockVal.Margin = new System.Windows.Forms.Padding(3, 7, 3, 3);
- this.lbl_deblockVal.Name = "lbl_deblockVal";
- this.lbl_deblockVal.Size = new System.Drawing.Size(23, 13);
- this.lbl_deblockVal.TabIndex = 59;
- this.lbl_deblockVal.Text = "Off";
- //
- // label68
- //
- this.label68.AutoSize = true;
- this.label68.BackColor = System.Drawing.Color.Transparent;
- this.label68.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label68.Location = new System.Drawing.Point(13, 13);
- this.label68.Name = "label68";
- this.label68.Size = new System.Drawing.Size(42, 13);
- this.label68.TabIndex = 61;
- this.label68.Text = "Filters";
- //
- // tableLayoutPanel1
- //
- this.tableLayoutPanel1.AutoSize = true;
- this.tableLayoutPanel1.ColumnCount = 3;
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.Controls.Add(this.label18, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.label1, 0, 1);
- this.tableLayoutPanel1.Controls.Add(this.lbl_deblockVal, 2, 4);
- this.tableLayoutPanel1.Controls.Add(this.check_grayscale, 1, 5);
- this.tableLayoutPanel1.Controls.Add(this.text_customDN, 2, 3);
- this.tableLayoutPanel1.Controls.Add(this.slider_deblock, 1, 4);
- this.tableLayoutPanel1.Controls.Add(this.text_customDI, 2, 2);
- this.tableLayoutPanel1.Controls.Add(this.label2, 0, 2);
- this.tableLayoutPanel1.Controls.Add(this.text_customDC, 2, 1);
- this.tableLayoutPanel1.Controls.Add(this.label3, 0, 3);
- this.tableLayoutPanel1.Controls.Add(this.text_customDT, 2, 0);
- this.tableLayoutPanel1.Controls.Add(this.label8, 0, 4);
- this.tableLayoutPanel1.Controls.Add(this.drop_detelecine, 1, 0);
- this.tableLayoutPanel1.Controls.Add(this.drop_denoise, 1, 3);
- this.tableLayoutPanel1.Controls.Add(this.drop_decomb, 1, 1);
- this.tableLayoutPanel1.Controls.Add(this.drop_deinterlace, 1, 2);
- this.tableLayoutPanel1.Location = new System.Drawing.Point(19, 29);
- this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- this.tableLayoutPanel1.RowCount = 6;
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.Size = new System.Drawing.Size(369, 182);
- this.tableLayoutPanel1.TabIndex = 62;
- //
- // Filters
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.tableLayoutPanel1);
- this.Controls.Add(this.label68);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Name = "Filters";
- this.Size = new System.Drawing.Size(592, 270);
- ((System.ComponentModel.ISupportInitialize)(this.slider_deblock)).EndInit();
- this.tableLayoutPanel1.ResumeLayout(false);
- this.tableLayoutPanel1.PerformLayout();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.TextBox text_customDT;
- private System.Windows.Forms.Label label18;
- internal System.Windows.Forms.ComboBox drop_detelecine;
- private System.Windows.Forms.TextBox text_customDC;
- internal System.Windows.Forms.Label label1;
- internal System.Windows.Forms.ComboBox drop_decomb;
- private System.Windows.Forms.TextBox text_customDI;
- internal System.Windows.Forms.Label label2;
- internal System.Windows.Forms.ComboBox drop_deinterlace;
- private System.Windows.Forms.TextBox text_customDN;
- internal System.Windows.Forms.Label label3;
- internal System.Windows.Forms.ComboBox drop_denoise;
- internal System.Windows.Forms.TrackBar slider_deblock;
- internal System.Windows.Forms.CheckBox check_grayscale;
- internal System.Windows.Forms.Label label8;
- internal System.Windows.Forms.Label lbl_deblockVal;
- internal System.Windows.Forms.Label label68;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
- }
-}
diff --git a/win/CS/Controls/Filters.cs b/win/CS/Controls/Filters.cs
deleted file mode 100644
index 32d7d7b3e..000000000
--- a/win/CS/Controls/Filters.cs
+++ /dev/null
@@ -1,469 +0,0 @@
-/* Filters.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices.Functions;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.Interop.Model.Encoding;
-
- /// <summary>
- /// The Filters Panel
- /// </summary>
- public partial class Filters : UserControl
- {
- /// <summary>
- /// The Filter settings have changed
- /// </summary>
- public event EventHandler FilterSettingsChanged;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="Filters"/> class.
- /// Creates a new instance of Filters
- /// </summary>
- public Filters()
- {
- InitializeComponent();
- drop_decomb.SelectedIndex = 0;
- drop_deinterlace.SelectedIndex = 0;
- drop_denoise.SelectedIndex = 0;
- drop_detelecine.SelectedIndex = 0;
- }
-
- #region Properties
-
- /// <summary>
- /// Gets Decomb.
- /// </summary>
- public Decomb Decomb
- {
- get
- {
- return EnumHelper<Decomb>.GetValue(drop_decomb.Text);
- }
- }
-
- /// <summary>
- /// Gets CustomDecombValue.
- /// </summary>
- public string CustomDecombValue
- {
- get
- {
- return text_customDC.Text;
- }
- }
-
- /// <summary>
- /// Gets Deinterlace.
- /// </summary>
- public Deinterlace Deinterlace
- {
- get
- {
- return EnumHelper<Deinterlace>.GetValue(drop_deinterlace.Text);
- }
- }
-
- /// <summary>
- /// Gets CustomDeInterlaceValue.
- /// </summary>
- public string CustomDeInterlaceValue
- {
- get
- {
- return text_customDI.Text;
- }
- }
-
- /// <summary>
- /// Gets Detelecine.
- /// </summary>
- public Detelecine Detelecine
- {
- get
- {
- return EnumHelper<Detelecine>.GetValue(drop_detelecine.Text);
- }
- }
-
- /// <summary>
- /// Gets CustomDeTelecineValue.
- /// </summary>
- public string CustomDeTelecineValue
- {
- get
- {
- return text_customDT.Text;
- }
- }
-
- /// <summary>
- /// Gets Denoise.
- /// </summary>
- public Denoise Denoise
- {
- get
- {
- return EnumHelper<Denoise>.GetValue(drop_denoise.Text);
- }
- }
-
- /// <summary>
- /// Gets CustomDenoiseValue.
- /// </summary>
- public string CustomDenoiseValue
- {
- get
- {
- return text_customDN.Text;
- }
- }
-
- /// <summary>
- /// Gets Deblock.
- /// </summary>
- public int Deblock
- {
- get
- {
- return this.slider_deblock.Value != 4 ? this.slider_deblock.Value : 0;
- }
- }
-
- /// <summary>
- /// Gets a value indicating whether GrayScale.
- /// </summary>
- public bool GrayScale
- {
- get
- {
- return check_grayscale.Checked;
- }
- }
-
- #endregion
-
- /// <summary>
- /// Gets the CLI query for the query generator.
- /// </summary>
- public string GetCliQuery
- {
- get
- {
- string query = string.Empty;
-
- switch (drop_detelecine.Text) // DeTelecine
- {
- case "Off":
- query += string.Empty;
- break;
- case "Default":
- query += " --detelecine";
- break;
- case "Custom":
- query += " --detelecine=\"" + text_customDT.Text + "\"";
- break;
- default:
- query += string.Empty;
- break;
- }
-
- switch (drop_decomb.Text) // Decomb
- {
- case "Off":
- query += string.Empty;
- break;
- case "Default":
- query += " --decomb";
- break;
- case "Custom":
- query += " --decomb=\"" + text_customDC.Text + "\"";
- break;
- case "Fast":
- query += " --decomb=\"7:2:6:9:1:80\"";
- break;
- case "Bob":
- query += " --decomb=\"bob\"";
- break;
- default:
- query += string.Empty;
- break;
- }
-
- switch (drop_deinterlace.Text) // DeInterlace
- {
- case "None":
- query += string.Empty;
- break;
- case "Fast":
- query += " --deinterlace=\"fast\"";
- break;
- case "Slow":
- query += " --deinterlace=\"slow\"";
- break;
- case "Slower":
- query += " --deinterlace=\"slower\"";
- break;
- case "Custom":
- query += " --deinterlace=\"" + text_customDI.Text + "\"";
- break;
- case "Bob":
- query += " --deinterlace=\"bob\"";
- break;
- default:
- query += string.Empty;
- break;
- }
-
- switch (drop_denoise.Text) // Denoise
- {
- case "None":
- query += string.Empty;
- break;
- case "Weak":
- query += " --denoise=\"weak\"";
- break;
- case "Medium":
- query += " --denoise=\"medium\"";
- break;
- case "Strong":
- query += " --denoise=\"strong\"";
- break;
- case "Custom":
- query += " --denoise=\"" + text_customDN.Text + "\"";
- break;
- default:
- query += string.Empty;
- break;
- }
-
- if (slider_deblock.Value != 4)
- query += " --deblock=" + slider_deblock.Value;
-
- if (check_grayscale.Checked)
- query += " -g ";
-
- return query;
- }
- }
-
- /// <summary>
- /// Set the Detelecine control
- /// </summary>
- /// <param name="value">
- /// The value part of the CLI string
- /// </param>
- /// <param name="custom">
- /// The Custom Detelecine setting
- /// </param>
- public void SetDeTelecine(Detelecine value, string custom)
- {
- text_customDT.Text = string.Empty;
- text_customDT.Visible = false;
- switch (value)
- {
- case Detelecine.Off:
- drop_detelecine.SelectedIndex = 0;
- break;
- case Detelecine.Default:
- drop_detelecine.SelectedIndex = 2;
- break;
- default:
- drop_detelecine.SelectedIndex = 1;
- text_customDT.Text = custom;
- text_customDT.Visible = true;
- break;
- }
- }
-
- /// <summary>
- /// Set the Denoise control
- /// </summary>
- /// <param name="value">
- /// The value part of the CLI string
- /// </param>
- /// <param name="custom">
- /// The custom denoise setting.
- /// </param>
- public void SetDeNoise(Denoise value, string custom)
- {
- text_customDN.Text = string.Empty;
- text_customDN.Visible = false;
- switch (value)
- {
- case Denoise.Off:
- drop_denoise.SelectedIndex = 0;
- break;
- case Denoise.Weak:
- drop_denoise.SelectedIndex = 2;
- break;
- case Denoise.Medium:
- drop_denoise.SelectedIndex = 3;
- break;
- case Denoise.Strong:
- drop_denoise.SelectedIndex = 4;
- break;
- default:
- drop_denoise.SelectedIndex = 1;
- text_customDN.Text = custom;
- text_customDN.Visible = true;
- break;
- }
- }
-
- /// <summary>
- /// Set the Deinterlace Control
- /// </summary>
- /// <param name="value">
- /// The value part of the CLI string
- /// </param>
- /// <param name="custom">
- /// The Custom Detinerlace Settings
- /// </param>
- public void SetDeInterlace(Deinterlace value, string custom)
- {
- text_customDI.Text = string.Empty;
- text_customDI.Visible = false;
- switch (value)
- {
- case Deinterlace.Off:
- drop_deinterlace.SelectedIndex = 0;
- break;
- case Deinterlace.Fast:
- drop_deinterlace.SelectedIndex = 2;
- break;
- case Deinterlace.Slow:
- drop_deinterlace.SelectedIndex = 3;
- break;
- case Deinterlace.Slower:
- drop_deinterlace.SelectedIndex = 4;
- break;
- case Deinterlace.Bob:
- drop_deinterlace.SelectedIndex = 5;
- break;
- default:
- drop_deinterlace.SelectedIndex = 1;
- text_customDI.Text = custom;
- text_customDI.Visible = true;
- break;
- }
- }
-
- /// <summary>
- /// Set the Decomb Control
- /// </summary>
- /// <param name="value">
- /// The value part of the CLI string
- /// </param>
- /// <param name="custom">
- /// The custom option string
- /// </param>
- public void SetDecomb(Decomb value, string custom)
- {
- text_customDC.Text = string.Empty;
- text_customDC.Visible = false;
- switch (value)
- {
- case Decomb.Off:
- drop_decomb.SelectedIndex = 0;
- break;
- case Decomb.Default:
- drop_decomb.SelectedIndex = 2;
- break;
- case Decomb.Fast:
- drop_decomb.SelectedIndex = 3;
- break;
- case Decomb.Bob:
- drop_decomb.SelectedIndex = 4;
- break;
- default:
- drop_decomb.SelectedIndex = 1;
- text_customDC.Text = custom;
- text_customDC.Visible = true;
- break;
- }
- }
-
- /// <summary>
- /// Set the Deblock Control
- /// </summary>
- /// <param name="value">The deblock value</param>
- public void SetDeBlock(int value)
- {
- if (value != 0)
- {
- slider_deblock.Value = value;
- lbl_deblockVal.Text = value.ToString();
- }
- else
- {
- slider_deblock.Value = 4;
- lbl_deblockVal.Text = "Off";
- }
- }
-
- /// <summary>
- /// Set the grayscale control
- /// </summary>
- /// <param name="value">Boolean value</param>
- public void SetGrayScale(bool value)
- {
- check_grayscale.CheckState = value ? CheckState.Checked : CheckState.Unchecked;
- }
-
- // Controls
- private void DropDetelecineSelectedIndexChanged(object sender, EventArgs e)
- {
- text_customDT.Visible = drop_detelecine.Text == "Custom";
- // A Filter has changed so raise a FilterSettingsChanged event.
- if (this.FilterSettingsChanged != null)
- this.FilterSettingsChanged(this, new EventArgs());
- }
-
- private void DropDecombSelectedIndexChanged(object sender, EventArgs e)
- {
- text_customDC.Visible = drop_decomb.Text == "Custom";
- if (drop_decomb.SelectedIndex != 0 && drop_deinterlace.SelectedIndex != 0)
- drop_deinterlace.SelectedIndex = 0;
-
- // A Filter has changed so raise a FilterSettingsChanged event.
- if (this.FilterSettingsChanged != null)
- this.FilterSettingsChanged(this, new EventArgs());
- }
-
- private void DropDeinterlaceSelectedIndexChanged(object sender, EventArgs e)
- {
- text_customDI.Visible = drop_deinterlace.Text == "Custom";
- if (drop_decomb.SelectedIndex != 0 && drop_deinterlace.SelectedIndex != 0)
- drop_decomb.SelectedIndex = 0;
-
- // A Filter has changed so raise a FilterSettingsChanged event.
- if (this.FilterSettingsChanged != null)
- this.FilterSettingsChanged(this, new EventArgs());
- }
-
- private void DropDenoiseSelectedIndexChanged(object sender, EventArgs e)
- {
- text_customDN.Visible = drop_denoise.Text == "Custom";
-
- // A Filter has changed so raise a FilterSettingsChanged event.
- if (this.FilterSettingsChanged != null)
- this.FilterSettingsChanged(this, new EventArgs());
- }
-
- private void SliderDeblockScroll(object sender, EventArgs e)
- {
- lbl_deblockVal.Text = slider_deblock.Value == 4 ? "Off" : slider_deblock.Value.ToString();
-
- // A Filter has changed so raise a FilterSettingsChanged event.
- if (this.FilterSettingsChanged != null)
- this.FilterSettingsChanged(this, new EventArgs());
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/Filters.resx b/win/CS/Controls/Filters.resx
deleted file mode 100644
index c7e0d4bdf..000000000
--- a/win/CS/Controls/Filters.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
-</root> \ No newline at end of file
diff --git a/win/CS/Controls/PictureSettings.Designer.cs b/win/CS/Controls/PictureSettings.Designer.cs
deleted file mode 100644
index 2dfbd9735..000000000
--- a/win/CS/Controls/PictureSettings.Designer.cs
+++ /dev/null
@@ -1,688 +0,0 @@
-namespace Handbrake.Controls
-{
- partial class PictureSettings
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
- this.Label15 = new System.Windows.Forms.Label();
- this.crop_left = new System.Windows.Forms.NumericUpDown();
- this.crop_right = new System.Windows.Forms.NumericUpDown();
- this.check_autoCrop = new System.Windows.Forms.RadioButton();
- this.Label51 = new System.Windows.Forms.Label();
- this.crop_top = new System.Windows.Forms.NumericUpDown();
- this.Label53 = new System.Windows.Forms.Label();
- this.Label52 = new System.Windows.Forms.Label();
- this.crop_bottom = new System.Windows.Forms.NumericUpDown();
- this.check_customCrop = new System.Windows.Forms.RadioButton();
- this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
- this.label7 = new System.Windows.Forms.Label();
- this.lbl_src_res = new System.Windows.Forms.Label();
- this.Label55 = new System.Windows.Forms.Label();
- this.text_width = new System.Windows.Forms.NumericUpDown();
- this.label4 = new System.Windows.Forms.Label();
- this.text_height = new System.Windows.Forms.NumericUpDown();
- this.check_KeepAR = new System.Windows.Forms.CheckBox();
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- this.updownParHeight = new System.Windows.Forms.NumericUpDown();
- this.label6 = new System.Windows.Forms.Label();
- this.labelDisplaySize = new System.Windows.Forms.Label();
- this.lbl_parHeight = new System.Windows.Forms.Label();
- this.labelStaticDisplaySize = new System.Windows.Forms.Label();
- this.updownParWidth = new System.Windows.Forms.NumericUpDown();
- this.drp_anamorphic = new System.Windows.Forms.ComboBox();
- this.lbl_parWidth = new System.Windows.Forms.Label();
- this.updownDisplayWidth = new System.Windows.Forms.NumericUpDown();
- this.lbl_modulus = new System.Windows.Forms.Label();
- this.lbl_displayWidth = new System.Windows.Forms.Label();
- this.drp_modulus = new System.Windows.Forms.ComboBox();
- this.label8 = new System.Windows.Forms.Label();
- this.label26 = new System.Windows.Forms.Label();
- this.lbl_presetCropWarning = new System.Windows.Forms.Label();
- this.tableLayoutPanel3.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.crop_left)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_right)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_top)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_bottom)).BeginInit();
- this.tableLayoutPanel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.text_width)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.text_height)).BeginInit();
- this.tableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.updownParHeight)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.updownParWidth)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.updownDisplayWidth)).BeginInit();
- this.SuspendLayout();
- //
- // tableLayoutPanel3
- //
- this.tableLayoutPanel3.AutoSize = true;
- this.tableLayoutPanel3.ColumnCount = 5;
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.Controls.Add(this.Label15, 0, 4);
- this.tableLayoutPanel3.Controls.Add(this.crop_left, 1, 4);
- this.tableLayoutPanel3.Controls.Add(this.crop_right, 3, 4);
- this.tableLayoutPanel3.Controls.Add(this.check_autoCrop, 0, 0);
- this.tableLayoutPanel3.Controls.Add(this.Label51, 4, 4);
- this.tableLayoutPanel3.Controls.Add(this.crop_top, 2, 3);
- this.tableLayoutPanel3.Controls.Add(this.Label53, 2, 6);
- this.tableLayoutPanel3.Controls.Add(this.Label52, 2, 2);
- this.tableLayoutPanel3.Controls.Add(this.crop_bottom, 2, 5);
- this.tableLayoutPanel3.Controls.Add(this.check_customCrop, 0, 1);
- this.tableLayoutPanel3.Location = new System.Drawing.Point(419, 35);
- this.tableLayoutPanel3.Name = "tableLayoutPanel3";
- this.tableLayoutPanel3.RowCount = 7;
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel3.Size = new System.Drawing.Size(217, 165);
- this.tableLayoutPanel3.TabIndex = 117;
- //
- // Label15
- //
- this.Label15.Anchor = System.Windows.Forms.AnchorStyles.Right;
- this.Label15.AutoSize = true;
- this.Label15.BackColor = System.Drawing.Color.Transparent;
- this.Label15.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Label15.Location = new System.Drawing.Point(0, 99);
- this.Label15.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.Label15.Name = "Label15";
- this.Label15.Size = new System.Drawing.Size(26, 13);
- this.Label15.TabIndex = 97;
- this.Label15.Text = "Left";
- //
- // crop_left
- //
- this.crop_left.Enabled = false;
- this.crop_left.Increment = new decimal(new int[] {
- 2,
- 0,
- 0,
- 0});
- this.crop_left.Location = new System.Drawing.Point(32, 95);
- this.crop_left.Maximum = new decimal(new int[] {
- 128000,
- 0,
- 0,
- 0});
- this.crop_left.Name = "crop_left";
- this.crop_left.Size = new System.Drawing.Size(44, 21);
- this.crop_left.TabIndex = 98;
- this.crop_left.ValueChanged += new System.EventHandler(this.CropValueChanged);
- //
- // crop_right
- //
- this.crop_right.Enabled = false;
- this.crop_right.Increment = new decimal(new int[] {
- 2,
- 0,
- 0,
- 0});
- this.crop_right.Location = new System.Drawing.Point(132, 95);
- this.crop_right.Maximum = new decimal(new int[] {
- 128000,
- 0,
- 0,
- 0});
- this.crop_right.Name = "crop_right";
- this.crop_right.Size = new System.Drawing.Size(44, 21);
- this.crop_right.TabIndex = 101;
- this.crop_right.ValueChanged += new System.EventHandler(this.CropValueChanged);
- //
- // check_autoCrop
- //
- this.check_autoCrop.AutoSize = true;
- this.check_autoCrop.Checked = true;
- this.tableLayoutPanel3.SetColumnSpan(this.check_autoCrop, 5);
- this.check_autoCrop.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.check_autoCrop.Location = new System.Drawing.Point(0, 3);
- this.check_autoCrop.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.check_autoCrop.Name = "check_autoCrop";
- this.check_autoCrop.Size = new System.Drawing.Size(73, 17);
- this.check_autoCrop.TabIndex = 105;
- this.check_autoCrop.TabStop = true;
- this.check_autoCrop.Text = "Automatic";
- this.check_autoCrop.UseVisualStyleBackColor = true;
- this.check_autoCrop.CheckedChanged += new System.EventHandler(this.CheckAutoCropCheckedChanged);
- //
- // Label51
- //
- this.Label51.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.Label51.AutoSize = true;
- this.Label51.BackColor = System.Drawing.Color.Transparent;
- this.Label51.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Label51.Location = new System.Drawing.Point(182, 99);
- this.Label51.Margin = new System.Windows.Forms.Padding(3);
- this.Label51.Name = "Label51";
- this.Label51.Size = new System.Drawing.Size(32, 13);
- this.Label51.TabIndex = 102;
- this.Label51.Text = "Right";
- //
- // crop_top
- //
- this.crop_top.Enabled = false;
- this.crop_top.Increment = new decimal(new int[] {
- 2,
- 0,
- 0,
- 0});
- this.crop_top.Location = new System.Drawing.Point(82, 68);
- this.crop_top.Maximum = new decimal(new int[] {
- 128000,
- 0,
- 0,
- 0});
- this.crop_top.Name = "crop_top";
- this.crop_top.Size = new System.Drawing.Size(44, 21);
- this.crop_top.TabIndex = 100;
- this.crop_top.ValueChanged += new System.EventHandler(this.CropValueChanged);
- //
- // Label53
- //
- this.Label53.Anchor = System.Windows.Forms.AnchorStyles.Top;
- this.Label53.AutoSize = true;
- this.Label53.BackColor = System.Drawing.Color.Transparent;
- this.Label53.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Label53.Location = new System.Drawing.Point(83, 149);
- this.Label53.Margin = new System.Windows.Forms.Padding(3);
- this.Label53.Name = "Label53";
- this.Label53.Size = new System.Drawing.Size(41, 13);
- this.Label53.TabIndex = 104;
- this.Label53.Text = "Bottom";
- //
- // Label52
- //
- this.Label52.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
- this.Label52.AutoSize = true;
- this.Label52.BackColor = System.Drawing.Color.Transparent;
- this.Label52.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Label52.Location = new System.Drawing.Point(91, 49);
- this.Label52.Margin = new System.Windows.Forms.Padding(3);
- this.Label52.Name = "Label52";
- this.Label52.Size = new System.Drawing.Size(25, 13);
- this.Label52.TabIndex = 99;
- this.Label52.Text = "Top";
- //
- // crop_bottom
- //
- this.crop_bottom.Enabled = false;
- this.crop_bottom.Increment = new decimal(new int[] {
- 2,
- 0,
- 0,
- 0});
- this.crop_bottom.Location = new System.Drawing.Point(82, 122);
- this.crop_bottom.Maximum = new decimal(new int[] {
- 128000,
- 0,
- 0,
- 0});
- this.crop_bottom.Name = "crop_bottom";
- this.crop_bottom.Size = new System.Drawing.Size(44, 21);
- this.crop_bottom.TabIndex = 103;
- this.crop_bottom.ValueChanged += new System.EventHandler(this.CropValueChanged);
- //
- // check_customCrop
- //
- this.check_customCrop.AutoSize = true;
- this.tableLayoutPanel3.SetColumnSpan(this.check_customCrop, 5);
- this.check_customCrop.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.check_customCrop.Location = new System.Drawing.Point(0, 26);
- this.check_customCrop.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.check_customCrop.Name = "check_customCrop";
- this.check_customCrop.Size = new System.Drawing.Size(61, 17);
- this.check_customCrop.TabIndex = 106;
- this.check_customCrop.Text = "Custom";
- this.check_customCrop.UseVisualStyleBackColor = true;
- //
- // tableLayoutPanel2
- //
- this.tableLayoutPanel2.AutoSize = true;
- this.tableLayoutPanel2.ColumnCount = 5;
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.Controls.Add(this.label7, 0, 0);
- this.tableLayoutPanel2.Controls.Add(this.lbl_src_res, 1, 0);
- this.tableLayoutPanel2.Controls.Add(this.Label55, 0, 1);
- this.tableLayoutPanel2.Controls.Add(this.text_width, 1, 1);
- this.tableLayoutPanel2.Controls.Add(this.label4, 2, 1);
- this.tableLayoutPanel2.Controls.Add(this.text_height, 3, 1);
- this.tableLayoutPanel2.Controls.Add(this.check_KeepAR, 1, 2);
- this.tableLayoutPanel2.Location = new System.Drawing.Point(16, 35);
- this.tableLayoutPanel2.Name = "tableLayoutPanel2";
- this.tableLayoutPanel2.RowCount = 3;
- this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel2.Size = new System.Drawing.Size(376, 69);
- this.tableLayoutPanel2.TabIndex = 116;
- //
- // label7
- //
- this.label7.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label7.AutoSize = true;
- this.label7.BackColor = System.Drawing.Color.Transparent;
- this.label7.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.label7.Location = new System.Drawing.Point(0, 3);
- this.label7.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label7.Name = "label7";
- this.label7.Size = new System.Drawing.Size(44, 13);
- this.label7.TabIndex = 76;
- this.label7.Text = "Source:";
- //
- // lbl_src_res
- //
- this.lbl_src_res.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_src_res.AutoSize = true;
- this.lbl_src_res.BackColor = System.Drawing.Color.Transparent;
- this.lbl_src_res.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.lbl_src_res.Location = new System.Drawing.Point(50, 3);
- this.lbl_src_res.Margin = new System.Windows.Forms.Padding(3);
- this.lbl_src_res.Name = "lbl_src_res";
- this.lbl_src_res.Size = new System.Drawing.Size(15, 13);
- this.lbl_src_res.TabIndex = 77;
- this.lbl_src_res.Text = "--";
- //
- // Label55
- //
- this.Label55.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.Label55.AutoSize = true;
- this.Label55.BackColor = System.Drawing.Color.Transparent;
- this.Label55.ForeColor = System.Drawing.Color.Black;
- this.Label55.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Label55.Location = new System.Drawing.Point(0, 26);
- this.Label55.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.Label55.Name = "Label55";
- this.Label55.Size = new System.Drawing.Size(39, 13);
- this.Label55.TabIndex = 80;
- this.Label55.Text = "Width:";
- //
- // text_width
- //
- this.text_width.Location = new System.Drawing.Point(50, 22);
- this.text_width.Maximum = new decimal(new int[] {
- 1280000,
- 0,
- 0,
- 0});
- this.text_width.Name = "text_width";
- this.text_width.Size = new System.Drawing.Size(64, 21);
- this.text_width.TabIndex = 85;
- this.text_width.ValueChanged += new System.EventHandler(this.TextWidthValueChanged);
- //
- // label4
- //
- this.label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label4.AutoSize = true;
- this.label4.BackColor = System.Drawing.Color.Transparent;
- this.label4.ForeColor = System.Drawing.Color.Black;
- this.label4.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.label4.Location = new System.Drawing.Point(120, 26);
- this.label4.Margin = new System.Windows.Forms.Padding(3);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(42, 13);
- this.label4.TabIndex = 84;
- this.label4.Text = "Height:";
- //
- // text_height
- //
- this.text_height.Location = new System.Drawing.Point(168, 22);
- this.text_height.Maximum = new decimal(new int[] {
- 1280000,
- 0,
- 0,
- 0});
- this.text_height.Name = "text_height";
- this.text_height.Size = new System.Drawing.Size(64, 21);
- this.text_height.TabIndex = 86;
- this.text_height.ValueChanged += new System.EventHandler(this.TextHeightValueChanged);
- //
- // check_KeepAR
- //
- this.check_KeepAR.AutoSize = true;
- this.check_KeepAR.Checked = true;
- this.check_KeepAR.CheckState = System.Windows.Forms.CheckState.Checked;
- this.tableLayoutPanel2.SetColumnSpan(this.check_KeepAR, 3);
- this.check_KeepAR.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.check_KeepAR.Location = new System.Drawing.Point(50, 49);
- this.check_KeepAR.Name = "check_KeepAR";
- this.check_KeepAR.Size = new System.Drawing.Size(114, 17);
- this.check_KeepAR.TabIndex = 95;
- this.check_KeepAR.Text = "Keep Aspect Ratio";
- this.check_KeepAR.UseVisualStyleBackColor = true;
- this.check_KeepAR.CheckedChanged += new System.EventHandler(this.CheckKeepArCheckedChanged);
- //
- // tableLayoutPanel1
- //
- this.tableLayoutPanel1.AutoSize = true;
- this.tableLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.tableLayoutPanel1.ColumnCount = 2;
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.Controls.Add(this.updownParHeight, 1, 4);
- this.tableLayoutPanel1.Controls.Add(this.label6, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.labelDisplaySize, 1, 5);
- this.tableLayoutPanel1.Controls.Add(this.lbl_parHeight, 0, 4);
- this.tableLayoutPanel1.Controls.Add(this.labelStaticDisplaySize, 0, 5);
- this.tableLayoutPanel1.Controls.Add(this.updownParWidth, 1, 3);
- this.tableLayoutPanel1.Controls.Add(this.drp_anamorphic, 1, 0);
- this.tableLayoutPanel1.Controls.Add(this.lbl_parWidth, 0, 3);
- this.tableLayoutPanel1.Controls.Add(this.updownDisplayWidth, 1, 2);
- this.tableLayoutPanel1.Controls.Add(this.lbl_modulus, 0, 1);
- this.tableLayoutPanel1.Controls.Add(this.lbl_displayWidth, 0, 2);
- this.tableLayoutPanel1.Controls.Add(this.drp_modulus, 1, 1);
- this.tableLayoutPanel1.Location = new System.Drawing.Point(16, 110);
- this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- this.tableLayoutPanel1.RowCount = 6;
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle());
- this.tableLayoutPanel1.Size = new System.Drawing.Size(195, 154);
- this.tableLayoutPanel1.TabIndex = 115;
- //
- // updownParHeight
- //
- this.updownParHeight.Location = new System.Drawing.Point(82, 111);
- this.updownParHeight.Maximum = new decimal(new int[] {
- 1280000,
- 0,
- 0,
- 0});
- this.updownParHeight.Name = "updownParHeight";
- this.updownParHeight.Size = new System.Drawing.Size(53, 21);
- this.updownParHeight.TabIndex = 112;
- this.updownParHeight.ValueChanged += new System.EventHandler(this.TextWidthValueChanged);
- //
- // label6
- //
- this.label6.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label6.AutoSize = true;
- this.label6.BackColor = System.Drawing.Color.Transparent;
- this.label6.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.label6.Location = new System.Drawing.Point(0, 7);
- this.label6.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(67, 13);
- this.label6.TabIndex = 81;
- this.label6.Text = "Anamorphic:";
- //
- // labelDisplaySize
- //
- this.labelDisplaySize.AutoSize = true;
- this.labelDisplaySize.BackColor = System.Drawing.Color.Transparent;
- this.labelDisplaySize.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.labelDisplaySize.Location = new System.Drawing.Point(82, 138);
- this.labelDisplaySize.Margin = new System.Windows.Forms.Padding(3);
- this.labelDisplaySize.Name = "labelDisplaySize";
- this.labelDisplaySize.Size = new System.Drawing.Size(15, 13);
- this.labelDisplaySize.TabIndex = 108;
- this.labelDisplaySize.Text = "--";
- //
- // lbl_parHeight
- //
- this.lbl_parHeight.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_parHeight.AutoSize = true;
- this.lbl_parHeight.BackColor = System.Drawing.Color.Transparent;
- this.lbl_parHeight.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.lbl_parHeight.Location = new System.Drawing.Point(0, 115);
- this.lbl_parHeight.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.lbl_parHeight.Name = "lbl_parHeight";
- this.lbl_parHeight.Size = new System.Drawing.Size(65, 13);
- this.lbl_parHeight.TabIndex = 94;
- this.lbl_parHeight.Text = "PAR Height:";
- //
- // labelStaticDisplaySize
- //
- this.labelStaticDisplaySize.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.labelStaticDisplaySize.AutoSize = true;
- this.labelStaticDisplaySize.BackColor = System.Drawing.Color.Transparent;
- this.labelStaticDisplaySize.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.labelStaticDisplaySize.Location = new System.Drawing.Point(0, 138);
- this.labelStaticDisplaySize.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.labelStaticDisplaySize.Name = "labelStaticDisplaySize";
- this.labelStaticDisplaySize.Size = new System.Drawing.Size(67, 13);
- this.labelStaticDisplaySize.TabIndex = 107;
- this.labelStaticDisplaySize.Text = "Display Size:";
- //
- // updownParWidth
- //
- this.updownParWidth.Location = new System.Drawing.Point(82, 84);
- this.updownParWidth.Maximum = new decimal(new int[] {
- 1280000,
- 0,
- 0,
- 0});
- this.updownParWidth.Name = "updownParWidth";
- this.updownParWidth.Size = new System.Drawing.Size(53, 21);
- this.updownParWidth.TabIndex = 111;
- this.updownParWidth.ValueChanged += new System.EventHandler(this.TextWidthValueChanged);
- //
- // drp_anamorphic
- //
- this.drp_anamorphic.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_anamorphic.FormattingEnabled = true;
- this.drp_anamorphic.Items.AddRange(new object[] {
- "None",
- "Strict",
- "Loose",
- "Custom"});
- this.drp_anamorphic.Location = new System.Drawing.Point(82, 3);
- this.drp_anamorphic.Name = "drp_anamorphic";
- this.drp_anamorphic.Size = new System.Drawing.Size(110, 21);
- this.drp_anamorphic.TabIndex = 82;
- this.drp_anamorphic.SelectedIndexChanged += new System.EventHandler(this.DrpAnamorphicSelectedIndexChanged);
- //
- // lbl_parWidth
- //
- this.lbl_parWidth.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_parWidth.AutoSize = true;
- this.lbl_parWidth.BackColor = System.Drawing.Color.Transparent;
- this.lbl_parWidth.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.lbl_parWidth.Location = new System.Drawing.Point(0, 88);
- this.lbl_parWidth.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.lbl_parWidth.Name = "lbl_parWidth";
- this.lbl_parWidth.Size = new System.Drawing.Size(62, 13);
- this.lbl_parWidth.TabIndex = 92;
- this.lbl_parWidth.Text = "PAR Width:";
- //
- // updownDisplayWidth
- //
- this.updownDisplayWidth.Location = new System.Drawing.Point(82, 57);
- this.updownDisplayWidth.Maximum = new decimal(new int[] {
- 1280000,
- 0,
- 0,
- 0});
- this.updownDisplayWidth.Name = "updownDisplayWidth";
- this.updownDisplayWidth.Size = new System.Drawing.Size(53, 21);
- this.updownDisplayWidth.TabIndex = 110;
- this.updownDisplayWidth.ValueChanged += new System.EventHandler(this.UpdownDisplayWidthValueChanged);
- //
- // lbl_modulus
- //
- this.lbl_modulus.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_modulus.AutoSize = true;
- this.lbl_modulus.BackColor = System.Drawing.Color.Transparent;
- this.lbl_modulus.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.lbl_modulus.Location = new System.Drawing.Point(0, 34);
- this.lbl_modulus.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.lbl_modulus.Name = "lbl_modulus";
- this.lbl_modulus.Size = new System.Drawing.Size(50, 13);
- this.lbl_modulus.TabIndex = 87;
- this.lbl_modulus.Text = "Modulus:";
- //
- // lbl_displayWidth
- //
- this.lbl_displayWidth.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_displayWidth.AutoSize = true;
- this.lbl_displayWidth.BackColor = System.Drawing.Color.Transparent;
- this.lbl_displayWidth.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.lbl_displayWidth.Location = new System.Drawing.Point(0, 61);
- this.lbl_displayWidth.Margin = new System.Windows.Forms.Padding(0, 3, 3, 3);
- this.lbl_displayWidth.Name = "lbl_displayWidth";
- this.lbl_displayWidth.Size = new System.Drawing.Size(76, 13);
- this.lbl_displayWidth.TabIndex = 90;
- this.lbl_displayWidth.Text = "Display Width:";
- //
- // drp_modulus
- //
- this.drp_modulus.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_modulus.FormattingEnabled = true;
- this.drp_modulus.Items.AddRange(new object[] {
- "16",
- "8",
- "4",
- "2"});
- this.drp_modulus.Location = new System.Drawing.Point(82, 30);
- this.drp_modulus.Name = "drp_modulus";
- this.drp_modulus.Size = new System.Drawing.Size(110, 21);
- this.drp_modulus.TabIndex = 88;
- this.drp_modulus.SelectedIndexChanged += new System.EventHandler(this.DrpModulusSelectedIndexChanged);
- //
- // label8
- //
- this.label8.AutoSize = true;
- this.label8.BackColor = System.Drawing.Color.Transparent;
- this.label8.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label8.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.label8.Location = new System.Drawing.Point(416, 13);
- this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(57, 13);
- this.label8.TabIndex = 114;
- this.label8.Text = "Cropping";
- //
- // label26
- //
- this.label26.AutoSize = true;
- this.label26.BackColor = System.Drawing.Color.Transparent;
- this.label26.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label26.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.label26.Location = new System.Drawing.Point(13, 13);
- this.label26.Name = "label26";
- this.label26.Size = new System.Drawing.Size(30, 13);
- this.label26.TabIndex = 113;
- this.label26.Text = "Size";
- //
- // lbl_presetCropWarning
- //
- this.lbl_presetCropWarning.AutoSize = true;
- this.lbl_presetCropWarning.ForeColor = System.Drawing.Color.Black;
- this.lbl_presetCropWarning.Location = new System.Drawing.Point(479, 13);
- this.lbl_presetCropWarning.Name = "lbl_presetCropWarning";
- this.lbl_presetCropWarning.Size = new System.Drawing.Size(140, 13);
- this.lbl_presetCropWarning.TabIndex = 118;
- this.lbl_presetCropWarning.Text = "( Preset values are in use! )";
- //
- // PictureSettings
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.lbl_presetCropWarning);
- this.Controls.Add(this.tableLayoutPanel3);
- this.Controls.Add(this.tableLayoutPanel2);
- this.Controls.Add(this.tableLayoutPanel1);
- this.Controls.Add(this.label8);
- this.Controls.Add(this.label26);
- this.Enabled = false;
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Name = "PictureSettings";
- this.Size = new System.Drawing.Size(666, 279);
- this.tableLayoutPanel3.ResumeLayout(false);
- this.tableLayoutPanel3.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.crop_left)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_right)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_top)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.crop_bottom)).EndInit();
- this.tableLayoutPanel2.ResumeLayout(false);
- this.tableLayoutPanel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.text_width)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.text_height)).EndInit();
- this.tableLayoutPanel1.ResumeLayout(false);
- this.tableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.updownParHeight)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.updownParWidth)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.updownDisplayWidth)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
- internal System.Windows.Forms.Label Label15;
- internal System.Windows.Forms.NumericUpDown crop_left;
- internal System.Windows.Forms.NumericUpDown crop_right;
- internal System.Windows.Forms.RadioButton check_autoCrop;
- internal System.Windows.Forms.Label Label51;
- internal System.Windows.Forms.NumericUpDown crop_top;
- internal System.Windows.Forms.Label Label53;
- internal System.Windows.Forms.Label Label52;
- internal System.Windows.Forms.NumericUpDown crop_bottom;
- internal System.Windows.Forms.RadioButton check_customCrop;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
- internal System.Windows.Forms.Label label7;
- internal System.Windows.Forms.Label lbl_src_res;
- internal System.Windows.Forms.Label Label55;
- internal System.Windows.Forms.Label label4;
- internal System.Windows.Forms.CheckBox check_KeepAR;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
- internal System.Windows.Forms.NumericUpDown updownParHeight;
- internal System.Windows.Forms.Label label6;
- internal System.Windows.Forms.Label labelDisplaySize;
- internal System.Windows.Forms.Label lbl_parHeight;
- internal System.Windows.Forms.Label labelStaticDisplaySize;
- internal System.Windows.Forms.NumericUpDown updownParWidth;
- internal System.Windows.Forms.ComboBox drp_anamorphic;
- internal System.Windows.Forms.Label lbl_parWidth;
- internal System.Windows.Forms.NumericUpDown updownDisplayWidth;
- internal System.Windows.Forms.Label lbl_modulus;
- internal System.Windows.Forms.Label lbl_displayWidth;
- internal System.Windows.Forms.ComboBox drp_modulus;
- internal System.Windows.Forms.Label label8;
- internal System.Windows.Forms.Label label26;
- internal System.Windows.Forms.NumericUpDown text_width;
- internal System.Windows.Forms.NumericUpDown text_height;
- private System.Windows.Forms.Label lbl_presetCropWarning;
-
-
-
- }
-}
diff --git a/win/CS/Controls/PictureSettings.cs b/win/CS/Controls/PictureSettings.cs
deleted file mode 100644
index 8e45b9778..000000000
--- a/win/CS/Controls/PictureSettings.cs
+++ /dev/null
@@ -1,572 +0,0 @@
-/* PictureSetting.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System;
- using System.Drawing;
- using System.Globalization;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Utilities;
-
- /// <summary>
- /// The Picture Settings Panel
- /// </summary>
- public partial class PictureSettings : UserControl
- {
- private readonly CultureInfo culture = new CultureInfo("en-US", false);
- private bool preventChangingWidth;
- private bool preventChangingHeight;
- private bool preventChangingCustom;
- private bool preventChangingDisplayWidth;
- private double cachedDar;
- private Title sourceTitle;
- private Size presetMaximumResolution;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="PictureSettings"/> class.
- /// Creates a new instance of the Picture Settings Class
- /// </summary>
- public PictureSettings()
- {
- InitializeComponent();
-
- drp_anamorphic.SelectedIndex = 1;
- drp_modulus.SelectedIndex = 0;
- }
-
- /// <summary>
- /// Picture Settings Changed Event Handler
- /// </summary>
- public event EventHandler PictureSettingsChanged;
-
- /// <summary>
- /// Gets or sets the source media used by this control.
- /// </summary>
- public Title Source
- {
- private get
- {
- return sourceTitle;
- }
-
- set
- {
- sourceTitle = value;
- Enabled = sourceTitle != null;
- NewSourceSet();
- }
- }
-
- /// <summary>
- /// Gets or sets the currently selected preset.
- /// </summary>
- public Preset CurrentlySelectedPreset { get; set; }
-
- public bool SizeSet { get; set; }
-
- /// <summary>
- /// Gets or sets the maximum allowable size for the encoded resolution. Set a value to
- /// "0" if the maximum does not matter.
- /// </summary>
- public Size PresetMaximumResolution
- {
- get
- {
- return this.presetMaximumResolution;
- }
- set
- {
- this.presetMaximumResolution = value;
- if (presetMaximumResolution == new Size(0, 0) && !SizeSet && this.sourceTitle != null)
- {
- text_width.Value = this.sourceTitle.Resolution.Width;
- }
- }
- }
-
- /// <summary>
- /// Set the Preset Crop Warning Label
- /// </summary>
- /// <param name="selectedPreset">
- /// The Selected preset
- /// </param>
- public void SetPresetCropWarningLabel(Preset selectedPreset)
- {
- if (this.check_customCrop.Checked)
- {
- lbl_presetCropWarning.Visible = true;
- if (selectedPreset != null && selectedPreset.CropSettings == false) lbl_presetCropWarning.Visible = false;
- else if (selectedPreset == null) lbl_presetCropWarning.Visible = false;
- }
- else
- {
- lbl_presetCropWarning.Visible = false;
- }
- }
-
- /// <summary>
- /// Setup the UI. The Source has just changed.
- /// </summary>
- private void NewSourceSet()
- {
- // Set the Aspect Ratio
- lbl_src_res.Text = sourceTitle.Resolution.Width + " x " + sourceTitle.Resolution.Height;
-
- // Set the Recommended Cropping values, but only if a preset doesn't have hard set picture settings.
- EncodeTask presetQuery = null;
- if (this.CurrentlySelectedPreset != null)
- presetQuery = QueryParserUtility.Parse(CurrentlySelectedPreset.Query);
-
- if ((CurrentlySelectedPreset != null && CurrentlySelectedPreset.CropSettings == false) ||
- CurrentlySelectedPreset == null ||
- (presetQuery != null && !presetQuery.HasCropping)
- )
- {
- crop_top.Value = GetCropMod2Clean(sourceTitle.AutoCropDimensions.Top);
- crop_bottom.Value = GetCropMod2Clean(sourceTitle.AutoCropDimensions.Bottom);
- crop_left.Value = GetCropMod2Clean(sourceTitle.AutoCropDimensions.Left);
- crop_right.Value = GetCropMod2Clean(sourceTitle.AutoCropDimensions.Right);
- }
-
- SetPresetCropWarningLabel(CurrentlySelectedPreset);
-
- // Set the Resolution Boxes
- if (drp_anamorphic.SelectedIndex == 0)
- {
- int width = sourceTitle.Resolution.Width;
-
- if (width > PresetMaximumResolution.Width && PresetMaximumResolution.Width != 0) // If the preset has a Max width set, don't use a width larger than it.
- width = PresetMaximumResolution.Width;
-
- if (text_width.Value == 0 || (text_width.Value > PresetMaximumResolution.Width && PresetMaximumResolution.Width != 0)) // Only update the values if the fields don't already have values.
- text_width.Value = width;
-
- check_KeepAR.Checked = true; // Forces Resolution to be correct.
- }
- else
- {
- int width = sourceTitle.Resolution.Width;
- if (width > PresetMaximumResolution.Width && PresetMaximumResolution.Width != 0) // If the preset has a Max width set, don't use a width larger than it.
- width = PresetMaximumResolution.Width;
-
- int height = sourceTitle.Resolution.Height;
- if (height > PresetMaximumResolution.Height && PresetMaximumResolution.Height != 0) // If the preset has a Max height set, don't use a width larger than it.
- height = PresetMaximumResolution.Height;
-
- text_width.Value = width;
- text_height.Value = height - (int)crop_top.Value - (int)crop_bottom.Value;
-
- labelDisplaySize.Text = CalculateAnamorphicSizes().Width + "x" + CalculateAnamorphicSizes().Height;
- }
-
- updownParWidth.Value = sourceTitle.ParVal.Width;
- updownParHeight.Value = sourceTitle.ParVal.Height;
-
- Size croppedDar = CalculateAnamorphicSizes();
- cachedDar = (double)croppedDar.Width / croppedDar.Height;
- updownDisplayWidth.Value = croppedDar.Width;
- }
-
- // Picture Controls
- private void TextWidthValueChanged(object sender, EventArgs e)
- {
- if (preventChangingWidth)
- return;
-
- // Make sure the new value doesn't exceed the maximum
- if (Source != null)
- if (text_width.Value > Source.Resolution.Width)
- text_width.Value = Source.Resolution.Width;
-
- switch (drp_anamorphic.SelectedIndex)
- {
- case 0:
- if (check_KeepAR.Checked && Source != null)
- {
- preventChangingHeight = true;
-
- int width = (int)text_width.Value;
-
- double crop_width = Source.Resolution.Width - (int)crop_left.Value - (int)crop_right.Value;
- double crop_height = Source.Resolution.Height - (int)crop_top.Value - (int)crop_bottom.Value;
-
- if (SourceAspect.Width == 0 && SourceAspect.Height == 0)
- break;
-
- double newHeight = ((double)width * Source.Resolution.Width * SourceAspect.Height * crop_height) /
- (Source.Resolution.Height * SourceAspect.Width * crop_width);
- text_height.Value = (decimal)GetModulusValue(newHeight);
-
- preventChangingHeight = false;
- }
- break;
- case 3:
- if (check_KeepAR.CheckState == CheckState.Unchecked && Source != null)
- {
- if (preventChangingCustom)
- break;
-
- preventChangingDisplayWidth = true;
- updownDisplayWidth.Value = text_width.Value * updownParWidth.Value / updownParHeight.Value;
- preventChangingDisplayWidth = false;
-
- labelDisplaySize.Text = Math.Truncate(updownDisplayWidth.Value) + "x" + text_height.Value;
- }
-
- if (check_KeepAR.CheckState == CheckState.Checked && Source != null)
- {
- updownParWidth.Value = updownDisplayWidth.Value;
- updownParHeight.Value = text_width.Value;
- }
- break;
- default:
- labelDisplaySize.Text = CalculateAnamorphicSizes().Width + "x" + CalculateAnamorphicSizes().Height;
- break;
- }
-
- preventChangingWidth = false;
- }
-
- private void TextHeightValueChanged(object sender, EventArgs e)
- {
- if (preventChangingHeight)
- return;
-
- if (Source != null)
- if (text_height.Value > Source.Resolution.Height)
- text_height.Value = Source.Resolution.Height;
-
- switch (drp_anamorphic.SelectedIndex)
- {
- case 0:
- if (check_KeepAR.Checked && Source != null)
- {
- preventChangingWidth = true;
-
- double crop_width = Source.Resolution.Width - (int)crop_left.Value - (int)crop_right.Value;
- double crop_height = Source.Resolution.Height - (int)crop_top.Value - (int)crop_bottom.Value;
-
- double new_width = ((double)text_height.Value * Source.Resolution.Height * SourceAspect.Width *
- crop_width) /
- (Source.Resolution.Width * SourceAspect.Height * crop_height);
-
- text_width.Value = (decimal)GetModulusValue(new_width);
-
- preventChangingWidth = false;
- }
- break;
- case 3:
- labelDisplaySize.Text = Math.Truncate(updownDisplayWidth.Value) + "x" + text_height.Value;
-
- if (check_KeepAR.CheckState == CheckState.Checked && Source != null)
- {
- // - Changes DISPLAY WIDTH to keep DAR
- // - Changes PIXEL WIDTH to new DISPLAY WIDTH
- // - Changes PIXEL HEIGHT to STORAGE WIDTH
- // DAR = DISPLAY WIDTH / DISPLAY HEIGHT (cache after every modification)
-
- double rawCalculatedDisplayWidth = (double)text_height.Value * cachedDar;
-
- preventChangingDisplayWidth = true; // Start Guards
- preventChangingWidth = true;
-
- updownDisplayWidth.Value = (decimal)rawCalculatedDisplayWidth;
- updownParWidth.Value = updownDisplayWidth.Value;
- updownParHeight.Value = text_width.Value;
-
- preventChangingWidth = false; // Reset Guards
- preventChangingDisplayWidth = false;
- }
-
- break;
- default:
- labelDisplaySize.Text = CalculateAnamorphicSizes().Width + "x" + CalculateAnamorphicSizes().Height;
- break;
- }
-
- preventChangingHeight = false;
- }
-
- private void CheckKeepArCheckedChanged(object sender, EventArgs e)
- {
- // Force TextWidth to recalc height
- if (check_KeepAR.Checked)
- TextWidthValueChanged(this, new EventArgs());
-
- // Disable the Custom Anamorphic Par Controls if checked.
- if (drp_anamorphic.SelectedIndex == 3)
- {
- updownParWidth.Enabled = !check_KeepAR.Checked;
- updownParHeight.Enabled = !check_KeepAR.Checked;
- }
-
- // Raise the Picture Settings Changed Event
- if (PictureSettingsChanged != null)
- PictureSettingsChanged(this, new EventArgs());
- }
-
- private void UpdownDisplayWidthValueChanged(object sender, EventArgs e)
- {
- if (preventChangingDisplayWidth == false && check_KeepAR.CheckState == CheckState.Unchecked)
- {
- preventChangingCustom = true;
- updownParWidth.Value = updownDisplayWidth.Value;
- updownParHeight.Value = text_width.Value;
- preventChangingCustom = false;
- }
-
- if (preventChangingDisplayWidth == false && check_KeepAR.CheckState == CheckState.Checked)
- {
- // - Changes HEIGHT to keep DAR
- // - Changes PIXEL WIDTH to new DISPLAY WIDTH
- // - Changes PIXEL HEIGHT to STORAGE WIDTH
- // DAR = DISPLAY WIDTH / DISPLAY HEIGHT (cache after every modification)
-
- // Calculate new Height Value
- int modulus;
- if (!int.TryParse(drp_modulus.SelectedItem.ToString(), out modulus))
- modulus = 16;
-
- int rawCalculatedHeight = (int)((int)updownDisplayWidth.Value / cachedDar);
- int modulusHeight = rawCalculatedHeight - (rawCalculatedHeight % modulus);
-
- // Update value
- preventChangingHeight = true;
- text_height.Value = (decimal)modulusHeight;
- updownParWidth.Value = updownDisplayWidth.Value;
- updownParHeight.Value = text_width.Value;
- preventChangingHeight = false;
- }
- }
-
- // Anamorphic Controls
- private void DrpAnamorphicSelectedIndexChanged(object sender, EventArgs e)
- {
- switch (drp_anamorphic.SelectedIndex)
- {
- case 0: // None
- text_width.Enabled = true;
- text_height.Enabled = true;
- check_KeepAR.Enabled = true;
-
- SetCustomAnamorphicOptionsVisible(false);
- labelStaticDisplaySize.Visible = false;
- labelDisplaySize.Visible = false;
- drp_modulus.Visible = true;
- lbl_modulus.Visible = true;
-
- // check_KeepAR.Checked = true;
-
- if (check_KeepAR.Checked)
- TextWidthValueChanged(this, new EventArgs());
- // Don't update display size if we're not using anamorphic
- return;
- case 1: // Strict
- text_width.Enabled = false;
- text_height.Enabled = false;
- check_KeepAR.Enabled = false;
-
- SetCustomAnamorphicOptionsVisible(false);
- labelStaticDisplaySize.Visible = true;
- labelDisplaySize.Visible = true;
-
- check_KeepAR.Checked = true;
- break;
- case 2: // Loose
- text_width.Enabled = true;
- text_height.Enabled = false;
- check_KeepAR.Enabled = false;
-
- SetCustomAnamorphicOptionsVisible(false);
- labelStaticDisplaySize.Visible = true;
- labelDisplaySize.Visible = true;
- drp_modulus.Visible = true;
- lbl_modulus.Visible = true;
-
- check_KeepAR.Checked = true;
- break;
- case 3: // Custom
- text_width.Enabled = true;
- text_height.Enabled = true;
- check_KeepAR.Enabled = true;
-
- SetCustomAnamorphicOptionsVisible(true);
- labelStaticDisplaySize.Visible = true;
- labelDisplaySize.Visible = true;
-
- check_KeepAR.Checked = true;
- updownParWidth.Enabled = !check_KeepAR.Checked;
- updownParHeight.Enabled = !check_KeepAR.Checked;
- break;
- }
-
- labelDisplaySize.Text = CalculateAnamorphicSizes().Width + "x" + CalculateAnamorphicSizes().Height;
-
- if (check_KeepAR.Checked)
- TextWidthValueChanged(this, new EventArgs());
-
- if (PictureSettingsChanged != null)
- PictureSettingsChanged(this, new EventArgs());
- }
-
- private void DrpModulusSelectedIndexChanged(object sender, EventArgs e)
- {
- preventChangingWidth = true;
- preventChangingHeight = true;
-
- text_width.Value = (decimal)GetModulusValue((double)text_width.Value);
- text_height.Value = (decimal)GetModulusValue((double)text_height.Value);
-
- preventChangingWidth = false;
- preventChangingHeight = false;
-
- text_width.Increment = int.Parse(drp_modulus.SelectedItem.ToString());
- text_height.Increment = int.Parse(drp_modulus.SelectedItem.ToString());
-
- if (PictureSettingsChanged != null)
- PictureSettingsChanged(this, new EventArgs());
- }
-
- // Cropping Controls
- private void CheckAutoCropCheckedChanged(object sender, EventArgs e)
- {
- crop_top.Enabled = check_customCrop.Checked;
- crop_bottom.Enabled = check_customCrop.Checked;
- crop_left.Enabled = check_customCrop.Checked;
- crop_right.Enabled = check_customCrop.Checked;
-
- if (Source != null)
- {
- crop_top.Value = Source.AutoCropDimensions.Top;
- crop_bottom.Value = Source.AutoCropDimensions.Bottom;
- crop_left.Value = Source.AutoCropDimensions.Left;
- crop_right.Value = Source.AutoCropDimensions.Right;
- }
- }
-
- private void CropValueChanged(object sender, EventArgs e)
- {
- TextWidthValueChanged(this, new EventArgs());
- }
-
- // GUI Functions
- private void SetCustomAnamorphicOptionsVisible(bool visible)
- {
- lbl_modulus.Visible = visible;
- lbl_displayWidth.Visible = visible;
- lbl_parWidth.Visible = visible;
- lbl_parHeight.Visible = visible;
-
- drp_modulus.Visible = visible;
- updownDisplayWidth.Visible = visible;
- updownParWidth.Visible = visible;
- updownParHeight.Visible = visible;
- }
-
- // Calculation Functions
- private Size SourceAspect
- {
- get
- {
- if (Source != null) // display aspect = (width * par_width) / (height * par_height)
- return new Size((Source.ParVal.Width * Source.Resolution.Width),
- (Source.ParVal.Height * Source.Resolution.Height));
-
- return new Size(0, 0); // Fall over to 16:9 and hope for the best
- }
- }
-
- private Size CalculateAnamorphicSizes()
- {
- if (Source != null)
- {
- /* Set up some variables to make the math easier to follow. */
- int croppedWidth = Source.Resolution.Width - (int)crop_left.Value - (int)crop_right.Value;
- int croppedHeight = Source.Resolution.Height - (int)crop_top.Value - (int)crop_bottom.Value;
- double storageAspect = (double)croppedWidth / croppedHeight;
-
- /* Figure out what width the source would display at. */
- double sourceDisplayWidth = (double)croppedWidth * Source.ParVal.Width / Source.ParVal.Height;
-
- /*
- 3 different ways of deciding output dimensions:
- - 1: Strict anamorphic, preserve source dimensions
- - 2: Loose anamorphic, round to mod16 and preserve storage aspect ratio
- - 3: Power user anamorphic, specify everything
- */
- double width, height;
- switch (drp_anamorphic.SelectedIndex)
- {
- default:
- case 1:
- /* Strict anamorphic */
- double displayWidth = ((double)croppedWidth * Source.ParVal.Width / Source.ParVal.Height);
- displayWidth = Math.Round(displayWidth, 0);
- Size output = new Size((int)displayWidth, croppedHeight);
- return output;
- case 2:
- /* "Loose" anamorphic.
- - Uses mod16-compliant dimensions,
- - Allows users to set the width
- */
- width = (int)text_width.Value;
- width = GetModulusValue(width); /* Time to get picture width that divide cleanly.*/
-
- height = (width / storageAspect) + 0.5;
- height = GetModulusValue(height); /* Time to get picture height that divide cleanly.*/
-
- /* The film AR is the source's display width / cropped source height.
- The output display width is the output height * film AR.
- The output PAR is the output display width / output storage width. */
- double pixelAspectWidth = height * sourceDisplayWidth / croppedHeight;
- double pixelAspectHeight = width;
-
- double disWidthLoose = (width * pixelAspectWidth / pixelAspectHeight);
- if (double.IsNaN(disWidthLoose))
- disWidthLoose = 0;
- return new Size((int)disWidthLoose, (int)height);
- case 3:
-
- // Get the User Interface Values
- double UIdisplayWidth;
- double.TryParse(updownDisplayWidth.Text, out UIdisplayWidth);
-
- /* Anamorphic 3: Power User Jamboree - Set everything based on specified values */
- height = GetModulusValue((double)text_height.Value);
-
- if (check_KeepAR.Checked)
- return new Size((int)Math.Truncate(UIdisplayWidth), (int)height);
-
- return new Size((int)Math.Truncate(UIdisplayWidth), (int)height);
- }
- }
-
- // Return a default value of 0,0 to indicate failure
- return new Size(0, 0);
- }
-
- private double GetModulusValue(double value)
- {
- int mod = int.Parse(drp_modulus.SelectedItem.ToString());
- double remainder = value % mod;
-
- if (remainder == 0)
- return value;
-
- return remainder >= ((double)mod / 2) ? value + (mod - remainder) : value - remainder;
- }
-
- private static int GetCropMod2Clean(int value)
- {
- int remainder = value % 2;
- if (remainder == 0) return value;
- return (value + remainder);
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/PictureSettings.resx b/win/CS/Controls/PictureSettings.resx
deleted file mode 100644
index c7e0d4bdf..000000000
--- a/win/CS/Controls/PictureSettings.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
-</root> \ No newline at end of file
diff --git a/win/CS/Controls/Subtitles.Designer.cs b/win/CS/Controls/Subtitles.Designer.cs
deleted file mode 100644
index d4d08b700..000000000
--- a/win/CS/Controls/Subtitles.Designer.cs
+++ /dev/null
@@ -1,442 +0,0 @@
-namespace Handbrake.Controls
-{
- partial class Subtitles
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- this.lv_subList = new System.Windows.Forms.ListView();
- this.col_Source = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_forced = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_burned = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_defaultTrack = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_srtLang = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_srtChar = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.col_srtOffset = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.subMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_moveup = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_movedown = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
- this.mnu_remove = new System.Windows.Forms.ToolStripMenuItem();
- this.label68 = new System.Windows.Forms.Label();
- this.drp_subtitleTracks = new System.Windows.Forms.ComboBox();
- this.srt_offset = new System.Windows.Forms.NumericUpDown();
- this.srt_lang = new System.Windows.Forms.ComboBox();
- this.srt_charcode = new System.Windows.Forms.ComboBox();
- this.check_forced = new System.Windows.Forms.CheckBox();
- this.check_default = new System.Windows.Forms.CheckBox();
- this.check_burned = new System.Windows.Forms.CheckBox();
- this.btn_srtAdd = new System.Windows.Forms.Button();
- this.openFileDialog = new System.Windows.Forms.OpenFileDialog();
- this.toolTip = new System.Windows.Forms.ToolTip(this.components);
- this.btn_addSubtitleTrack = new wyDay.Controls.SplitButton();
- this.SubtitleTrackMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_AddAll = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_AddAllCC = new System.Windows.Forms.ToolStripMenuItem();
- this.SubtitleRemoveButtonMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_ClearAll = new System.Windows.Forms.ToolStripMenuItem();
- this.btn_RemoveTrack = new wyDay.Controls.SplitButton();
- this.subMenu.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.srt_offset)).BeginInit();
- this.SubtitleTrackMenu.SuspendLayout();
- this.SubtitleRemoveButtonMenu.SuspendLayout();
- this.SuspendLayout();
- //
- // lv_subList
- //
- this.lv_subList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
- this.col_Source,
- this.col_forced,
- this.col_burned,
- this.col_defaultTrack,
- this.col_srtLang,
- this.col_srtChar,
- this.col_srtOffset});
- this.lv_subList.ContextMenuStrip = this.subMenu;
- this.lv_subList.FullRowSelect = true;
- this.lv_subList.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
- this.lv_subList.HideSelection = false;
- this.lv_subList.LabelWrap = false;
- this.lv_subList.Location = new System.Drawing.Point(16, 96);
- this.lv_subList.MultiSelect = false;
- this.lv_subList.Name = "lv_subList";
- this.lv_subList.Size = new System.Drawing.Size(688, 186);
- this.lv_subList.TabIndex = 70;
- this.lv_subList.UseCompatibleStateImageBehavior = false;
- this.lv_subList.View = System.Windows.Forms.View.Details;
- this.lv_subList.SelectedIndexChanged += new System.EventHandler(this.LbSubListSelectedIndexChanged);
- //
- // col_Source
- //
- this.col_Source.Text = "Track";
- this.col_Source.Width = 160;
- //
- // col_forced
- //
- this.col_forced.Text = "Forced Only";
- this.col_forced.Width = 74;
- //
- // col_burned
- //
- this.col_burned.Text = "Burned In";
- this.col_burned.Width = 64;
- //
- // col_defaultTrack
- //
- this.col_defaultTrack.Text = "Default";
- this.col_defaultTrack.Width = 56;
- //
- // col_srtLang
- //
- this.col_srtLang.Text = "Srt Lang";
- this.col_srtLang.Width = 120;
- //
- // col_srtChar
- //
- this.col_srtChar.Text = "Srt CharCode";
- this.col_srtChar.Width = 120;
- //
- // col_srtOffset
- //
- this.col_srtOffset.Text = "Srt Offset (ms)";
- this.col_srtOffset.Width = 90;
- //
- // subMenu
- //
- this.subMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_moveup,
- this.mnu_movedown,
- this.toolStripSeparator2,
- this.mnu_remove});
- this.subMenu.Name = "audioMenu";
- this.subMenu.Size = new System.Drawing.Size(139, 76);
- //
- // mnu_moveup
- //
- this.mnu_moveup.Name = "mnu_moveup";
- this.mnu_moveup.Size = new System.Drawing.Size(138, 22);
- this.mnu_moveup.Text = "Move Up";
- this.mnu_moveup.Click += new System.EventHandler(this.MnuMoveupClick);
- //
- // mnu_movedown
- //
- this.mnu_movedown.Name = "mnu_movedown";
- this.mnu_movedown.Size = new System.Drawing.Size(138, 22);
- this.mnu_movedown.Text = "Move Down";
- this.mnu_movedown.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.mnu_movedown.Click += new System.EventHandler(this.MnuMovedownClick);
- //
- // toolStripSeparator2
- //
- this.toolStripSeparator2.Name = "toolStripSeparator2";
- this.toolStripSeparator2.Size = new System.Drawing.Size(135, 6);
- //
- // mnu_remove
- //
- this.mnu_remove.Name = "mnu_remove";
- this.mnu_remove.Size = new System.Drawing.Size(138, 22);
- this.mnu_remove.Text = "Remove";
- this.mnu_remove.Click += new System.EventHandler(this.MnuRemoveClick);
- //
- // label68
- //
- this.label68.AutoSize = true;
- this.label68.BackColor = System.Drawing.Color.Transparent;
- this.label68.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label68.Location = new System.Drawing.Point(13, 13);
- this.label68.Name = "label68";
- this.label68.Size = new System.Drawing.Size(57, 13);
- this.label68.TabIndex = 67;
- this.label68.Text = "Subtitles";
- //
- // drp_subtitleTracks
- //
- this.drp_subtitleTracks.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_subtitleTracks.FormattingEnabled = true;
- this.drp_subtitleTracks.Location = new System.Drawing.Point(16, 69);
- this.drp_subtitleTracks.Name = "drp_subtitleTracks";
- this.drp_subtitleTracks.Size = new System.Drawing.Size(162, 21);
- this.drp_subtitleTracks.TabIndex = 74;
- this.drp_subtitleTracks.SelectedIndexChanged += new System.EventHandler(this.DrpSubtitleTracksSelectedIndexChanged);
- //
- // srt_offset
- //
- this.srt_offset.Enabled = false;
- this.srt_offset.Increment = new decimal(new int[] {
- 10,
- 0,
- 0,
- 0});
- this.srt_offset.Location = new System.Drawing.Point(620, 70);
- this.srt_offset.Maximum = new decimal(new int[] {
- 1000000000,
- 0,
- 0,
- 0});
- this.srt_offset.Minimum = new decimal(new int[] {
- 1000000000,
- 0,
- 0,
- -2147483648});
- this.srt_offset.Name = "srt_offset";
- this.srt_offset.Size = new System.Drawing.Size(58, 21);
- this.srt_offset.TabIndex = 79;
- this.toolTip.SetToolTip(this.srt_offset, "Adjust the offset in milliseconds between video and srt timestamps");
- this.srt_offset.ValueChanged += new System.EventHandler(this.SrtOffsetValueChanged);
- //
- // srt_lang
- //
- this.srt_lang.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.srt_lang.Enabled = false;
- this.srt_lang.FormattingEnabled = true;
- this.srt_lang.Location = new System.Drawing.Point(371, 69);
- this.srt_lang.Name = "srt_lang";
- this.srt_lang.Size = new System.Drawing.Size(114, 21);
- this.srt_lang.TabIndex = 50;
- this.srt_lang.SelectedIndexChanged += new System.EventHandler(this.SrtLangSelectedIndexChanged);
- //
- // srt_charcode
- //
- this.srt_charcode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.srt_charcode.Enabled = false;
- this.srt_charcode.FormattingEnabled = true;
- this.srt_charcode.Items.AddRange(new object[] {
- "ANSI_X3.4-1968",
- "ANSI_X3.4-1986",
- "ANSI_X3.4",
- "ANSI_X3.110-1983",
- "ANSI_X3.110",
- "ASCII",
- "ECMA-114",
- "ECMA-118",
- "ECMA-128",
- "ECMA-CYRILLIC",
- "IEC_P27-1",
- "ISO-8859-1",
- "ISO-8859-2",
- "ISO-8859-3",
- "ISO-8859-4",
- "ISO-8859-5",
- "ISO-8859-6",
- "ISO-8859-7",
- "ISO-8859-8",
- "ISO-8859-9",
- "ISO-8859-9E",
- "ISO-8859-10",
- "ISO-8859-11",
- "ISO-8859-13",
- "ISO-8859-14",
- "ISO-8859-15",
- "ISO-8859-16",
- "UTF-7",
- "UTF-8",
- "UTF-16",
- "UTF-32"});
- this.srt_charcode.Location = new System.Drawing.Point(495, 69);
- this.srt_charcode.Name = "srt_charcode";
- this.srt_charcode.Size = new System.Drawing.Size(101, 21);
- this.srt_charcode.TabIndex = 73;
- this.srt_charcode.SelectedIndexChanged += new System.EventHandler(this.SrtCharcodeSelectedIndexChanged);
- //
- // check_forced
- //
- this.check_forced.AutoSize = true;
- this.check_forced.Location = new System.Drawing.Point(208, 72);
- this.check_forced.Name = "check_forced";
- this.check_forced.Size = new System.Drawing.Size(15, 14);
- this.check_forced.TabIndex = 75;
- this.check_forced.UseVisualStyleBackColor = true;
- this.check_forced.CheckedChanged += new System.EventHandler(this.CheckForcedCheckedChanged);
- //
- // check_default
- //
- this.check_default.AutoSize = true;
- this.check_default.Location = new System.Drawing.Point(334, 72);
- this.check_default.Name = "check_default";
- this.check_default.Size = new System.Drawing.Size(15, 14);
- this.check_default.TabIndex = 77;
- this.check_default.UseVisualStyleBackColor = true;
- this.check_default.CheckedChanged += new System.EventHandler(this.CheckDefaultCheckedChanged);
- //
- // check_burned
- //
- this.check_burned.AutoSize = true;
- this.check_burned.Location = new System.Drawing.Point(274, 72);
- this.check_burned.Name = "check_burned";
- this.check_burned.Size = new System.Drawing.Size(15, 14);
- this.check_burned.TabIndex = 76;
- this.check_burned.UseVisualStyleBackColor = true;
- this.check_burned.CheckedChanged += new System.EventHandler(this.CheckBurnedCheckedChanged);
- //
- // btn_srtAdd
- //
- this.btn_srtAdd.BackColor = System.Drawing.Color.Transparent;
- this.btn_srtAdd.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_srtAdd.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_srtAdd.Location = new System.Drawing.Point(179, 38);
- this.btn_srtAdd.Name = "btn_srtAdd";
- this.btn_srtAdd.Size = new System.Drawing.Size(88, 23);
- this.btn_srtAdd.TabIndex = 73;
- this.btn_srtAdd.Text = "Import SRT";
- this.toolTip.SetToolTip(this.btn_srtAdd, "Add a new SRT file to the \"track\" dropdown menu.");
- this.btn_srtAdd.UseVisualStyleBackColor = false;
- this.btn_srtAdd.Click += new System.EventHandler(this.BtnSrtAddClick);
- //
- // openFileDialog
- //
- this.openFileDialog.DefaultExt = "srt";
- this.openFileDialog.Filter = "SRT Files |*.srt";
- //
- // btn_addSubtitleTrack
- //
- this.btn_addSubtitleTrack.AutoSize = true;
- this.btn_addSubtitleTrack.ContextMenuStrip = this.SubtitleTrackMenu;
- this.btn_addSubtitleTrack.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_addSubtitleTrack.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_addSubtitleTrack.Location = new System.Drawing.Point(16, 38);
- this.btn_addSubtitleTrack.Name = "btn_addSubtitleTrack";
- this.btn_addSubtitleTrack.Size = new System.Drawing.Size(69, 23);
- this.btn_addSubtitleTrack.SplitMenuStrip = this.SubtitleTrackMenu;
- this.btn_addSubtitleTrack.TabIndex = 80;
- this.btn_addSubtitleTrack.Text = "Add";
- this.btn_addSubtitleTrack.UseVisualStyleBackColor = true;
- this.btn_addSubtitleTrack.Click += new System.EventHandler(this.btn_addSubtitleTrack_Click);
- //
- // SubtitleTrackMenu
- //
- this.SubtitleTrackMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_AddAll,
- this.mnu_AddAllCC});
- this.SubtitleTrackMenu.Name = "audioMenu";
- this.SubtitleTrackMenu.Size = new System.Drawing.Size(196, 48);
- //
- // mnu_AddAll
- //
- this.mnu_AddAll.Name = "mnu_AddAll";
- this.mnu_AddAll.Size = new System.Drawing.Size(195, 22);
- this.mnu_AddAll.Text = "Add All";
- this.mnu_AddAll.Click += new System.EventHandler(this.mnu_AddAll_Click);
- //
- // mnu_AddAllCC
- //
- this.mnu_AddAllCC.Name = "mnu_AddAllCC";
- this.mnu_AddAllCC.Size = new System.Drawing.Size(195, 22);
- this.mnu_AddAllCC.Text = "Add all Closed Caption";
- this.mnu_AddAllCC.Click += new System.EventHandler(this.mnu_AddAllCC_Click);
- //
- // SubtitleRemoveButtonMenu
- //
- this.SubtitleRemoveButtonMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_ClearAll});
- this.SubtitleRemoveButtonMenu.Name = "audioMenu";
- this.SubtitleRemoveButtonMenu.Size = new System.Drawing.Size(153, 48);
- //
- // mnu_ClearAll
- //
- this.mnu_ClearAll.Name = "mnu_ClearAll";
- this.mnu_ClearAll.Size = new System.Drawing.Size(152, 22);
- this.mnu_ClearAll.Text = "Clear All";
- this.mnu_ClearAll.Click += new System.EventHandler(this.mnu_ClearAll_Click);
- //
- // btn_RemoveTrack
- //
- this.btn_RemoveTrack.AutoSize = true;
- this.btn_RemoveTrack.ContextMenuStrip = this.SubtitleRemoveButtonMenu;
- this.btn_RemoveTrack.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_RemoveTrack.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_RemoveTrack.Location = new System.Drawing.Point(91, 38);
- this.btn_RemoveTrack.Name = "btn_RemoveTrack";
- this.btn_RemoveTrack.Size = new System.Drawing.Size(82, 23);
- this.btn_RemoveTrack.SplitMenuStrip = this.SubtitleRemoveButtonMenu;
- this.btn_RemoveTrack.TabIndex = 82;
- this.btn_RemoveTrack.Text = "Remove";
- this.btn_RemoveTrack.UseVisualStyleBackColor = true;
- this.btn_RemoveTrack.Click += new System.EventHandler(this.btn_RemoveTrack_Click);
- //
- // Subtitles
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.drp_subtitleTracks);
- this.Controls.Add(this.srt_offset);
- this.Controls.Add(this.srt_lang);
- this.Controls.Add(this.btn_RemoveTrack);
- this.Controls.Add(this.srt_charcode);
- this.Controls.Add(this.btn_addSubtitleTrack);
- this.Controls.Add(this.label68);
- this.Controls.Add(this.lv_subList);
- this.Controls.Add(this.check_forced);
- this.Controls.Add(this.check_burned);
- this.Controls.Add(this.check_default);
- this.Controls.Add(this.btn_srtAdd);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Name = "Subtitles";
- this.Size = new System.Drawing.Size(719, 300);
- this.subMenu.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.srt_offset)).EndInit();
- this.SubtitleTrackMenu.ResumeLayout(false);
- this.SubtitleRemoveButtonMenu.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.ListView lv_subList;
- private System.Windows.Forms.ColumnHeader col_Source;
- private System.Windows.Forms.ColumnHeader col_forced;
- private System.Windows.Forms.ColumnHeader col_burned;
- internal System.Windows.Forms.Label label68;
- private System.Windows.Forms.ColumnHeader col_defaultTrack;
- private System.Windows.Forms.ContextMenuStrip subMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_moveup;
- private System.Windows.Forms.ToolStripMenuItem mnu_movedown;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
- private System.Windows.Forms.ToolStripMenuItem mnu_remove;
- private System.Windows.Forms.Button btn_srtAdd;
- private System.Windows.Forms.ColumnHeader col_srtChar;
- private System.Windows.Forms.ColumnHeader col_srtOffset;
- internal System.Windows.Forms.ComboBox srt_charcode;
- internal System.Windows.Forms.ComboBox srt_lang;
- private System.Windows.Forms.NumericUpDown srt_offset;
- private System.Windows.Forms.OpenFileDialog openFileDialog;
- private System.Windows.Forms.CheckBox check_default;
- private System.Windows.Forms.CheckBox check_burned;
- private System.Windows.Forms.CheckBox check_forced;
- internal System.Windows.Forms.ComboBox drp_subtitleTracks;
- private System.Windows.Forms.ColumnHeader col_srtLang;
- private System.Windows.Forms.ToolTip toolTip;
- private wyDay.Controls.SplitButton btn_addSubtitleTrack;
- private System.Windows.Forms.ContextMenuStrip SubtitleTrackMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_AddAll;
- private System.Windows.Forms.ToolStripMenuItem mnu_AddAllCC;
- private System.Windows.Forms.ContextMenuStrip SubtitleRemoveButtonMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_ClearAll;
- private wyDay.Controls.SplitButton btn_RemoveTrack;
- }
-}
diff --git a/win/CS/Controls/Subtitles.cs b/win/CS/Controls/Subtitles.cs
deleted file mode 100644
index a31c941b7..000000000
--- a/win/CS/Controls/Subtitles.cs
+++ /dev/null
@@ -1,938 +0,0 @@
-/* Subtitles.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Collections.Specialized;
- using System.ComponentModel;
- using System.IO;
- using System.Linq;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
-
- /// <summary>
- /// The Subtitles Tab
- /// </summary>
- public partial class Subtitles : UserControl
- {
- #region Priavate Variables and Collections
-
- /// <summary>
- /// Map of languages to language codes
- /// </summary>
- private readonly IDictionary<string, string> langMap = new Dictionary<string, string>();
-
- /// <summary>
- /// A List of SRT Files
- /// </summary>
- private readonly IDictionary<string, string> srtFiles = new Dictionary<string, string>();
-
- /// <summary>
- /// The Subtitle List
- /// </summary>
- private readonly List<SubtitleTrack> subList = new List<SubtitleTrack>();
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private static readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// The current output extension
- /// </summary>
- private string currentOutputExtension;
- #endregion
-
- /// <summary>
- /// Initializes a new instance of the <see cref="Subtitles"/> class.
- /// </summary>
- public Subtitles()
- {
- InitializeComponent();
-
- langMap = LanguageUtilities.MapLanguages();
- foreach (string key in langMap.Keys)
- srt_lang.Items.Add(key);
-
- srt_charcode.SelectedIndex = 28;
- srt_lang.SelectedIndex = 40;
- }
-
- /// <summary>
- /// Gets SubtitlesList.
- /// </summary>
- public List<SubtitleTrack> SubtitlesList
- {
- get
- {
- return subList;
- }
- }
-
- #region Public Methods
- /// <summary>
- /// Gets the CLI Query for this panel
- /// </summary>
- /// <returns>A CliQuery string</returns>
- public string GetCliQuery
- {
- get
- {
- string query = string.Empty;
- if (lv_subList.Items.Count != 0) // If we have subtitle tracks
- {
- // BitMap and CC's
- string subtitleTracks = String.Empty;
- string subtitleForced = String.Empty;
- string subtitleBurn = String.Empty;
- string subtitleDefault = String.Empty;
-
- // SRT
- string srtFile = String.Empty;
- string srtCodeset = String.Empty;
- string srtOffset = String.Empty;
- string srtLang = String.Empty;
- string srtDefault = String.Empty;
- int srtCount = 0;
- int subCount = 0;
-
- foreach (SubtitleTrack item in subList)
- {
- string itemToAdd;
-
- if (item.IsSrtSubtitle) // We have an SRT file
- {
- srtCount++; // SRT track id.
-
- srtLang += srtLang == string.Empty ? langMap[item.SrtLang] : "," + langMap[item.SrtLang];
- srtCodeset += srtCodeset == string.Empty ? item.SrtCharCode : "," + item.SrtCharCode;
-
- if (item.Default)
- srtDefault = srtCount.ToString();
-
- itemToAdd = item.SrtPath;
- srtFile += srtFile == string.Empty ? itemToAdd : "," + itemToAdd;
-
- itemToAdd = item.SrtOffset.ToString();
- srtOffset += srtOffset == string.Empty ? itemToAdd : "," + itemToAdd;
- }
- else // We have Bitmap or CC
- {
- subCount++;
-
- // Find --subtitle <string>
- if (item.Track.Contains("Foreign Audio Search"))
- itemToAdd = "scan";
- else
- {
- string[] tempSub = item.Track.Split(' ');
- itemToAdd = tempSub[0];
- }
-
- subtitleTracks += subtitleTracks == string.Empty ? itemToAdd : "," + itemToAdd;
-
- // Find --subtitle-forced
- if (item.Forced)
- subtitleForced += subtitleForced == string.Empty ? subCount.ToString() : "," + subCount;
-
- // Find --subtitle-burn
- if (item.Burned)
- subtitleBurn = subCount.ToString();
-
- // Find --subtitle-default
- if (item.Default)
- subtitleDefault = subCount.ToString();
- }
- }
-
- // Build The CLI Subtitles Query
- if (subtitleTracks != string.Empty)
- {
- query += " --subtitle " + subtitleTracks;
-
- if (subtitleForced != string.Empty)
- query += " --subtitle-forced=" + subtitleForced;
- if (subtitleBurn != string.Empty)
- query += " --subtitle-burn=" + subtitleBurn;
- if (subtitleDefault != string.Empty)
- query += " --subtitle-default=" + subtitleDefault;
- }
-
- if (srtFile != string.Empty) // SRTs
- {
- query += " --srt-file " + "\"" + srtFile + "\"";
-
- if (srtCodeset != string.Empty)
- query += " --srt-codeset " + srtCodeset;
- if (srtOffset != string.Empty)
- query += " --srt-offset " + srtOffset;
- if (srtLang != string.Empty)
- query += " --srt-lang " + srtLang;
- if (srtDefault != string.Empty)
- query += " --srt-default=" + srtDefault;
- }
- }
- return query;
- }
- }
-
- /// <summary>
- /// Checks of the current settings will require the m4v file extension
- /// </summary>
- /// <returns>True if Yes</returns>
- public bool RequiresM4V()
- {
- return this.subList.Any(track => track.SubtitleType != SubtitleType.VobSub);
- }
-
- /// <summary>
- /// Set the current extension to allow this window to behave correctly based on extension.
- /// </summary>
- /// <param name="extension">
- /// The extension.
- /// </param>
- public void SetExtension(string extension)
- {
- currentOutputExtension = extension.Replace(".", string.Empty);
- }
-
- /// <summary>
- /// Automatically setup the subtitle tracks.
- /// This handles the automatic setup of subitles which the user can control from the program options
- /// </summary>
- /// <param name="subs">List of Subtitles</param>
- public void SetSubtitleTrackAuto(object[] subs)
- {
- drp_subtitleTracks.Items.Clear();
- drp_subtitleTracks.Items.Add("Foreign Audio Search (Bitmap)");
- drp_subtitleTracks.Items.AddRange(subs);
- drp_subtitleTracks.SelectedIndex = 0;
- Clear();
-
- this.AutomaticSubtitleSelection();
- }
-
- /// <summary>
- /// Automatic Subtitle Selection based on user preferences.
- /// </summary>
- public void AutomaticSubtitleSelection()
- {
- // Avoid trying to add elements when no subtitles are there.
- if (drp_subtitleTracks.Items.Count < 2)
- {
- 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 = UserSettingService.GetUserSetting<int>(UserSettingConstants.DubModeSubtitle);
-
- // Native Language is not 'Any', so initialising the Language Dictionary
- if (mode >= 3)
- {
- languageIndex.Add(UserSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguageForSubtitles), new ArrayList());
- languageOrder.Add(UserSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguageForSubtitles));
-
- foreach (string item in UserSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages))
- {
- if (!languageIndex.ContainsKey(item))
- {
- 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))
- {
- 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.btn_addSubtitleTrack_Click(this, new EventArgs());
- }
- break;
- case 2: // Adding only the first Audio Track
- drp_subtitleTracks.SelectedIndex = 1;
- if (drp_subtitleTracks.SelectedItem != null)
- this.btn_addSubtitleTrack_Click(this, new EventArgs());
- break;
- case 3: // Selected Languages Only
- 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.btn_addSubtitleTrack_Click(this, new EventArgs());
- }
- }
- }
- }
- break;
- case 4: // Prefered Only
- case 5: // Prefered Only All
- 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.btn_addSubtitleTrack_Click(this, new EventArgs());
- if (mode == 4)
- {
- // Mode 4 is First, 5 is All
- break;
- }
- }
- }
- }
- break;
- }
-
- // Revert the selection back tio the first item.
- drp_subtitleTracks.SelectedIndex = 0;
-
- // Add Closed Captions if the user has the option enabled.
- if (UserSettingService.GetUserSetting<bool>(UserSettingConstants.UseClosedCaption))
- {
- foreach (object item in drp_subtitleTracks.Items)
- {
- if (item.ToString().Contains("Closed"))
- {
- drp_subtitleTracks.SelectedItem = item;
- btn_addSubtitleTrack_Click(this, EventArgs.Empty);
- }
- }
- }
- }
-
- /// <summary>
- /// Clear the Subtitle List
- /// </summary>
- public void Clear()
- {
- lv_subList.Items.Clear();
- subList.Clear();
- srtFiles.Clear();
- }
- #endregion
-
- #region Primary Controls
-
- /// <summary>
- /// Add a subtitle Track
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void btn_addSubtitleTrack_Click(object sender, EventArgs e)
- {
- if (drp_subtitleTracks.SelectedItem == null)
- {
- MessageBox.Show("No Subtitle Track Selected.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- return;
- }
-
- // Logic
- string srtCode = "-", srtLangVal = "-", srtPath = "-", srtFile = "-";
- int srtOffsetMs = 0;
-
- // Make sure we only have 1 burned track. We'll always give the latest track added burned in.
- if (check_burned.Checked)
- this.SetBurnedToOffForAllTracks();
-
- // Make sure we only have 1 default track
- if (check_default.Checked)
- this.SetDefaultToOffForAllTracks();
-
- if (drp_subtitleTracks.SelectedItem.ToString().Contains(".srt"))
- {
- srtFiles.TryGetValue(drp_subtitleTracks.SelectedItem.ToString(), out srtPath);
- srtFile = drp_subtitleTracks.SelectedItem.ToString();
- srtLangVal = srt_lang.SelectedItem.ToString();
- srtCode = srt_charcode.SelectedItem.ToString();
- srtOffsetMs = (int)srt_offset.Value;
- }
-
- string trackName = (drp_subtitleTracks.SelectedItem.ToString().Contains(".srt"))
- ? srtLangVal + " (" + srtFile + ")"
- : drp_subtitleTracks.SelectedItem.ToString();
-
- SubtitleTrack track = new SubtitleTrack
- {
- Track = trackName,
- Forced = check_forced.Checked,
- Burned = check_burned.Checked,
- Default = check_default.Checked,
- SrtLang = srtLangVal,
- SrtCharCode = srtCode,
- SrtOffset = srtOffsetMs,
- SrtPath = srtPath,
- SrtFileName = srtFile
- };
-
- Subtitle subtitle = drp_subtitleTracks.SelectedItem as Subtitle;
- if (subtitle != null)
- {
- track.SubtitleType = ((Subtitle)drp_subtitleTracks.SelectedItem).SubtitleType;
- }
- else if (drp_subtitleTracks.SelectedItem != null && drp_subtitleTracks.SelectedItem.ToString().Contains(".srt"))
- {
- track.SubtitleType = SubtitleType.SRT;
- }
-
- if (currentOutputExtension.Equals("mp4", StringComparison.InvariantCultureIgnoreCase) ||
- currentOutputExtension.Equals("m4v", StringComparison.CurrentCultureIgnoreCase))
- {
- // Default it to burned as mp4 doesn't allow PGS
- track.Burned = true;
-
- // Check to make sure we don't have more than one PGS. Fail if we do.
- if (this.subList.Any(item => item.SubtitleType == SubtitleType.PGS))
- {
- MessageBox.Show(
- "You can only burn-in one PGS subtitle track into an MP4 file. You must first remove the current track to add a new one.",
- "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
-
- lv_subList.Items.Add(track.ListView);
- subList.Add(track);
- }
-
- /// <summary>
- /// Add all audio tracks.
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void mnu_AddAll_Click(object sender, EventArgs e)
- {
- // TODO - Might need to be a bit more clever with this. Will wait and see if this causes any problems.
- bool addedPGS = false;
- foreach (object item in drp_subtitleTracks.Items)
- {
- Subtitle sub = item as Subtitle;
-
- // PGS Handling.
- if (addedPGS)
- {
- // Skip over any pgs tracks after we've added the first.
- continue;
- }
-
- if (currentOutputExtension.Equals("mp4", StringComparison.InvariantCultureIgnoreCase) ||
- currentOutputExtension.Equals("m4v", StringComparison.CurrentCultureIgnoreCase))
- {
- if (sub != null && sub.SubtitleType == SubtitleType.PGS)
- {
- addedPGS = true;
- }
- }
-
- if (!item.ToString().Contains("Foreign Audio Search"))
- {
- drp_subtitleTracks.SelectedItem = item;
- btn_addSubtitleTrack_Click(this, EventArgs.Empty);
- }
- }
-
-
- }
-
- /// <summary>
- /// Add all closed caption tracks
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void mnu_AddAllCC_Click(object sender, EventArgs e)
- {
- foreach (object item in drp_subtitleTracks.Items)
- {
- if (item.ToString().Contains("Closed"))
- {
- drp_subtitleTracks.SelectedItem = item;
- btn_addSubtitleTrack_Click(this, EventArgs.Empty);
- }
- }
- }
-
- /// <summary>
- /// Clear all tracks.
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void mnu_ClearAll_Click(object sender, EventArgs e)
- {
- lv_subList.Items.Clear();
- subList.Clear();
- }
-
- /// <summary>
- /// Remvoe a track
- /// </summary>
- /// <param name="sender">
- /// The Sender
- /// </param>
- /// <param name="e">
- /// The Event Args
- /// </param>
- private void btn_RemoveTrack_Click(object sender, EventArgs e)
- {
- this.RemoveSelectedTrack();
- }
-
- /// <summary>
- /// Import an SRT Subtitle Track
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnSrtAddClick(object sender, EventArgs e)
- {
- if (openFileDialog.ShowDialog() != DialogResult.OK)
- return;
-
- if (srtFiles.ContainsKey(Path.GetFileName(openFileDialog.FileName)))
- {
- MessageBox.Show(
- "A Subtitle track with the same name has already been imported.",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- return;
- }
-
- drp_subtitleTracks.Items.Add(Path.GetFileName(openFileDialog.FileName));
- drp_subtitleTracks.SelectedItem = Path.GetFileName(openFileDialog.FileName);
- srtFiles.Add(Path.GetFileName(openFileDialog.FileName), openFileDialog.FileName);
- }
-
- /// <summary>
- /// The Subtitle List selected index has changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void LbSubListSelectedIndexChanged(object sender, EventArgs e)
- {
- // Set the dropdown controls based on the selected item in the List.
- if (lv_subList.Items.Count != 0 && lv_subList.SelectedIndices.Count != 0)
- {
- SubtitleTrack track = subList[lv_subList.SelectedIndices[0]];
-
- int c = 0;
- if (lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[0].Text.ToLower().Contains(".srt"))
- // We have an SRT
- {
- foreach (var item in drp_subtitleTracks.Items)
- {
- if (item.ToString() == track.SrtFileName)
- drp_subtitleTracks.SelectedIndex = c;
- c++;
- }
- srt_lang.SelectedItem = track.SrtLang;
- srt_offset.Value = track.SrtOffset;
- srt_charcode.SelectedItem = track.SrtCharCode;
- check_default.CheckState = track.Default ? CheckState.Checked : CheckState.Unchecked;
- }
- else // We have Bitmap/CC
- {
- foreach (var item in drp_subtitleTracks.Items)
- {
- if (item.ToString() == track.Track)
- drp_subtitleTracks.SelectedIndex = c;
- c++;
- }
- check_forced.CheckState = track.Forced ? CheckState.Checked : CheckState.Unchecked;
- check_burned.CheckState = track.Burned ? CheckState.Checked : CheckState.Unchecked;
- check_default.CheckState = track.Default ? CheckState.Checked : CheckState.Unchecked;
- }
- }
- }
-
- #endregion
-
- #region Subtitle Controls
-
- /// <summary>
- /// Handle the Subtitle track dropdown changed event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void DrpSubtitleTracksSelectedIndexChanged(object sender, EventArgs e)
- {
- if (drp_subtitleTracks.SelectedItem.ToString().Contains(".srt"))
- {
- check_forced.Enabled = false;
- check_burned.Enabled = false;
- srt_lang.Enabled = true;
- srt_charcode.Enabled = true;
- srt_offset.Enabled = true;
- }
- else
- {
- check_forced.Enabled = true;
- check_burned.Enabled = true;
- srt_lang.Enabled = false;
- srt_charcode.Enabled = false;
- srt_offset.Enabled = false;
- }
- // Update an item in the list if required.
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- if (drp_subtitleTracks.SelectedItem.ToString().Contains(".srt"))
- {
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[0].Text = srt_lang.SelectedItem + "(" +
- drp_subtitleTracks.SelectedItem + ")";
- lv_subList.Select();
-
- string srtPath;
- srtFiles.TryGetValue(drp_subtitleTracks.SelectedItem.ToString(), out srtPath);
- subList[lv_subList.SelectedIndices[0]].SrtPath = srtPath;
- }
- else
- {
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[0].Text =
- drp_subtitleTracks.SelectedItem.ToString();
- lv_subList.Select();
- }
-
- subList[lv_subList.SelectedIndices[0]].Track = drp_subtitleTracks.SelectedItem.ToString();
- }
-
- /// <summary>
- /// Foreced Subtitles checkbox changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void CheckForcedCheckedChanged(object sender, EventArgs e)
- {
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[1].Text = check_forced.Checked ? "Yes" : "No";
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].Forced = check_forced.Checked;
- // Update SubList List<SubtitleInfo>
- }
-
- /// <summary>
- /// Burned in subtitles checkbox changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void CheckBurnedCheckedChanged(object sender, EventArgs e)
- {
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- if (check_burned.Checked) // Make sure we only have 1 burned track
- this.SetBurnedToOffForAllTracks();
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[2].Text = check_burned.Checked ? "Yes" : "No";
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].Burned = check_burned.Checked;
- // Update SubList List<SubtitleInfo>
- }
-
- /// <summary>
- /// Default Subitle track check changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void CheckDefaultCheckedChanged(object sender, EventArgs e)
- {
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- if (check_default.Checked) // Make sure we only have 1 default track
- this.SetDefaultToOffForAllTracks();
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[3].Text = check_default.Checked ? "Yes" : "No";
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].Default = check_default.Checked;
- // Update SubList List<SubtitleInfo>
- }
-
- /// <summary>
- /// Srt Offset Numeric Control Changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void SrtOffsetValueChanged(object sender, EventArgs e)
- {
- // Update an item in the list if required.
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0)
- return;
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[6].Text = srt_offset.Value.ToString();
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].SrtOffset = (int)srt_offset.Value;
- // Update SubList List<SubtitleInfo>
- }
-
- /// <summary>
- /// The SRT Charcode changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void SrtCharcodeSelectedIndexChanged(object sender, EventArgs e)
- {
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[5].Text = srt_charcode.SelectedItem.ToString();
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].SrtCharCode = srt_charcode.SelectedItem.ToString();
- // Update SubList List<SubtitleInfo>
- }
-
- /// <summary>
- /// The Srt Language code changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void SrtLangSelectedIndexChanged(object sender, EventArgs e)
- {
- if (lv_subList.Items.Count == 0 || lv_subList.SelectedIndices.Count == 0) return;
-
- lv_subList.Items[lv_subList.SelectedIndices[0]].SubItems[4].Text = srt_lang.SelectedItem.ToString();
- lv_subList.Select();
-
- subList[lv_subList.SelectedIndices[0]].SrtLang = srt_lang.SelectedItem.ToString();
- // Update SubList List<SubtitleInfo>
- }
-
- #endregion
-
- #region Right Click Menu
-
- /// <summary>
- /// Move an item in the subtitle list up
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuMoveupClick(object sender, EventArgs e)
- {
- if (lv_subList.SelectedIndices.Count != 0)
- {
- ListViewItem item = lv_subList.SelectedItems[0];
- int index = item.Index;
- index--;
-
- if (lv_subList.Items.Count > index && index >= 0)
- {
- lv_subList.Items.Remove(item);
- lv_subList.Items.Insert(index, item);
- item.Selected = true;
- lv_subList.Focus();
- }
- }
- }
-
- /// <summary>
- /// Move an item in the subtitle list down
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuMovedownClick(object sender, EventArgs e)
- {
- if (lv_subList.SelectedIndices.Count != 0)
- {
- ListViewItem item = lv_subList.SelectedItems[0];
- int index = item.Index;
- index++;
-
- if (index < lv_subList.Items.Count)
- {
- lv_subList.Items.Remove(item);
- lv_subList.Items.Insert(index, item);
- item.Selected = true;
- lv_subList.Focus();
- }
- }
- }
-
- /// <summary>
- /// Remove a selected subtitle track.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuRemoveClick(object sender, EventArgs e)
- {
- this.RemoveSelectedTrack();
- }
-
- #endregion
-
- #region Helpers
- /// <summary>
- /// Set all Non SRT tracks to Default = NO
- /// </summary>
- private void SetDefaultToOffForAllTracks()
- {
- int c = 0;
- foreach (ListViewItem item in lv_subList.Items)
- {
- if (item.SubItems[3].Text == "Yes")
- {
- item.SubItems[3].Text = "No";
- subList[c].Default = false;
- }
- c++;
- }
- }
-
- /// <summary>
- /// Set all tracks to Burned = No
- /// </summary>
- private void SetBurnedToOffForAllTracks()
- {
- int c = 0;
- foreach (ListViewItem item in lv_subList.Items)
- {
- if (item.SubItems[2].Text == "Yes")
- {
- item.SubItems[2].Text = "No";
- subList[c].Burned = false;
- }
- c++;
- }
- }
-
- /// <summary>
- /// Remove a selected track
- /// </summary>
- private void RemoveSelectedTrack()
- {
- // Remove the Item and reselect the control if the following conditions are met.
- if (lv_subList.SelectedItems.Count != 0)
- {
- // Record the current selected index.
- int currentPosition = lv_subList.SelectedIndices[0];
- int selectedInd = lv_subList.SelectedIndices[0];
-
- lv_subList.Items.RemoveAt(selectedInd);
- subList.RemoveAt(selectedInd);
-
- // Now reslect the correct item and give focus to the list.
- if (lv_subList.Items.Count != 0)
- {
- if (currentPosition <= (lv_subList.Items.Count - 1))
- lv_subList.Items[currentPosition].Selected = true;
- else if (currentPosition > (lv_subList.Items.Count - 1))
- lv_subList.Items[lv_subList.Items.Count - 1].Selected = true;
-
- lv_subList.Select();
- }
- }
- }
- #endregion
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/Subtitles.resx b/win/CS/Controls/Subtitles.resx
deleted file mode 100644
index 1254679cb..000000000
--- a/win/CS/Controls/Subtitles.resx
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="subMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>237, 17</value>
- </metadata>
- <metadata name="openFileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>113, 17</value>
- </metadata>
- <metadata name="SubtitleTrackMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>317, 20</value>
- </metadata>
- <metadata name="SubtitleRemoveButtonMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>471, 20</value>
- </metadata>
-</root> \ No newline at end of file
diff --git a/win/CS/Controls/x264Panel.Designer.cs b/win/CS/Controls/x264Panel.Designer.cs
deleted file mode 100644
index dfc21b6d5..000000000
--- a/win/CS/Controls/x264Panel.Designer.cs
+++ /dev/null
@@ -1,775 +0,0 @@
-/* x264Panel.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- partial class x264Panel
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Component Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(x264Panel));
- this.slider_psytrellis = new System.Windows.Forms.TrackBar();
- this.lbl_psytrellis = new System.Windows.Forms.Label();
- this.lbl_psyrd = new System.Windows.Forms.Label();
- this.slider_psyrd = new System.Windows.Forms.TrackBar();
- this.lbl_adaptBFrames = new System.Windows.Forms.Label();
- this.drop_adaptBFrames = new System.Windows.Forms.ComboBox();
- this.label43 = new System.Windows.Forms.Label();
- this.btn_reset = new System.Windows.Forms.Button();
- this.rtf_x264Query = new System.Windows.Forms.RichTextBox();
- this.check_Cabac = new System.Windows.Forms.CheckBox();
- this.check_noDCTDecimate = new System.Windows.Forms.CheckBox();
- this.lbl_trellis = new System.Windows.Forms.Label();
- this.drop_trellis = new System.Windows.Forms.ComboBox();
- this.drop_deblockBeta = new System.Windows.Forms.ComboBox();
- this.label41 = new System.Windows.Forms.Label();
- this.drop_deblockAlpha = new System.Windows.Forms.ComboBox();
- this.check_8x8DCT = new System.Windows.Forms.CheckBox();
- this.label45 = new System.Windows.Forms.Label();
- this.drop_analysis = new System.Windows.Forms.ComboBox();
- this.label48 = new System.Windows.Forms.Label();
- this.drop_subpixelMotionEstimation = new System.Windows.Forms.ComboBox();
- this.lbl_merange = new System.Windows.Forms.Label();
- this.drop_MotionEstimationRange = new System.Windows.Forms.ComboBox();
- this.label54 = new System.Windows.Forms.Label();
- this.drop_MotionEstimationMethod = new System.Windows.Forms.ComboBox();
- this.lbl_direct_prediction = new System.Windows.Forms.Label();
- this.drop_directPrediction = new System.Windows.Forms.ComboBox();
- this.label62 = new System.Windows.Forms.Label();
- this.drop_bFrames = new System.Windows.Forms.ComboBox();
- this.label64 = new System.Windows.Forms.Label();
- this.drop_refFrames = new System.Windows.Forms.ComboBox();
- this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
- this.check_weightp = new System.Windows.Forms.CheckBox();
- this.slider_adaptiveQuantStrength = new System.Windows.Forms.TrackBar();
- this.combo_pyrmidalBFrames = new System.Windows.Forms.ComboBox();
- this.lbl_adaptiveQuantStrength = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.lbl_prymidalBframes = new System.Windows.Forms.Label();
- this.label3 = new System.Windows.Forms.Label();
- ((System.ComponentModel.ISupportInitialize)(this.slider_psytrellis)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.slider_psyrd)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.slider_adaptiveQuantStrength)).BeginInit();
- this.SuspendLayout();
- //
- // slider_psytrellis
- //
- this.slider_psytrellis.BackColor = System.Drawing.SystemColors.Window;
- this.slider_psytrellis.Location = new System.Drawing.Point(427, 231);
- this.slider_psytrellis.Maximum = 20;
- this.slider_psytrellis.Name = "slider_psytrellis";
- this.slider_psytrellis.Size = new System.Drawing.Size(131, 45);
- this.slider_psytrellis.TabIndex = 86;
- this.ToolTip.SetToolTip(this.slider_psytrellis, "Psychovisual Trellis tries to retain more sharpness and detail, but can cause art" +
- "ifacting. \r\nIt is considered experimental, which is why it\'s off by default. Goo" +
- "d values are 0.1 to 0.2.");
- this.slider_psytrellis.Scroll += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_psytrellis
- //
- this.lbl_psytrellis.AutoSize = true;
- this.lbl_psytrellis.Location = new System.Drawing.Point(309, 231);
- this.lbl_psytrellis.Name = "lbl_psytrellis";
- this.lbl_psytrellis.Size = new System.Drawing.Size(102, 13);
- this.lbl_psytrellis.TabIndex = 85;
- this.lbl_psytrellis.Text = "Psychovisual Trellis:";
- //
- // lbl_psyrd
- //
- this.lbl_psyrd.AutoSize = true;
- this.lbl_psyrd.Location = new System.Drawing.Point(264, 199);
- this.lbl_psyrd.Name = "lbl_psyrd";
- this.lbl_psyrd.Size = new System.Drawing.Size(147, 13);
- this.lbl_psyrd.TabIndex = 84;
- this.lbl_psyrd.Text = "Psychovisual Rate Distortion:";
- //
- // slider_psyrd
- //
- this.slider_psyrd.BackColor = System.Drawing.SystemColors.Window;
- this.slider_psyrd.Location = new System.Drawing.Point(425, 199);
- this.slider_psyrd.Maximum = 20;
- this.slider_psyrd.Name = "slider_psyrd";
- this.slider_psyrd.Size = new System.Drawing.Size(131, 45);
- this.slider_psyrd.TabIndex = 83;
- this.ToolTip.SetToolTip(this.slider_psyrd, resources.GetString("slider_psyrd.ToolTip"));
- this.slider_psyrd.Value = 10;
- this.slider_psyrd.Scroll += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_adaptBFrames
- //
- this.lbl_adaptBFrames.AutoSize = true;
- this.lbl_adaptBFrames.Location = new System.Drawing.Point(309, 28);
- this.lbl_adaptBFrames.Name = "lbl_adaptBFrames";
- this.lbl_adaptBFrames.Size = new System.Drawing.Size(102, 13);
- this.lbl_adaptBFrames.TabIndex = 81;
- this.lbl_adaptBFrames.Text = "Adaptive B-Frames:";
- //
- // drop_adaptBFrames
- //
- this.drop_adaptBFrames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_adaptBFrames.FormattingEnabled = true;
- this.drop_adaptBFrames.Items.AddRange(new object[] {
- "Default (Fast)",
- "Off",
- "Fast",
- "Optimal"});
- this.drop_adaptBFrames.Location = new System.Drawing.Point(417, 24);
- this.drop_adaptBFrames.Name = "drop_adaptBFrames";
- this.drop_adaptBFrames.Size = new System.Drawing.Size(106, 21);
- this.drop_adaptBFrames.TabIndex = 82;
- this.ToolTip.SetToolTip(this.drop_adaptBFrames, resources.GetString("drop_adaptBFrames.ToolTip"));
- this.drop_adaptBFrames.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label43
- //
- this.label43.AutoSize = true;
- this.label43.BackColor = System.Drawing.Color.Transparent;
- this.label43.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label43.Location = new System.Drawing.Point(13, 13);
- this.label43.Name = "label43";
- this.label43.Size = new System.Drawing.Size(60, 13);
- this.label43.TabIndex = 49;
- this.label43.Text = "Encoding:";
- //
- // btn_reset
- //
- this.btn_reset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_reset.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_reset.Location = new System.Drawing.Point(634, 230);
- this.btn_reset.Name = "btn_reset";
- this.btn_reset.Size = new System.Drawing.Size(75, 23);
- this.btn_reset.TabIndex = 79;
- this.btn_reset.Text = "Reset All";
- this.btn_reset.UseVisualStyleBackColor = true;
- this.btn_reset.Click += new System.EventHandler(this.btn_reset_Click);
- //
- // rtf_x264Query
- //
- this.rtf_x264Query.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.rtf_x264Query.Location = new System.Drawing.Point(16, 259);
- this.rtf_x264Query.Name = "rtf_x264Query";
- this.rtf_x264Query.Size = new System.Drawing.Size(698, 43);
- this.rtf_x264Query.TabIndex = 80;
- this.rtf_x264Query.Text = "";
- this.rtf_x264Query.TextChanged += new System.EventHandler(this.rtf_x264Query_TextChanged);
- //
- // check_Cabac
- //
- this.check_Cabac.AutoSize = true;
- this.check_Cabac.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.check_Cabac.Checked = true;
- this.check_Cabac.CheckState = System.Windows.Forms.CheckState.Checked;
- this.check_Cabac.Location = new System.Drawing.Point(3, 89);
- this.check_Cabac.Name = "check_Cabac";
- this.check_Cabac.RightToLeft = System.Windows.Forms.RightToLeft.No;
- this.check_Cabac.Size = new System.Drawing.Size(141, 17);
- this.check_Cabac.TabIndex = 78;
- this.check_Cabac.Text = "CABAC Entropy Coding:";
- this.check_Cabac.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.ToolTip.SetToolTip(this.check_Cabac, resources.GetString("check_Cabac.ToolTip"));
- this.check_Cabac.UseVisualStyleBackColor = true;
- this.check_Cabac.CheckedChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // check_noDCTDecimate
- //
- this.check_noDCTDecimate.AutoSize = true;
- this.check_noDCTDecimate.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.check_noDCTDecimate.Location = new System.Drawing.Point(30, 212);
- this.check_noDCTDecimate.Name = "check_noDCTDecimate";
- this.check_noDCTDecimate.RightToLeft = System.Windows.Forms.RightToLeft.No;
- this.check_noDCTDecimate.Size = new System.Drawing.Size(114, 17);
- this.check_noDCTDecimate.TabIndex = 77;
- this.check_noDCTDecimate.Text = "No DCT-Decimate:";
- this.check_noDCTDecimate.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.ToolTip.SetToolTip(this.check_noDCTDecimate, resources.GetString("check_noDCTDecimate.ToolTip"));
- this.check_noDCTDecimate.UseVisualStyleBackColor = true;
- this.check_noDCTDecimate.CheckedChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_trellis
- //
- this.lbl_trellis.AutoSize = true;
- this.lbl_trellis.Location = new System.Drawing.Point(563, 43);
- this.lbl_trellis.Name = "lbl_trellis";
- this.lbl_trellis.Size = new System.Drawing.Size(38, 13);
- this.lbl_trellis.TabIndex = 67;
- this.lbl_trellis.Text = "Trellis:";
- //
- // drop_trellis
- //
- this.drop_trellis.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_trellis.FormattingEnabled = true;
- this.drop_trellis.Items.AddRange(new object[] {
- "Default (Encode Only)",
- "Off",
- "Encode Only",
- "Always"});
- this.drop_trellis.Location = new System.Drawing.Point(615, 40);
- this.drop_trellis.Name = "drop_trellis";
- this.drop_trellis.Size = new System.Drawing.Size(94, 21);
- this.drop_trellis.TabIndex = 75;
- this.ToolTip.SetToolTip(this.drop_trellis, resources.GetString("drop_trellis.ToolTip"));
- this.drop_trellis.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // drop_deblockBeta
- //
- this.drop_deblockBeta.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_deblockBeta.FormattingEnabled = true;
- this.drop_deblockBeta.Items.AddRange(new object[] {
- "Default (0)",
- "-6",
- "-5",
- "-4",
- "-3",
- "-2",
- "-1",
- "0",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6"});
- this.drop_deblockBeta.Location = new System.Drawing.Point(631, 175);
- this.drop_deblockBeta.Name = "drop_deblockBeta";
- this.drop_deblockBeta.Size = new System.Drawing.Size(78, 21);
- this.drop_deblockBeta.TabIndex = 74;
- this.ToolTip.SetToolTip(this.drop_deblockBeta, resources.GetString("drop_deblockBeta.ToolTip"));
- this.drop_deblockBeta.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label41
- //
- this.label41.AutoSize = true;
- this.label41.Location = new System.Drawing.Point(563, 152);
- this.label41.Name = "label41";
- this.label41.Size = new System.Drawing.Size(62, 13);
- this.label41.TabIndex = 66;
- this.label41.Text = "Deblocking:";
- //
- // drop_deblockAlpha
- //
- this.drop_deblockAlpha.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_deblockAlpha.FormattingEnabled = true;
- this.drop_deblockAlpha.Items.AddRange(new object[] {
- "Default (0)",
- "-6",
- "-5",
- "-4",
- "-3",
- "-2",
- "-1",
- "0",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6"});
- this.drop_deblockAlpha.Location = new System.Drawing.Point(631, 149);
- this.drop_deblockAlpha.Name = "drop_deblockAlpha";
- this.drop_deblockAlpha.Size = new System.Drawing.Size(78, 21);
- this.drop_deblockAlpha.TabIndex = 73;
- this.ToolTip.SetToolTip(this.drop_deblockAlpha, resources.GetString("drop_deblockAlpha.ToolTip"));
- this.drop_deblockAlpha.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // check_8x8DCT
- //
- this.check_8x8DCT.AutoSize = true;
- this.check_8x8DCT.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.check_8x8DCT.Location = new System.Drawing.Point(44, 111);
- this.check_8x8DCT.Name = "check_8x8DCT";
- this.check_8x8DCT.RightToLeft = System.Windows.Forms.RightToLeft.No;
- this.check_8x8DCT.Size = new System.Drawing.Size(100, 17);
- this.check_8x8DCT.TabIndex = 72;
- this.check_8x8DCT.Text = "8x8 Transform:";
- this.check_8x8DCT.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.ToolTip.SetToolTip(this.check_8x8DCT, resources.GetString("check_8x8DCT.ToolTip"));
- this.check_8x8DCT.UseVisualStyleBackColor = true;
- this.check_8x8DCT.CheckedChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label45
- //
- this.label45.AutoSize = true;
- this.label45.Location = new System.Drawing.Point(563, 16);
- this.label45.Name = "label45";
- this.label45.Size = new System.Drawing.Size(78, 13);
- this.label45.TabIndex = 64;
- this.label45.Text = "Partition Type:";
- //
- // drop_analysis
- //
- this.drop_analysis.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_analysis.FormattingEnabled = true;
- this.drop_analysis.Items.AddRange(new object[] {
- "Default (most)",
- "None",
- "Some",
- "All"});
- this.drop_analysis.Location = new System.Drawing.Point(646, 13);
- this.drop_analysis.Name = "drop_analysis";
- this.drop_analysis.Size = new System.Drawing.Size(63, 21);
- this.drop_analysis.TabIndex = 71;
- this.ToolTip.SetToolTip(this.drop_analysis, resources.GetString("drop_analysis.ToolTip"));
- this.drop_analysis.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label48
- //
- this.label48.AutoSize = true;
- this.label48.Location = new System.Drawing.Point(262, 110);
- this.label48.Name = "label48";
- this.label48.Size = new System.Drawing.Size(149, 13);
- this.label48.TabIndex = 62;
- this.label48.Text = "Subpixel ME && Mode Decision:";
- //
- // drop_subpixelMotionEstimation
- //
- this.drop_subpixelMotionEstimation.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_subpixelMotionEstimation.FormattingEnabled = true;
- this.drop_subpixelMotionEstimation.Items.AddRange(new object[] {
- "Default (7)",
- "0: SAD, no subpel (super fast!)",
- "1: SAD, qpel",
- "2: SATD, qpel",
- "3: SATD, multi-qpel",
- "4: SATD, qpel on all",
- "5: SATD, multi-qpel on all",
- "6: RD in I/P-frames",
- "7: RD in all frames",
- "8: RD refine in I/P-frames",
- "9: RD refine in all frames",
- "10: QPRD in all frames",
- "11: No early terminations in analysis"});
- this.drop_subpixelMotionEstimation.Location = new System.Drawing.Point(417, 105);
- this.drop_subpixelMotionEstimation.Name = "drop_subpixelMotionEstimation";
- this.drop_subpixelMotionEstimation.Size = new System.Drawing.Size(139, 21);
- this.drop_subpixelMotionEstimation.TabIndex = 70;
- this.ToolTip.SetToolTip(this.drop_subpixelMotionEstimation, resources.GetString("drop_subpixelMotionEstimation.ToolTip"));
- this.drop_subpixelMotionEstimation.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_merange
- //
- this.lbl_merange.AutoSize = true;
- this.lbl_merange.Location = new System.Drawing.Point(282, 135);
- this.lbl_merange.Name = "lbl_merange";
- this.lbl_merange.Size = new System.Drawing.Size(129, 13);
- this.lbl_merange.TabIndex = 61;
- this.lbl_merange.Text = "Motion Estimation Range:";
- //
- // drop_MotionEstimationRange
- //
- this.drop_MotionEstimationRange.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_MotionEstimationRange.FormattingEnabled = true;
- this.drop_MotionEstimationRange.Items.AddRange(new object[] {
- "Default (16)",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "10",
- "11",
- "12",
- "13",
- "14",
- "15",
- "16",
- "17",
- "18",
- "19",
- "20",
- "21",
- "22",
- "23",
- "24",
- "25",
- "26",
- "27",
- "28",
- "29",
- "30",
- "31",
- "32",
- "33",
- "34",
- "35",
- "36",
- "37",
- "38",
- "39",
- "40",
- "41",
- "42",
- "43",
- "44",
- "45",
- "46",
- "47",
- "48",
- "49",
- "50",
- "51",
- "52",
- "53",
- "54",
- "55",
- "56",
- "57",
- "58",
- "59",
- "60",
- "61",
- "62",
- "63",
- "64"});
- this.drop_MotionEstimationRange.Location = new System.Drawing.Point(417, 132);
- this.drop_MotionEstimationRange.Name = "drop_MotionEstimationRange";
- this.drop_MotionEstimationRange.Size = new System.Drawing.Size(139, 21);
- this.drop_MotionEstimationRange.TabIndex = 69;
- this.ToolTip.SetToolTip(this.drop_MotionEstimationRange, resources.GetString("drop_MotionEstimationRange.ToolTip"));
- this.drop_MotionEstimationRange.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label54
- //
- this.label54.AutoSize = true;
- this.label54.Location = new System.Drawing.Point(277, 81);
- this.label54.Name = "label54";
- this.label54.Size = new System.Drawing.Size(134, 13);
- this.label54.TabIndex = 60;
- this.label54.Text = "Motion Estimation Method:";
- //
- // drop_MotionEstimationMethod
- //
- this.drop_MotionEstimationMethod.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_MotionEstimationMethod.FormattingEnabled = true;
- this.drop_MotionEstimationMethod.ItemHeight = 13;
- this.drop_MotionEstimationMethod.Items.AddRange(new object[] {
- "Default (Hexagon)",
- "Diamond",
- "Hexagon",
- "Uneven Multi-Hexagon",
- "Exhaustive",
- "Transformed Exhaustive"});
- this.drop_MotionEstimationMethod.Location = new System.Drawing.Point(417, 78);
- this.drop_MotionEstimationMethod.Name = "drop_MotionEstimationMethod";
- this.drop_MotionEstimationMethod.Size = new System.Drawing.Size(139, 21);
- this.drop_MotionEstimationMethod.TabIndex = 68;
- this.ToolTip.SetToolTip(this.drop_MotionEstimationMethod, resources.GetString("drop_MotionEstimationMethod.ToolTip"));
- this.drop_MotionEstimationMethod.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_direct_prediction
- //
- this.lbl_direct_prediction.AutoSize = true;
- this.lbl_direct_prediction.Location = new System.Drawing.Point(297, 54);
- this.lbl_direct_prediction.Name = "lbl_direct_prediction";
- this.lbl_direct_prediction.Size = new System.Drawing.Size(114, 13);
- this.lbl_direct_prediction.TabIndex = 53;
- this.lbl_direct_prediction.Text = "Adaptive Direct Mode:";
- //
- // drop_directPrediction
- //
- this.drop_directPrediction.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_directPrediction.FormattingEnabled = true;
- this.drop_directPrediction.Items.AddRange(new object[] {
- "Default (Spatial)",
- "None",
- "Spatial",
- "Temporal",
- "Automatic"});
- this.drop_directPrediction.Location = new System.Drawing.Point(417, 51);
- this.drop_directPrediction.Name = "drop_directPrediction";
- this.drop_directPrediction.Size = new System.Drawing.Size(106, 21);
- this.drop_directPrediction.TabIndex = 57;
- this.ToolTip.SetToolTip(this.drop_directPrediction, resources.GetString("drop_directPrediction.ToolTip"));
- this.drop_directPrediction.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label62
- //
- this.label62.AutoSize = true;
- this.label62.Location = new System.Drawing.Point(21, 64);
- this.label62.Name = "label62";
- this.label62.Size = new System.Drawing.Size(103, 13);
- this.label62.TabIndex = 52;
- this.label62.Text = "Maximum B-Frames:";
- //
- // drop_bFrames
- //
- this.drop_bFrames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_bFrames.FormattingEnabled = true;
- this.drop_bFrames.Items.AddRange(new object[] {
- "Default (3)",
- "0",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "10",
- "11",
- "12",
- "13",
- "14",
- "15",
- "16"});
- this.drop_bFrames.Location = new System.Drawing.Point(129, 61);
- this.drop_bFrames.Name = "drop_bFrames";
- this.drop_bFrames.Size = new System.Drawing.Size(106, 21);
- this.drop_bFrames.TabIndex = 56;
- this.ToolTip.SetToolTip(this.drop_bFrames, resources.GetString("drop_bFrames.ToolTip"));
- this.drop_bFrames.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // label64
- //
- this.label64.AutoSize = true;
- this.label64.Location = new System.Drawing.Point(25, 38);
- this.label64.Name = "label64";
- this.label64.Size = new System.Drawing.Size(99, 13);
- this.label64.TabIndex = 50;
- this.label64.Text = "Reference Frames:";
- //
- // drop_refFrames
- //
- this.drop_refFrames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_refFrames.FormattingEnabled = true;
- this.drop_refFrames.Items.AddRange(new object[] {
- "Default (3)",
- "1",
- "2",
- "3",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "10",
- "11",
- "12",
- "13",
- "14",
- "15",
- "16"});
- this.drop_refFrames.Location = new System.Drawing.Point(129, 35);
- this.drop_refFrames.Name = "drop_refFrames";
- this.drop_refFrames.Size = new System.Drawing.Size(106, 21);
- this.drop_refFrames.TabIndex = 54;
- this.ToolTip.SetToolTip(this.drop_refFrames, resources.GetString("drop_refFrames.ToolTip"));
- this.drop_refFrames.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // ToolTip
- //
- this.ToolTip.Active = false;
- this.ToolTip.AutomaticDelay = 1000;
- this.ToolTip.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
- //
- // check_weightp
- //
- this.check_weightp.AutoSize = true;
- this.check_weightp.CheckAlign = System.Drawing.ContentAlignment.MiddleRight;
- this.check_weightp.ForeColor = System.Drawing.SystemColors.ControlText;
- this.check_weightp.Location = new System.Drawing.Point(20, 134);
- this.check_weightp.Name = "check_weightp";
- this.check_weightp.RightToLeft = System.Windows.Forms.RightToLeft.No;
- this.check_weightp.Size = new System.Drawing.Size(124, 17);
- this.check_weightp.TabIndex = 87;
- this.check_weightp.Text = "Weighted P-Frames:";
- this.ToolTip.SetToolTip(this.check_weightp, resources.GetString("check_weightp.ToolTip"));
- this.check_weightp.UseVisualStyleBackColor = true;
- this.check_weightp.CheckedChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // slider_adaptiveQuantStrength
- //
- this.slider_adaptiveQuantStrength.BackColor = System.Drawing.SystemColors.Window;
- this.slider_adaptiveQuantStrength.Location = new System.Drawing.Point(425, 167);
- this.slider_adaptiveQuantStrength.Maximum = 20;
- this.slider_adaptiveQuantStrength.Name = "slider_adaptiveQuantStrength";
- this.slider_adaptiveQuantStrength.Size = new System.Drawing.Size(131, 45);
- this.slider_adaptiveQuantStrength.TabIndex = 88;
- this.ToolTip.SetToolTip(this.slider_adaptiveQuantStrength, "Adaptive quantization controls how the encoder distributes bits across the frame." +
- " \r\nHigher values take more bits away from edges and complex areas to improve ar" +
- "eas with finer detail");
- this.slider_adaptiveQuantStrength.Value = 10;
- this.slider_adaptiveQuantStrength.Scroll += new System.EventHandler(this.widgetControlChanged);
- //
- // combo_pyrmidalBFrames
- //
- this.combo_pyrmidalBFrames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.combo_pyrmidalBFrames.FormattingEnabled = true;
- this.combo_pyrmidalBFrames.Items.AddRange(new object[] {
- "Default (Normal)",
- "Off",
- "Strict"});
- this.combo_pyrmidalBFrames.Location = new System.Drawing.Point(129, 157);
- this.combo_pyrmidalBFrames.Name = "combo_pyrmidalBFrames";
- this.combo_pyrmidalBFrames.Size = new System.Drawing.Size(106, 21);
- this.combo_pyrmidalBFrames.TabIndex = 92;
- this.ToolTip.SetToolTip(this.combo_pyrmidalBFrames, resources.GetString("combo_pyrmidalBFrames.ToolTip"));
- this.combo_pyrmidalBFrames.SelectedIndexChanged += new System.EventHandler(this.widgetControlChanged);
- //
- // lbl_adaptiveQuantStrength
- //
- this.lbl_adaptiveQuantStrength.AutoSize = true;
- this.lbl_adaptiveQuantStrength.Location = new System.Drawing.Point(248, 171);
- this.lbl_adaptiveQuantStrength.Name = "lbl_adaptiveQuantStrength";
- this.lbl_adaptiveQuantStrength.Size = new System.Drawing.Size(163, 13);
- this.lbl_adaptiveQuantStrength.TabIndex = 89;
- this.lbl_adaptiveQuantStrength.Text = "Adaptive Quantization Strength:";
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.BackColor = System.Drawing.Color.Transparent;
- this.label1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(13, 193);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(83, 13);
- this.label1.TabIndex = 90;
- this.label1.Text = "Psychovisual:";
- //
- // lbl_prymidalBframes
- //
- this.lbl_prymidalBframes.AutoSize = true;
- this.lbl_prymidalBframes.Location = new System.Drawing.Point(20, 160);
- this.lbl_prymidalBframes.Name = "lbl_prymidalBframes";
- this.lbl_prymidalBframes.Size = new System.Drawing.Size(105, 13);
- this.lbl_prymidalBframes.TabIndex = 91;
- this.lbl_prymidalBframes.Text = "Pyramidal B-Frames:";
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.BackColor = System.Drawing.Color.Transparent;
- this.label3.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label3.Location = new System.Drawing.Point(248, 13);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(57, 13);
- this.label3.TabIndex = 93;
- this.label3.Text = "Analysis:";
- //
- // x264Panel
- //
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
- this.BackColor = System.Drawing.Color.Transparent;
- this.Controls.Add(this.rtf_x264Query);
- this.Controls.Add(this.slider_psytrellis);
- this.Controls.Add(this.label3);
- this.Controls.Add(this.lbl_prymidalBframes);
- this.Controls.Add(this.combo_pyrmidalBFrames);
- this.Controls.Add(this.label1);
- this.Controls.Add(this.slider_psyrd);
- this.Controls.Add(this.lbl_adaptiveQuantStrength);
- this.Controls.Add(this.slider_adaptiveQuantStrength);
- this.Controls.Add(this.check_weightp);
- this.Controls.Add(this.lbl_psytrellis);
- this.Controls.Add(this.lbl_psyrd);
- this.Controls.Add(this.lbl_adaptBFrames);
- this.Controls.Add(this.drop_adaptBFrames);
- this.Controls.Add(this.label43);
- this.Controls.Add(this.btn_reset);
- this.Controls.Add(this.check_Cabac);
- this.Controls.Add(this.check_noDCTDecimate);
- this.Controls.Add(this.lbl_trellis);
- this.Controls.Add(this.drop_trellis);
- this.Controls.Add(this.drop_deblockBeta);
- this.Controls.Add(this.label41);
- this.Controls.Add(this.drop_deblockAlpha);
- this.Controls.Add(this.check_8x8DCT);
- this.Controls.Add(this.label45);
- this.Controls.Add(this.drop_analysis);
- this.Controls.Add(this.label48);
- this.Controls.Add(this.drop_subpixelMotionEstimation);
- this.Controls.Add(this.lbl_merange);
- this.Controls.Add(this.drop_MotionEstimationRange);
- this.Controls.Add(this.label54);
- this.Controls.Add(this.drop_MotionEstimationMethod);
- this.Controls.Add(this.lbl_direct_prediction);
- this.Controls.Add(this.drop_directPrediction);
- this.Controls.Add(this.label62);
- this.Controls.Add(this.drop_bFrames);
- this.Controls.Add(this.label64);
- this.Controls.Add(this.drop_refFrames);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Name = "x264Panel";
- this.Size = new System.Drawing.Size(720, 305);
- ((System.ComponentModel.ISupportInitialize)(this.slider_psytrellis)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.slider_psyrd)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.slider_adaptiveQuantStrength)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.TrackBar slider_psytrellis;
- internal System.Windows.Forms.Label lbl_psytrellis;
- internal System.Windows.Forms.Label lbl_psyrd;
- internal System.Windows.Forms.TrackBar slider_psyrd;
- internal System.Windows.Forms.Label lbl_adaptBFrames;
- internal System.Windows.Forms.ComboBox drop_adaptBFrames;
- internal System.Windows.Forms.Label label43;
- internal System.Windows.Forms.Button btn_reset;
- internal System.Windows.Forms.RichTextBox rtf_x264Query;
- internal System.Windows.Forms.CheckBox check_Cabac;
- internal System.Windows.Forms.CheckBox check_noDCTDecimate;
- internal System.Windows.Forms.Label lbl_trellis;
- internal System.Windows.Forms.ComboBox drop_trellis;
- internal System.Windows.Forms.ComboBox drop_deblockBeta;
- internal System.Windows.Forms.Label label41;
- internal System.Windows.Forms.ComboBox drop_deblockAlpha;
- internal System.Windows.Forms.CheckBox check_8x8DCT;
- internal System.Windows.Forms.Label label45;
- internal System.Windows.Forms.ComboBox drop_analysis;
- internal System.Windows.Forms.Label label48;
- internal System.Windows.Forms.ComboBox drop_subpixelMotionEstimation;
- internal System.Windows.Forms.Label lbl_merange;
- internal System.Windows.Forms.ComboBox drop_MotionEstimationRange;
- internal System.Windows.Forms.Label label54;
- internal System.Windows.Forms.ComboBox drop_MotionEstimationMethod;
- internal System.Windows.Forms.Label lbl_direct_prediction;
- internal System.Windows.Forms.ComboBox drop_directPrediction;
- internal System.Windows.Forms.Label label62;
- internal System.Windows.Forms.ComboBox drop_bFrames;
- internal System.Windows.Forms.Label label64;
- internal System.Windows.Forms.ComboBox drop_refFrames;
- private System.Windows.Forms.ToolTip ToolTip;
- internal System.Windows.Forms.CheckBox check_weightp;
- internal System.Windows.Forms.Label lbl_adaptiveQuantStrength;
- internal System.Windows.Forms.TrackBar slider_adaptiveQuantStrength;
- internal System.Windows.Forms.Label label1;
- internal System.Windows.Forms.Label lbl_prymidalBframes;
- internal System.Windows.Forms.ComboBox combo_pyrmidalBFrames;
- internal System.Windows.Forms.Label label3;
- }
-}
diff --git a/win/CS/Controls/x264Panel.cs b/win/CS/Controls/x264Panel.cs
deleted file mode 100644
index aacb93983..000000000
--- a/win/CS/Controls/x264Panel.cs
+++ /dev/null
@@ -1,1082 +0,0 @@
-/* x264Panel.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Controls
-{
- using System;
- using System.Globalization;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- /// <summary>
- /// The x264 Panel
- /// </summary>
- public partial class x264Panel : UserControl
- {
- /*
- * TODO This code was ported from the obj-c MacGUI code. It's really messy and could really do with being cleaned up
- * at some point.
- */
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="x264Panel"/> class.
- /// Initializes a new instance of the x264 panel user control
- /// </summary>
- public x264Panel()
- {
- InitializeComponent();
-
- if (this.UserSettingService.GetUserSetting<bool>(UserSettingConstants.TooltipEnable))
- ToolTip.Active = true;
-
- Reset2Defaults();
- }
-
- /// <summary>
- /// Gets or sets the X264 query string
- /// </summary>
- public string X264Query
- {
- get
- {
- return rtf_x264Query.Text;
- }
- set
- {
- rtf_x264Query.Text = value;
- }
- }
-
- /// <summary>
- /// Reset all components to defaults and clears the x264 rtf box
- /// </summary>
- public void Reset2Defaults()
- {
- check_8x8DCT.CheckState = CheckState.Checked;
- check_Cabac.CheckState = CheckState.Checked;
- check_weightp.CheckState = CheckState.Checked;
- check_noDCTDecimate.CheckState = CheckState.Unchecked;
- combo_pyrmidalBFrames.SelectedIndex = 0;
- drop_analysis.SelectedIndex = 0;
- drop_bFrames.SelectedIndex = 0;
- drop_deblockAlpha.SelectedIndex = 0;
- drop_deblockBeta.SelectedIndex = 0;
- drop_directPrediction.SelectedIndex = 0;
- drop_MotionEstimationMethod.SelectedIndex = 0;
- drop_MotionEstimationRange.SelectedIndex = 0;
- drop_refFrames.SelectedIndex = 0;
- drop_subpixelMotionEstimation.SelectedIndex = 0;
- drop_trellis.SelectedIndex = 0;
- slider_psyrd.Value = 10;
- slider_psytrellis.Value = 0;
- drop_adaptBFrames.SelectedIndex = 0;
- slider_adaptiveQuantStrength.Value = slider_adaptiveQuantStrength.Maximum / 2;
-
- rtf_x264Query.Text = string.Empty;
- }
-
- #region Standardize Option String
- /// <summary>
- /// Iterate over every x264 option, standardize it, write the full string to the x264 rtf box
- /// </summary>
- public void StandardizeOptString()
- {
- /* Set widgets depending on the opt string in field */
- string thisOpt; // The separated option such as "bframes=3"
- string optName; // The option name such as "bframes"
- string optValue; // The option value such as "3"
- string changedOptString = string.Empty;
- string[] currentOptsArray;
-
- /*First, we get an opt string to process */
- string currentOptString = rtf_x264Query.Text;
-
- /*verify there is an opt string to process */
- if (currentOptString.Contains("="))
- {
- /*Put individual options into an array based on the ":" separator for processing, result is "<opt>=<value>"*/
- currentOptsArray = currentOptString.Split(':');
-
- /*iterate through the array and get <opts> and <values*/
- int loopcounter;
- int currentOptsArrayCount = currentOptsArray.Length;
- for (loopcounter = 0; loopcounter < currentOptsArrayCount; loopcounter++)
- {
- thisOpt = currentOptsArray[loopcounter];
- if (currentOptsArray[currentOptsArrayCount - 1] == string.Empty)
- break;
-
- string[] splitOptRange = thisOpt.Split('=');
- if (thisOpt != string.Empty)
- {
- if (thisOpt.Contains("="))
- {
- optName = splitOptRange[0];
- optValue = splitOptRange[1];
-
- /* Standardize the names here depending on whats in the string */
- optName = StandardizeOptName(optName);
- thisOpt = optName + "=" + optValue;
- }
- else // No value given so we use a default of "1"
- {
- optName = thisOpt;
- /* Standardize the names here depending on whats in the string */
- optName = StandardizeOptName(optName);
- thisOpt = optName + "=1";
- }
- }
-
- /* Construct New String for opts here */
- if (thisOpt == string.Empty)
- changedOptString = changedOptString + thisOpt;
- else
- {
- if (changedOptString == string.Empty)
- changedOptString = thisOpt;
- else
- changedOptString = changedOptString + ":" + thisOpt;
- }
- }
- }
-
- /* Change the option string to reflect the new standardized option string */
- if (!string.IsNullOrEmpty(changedOptString) && !rtf_x264Query.Text.Equals(changedOptString))
- rtf_x264Query.Text = changedOptString;
- }
-
- /// <summary>
- /// Take a single option and standardize it. Returns as a String
- /// Input: String. - Single X264 Option. Name only
- /// Output: String - Single X264 Option. Name only. Changed to standard format
- /// </summary>
- /// <param name="cleanOptNameString">a string of x264 options to clean</param>
- /// <returns>A string containing standardized x264 option names</returns>
- private static string StandardizeOptName(string cleanOptNameString)
- {
- string input = cleanOptNameString;
-
- /* Reference Frames */
- if (input.Equals("ref") || input.Equals("frameref"))
- cleanOptNameString = "ref";
-
- /*No Dict Decimate*/
- if (input.Equals("no-dct-decimate") || input.Equals("no_dct_decimate") || input.Equals("nodct_decimate"))
- cleanOptNameString = "no-dct-decimate";
-
- /*Subme*/
- if (input.Equals("subme"))
- cleanOptNameString = "subq";
-
- /*ME Range*/
- if (input.Equals("me-range") || input.Equals("me_range"))
- cleanOptNameString = "merange";
-
- /*B Pyramid*/
- if (input.Equals("b_pyramid"))
- cleanOptNameString = "b-pyramid";
-
- /*Direct Prediction*/
- if (input.Equals("direct-pred") || input.Equals("direct_pred"))
- cleanOptNameString = "direct";
-
- /*Deblocking*/
- if (input.Equals("filter"))
- cleanOptNameString = "deblock";
-
- /*Analysis*/
- if (input.Equals("partitions"))
- cleanOptNameString = "analyse";
-
- return cleanOptNameString;
- }
- #endregion
-
- /// <summary>
- /// Resets the GUI widgets to the contents of the option string.
- /// </summary>
- public void SetCurrentSettingsInPanel()
- {
- /* Set widgets depending on the opt string in field */
- string thisOpt; // The separated option such as "bframes=3"
- string optName; // The option name such as "bframes"
- string optValue; // The option value such as "3"
- string[] currentOptsArray;
-
- // Set currentOptString to the contents of the text box.
- string currentOptString = rtf_x264Query.Text.Replace("\n", string.Empty);
-
- /*verify there is an opt string to process */
- if (currentOptString.Contains("="))
- {
- /*Put individual options into an array based on the ":" separator for processing, result is "<opt>=<value>"*/
- currentOptsArray = currentOptString.Split(':');
-
- /*iterate through the array and get <opts> and <values*/
- int loopcounter;
- int currentOptsArrayCount = currentOptsArray.Length;
-
- /*iterate through the array and get <opts> and <values*/
- for (loopcounter = 0; loopcounter < currentOptsArrayCount; loopcounter++)
- {
- thisOpt = currentOptsArray[loopcounter];
- string[] splitOptRange = thisOpt.Split('=');
-
- if (thisOpt.Contains("="))
- {
- optName = splitOptRange[0];
- optValue = splitOptRange[1];
-
- /*Run through the available widgets for x264 opts and set them, as you add widgets,
- they need to be added here. This should be moved to its own method probably*/
- switch (optName)
- {
- case "bframes":
- drop_bFrames.SelectedItem = optValue;
- continue;
- case "ref":
- drop_refFrames.SelectedItem = optValue;
- continue;
- case "weightp":
- this.check_weightp.CheckState = optValue == "0" ? CheckState.Unchecked : CheckState.Checked;
- continue;
- case "no-dct-decimate":
- check_noDCTDecimate.CheckState = CheckState.Checked;
- continue;
- case "subq":
- int subqValue;
- if (int.TryParse(optValue, out subqValue))
- {
- drop_subpixelMotionEstimation.SelectedIndex = subqValue + 1;
- }
- continue;
- case "trellis":
- switch (optValue)
- {
- case "0":
- drop_trellis.SelectedIndex = 1;
- break;
- case "1":
- drop_trellis.SelectedIndex = 2;
- break;
- case "2":
- drop_trellis.SelectedIndex = 3;
- break;
- }
- continue;
- case "me":
- if (optValue.Equals("dia"))
- drop_MotionEstimationMethod.SelectedItem = "Diamond";
- else if (optValue.Equals("hex"))
- drop_MotionEstimationMethod.SelectedItem = "Hexagon";
- else if (optValue.Equals("umh"))
- drop_MotionEstimationMethod.SelectedItem = "Uneven Multi-Hexagon";
- else if (optValue.Equals("esa"))
- drop_MotionEstimationMethod.SelectedItem = "Exhaustive";
- else if (optValue.Equals("tesa"))
- drop_MotionEstimationMethod.SelectedItem = "Transformed Exhaustive";
- continue;
- case "merange":
- drop_MotionEstimationRange.SelectedItem = optValue;
- continue;
- case "b-adapt":
- int badapt;
- int.TryParse(optValue, out badapt);
- drop_adaptBFrames.SelectedIndex = (badapt + 1);
- continue;
- case "b-pyramid":
- switch (optValue)
- {
- case "normal":
- combo_pyrmidalBFrames.SelectedIndex = 0;
- break;
- case "strict":
- combo_pyrmidalBFrames.SelectedIndex = 2;
- break;
- case "none":
- combo_pyrmidalBFrames.SelectedIndex = 1;
- break;
- }
- continue;
- case "direct":
- if (optValue == "auto")
- optValue = "Automatic";
-
- if (optValue != string.Empty)
- {
- char[] letters = optValue.ToCharArray();
- letters[0] = Char.ToUpper(letters[0]);
- optValue = new string(letters);
- }
-
- drop_directPrediction.SelectedItem = optValue;
- continue;
- case "deblock":
- string[] splitDeblock = optValue.Split(',');
- string alphaDeblock = splitDeblock[0];
- string betaDeblock = splitDeblock[1];
-
- if (alphaDeblock.Equals("0") && betaDeblock.Replace("\n", string.Empty).Equals("0"))
- {
- drop_deblockAlpha.SelectedItem = "Default (0)";
- drop_deblockBeta.SelectedItem = "Default (0)";
- }
- else
- {
- drop_deblockAlpha.SelectedItem = !alphaDeblock.Equals("0") ? alphaDeblock : "0";
-
- drop_deblockBeta.SelectedItem = !betaDeblock.Replace("\n", string.Empty).Equals("0")
- ? betaDeblock.Replace("\n", string.Empty)
- : "0";
- }
- continue;
- case "analyse":
- if (optValue.Equals("p8x8,b8x8,i8x8,i4x4"))
- drop_analysis.SelectedItem = "Default (most)";
- if (optValue.Equals("none"))
- drop_analysis.SelectedItem = "None";
- if (optValue.Equals("i4x4,i8x8"))
- drop_analysis.SelectedItem = "Some";
- if (optValue.Equals("all"))
- drop_analysis.SelectedItem = "All";
- continue;
- case "8x8dct":
- check_8x8DCT.CheckState = optValue == "1" ? CheckState.Checked : CheckState.Unchecked;
- continue;
- case "aq-strength":
- float value;
- float.TryParse(optValue, NumberStyles.Float, CultureInfo.InvariantCulture, out value);
- int sliderValue;
- int.TryParse((value * 10).ToString(), out sliderValue);
- slider_adaptiveQuantStrength.Value = sliderValue;
- continue;
- case "cabac":
- check_Cabac.CheckState = CheckState.Unchecked;
- continue;
- case "psy-rd":
- string[] x = optValue.Split(',');
-
- double psyrd, psytrellis;
- int val, val2;
-
- // default psy-rd = 1 (10 for the slider)
- psyrd = double.TryParse(x[0], NumberStyles.Float, CultureInfo.InvariantCulture, out psyrd) ? psyrd * 10 : 10.0;
- // default psy-trellis = 0
- psytrellis = double.TryParse(x[1], NumberStyles.Float, CultureInfo.InvariantCulture, out psytrellis) ? psytrellis * 20 : 0.0;
-
- int.TryParse(psyrd.ToString(), out val);
- int.TryParse(psytrellis.ToString(), out val2);
-
- slider_psyrd.Value = val;
- slider_psytrellis.Value = val2;
- continue;
- }
- }
- }
- }
- }
-
- /// <summary>
- /// This function will update the X264 Query when one of the GUI widgets changes.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- private void OnX264WidgetChange(string sender)
- {
- Animate(sender);
- string optNameToChange = sender;
- string currentOptString = rtf_x264Query.Text;
-
- /*First, we create a pattern to check for ":"optNameToChange"=" to modify the option if the name falls after
- the first character of the opt string (hence the ":") */
- string checkOptNameToChange = ":" + optNameToChange + "=";
- string checkOptNameToChangeBegin = optNameToChange + "=";
-
- // IF the current H264 Option String Contains Multiple Items or Just 1 Item
- if ((currentOptString.Contains(checkOptNameToChange)) || (currentOptString.StartsWith(checkOptNameToChangeBegin)))
- HasOptions(currentOptString, optNameToChange);
- else // IF there is no options in the rich text box!
- HasNoOptions(optNameToChange);
- }
-
- /// <summary>
- /// Called when the current x264 option string contains multiple (or a single) item(s) in it seperated by :
- /// it updates the current option that the widget corrosponds to, if it is already in thes string.
- /// </summary>
- /// <param name="currentOptString">The Current Option String</param>
- /// <param name="optNameToChange">Name of the option to change</param>
- private void HasOptions(string currentOptString, string optNameToChange)
- {
- string thisOpt; // The separated option such as "bframes=3"
- string optName; // The option name such as "bframes"
- string[] currentOptsArray;
-
- /* Create new empty opt string*/
- string changedOptString = string.Empty;
-
- /*Put individual options into an array based on the ":" separator for processing, result is "<opt>=<value>"*/
- currentOptsArray = currentOptString.Split(':');
-
- /*iterate through the array and get <opts> and <values*/
- for (int loopcounter = 0; loopcounter < currentOptsArray.Length; loopcounter++)
- {
- thisOpt = currentOptsArray[loopcounter];
-
- if (thisOpt.Contains("="))
- {
- string[] splitOptRange = thisOpt.Split('=');
-
- optName = splitOptRange[0]; // e.g bframes
-
- /*
- * Run through the available widgets for x264 opts and set them, as you add widgets,
- * they need to be added here. This should be moved to its own method probably
- * If the optNameToChange is found, appropriately change the value or delete it if
- * "unspecified" is set.
- */
- if (optName.Equals(optNameToChange))
- {
- if (optNameToChange.Equals("deblock"))
- {
- string da = drop_deblockAlpha.SelectedItem.ToString();
- string db = drop_deblockBeta.SelectedItem.ToString();
-
- if (((da.Contains("Default")) && (db.Contains("Default"))) ||
- ((da.Contains("0")) && (db.Contains("0"))))
- {
- drop_deblockBeta.SelectedItem = "Default (0)";
- drop_deblockAlpha.SelectedItem = "Default (0)";
- thisOpt = string.Empty;
- }
- else if ((!da.Contains("Default")) && (db.Contains("Default")))
- {
- drop_deblockBeta.SelectedItem = "0";
- thisOpt = "deblock=" + da + ",0";
- }
- else if ((da.Contains("Default")) && (!db.Contains("Default")))
- {
- drop_deblockAlpha.SelectedItem = "0";
- thisOpt = "deblock=0," + db;
- }
- else if ((!da.Contains("Default")) && (!db.Contains("Default")))
- thisOpt = "deblock=" + da + "," + db;
- }
- else if (optNameToChange.Equals("aq-strength"))
- {
- if (slider_adaptiveQuantStrength.Value == 10)
- thisOpt = string.Empty;
- else
- {
- double value = slider_adaptiveQuantStrength.Value * 0.1;
- string aqs = value.ToString("f1", CultureInfo.InvariantCulture);
- thisOpt = "aq-strength=" + aqs;
- }
- }
- else if (optNameToChange.Equals("psy-rd"))
- {
- if (slider_psyrd.Value == 10 && slider_psytrellis.Value == 0)
- thisOpt = string.Empty;
- else
- {
- double psyrd = slider_psyrd.Value * 0.1;
- double psytre = slider_psytrellis.Value * 0.05;
-
- string rd = psyrd.ToString("f2", CultureInfo.InvariantCulture);
- string rt = psytre.ToString("f2", CultureInfo.InvariantCulture);
-
- thisOpt = "psy-rd=" + rd + "," + rt;
- }
- }
- else if (optNameToChange.Equals("b-pyramid"))
- {
- switch (combo_pyrmidalBFrames.SelectedIndex)
- {
- case 0: // Default
- thisOpt = string.Empty;
- break;
- case 1: // Off
- thisOpt = "b-pyramid=none";
- break;
- case 2: // Strict
- thisOpt = "b-pyramid=strict";
- break;
- }
- }
- else if (optNameToChange.Equals("no-dct-decimate"))
- thisOpt = check_noDCTDecimate.CheckState == CheckState.Checked ? "no-dct-decimate=1" : string.Empty;
- else if (optNameToChange.Equals("8x8dct"))
- thisOpt = check_8x8DCT.CheckState == CheckState.Unchecked ? "8x8dct=0" : string.Empty;
- else if (optNameToChange.Equals("cabac"))
- thisOpt = check_Cabac.CheckState == CheckState.Checked ? string.Empty : "cabac=0";
- else if (optNameToChange.Equals("weightp"))
- thisOpt = check_weightp.CheckState == CheckState.Checked ? string.Empty : "weightp=0";
- else if (optNameToChange.Equals("me"))
- {
- switch (drop_MotionEstimationMethod.SelectedIndex)
- {
- case 1:
- thisOpt = "me=dia";
- break;
-
- case 2:
- thisOpt = "me=hex";
- break;
-
- case 3:
- thisOpt = "me=umh";
- break;
-
- case 4:
- thisOpt = "me=esa";
- break;
-
- case 5:
- thisOpt = "me=tesa";
- break;
-
- default:
- thisOpt = string.Empty;
- break;
- }
- }
- else if (optNameToChange.Equals("direct"))
- {
- switch (drop_directPrediction.SelectedIndex)
- {
- case 1:
- thisOpt = "direct=none";
- break;
-
- case 2:
- thisOpt = "direct=spatial";
- break;
-
- case 3:
- thisOpt = "direct=temporal";
- break;
-
- case 4:
- thisOpt = "direct=auto";
- break;
-
- default:
- thisOpt = string.Empty;
- break;
- }
- }
- else if (optNameToChange.Equals("analyse"))
- {
- switch (drop_analysis.SelectedIndex)
- {
- case 1:
- thisOpt = "analyse=none";
- break;
-
- case 2:
- thisOpt = "analyse=i4x4,i8x8";
- break;
-
- case 3:
- thisOpt = "analyse=all";
- break;
-
- default:
- thisOpt = string.Empty;
- break;
- }
- }
- else if (optNameToChange.Equals("merange"))
- {
- thisOpt = !drop_MotionEstimationRange.SelectedItem.ToString().Contains("Default")
- ? "merange=" + drop_MotionEstimationRange.SelectedItem
- : string.Empty;
- }
- else if (optNameToChange.Equals("b-adapt"))
- {
- thisOpt = !drop_adaptBFrames.SelectedItem.ToString().Contains("Default")
- ? "b-adapt=" + (drop_adaptBFrames.SelectedIndex - 1)
- : string.Empty;
- }
- else if (optNameToChange.Equals("ref"))
- {
- thisOpt = !drop_refFrames.SelectedItem.ToString().Contains("Default")
- ? "ref=" + drop_refFrames.SelectedItem
- : string.Empty;
- }
- else if (optNameToChange.Equals("bframes"))
- {
- string value = drop_bFrames.SelectedItem.ToString();
- thisOpt = !drop_bFrames.SelectedItem.ToString().Contains("Default")
- ? "bframes=" + value
- : string.Empty;
- }
- else if (optNameToChange.Equals("subq"))
- {
- string value = drop_subpixelMotionEstimation.SelectedItem.ToString();
- string[] val = value.Split(':');
- thisOpt = !drop_subpixelMotionEstimation.SelectedItem.ToString().Contains("Default")
- ? "subq=" + val[0]
- : string.Empty;
- }
- else if (optNameToChange.Equals("trellis"))
- {
- switch (drop_trellis.SelectedIndex)
- {
- case 1: // Off
- thisOpt = "trellis=0";
- break;
- case 2: // Encode Only
- thisOpt = "trellis=1";
- break;
- case 3: // Always
- thisOpt = "trellis=2";
- break;
- default:
- thisOpt = string.Empty;
- break;
- }
- }
- }
- }
-
- /* Construct New String for opts here */
- if (!thisOpt.Equals(string.Empty))
- changedOptString = changedOptString.Equals(string.Empty) ? thisOpt : changedOptString + ":" + thisOpt;
- }
-
- /* Change the option string to reflect the new mod settings */
- rtf_x264Query.Text = changedOptString;
- }
-
- /// <summary>
- /// Add's an option to the x264 query string.
- /// Handles 2 cases. 1 Where rtf_x264Query.Text is empty, and one where there is an option with no value,
- /// e.g no-fast-pskip
- /// </summary>
- /// <param name="optNameToChange">The Option Name to Change</param>
- private void HasNoOptions(IEquatable<string> optNameToChange)
- {
- string colon = string.Empty;
- if (rtf_x264Query.Text != string.Empty)
- colon = ":";
-
- string query = rtf_x264Query.Text;
- if (optNameToChange.Equals("me"))
- {
- switch (drop_MotionEstimationMethod.SelectedIndex)
- {
- case 1:
- query = query + colon + "me=dia";
- break;
-
- case 2:
- query = query + colon + "me=hex";
- break;
-
- case 3:
- query = query + colon + "me=umh";
- break;
-
- case 4:
- query = query + colon + "me=esa";
- break;
-
- case 5:
- query = query + colon + "me=tesa";
- break;
-
- default:
- break;
- }
- }
- else if (optNameToChange.Equals("direct"))
- {
- switch (drop_directPrediction.SelectedIndex)
- {
- case 1:
- query = query + colon + "direct=none";
- break;
-
- case 2:
- query = query + colon + "direct=spatial";
- break;
-
- case 3:
- query = query + colon + "direct=temporal";
- break;
-
- case 4:
- query = query + colon + "direct=auto";
- break;
-
- default:
- break;
- }
- }
- else if (optNameToChange.Equals("analyse"))
- {
- switch (drop_analysis.SelectedIndex)
- {
- case 1:
- query = query + colon + "analyse=none";
- break;
-
- case 2:
- query = query + colon + "analyse=i4x4,i8x8";
- break;
-
- case 3:
- query = query + colon + "analyse=all";
- break;
-
- default:
- break;
- }
- }
- else if (optNameToChange.Equals("merange"))
- {
- int value = drop_MotionEstimationRange.SelectedIndex + 3;
- query = query + colon + "merange=" + value;
- }
- else if (optNameToChange.Equals("b-adapt"))
- {
- int value = drop_adaptBFrames.SelectedIndex - 1;
- query = query + colon + "b-adapt=" + value;
- }
- else if (optNameToChange.Equals("deblock"))
- {
- string da = drop_deblockAlpha.SelectedItem.ToString();
- string db = drop_deblockBeta.Text;
-
- if (((da.Contains("Default")) && (db.Contains("Default"))) || ((da.Contains("0")) && (db.Contains("0"))))
- {
- drop_deblockBeta.SelectedItem = "Default (0)";
- drop_deblockAlpha.SelectedItem = "Default (0)";
- }
- else
- {
- if (db.Contains("Default"))
- db = "0";
-
- if (da.Contains("Default"))
- da = "0";
-
- query = query + colon + "deblock=" + da + "," + db;
- }
- }
- else if (optNameToChange.Equals("aq-strength"))
- {
- if (slider_adaptiveQuantStrength.Value == 10)
- query = string.Empty;
- else
- {
- double value = slider_adaptiveQuantStrength.Value * 0.1;
- string aqs = value.ToString("f1", CultureInfo.InvariantCulture);
- query += colon + "aq-strength=" + aqs;
- }
- }
- else if (optNameToChange.Equals("psy-rd"))
- {
- if (slider_psyrd.Value == 10 && slider_psytrellis.Value == 0)
- query += string.Empty;
- else
- {
- double psyrd = slider_psyrd.Value * 0.1;
- double psytre = slider_psytrellis.Value * 0.05;
-
- string rd = psyrd.ToString("f1", CultureInfo.InvariantCulture);
- string rt = psytre.ToString("f2", CultureInfo.InvariantCulture);
-
- query += colon + "psy-rd=" + rd + "," + rt;
- }
- }
- else if (optNameToChange.Equals("b-pyramid"))
- {
- switch (combo_pyrmidalBFrames.SelectedIndex)
- {
- case 0:
- break;
- case 1:
- query = query + colon + "b-pyramid=none";
- break;
- case 2:
- query = query + colon + "b-pyramid=strict";
- break;
- }
- }
- else if (optNameToChange.Equals("no-dct-decimate"))
- {
- if (check_noDCTDecimate.CheckState == CheckState.Checked)
- query = query + colon + "no-dct-decimate=1";
- }
- else if (optNameToChange.Equals("8x8dct"))
- {
- if (check_8x8DCT.CheckState == CheckState.Unchecked)
- query = query + colon + "8x8dct=0";
- }
- else if (optNameToChange.Equals("cabac"))
- {
- if (check_Cabac.CheckState != CheckState.Checked)
- query = query + colon + "cabac=0";
- }
- else if (optNameToChange.Equals("weightp"))
- {
- if (check_weightp.CheckState == CheckState.Unchecked)
- query = query + colon + "weightp=0";
- }
- else if (optNameToChange.Equals("ref"))
- {
- if (!drop_refFrames.SelectedItem.ToString().Contains("Default"))
- query = query + colon + "ref=" + drop_refFrames.SelectedItem;
- }
- else if (optNameToChange.Equals("bframes"))
- {
- string value = drop_bFrames.SelectedItem.ToString();
- if (!drop_bFrames.SelectedItem.ToString().Contains("Default"))
- query = query + colon + "bframes=" + value;
- }
- else if (optNameToChange.Equals("subq"))
- {
- string value = drop_subpixelMotionEstimation.SelectedItem.ToString();
- if (!drop_subpixelMotionEstimation.SelectedItem.ToString().Contains("Default"))
- {
- string[] val = value.Split(':');
- query = query + colon + "subq=" + val[0];
- }
- }
- else if (optNameToChange.Equals("trellis"))
- {
- switch (drop_trellis.SelectedIndex)
- {
- case 1: // Off
- query = query + colon + "trellis=0";
- break;
- case 2: // Encode Only
- query = query + colon + "trellis=1";
- break;
- case 3: // Always
- query = query + colon + "trellis=2";
- break;
- default:
- break;
- }
- }
-
- rtf_x264Query.Text = query;
- }
-
- /// <summary>
- /// Shows and hides controls based on the values of other controls.
- /// </summary>
- /// <param name="sender">The Sender</param>
- private void Animate(string sender)
- {
- /* Lots of situations to cover.
- - B-frames (when 0 turn of b-frame specific stuff, when < 2 disable b-pyramid)
- - CABAC (when 0 turn off trellis and psy-trel
- - subme (if under 6, turn off psy-rd and psy-trel)
- - trellis (if 0, turn off psy-trel)
- */
-
- switch (sender)
- {
- case "bframes":
- if (drop_bFrames.SelectedIndex == 1)
- {
- /* If the b-frame widget is at 1, the user has chosen
- not to use b-frames at all. So disable the options
- that can only be used when b-frames are enabled. */
- combo_pyrmidalBFrames.Visible = false;
- lbl_prymidalBframes.Visible = false;
- drop_directPrediction.Visible = false;
- lbl_direct_prediction.Visible = false;
-
- combo_pyrmidalBFrames.SelectedIndex = 0;
- drop_directPrediction.SelectedIndex = 0;
-
- drop_adaptBFrames.Visible = false;
- lbl_adaptBFrames.Visible = false;
- drop_adaptBFrames.SelectedIndex = 0;
- }
- else if (drop_bFrames.SelectedIndex == 2)
- {
- /* Only 1 b-frame? Disable b-pyramid. */
- combo_pyrmidalBFrames.Visible = false;
- lbl_prymidalBframes.Visible = false;
- combo_pyrmidalBFrames.SelectedIndex = 0;
-
- drop_directPrediction.Visible = true;
- lbl_direct_prediction.Visible = true;
-
- drop_adaptBFrames.Visible = true;
- lbl_adaptBFrames.Visible = true;
- }
- else
- {
- combo_pyrmidalBFrames.Visible = true;
- lbl_prymidalBframes.Visible = true;
- drop_directPrediction.Visible = true;
- lbl_direct_prediction.Visible = true;
-
- drop_adaptBFrames.Visible = true;
- lbl_adaptBFrames.Visible = true;
- }
- break;
- case "me": // Motion Estimation
- if (drop_MotionEstimationMethod.SelectedIndex < 3)
- {
- drop_MotionEstimationRange.Visible = false;
- lbl_merange.Visible = false;
- drop_MotionEstimationRange.SelectedIndex = 0;
- }
- else
- {
- drop_MotionEstimationRange.Visible = true;
- lbl_merange.Visible = true;
- }
- break;
- case "subq": // subme
- if (drop_subpixelMotionEstimation.SelectedIndex != 0 &&
- drop_subpixelMotionEstimation.SelectedIndex < 7)
- {
- slider_psyrd.Visible = false;
- slider_psyrd.Value = 10;
- lbl_psyrd.Visible = false;
-
- slider_psytrellis.Visible = false;
- slider_psytrellis.Value = 0;
- lbl_psytrellis.Visible = false;
- }
- else
- {
- slider_psyrd.Visible = true;
- lbl_psyrd.Visible = true;
-
- if (drop_trellis.SelectedIndex >= 2 && slider_psytrellis.Visible == false)
- {
- slider_psytrellis.Visible = true;
- lbl_psytrellis.Visible = true;
- }
- }
- break;
- case "trellis": // subme
- if (drop_trellis.SelectedIndex > 0 && drop_trellis.SelectedIndex < 2)
- {
- slider_psytrellis.Visible = false;
- slider_psytrellis.Value = 0;
- lbl_psytrellis.Visible = false;
- }
- else
- {
- if ((drop_subpixelMotionEstimation.SelectedIndex == 0 || drop_subpixelMotionEstimation.SelectedIndex >= 7) && slider_psytrellis.Visible == false)
- {
- slider_psytrellis.Visible = true;
- lbl_psytrellis.Visible = true;
- }
- }
- break;
- }
- }
-
- /* UI Events */
-
- private void widgetControlChanged(object sender, EventArgs e)
- {
- Control changedControlName = (Control) sender;
- string controlName = string.Empty;
-
- switch (changedControlName.Name.Trim())
- {
- case "drop_refFrames":
- controlName = "ref";
- break;
- case "drop_bFrames":
- controlName = "bframes";
- break;
- case "drop_directPrediction":
- controlName = "direct";
- break;
- case "check_weightp":
- controlName = "weightp";
- break;
- case "combo_pyrmidalBFrames":
- controlName = "b-pyramid";
- break;
- case "drop_MotionEstimationMethod":
- controlName = "me";
- break;
- case "drop_MotionEstimationRange":
- controlName = "merange";
- break;
- case "drop_subpixelMotionEstimation":
- controlName = "subq";
- break;
- case "drop_analysis":
- controlName = "analyse";
- break;
- case "check_8x8DCT":
- controlName = "8x8dct";
- break;
- case "drop_deblockAlpha":
- controlName = "deblock";
- break;
- case "drop_deblockBeta":
- controlName = "deblock";
- break;
- case "drop_trellis":
- controlName = "trellis";
- break;
- case "check_noDCTDecimate":
- controlName = "no-dct-decimate";
- break;
- case "check_Cabac":
- controlName = "cabac";
- break;
- case "slider_psyrd":
- controlName = "psy-rd";
- break;
- case "slider_psytrellis":
- controlName = "psy-rd";
- break;
- case "slider_adaptiveQuantStrength":
- controlName = "aq-strength";
- break;
- case "drop_adaptBFrames":
- controlName = "b-adapt";
- break;
- }
- OnX264WidgetChange(controlName);
- }
-
- private void rtf_x264Query_TextChanged(object sender, EventArgs e)
- {
- if (rtf_x264Query.Text.EndsWith("\n"))
- {
- string query = rtf_x264Query.Text.Replace("\n", string.Empty);
- Reset2Defaults();
- rtf_x264Query.Text = query;
- this.StandardizeOptString();
- this.SetCurrentSettingsInPanel();
-
- if (rtf_x264Query.Text == string.Empty)
- Reset2Defaults();
- }
- }
-
- private void btn_reset_Click(object sender, EventArgs e)
- {
- rtf_x264Query.Text = string.Empty;
- Reset2Defaults();
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Controls/x264Panel.resx b/win/CS/Controls/x264Panel.resx
deleted file mode 100644
index 41e3ec5c7..000000000
--- a/win/CS/Controls/x264Panel.resx
+++ /dev/null
@@ -1,241 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <data name="slider_psyrd.ToolTip" xml:space="preserve">
- <value>Psychovisual Rate Distortion Optimization sure is a mouthful, isn't it? Basically, it means x264 tries to retain detail, for better quality to the human eye,
-as opposed to trying to maximize quality the way a computer understands it, through signal-to-noise ratios that have trouble telling apart fine detail and noise.</value>
- </data>
- <data name="drop_adaptBFrames.ToolTip" xml:space="preserve">
- <value>x264 has a variety of algorithms to decide when to use B-frames and how many to use.
-
-Fast mode takes roughly the same amount of time no matter how many B-frames you specify. However, while fast, its decisions are often suboptimal.
-
-Optimal mode gets slower as the maximum number of B-Frames increases, but makes much more accurate decisions, especially when used with B-pyramid.</value>
- </data>
- <data name="check_Cabac.ToolTip" xml:space="preserve">
- <value>After the encoder has done its work, it has a bunch of data that needs to be compressed losslessly, similar to ZIP or RAR.
-H.264 provides two options for this: CAVLC and CABAC. CABAC decodes a lot slower but compresses significantly better (10-30%), especially at lower bitrates.
-If you're looking to minimize CPU requirements for video playback, disable this option.
-Baseline profile, as required for iPods and similar devices, requires CABAC to be disabled.</value>
- </data>
- <data name="check_noDCTDecimate.ToolTip" xml:space="preserve">
- <value>x264 normally zeroes out nearly-empty data blocks to save bits to be better used for some other purpose in the video.
-However, this can sometimes have slight negative effects on retention of subtle grain and dither.
-Don't touch this unless you're having banding issues or other such cases where you are having trouble keeping fine noise.</value>
- </data>
- <data name="drop_trellis.ToolTip" xml:space="preserve">
- <value>Trellis fine-tunes the rounding of transform coefficients to squeeze out 3-5% more compression at the cost of some speed.
-"Always" uses trellis not only during the main encoding process, but also during analysis, which improves compression even
-more, albeit at great speed cost.
-
-Trellis costs more speed at higher bitrates</value>
- </data>
- <data name="drop_deblockBeta.ToolTip" xml:space="preserve">
- <value>H.264 has a built-in deblocking filter that smooths out blocking artifacts after decoding each frame. This not only improves visual quality, but also helps compression significantly.
-The deblocking filter takes a lot of CPU power, so if you're looking to minimize CPU requirements for video playback, disable it.
-
-The deblocking filter has two adjustable parameters, \"strength\" and \"threshold\".
-The former controls how strong (or weak) the deblocker is, while the latter controls how many (or few) edges it applies to.
-Lower values mean less deblocking, higher values mean more deblocking. The default is 0 (normal strength) for both parameters.</value>
- </data>
- <data name="drop_deblockAlpha.ToolTip" xml:space="preserve">
- <value>H.264 has a built-in deblocking filter that smooths out blocking artifacts after decoding each frame. This not only improves visual quality, but also helps compression significantly.
-The deblocking filter takes a lot of CPU power, so if you're looking to minimize CPU requirements for video playback, disable it.
-
-The deblocking filter has two adjustable parameters, \"strength\" and \"threshold\".
-The former controls how strong (or weak) the deblocker is, while the latter controls how many (or few) edges it applies to.
-Lower values mean less deblocking, higher values mean more deblocking. The default is 0 (normal strength) for both parameters.</value>
- </data>
- <data name="check_8x8DCT.ToolTip" xml:space="preserve">
- <value>The 8x8 transform is the single most useful feature of x264 in terms of compression-per-speed.
-It improves compression by at least 5% at a very small speed cost and may provide an unusually high visual quality benefit compared to its compression gain.
-However, it requires High Profile, which many devices may not support.</value>
- </data>
- <data name="drop_analysis.ToolTip" xml:space="preserve">
- <value>Mode decision picks from a variety of options to make its decision: this option chooses what options those are.
-Fewer partitions to check means faster encoding, at the cost of worse decisions, since the best option might have been one that was turned off.</value>
- </data>
- <data name="drop_subpixelMotionEstimation.ToolTip" xml:space="preserve">
- <value>This setting controls both subpixel-precision motion estimation and mode decision methods.
-
-Subpixel motion estimation is used for refining motion estimates beyond mere pixel accuracy, improving compression.
-
-Mode decision is the method used to choose how to encode each block of the frame: a very important decision.
-
-SAD is the fastest method, followed by SATD, RD, RD refinement, and the slowest, QPRD.
-6 or higher is strongly recommended: Psy-RD, a very powerful psy optimization that helps retain detail, requires RD.
-10, the most powerful and slowest option, requires trellis=2.</value>
- </data>
- <data name="drop_MotionEstimationRange.ToolTip" xml:space="preserve">
- <value>This is the distance x264 searches from its best guess at the motion of a block in order to try to find its actual motion.
-Doesn't apply to Diamond or Hexagon search options.
-The default is fine for most content, but extremely high motion video, especially at HD resolutions, may benefit from higher ranges, albeit at a high speed cost.</value>
- </data>
- <data name="drop_MotionEstimationMethod.ToolTip" xml:space="preserve">
- <value>Controls the motion estimation method. Motion estimation is how the encoder estimates how each block of pixels in a frame has moved.
-A better motion search method improves compression at the cost of speed.
-
-Diamond: performs an extremely fast and simple search using a diamond pattern.
-
-Hexagon: performs a somewhat more effective but slightly slower search using a hexagon pattern.
-
-Uneven Multi-Hex: performs a very wide search using a variety of patterns, more accurately capturing complex motion.
-
-Exhaustive: performs a \"dumb\" search of every pixel in a wide area. Significantly slower for only a small compression gain.
-
-Transformed Exhaustive: Like exhaustive, but makes even more accurate decisions. Accordingly, somewhat slower, also for only a small improvement.</value>
- </data>
- <data name="drop_directPrediction.ToolTip" xml:space="preserve">
- <value>H.264 allows for two different prediction modes, spatial and temporal, in B-frames.
-
-Spatial, the default, is almost always better, but temporal is sometimes useful too.
-
-x264 can, at the cost of a small amount of speed (and accordingly for a small compression gain), adaptively select which is better for each particular frame.</value>
- </data>
- <data name="drop_bFrames.ToolTip" xml:space="preserve">
- <value>Sane values are ~2-5.
-This specifies the maximum number of sequential B-frames that the encoder can use.
- Large numbers generally won't help significantly unless Adaptive B-frames is set to Optimal.
-Cel-animated source material and B-pyramid also significantly increase the usefulness of larger values.
-Baseline profile, as required for iPods and similar devices, requires B-frames to be set to 0 (off).</value>
- </data>
- <data name="drop_refFrames.ToolTip" xml:space="preserve">
- <value>Sane values are ~1-6.
-The more you add, the better the compression, but the slower the encode.
-Cel animation tends to benefit from more reference frames a lot more than film content.
-Note that many hardware devices have limitations on the number of supported reference frames, so if you're encoding for a handheld or standalone player,
-don't touch this unless you're absolutely sure you know what you're doing!</value>
- </data>
- <data name="check_weightp.ToolTip" xml:space="preserve">
- <value>Performs extra analysis to decide upon weighting parameters for each frame.
-This improves overall compression slightly and improves the quality of fades greatly.
-Baseline profile, as required for iPods and similar devices, requires weighted P-frame prediction to be disabled.
-Note that some devices and players, even those that support Main Profile,
-may have problems with Weighted P-frame prediction: the Apple TV is completely incompatible with it, for example.</value>
- </data>
- <data name="combo_pyrmidalBFrames.ToolTip" xml:space="preserve">
- <value>B-pyramid improves compression by creating a pyramidal structure (hence the name) of B-frames, allowing B-frames to
-reference each other to improve compression.
-
-Requires Max B-frames greater than 1; optimal adaptive B-frames is strongly recommended for full compression benefit.</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/DEPRECATED WARNING.txt b/win/CS/DEPRECATED WARNING.txt
deleted file mode 100644
index 4c6f0494e..000000000
--- a/win/CS/DEPRECATED WARNING.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-!!!! WARNING !!!!
-The Winforms GUI is being retired. It is currently being shipped as a fallback option only until the WPF UI becomes stable.
-All development should be done on the WPF UI! \ No newline at end of file
diff --git a/win/CS/Functions/Main.cs b/win/CS/Functions/Main.cs
deleted file mode 100644
index 9744d6aa7..000000000
--- a/win/CS/Functions/Main.cs
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Main.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Functions
-{
- using System;
- using System.Collections.Generic;
- using System.Diagnostics;
- using System.IO;
- using System.Linq;
- using System.Security.Cryptography;
- using System.Text.RegularExpressions;
- using System.Windows.Forms;
- using System.Xml.Serialization;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Exceptions;
- using HandBrake.ApplicationServices.Extensions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
-
- using Handbrake.ToolWindows;
-
- /// <summary>
- /// Useful functions which various screens can use.
- /// </summary>
- public static class Main
- {
- /// <summary>
- /// The XML Serializer
- /// </summary>
- private static readonly XmlSerializer Ser = new XmlSerializer(typeof(List<QueueTask>));
-
- /// <summary>
- /// The User Setting Service
- /// </summary>
- private static readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Set's up the DataGridView on the Chapters tab (frmMain)
- /// </summary>
- /// <param name="title">
- /// The currently selected title object.
- /// This will be used to get chapter names if they exist.
- /// </param>
- /// <param name="dataChpt">
- /// The DataGridView Control
- /// </param>
- /// <param name="chapterEnd">
- /// The chapter End.
- /// </param>
- /// <returns>
- /// The chapter naming.
- /// </returns>
- public static DataGridView ChapterNaming(Title title, DataGridView dataChpt, string chapterEnd)
- {
- int i = 0, finish = 0;
-
- if (chapterEnd != "Auto")
- int.TryParse(chapterEnd, out finish);
-
- while (i < finish)
- {
- string chapterName = string.Empty;
- if (title != null)
- {
- if (title.Chapters.Count <= i && title.Chapters[i] != null)
- {
- chapterName = title.Chapters[i].ChapterName;
- }
- }
-
- int n = dataChpt.Rows.Add();
- dataChpt.Rows[n].Cells[0].Value = i + 1;
- dataChpt.Rows[n].Cells[1].Value = string.IsNullOrEmpty(chapterName) ? "Chapter " + (i + 1) : chapterName;
- dataChpt.Rows[n].Cells[0].ValueType = typeof(int);
- dataChpt.Rows[n].Cells[1].ValueType = typeof(string);
- i++;
- }
-
- return dataChpt;
- }
-
- /// <summary>
- /// Import a CSV file which contains Chapter Names
- /// </summary>
- /// <param name="dataChpt">
- /// The DataGridView Control
- /// </param>
- /// <param name="filename">
- /// The filepath and name
- /// </param>
- /// <returns>A Populated DataGridView</returns>
- public static DataGridView ImportChapterNames(DataGridView dataChpt, string filename)
- {
- IDictionary<int, string> chapterMap = new Dictionary<int, string>();
- try
- {
- using (StreamReader sr = new StreamReader(filename))
- {
- string csv = sr.ReadLine();
- while (csv != null)
- {
- if (csv.Trim() != string.Empty)
- {
- csv = csv.Replace("\\,", "<!comma!>");
- string[] contents = csv.Split(',');
- int chapter;
- int.TryParse(contents[0], out chapter);
- chapterMap.Add(chapter, contents[1].Replace("<!comma!>", ","));
- }
- csv = sr.ReadLine();
- }
- }
- }
- catch (Exception)
- {
- return null;
- }
-
- foreach (DataGridViewRow item in dataChpt.Rows)
- {
- string name;
- chapterMap.TryGetValue((int)item.Cells[0].Value, out name);
- item.Cells[1].Value = name ?? "Chapter " + item.Cells[0].Value;
- }
-
- return dataChpt;
- }
-
- /// <summary>
- /// Create a CSV file with the data from the Main Window Chapters tab
- /// </summary>
- /// <param name="mainWindow">Main Window</param>
- /// <param name="filePathName">Path to save the csv file</param>
- /// <returns>True if successful </returns>
- public static void SaveChapterMarkersToCsv(frmMain mainWindow, string filePathName)
- {
- try
- {
- string csv = string.Empty;
-
- foreach (DataGridViewRow row in mainWindow.data_chpt.Rows)
- {
- csv += row.Cells[0].Value.ToString();
- csv += ",";
- csv += row.Cells[1].Value.ToString().Replace(",", "\\,");
- csv += Environment.NewLine;
- }
- StreamWriter file = new StreamWriter(filePathName);
- file.Write(csv);
- file.Close();
- file.Dispose();
- }
- catch (Exception exc)
- {
- throw new GeneralApplicationException("Unable to save the chapter information to csv.", "The file may already be in use by another application.", exc);
- }
- }
-
- /// <summary>
- /// Function which generates the filename and path automatically based on
- /// the Source Name, DVD title and DVD Chapters
- /// </summary>
- /// <param name="mainWindow">
- /// The main Window.
- /// </param>
- /// <returns>
- /// The Generated FileName
- /// </returns>
- public static string AutoName(frmMain mainWindow)
- {
- string autoNamePath = string.Empty;
- if (mainWindow.drp_dvdtitle.Text != "Automatic")
- {
- // Get the Source Name and remove any invalid characters
- string sourceName = Path.GetInvalidFileNameChars().Aggregate(mainWindow.SourceName, (current, character) => current.Replace(character.ToString(), string.Empty));
-
- // Remove Underscores
- if (UserSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNameRemoveUnderscore))
- sourceName = sourceName.Replace("_", " ");
-
- // Switch to "Title Case"
- if (UserSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNameTitleCase))
- sourceName = sourceName.ToTitleCase();
-
- // Get the Selected Title Number
- string[] titlesplit = mainWindow.drp_dvdtitle.Text.Split(' ');
- string dvdTitle = titlesplit[0].Replace("Automatic", string.Empty);
-
- // Get the Chapter Start and Chapter End Numbers
- string chapterStart = mainWindow.drop_chapterStart.Text.Replace("Auto", string.Empty);
- string chapterFinish = mainWindow.drop_chapterFinish.Text.Replace("Auto", string.Empty);
- string combinedChapterTag = chapterStart;
- if (chapterFinish != chapterStart && chapterFinish != string.Empty)
- combinedChapterTag = chapterStart + "-" + chapterFinish;
-
- /*
- * File Name
- */
- string destinationFilename;
- if (UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNameFormat) != string.Empty)
- {
- destinationFilename = UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNameFormat);
- destinationFilename = destinationFilename.Replace("{source}", sourceName)
- .Replace("{title}", dvdTitle)
- .Replace("{chapters}", combinedChapterTag)
- .Replace("{date}", DateTime.Now.Date.ToShortDateString().Replace('/', '-'));
- }
- else
- destinationFilename = sourceName + "_T" + dvdTitle + "_C" + combinedChapterTag;
-
- /*
- * File Extension
- */
- if (mainWindow.drop_format.SelectedIndex == 0)
- {
- switch (UserSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v))
- {
- case 0: // Automatic
- destinationFilename += mainWindow.Check_ChapterMarkers.Checked ||
- mainWindow.AudioSettings.RequiresM4V() || mainWindow.Subtitles.RequiresM4V()
- ? ".m4v"
- : ".mp4";
- break;
- case 1: // Always MP4
- destinationFilename += ".mp4";
- break;
- case 2: // Always M4V
- destinationFilename += ".m4v";
- break;
- }
- }
- else if (mainWindow.drop_format.SelectedIndex == 1)
- destinationFilename += ".mkv";
-
- /*
- * File Destination Path
- */
-
- // If there is an auto name path, use it...
- if (UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Trim().StartsWith("{source_path}") && !string.IsNullOrEmpty(mainWindow.sourcePath))
- {
- string savedPath = UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Trim().Replace("{source_path}\\", string.Empty).Replace("{source_path}", string.Empty);
-
- string directory = Directory.Exists(mainWindow.sourcePath)
- ? mainWindow.sourcePath
- : Path.GetDirectoryName(mainWindow.sourcePath);
- string requestedPath = Path.Combine(directory, savedPath);
-
- autoNamePath = Path.Combine(requestedPath, destinationFilename);
- if (autoNamePath == mainWindow.sourcePath)
- {
- // Append out_ to files that already exist or is the source file
- autoNamePath = Path.Combine(Path.GetDirectoryName(mainWindow.sourcePath), "output_" + destinationFilename);
- }
- }
- else if (UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Contains("{source_folder_name}") && !string.IsNullOrEmpty(mainWindow.sourcePath))
- {
- // Second Case: We have a Path, with "{source_folder}" in it, therefore we need to replace it with the folder name from the source.
- string path = Path.GetDirectoryName(mainWindow.sourcePath);
- if (!string.IsNullOrEmpty(path))
- {
- string[] filesArray = path.Split(Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
- string sourceFolder = filesArray[filesArray.Length - 1];
-
- autoNamePath = Path.Combine(UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Replace("{source_folder_name}", sourceFolder), destinationFilename);
- }
- }
- else if (!mainWindow.text_destination.Text.Contains(Path.DirectorySeparatorChar.ToString()))
- {
- // Third case: If the destination box doesn't already contain a path, make one.
- if (UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Trim() != string.Empty &&
- UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath).Trim() != "Click 'Browse' to set the default location")
- {
- autoNamePath = Path.Combine(UserSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath), destinationFilename);
- }
- else // ...otherwise, output to the source directory
- autoNamePath = null;
- }
- else // Otherwise, use the path that is already there.
- {
- // Use the path and change the file extension to match the previous destination
- autoNamePath = Path.Combine(Path.GetDirectoryName(mainWindow.text_destination.Text), destinationFilename);
- }
- }
-
- return autoNamePath;
- }
-
- /// <summary>
- /// Get's HandBrakes version data from the CLI.
- /// </summary>
- public static void SetCliVersionData()
- {
- string line;
-
- // 0 = SVN Build / Version
- // 1 = Build Date
-
- // Get the SHA1 Hash of HandBrakeCLI
- byte[] hash;
- using (Stream stream = File.OpenRead(Path.Combine(Application.StartupPath, "HandBrakeCLI.exe")))
- {
- hash = SHA1.Create().ComputeHash(stream);
- }
- string base64Hash = Convert.ToBase64String(hash);
-
- // Compare the hash with the last known hash. If it's the same, return.
- if (UserSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeExeHash) == base64Hash)
- {
- return;
- }
-
- // It's not the same, so start the CLI to get it's version data.
- Process cliProcess = new Process();
- ProcessStartInfo handBrakeCli = new ProcessStartInfo("HandBrakeCLI.exe", " -u -v0")
- {
- UseShellExecute = false,
- RedirectStandardError = true,
- RedirectStandardOutput = true,
- CreateNoWindow = true
- };
- cliProcess.StartInfo = handBrakeCli;
-
- try
- {
- cliProcess.Start();
-
- // Retrieve standard output and report back to parent thread until the process is complete
- TextReader stdOutput = cliProcess.StandardError;
-
- while (!cliProcess.HasExited)
- {
- line = stdOutput.ReadLine() ?? string.Empty;
- Match m = Regex.Match(line, @"HandBrake ([svnM0-9.]*) \(([0-9]*)\)");
- Match platform = Regex.Match(line, @"- ([A-Za-z0-9\s ]*) -");
-
- if (m.Success)
- {
- string version = m.Groups[1].Success ? m.Groups[1].Value : string.Empty;
- string build = m.Groups[2].Success ? m.Groups[2].Value : string.Empty;
-
- int buildValue;
- int.TryParse(build, out buildValue);
-
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeBuild, buildValue);
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeVersion, version);
- }
-
- if (platform.Success)
- {
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakePlatform, platform.Value.Replace("-", string.Empty).Trim());
- }
-
- if (cliProcess.TotalProcessorTime.Seconds > 10) // Don't wait longer than 10 seconds.
- {
- Process cli = Process.GetProcessById(cliProcess.Id);
- if (!cli.HasExited)
- {
- cli.Kill();
- }
- }
- }
-
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeExeHash, base64Hash);
- }
- catch (Exception e)
- {
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeBuild, 0);
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakePlatform, string.Empty);
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeVersion, string.Empty);
- UserSettingService.SetUserSetting(ASUserSettingConstants.HandBrakeExeHash, string.Empty);
-
- ExceptionWindow window = new ExceptionWindow();
- window.Setup("Unable to Initialise HandBrake \nThis error is unrecoverable. Maybe try restarting.", e.ToString());
- window.ShowDialog();
-
- Application.Exit();
- }
- }
-
- /// <summary>
- /// Check if the queue recovery file contains records.
- /// If it does, it means the last queue did not complete before HandBrake closed.
- /// So, return a boolean if true.
- /// </summary>
- /// <returns>
- /// True if there is a queue to recover.
- /// </returns>
- public static List<string> CheckQueueRecovery()
- {
- try
- {
- string tempPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), @"HandBrake\");
- List<string> queueFiles = new List<string>();
- List<string> removeFiles = new List<string>();
-
- DirectoryInfo info = new DirectoryInfo(tempPath);
- IEnumerable<FileInfo> logFiles = info.GetFiles("*.xml").Where(f => f.Name.StartsWith("hb_queue_recovery"));
- foreach (FileInfo file in logFiles)
- {
- using (FileStream strm = new FileStream(file.FullName, FileMode.Open, FileAccess.Read))
- {
- List<QueueTask> list = Ser.Deserialize(strm) as List<QueueTask>;
- if (list != null && list.Count == 0)
- {
- removeFiles.Add(file.FullName);
- }
-
- if (list != null && list.Count != 0)
- {
- List<QueueTask> tasks = list.Where(l => l.Status != QueueItemStatus.Completed).ToList();
- if (tasks.Count != 0)
- {
- queueFiles.Add(file.Name);
- }
- }
- }
- }
-
- // Cleanup old/unused queue files for now.
- if (!GeneralUtilities.IsMultiInstance)
- {
- foreach (string file in removeFiles)
- {
- File.Delete(file);
- }
- }
-
- return queueFiles;
- }
- catch (Exception exc)
- {
- return new List<string>(); // Keep quiet about the error.
- }
- }
-
- /// <summary>
- /// Recover a queue from file.
- /// </summary>
- /// <param name="encodeQueue">
- /// The encode Queue.
- /// </param>
- public static void RecoverQueue(IQueueProcessor encodeQueue)
- {
- string appDataPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), @"HandBrake\");
-
- DialogResult result = DialogResult.None;
- List<string> queueFiles = CheckQueueRecovery();
- if (queueFiles.Count == 1)
- {
- result = MessageBox.Show(
- "HandBrake has detected unfinished items on the queue from the last time the application was launched. Would you like to recover these?",
- "Queue Recovery Possible", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
- }
- else if (queueFiles.Count > 1)
- {
- result = MessageBox.Show(
- "HandBrake has detected multiple unfinished queue files. These will be from multiple instances of HandBrake running. Would you like to recover all unfinished jobs?",
- "Queue Recovery Possible", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
- }
-
- if (result == DialogResult.Yes)
- {
- foreach (string file in queueFiles)
- {
- encodeQueue.QueueManager.RestoreQueue(appDataPath + file); // Start Recovery
- }
- }
- else
- {
- if (GeneralUtilities.IsMultiInstance) return; // Don't tamper with the files if we are multi instance
-
- foreach (string file in queueFiles)
- {
- if (File.Exists(Path.Combine(appDataPath, file)))
- File.Delete(Path.Combine(appDataPath, file));
- }
- }
- }
-
- /// <summary>
- /// Get The Source from the CLI Query
- /// </summary>
- /// <param name="query">Full CLI Query</param>
- /// <returns>The Source Path</returns>
- public static string GetSourceFromQuery(string query)
- {
- int startIndex = query.IndexOf("-i \"");
- if (startIndex != -1)
- {
- string input = query.Substring(startIndex).Replace("-i \"", string.Empty).Trim();
-
- int closeIndex = input.IndexOf('"');
-
- return closeIndex == -1 ? "Unknown" : input.Substring(0, closeIndex);
- }
-
- return "Unknown";
- }
-
- /// <summary>
- /// Get the Destination from the CLI Query
- /// </summary>
- /// <param name="query">Full CLI Query</param>
- /// <returns>The Destination path</returns>
- public static string GetDestinationFromQuery(string query)
- {
- int startIndex = query.IndexOf("-o \"");
- if (startIndex != -1)
- {
- string output = query.Substring(startIndex).Replace("-o \"", string.Empty).Trim();
-
- int closeIndex = output.IndexOf('"');
-
- return closeIndex == -1 ? "Unknown" : output.Substring(0, closeIndex);
- }
-
- return "Unknown";
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Functions/PresetLoader.cs b/win/CS/Functions/PresetLoader.cs
deleted file mode 100644
index 6aacfd9c5..000000000
--- a/win/CS/Functions/PresetLoader.cs
+++ /dev/null
@@ -1,349 +0,0 @@
-/* PresetLoader.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Functions
-{
- using System.Drawing;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
- using HandBrake.Interop.Model.Encoding;
-
- using OutputFormat = HandBrake.ApplicationServices.Model.Encoding.OutputFormat;
-
- /// <summary>
- /// Load a preset into the main Window
- /// </summary>
- public class PresetLoader
- {
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private static readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Load an Encode task as a Preset
- /// </summary>
- /// <param name="mainWindow">
- /// The main window.
- /// </param>
- /// <param name="encodeTask">
- /// The encode task.
- /// </param>
- public static void LoadPreset(frmMain mainWindow, EncodeTask encodeTask)
- {
- Preset preset = new Preset { Name = "Unknown", Task = encodeTask };
- LoadPreset(mainWindow, preset);
- }
-
- /// <summary>
- /// This function takes in a Query which has been parsed by QueryParser and
- /// set's all the GUI widgets correctly.
- /// </summary>
- /// <param name="mainWindow">
- /// FrmMain window
- /// </param>
- /// <param name="preset">
- /// The preset.
- /// </param>
- public static void LoadPreset(frmMain mainWindow, Preset preset)
- {
- // Send the query from the file to the Query Parser class
- EncodeTask presetQuery = preset.Task ?? QueryParserUtility.Parse(preset.Query);
- if (preset.Task == null)
- {
- preset.Task = presetQuery;
- }
-
- #region Source
-
- // Reset some vaules to stock first to prevent errors.
- mainWindow.check_iPodAtom.CheckState = CheckState.Unchecked;
-
- // Now load all the new settings onto the main window
- string destination = mainWindow.text_destination.Text;
- destination = destination.Replace(".mp4", "." + presetQuery.OutputFormat);
- destination = destination.Replace(".m4v", "." + presetQuery.OutputFormat);
- destination = destination.Replace(".mkv", "." + presetQuery.OutputFormat);
- mainWindow.text_destination.Text = destination;
-
- #endregion
-
- #region Destination and Output Settings
-
- if (presetQuery.OutputFormat == OutputFormat.Mp4 || presetQuery.OutputFormat == OutputFormat.M4V)
- {
- if (mainWindow.drop_format.SelectedIndex == 0)
- {
- mainWindow.SetExtension(".mp4");
- }
- else
- {
- mainWindow.drop_format.SelectedIndex = 0;
- }
- }
- else if (presetQuery.OutputFormat == OutputFormat.Mkv)
- {
- if (mainWindow.drop_format.SelectedIndex == 1)
- {
- mainWindow.SetExtension(".mkv");
- }
- else
- {
- mainWindow.drop_format.SelectedIndex = 1;
- }
- }
-
- mainWindow.check_iPodAtom.CheckState = presetQuery.IPod5GSupport ? CheckState.Checked : CheckState.Unchecked;
-
- mainWindow.check_optimiseMP4.CheckState = presetQuery.OptimizeMP4
- ? CheckState.Checked
- : CheckState.Unchecked;
-
- mainWindow.check_largeFile.CheckState = presetQuery.LargeFile ? CheckState.Checked : CheckState.Unchecked;
-
- mainWindow.setContainerOpts(); // select the container options according to the selected format
-
- #endregion
-
- #region Picture
-
- mainWindow.PictureSettings.check_autoCrop.Checked = true;
- if (preset.CropSettings && presetQuery.HasCropping)
- {
- mainWindow.PictureSettings.check_customCrop.Checked = true;
- mainWindow.PictureSettings.crop_top.Value = presetQuery.Cropping.Top;
- mainWindow.PictureSettings.crop_bottom.Value = presetQuery.Cropping.Bottom;
- mainWindow.PictureSettings.crop_left.Value = presetQuery.Cropping.Left;
- mainWindow.PictureSettings.crop_right.Value = presetQuery.Cropping.Right;
- }
-
- // Set the anamorphic mode 0,1,2,3
-
- switch (presetQuery.Anamorphic)
- {
- case Anamorphic.None:
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex = 0;
- break;
- case Anamorphic.Strict:
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex = 1;
- break;
- case Anamorphic.Loose:
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex = 2;
- break;
- case Anamorphic.Custom:
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex = 3;
- break;
- }
-
- // Keep Aspect Ration Anamorphic Setting.
- mainWindow.PictureSettings.check_KeepAR.CheckState = presetQuery.KeepDisplayAspect
- ? CheckState.Checked
- : CheckState.Unchecked;
-
- bool sizeSet = false;
- // Set the Width and height as Required.
- if (presetQuery.Width.HasValue)
- {
- mainWindow.PictureSettings.text_width.Value = presetQuery.Width.Value;
- sizeSet = true;
- }
-
- if (presetQuery.Height.HasValue)
- {
- mainWindow.PictureSettings.text_height.Value = presetQuery.Height.Value;
- sizeSet = true;
- }
-
- // Max Width/Height override Width/Height
- if (presetQuery.MaxWidth.HasValue)
- {
- mainWindow.PictureSettings.text_width.Value = presetQuery.MaxWidth.Value;
- sizeSet = true;
- }
-
- if (presetQuery.MaxHeight.HasValue)
- {
- mainWindow.PictureSettings.text_height.Value = presetQuery.MaxHeight.Value;
- sizeSet = true;
- }
-
- mainWindow.PictureSettings.SizeSet = sizeSet;
- mainWindow.PictureSettings.PresetMaximumResolution = new Size(
- presetQuery.MaxWidth.HasValue ? presetQuery.MaxWidth.Value : 0,
- presetQuery.MaxHeight.HasValue ? presetQuery.MaxHeight.Value : 0);
-
- // Case where both height and max height are 0 - For built-in presets
- if (presetQuery.MaxHeight == 0 && presetQuery.Height == 0)
- {
- mainWindow.PictureSettings.text_height.Value = 0;
- }
-
- if (presetQuery.MaxWidth == 0 && presetQuery.Width == 0)
- {
- if (mainWindow.selectedTitle != null && mainWindow.selectedTitle.Resolution.Width != 0)
- {
- mainWindow.PictureSettings.text_width.Value = mainWindow.selectedTitle.Resolution.Width;
- }
- }
-
- // Aspect Ratio for non anamorphic sources
- if (presetQuery.Anamorphic == Anamorphic.None)
- {
- mainWindow.PictureSettings.check_KeepAR.CheckState = presetQuery.Height == 0
- ? CheckState.Checked
- : CheckState.Unchecked;
- }
-
- // Custom Anamorphic Controls
- mainWindow.PictureSettings.updownDisplayWidth.Text = presetQuery.DisplayWidth.ToString();
- mainWindow.PictureSettings.updownParHeight.Text = presetQuery.PixelAspectY.ToString();
- mainWindow.PictureSettings.updownParWidth.Text = presetQuery.PixelAspectX.ToString();
- mainWindow.PictureSettings.drp_modulus.SelectedItem = presetQuery.Modulus.ToString();
-
- #endregion
-
- #region Filters
-
- mainWindow.Filters.SetDecomb(presetQuery.Decomb, presetQuery.CustomDecomb);
- mainWindow.Filters.SetDeInterlace(presetQuery.Deinterlace, presetQuery.CustomDeinterlace);
- mainWindow.Filters.SetDeNoise(presetQuery.Denoise, presetQuery.CustomDenoise);
- mainWindow.Filters.SetDeTelecine(presetQuery.Detelecine, presetQuery.CustomDetelecine);
- mainWindow.Filters.SetDeBlock(presetQuery.Deblock);
- mainWindow.Filters.SetGrayScale(presetQuery.Grayscale);
-
- #endregion
-
- #region Video
-
- switch (presetQuery.VideoEncoder)
- {
- case VideoEncoder.X264:
- mainWindow.drp_videoEncoder.SelectedIndex = 0;
- break;
- case VideoEncoder.FFMpeg:
- mainWindow.drp_videoEncoder.SelectedIndex = 1;
- break;
- case VideoEncoder.FFMpeg2:
- mainWindow.drp_videoEncoder.SelectedIndex = 2;
- break;
- case VideoEncoder.Theora:
- mainWindow.drp_videoEncoder.SelectedIndex = 3;
- break;
- }
-
- // Quality
- if (presetQuery.VideoEncodeRateType == VideoEncodeRateType.ConstantQuality)
- {
- mainWindow.radio_cq.Checked = true;
- mainWindow.slider_videoQuality.Value = QualityToSliderValue(presetQuery.VideoEncoder, presetQuery.Quality);
- mainWindow.check_2PassEncode.CheckState = CheckState.Unchecked;
- mainWindow.check_turbo.CheckState = CheckState.Unchecked;
- }
- else if (presetQuery.VideoEncodeRateType == VideoEncodeRateType.AverageBitrate)
- {
- mainWindow.radio_avgBitrate.Checked = true;
- mainWindow.text_bitrate.Text = presetQuery.VideoBitrate.ToString();
- mainWindow.check_2PassEncode.CheckState = presetQuery.TwoPass ? CheckState.Checked : CheckState.Unchecked;
- mainWindow.check_turbo.CheckState = presetQuery.TurboFirstPass ? CheckState.Checked : CheckState.Unchecked;
- }
-
- if (presetQuery.Framerate != null)
- {
- mainWindow.drp_videoFramerate.Text = presetQuery.Framerate.ToString();
- }
- else
- {
- mainWindow.drp_videoFramerate.SelectedIndex = 0;
- }
-
-
- if (presetQuery.Framerate != null)
- {
- // Constant or Peak Framerate for a set framerate.
- if (presetQuery.FramerateMode == FramerateMode.CFR)
- mainWindow.radio_constantFramerate.Checked = true;
- else
- mainWindow.radio_peakAndVariable.Checked = true;
- }
- else
- {
- // Constant or Variable Framerate for Same as Source.
- if (presetQuery.FramerateMode == FramerateMode.CFR)
- mainWindow.radio_constantFramerate.Checked = true;
- else
- mainWindow.radio_peakAndVariable.Checked = true;
- }
-
- #endregion
-
- #region Chapter Markers
-
- if (presetQuery.IncludeChapterMarkers)
- {
- mainWindow.Check_ChapterMarkers.CheckState = CheckState.Checked;
- mainWindow.Check_ChapterMarkers.Enabled = true;
- }
- else
- {
- mainWindow.Check_ChapterMarkers.CheckState = CheckState.Unchecked;
- }
-
- #endregion
-
- #region Audio
-
- mainWindow.AudioSettings.LoadTracks(preset);
-
- #endregion
-
- #region Other
-
- mainWindow.x264Panel.X264Query = presetQuery.AdvancedEncoderOptions;
-
- // Set the preset name
- mainWindow.labelPreset.Text = "Output Settings (Preset: " + preset.Name + ")";
-
- #endregion
- }
-
- /// <summary>
- /// Convert a Quality Value to a position value for the Video Quality slider
- /// </summary>
- /// <param name="videoEncoder">The selected video encoder</param>
- /// <param name="value">The Quality value</param>
- /// <returns>The position on the video quality slider</returns>
- private static int QualityToSliderValue(VideoEncoder videoEncoder, double? value)
- {
- if (!value.HasValue)
- {
- // Default to a sensible level.
- return 20;
- }
-
- int sliderValue = 0;
- switch (videoEncoder)
- {
- case VideoEncoder.FFMpeg:
- case VideoEncoder.FFMpeg2:
- sliderValue = 32 - (int)value;
- break;
- case VideoEncoder.X264:
- double cqStep = UserSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- sliderValue = (int)((51.0 / cqStep) - (value / cqStep));
- break;
- case VideoEncoder.Theora:
- sliderValue = (int)value;
- break;
- }
-
- return sliderValue;
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/Functions/QueryGenerator.cs b/win/CS/Functions/QueryGenerator.cs
deleted file mode 100644
index edcdc1002..000000000
--- a/win/CS/Functions/QueryGenerator.cs
+++ /dev/null
@@ -1,873 +0,0 @@
-/* QueryGenerator.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Functions
-{
- using System;
- using System.Collections.ObjectModel;
- using System.Globalization;
- using System.IO;
- using System.Linq;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Functions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.Interop.Model;
- using HandBrake.Interop.Model.Encoding;
-
- using Handbrake.Model;
-
- using OutputFormat = HandBrake.ApplicationServices.Model.Encoding.OutputFormat;
-
- /// <summary>
- /// Generate a CLI Query for HandBrakeCLI
- /// </summary>
- public class QueryGenerator
- {
- /// <summary>
- /// Backing field for the user setting service.
- /// </summary>
- private static readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// The Culture
- /// </summary>
- private static readonly CultureInfo Culture = new CultureInfo("en-US", false);
-
- /// <summary>
- /// Generate a CLI Query (Usable by the preset system)
- /// </summary>
- /// <param name="mainWindow">
- /// The main window.
- /// </param>
- /// <param name="mode">
- /// The mode.
- /// </param>
- /// <param name="filters">
- /// The filters.
- /// </param>
- /// <param name="width">
- /// The width.
- /// </param>
- /// <param name="height">
- /// The height.
- /// </param>
- /// <returns>
- /// A CLI Query as a string.
- /// </returns>
- public static string GenerateQueryForPreset(frmMain mainWindow, QueryPictureSettingsMode mode, bool filters, int width, int height)
- {
- string query = string.Empty;
-
- query += GenerateTabbedComponentsQuery(mainWindow, filters, mode, width, height);
-
- return query;
- }
-
- /// <summary>
- /// Generate a CLI Query for a preview.
- /// </summary>
- /// <param name="mainWindow">
- /// The main window.
- /// </param>
- /// <param name="duration">
- /// The duration.
- /// </param>
- /// <param name="preview">
- /// The preview.
- /// </param>
- /// <returns>
- /// Preview CLI Query
- /// </returns>
- public static string GeneratePreviewQuery(frmMain mainWindow, int duration, string preview)
- {
- string query = string.Empty;
-
- query += SourceQuery(mainWindow, 3, duration, preview);
-
- query += DestinationQuery(mainWindow, QueryEncodeMode.Preview);
-
- query += GenerateTabbedComponentsQuery(mainWindow, true, QueryPictureSettingsMode.UserInterfaceSettings, 0, 0);
-
- return query;
- }
-
- /// <summary>
- /// Generate a QueueTask ready for Queuing.
- /// </summary>
- /// <param name="mainWindow">
- /// The main window
- /// </param>
- /// <returns>
- /// A QueueTask object.
- /// </returns>
- public static QueueTask GenerateFullQuery(frmMain mainWindow)
- {
- // Create the CLI Query
- string query = string.Empty;
- query += SourceQuery(mainWindow, mainWindow.drop_mode.SelectedIndex, 0, null);
- query += DestinationQuery(mainWindow, QueryEncodeMode.Standard);
- query += GenerateTabbedComponentsQuery(mainWindow, true, QueryPictureSettingsMode.UserInterfaceSettings, 0, 0);
-
- // Create the Queue Task and setup the EncodeTask model object.
-
-
- Preset preset = null;
- if (mainWindow.treeView_presets.SelectedNode != null)
- {
- preset = mainWindow.treeView_presets.SelectedNode.Tag as Preset;
- }
-
- bool isCustom = true;
- if (preset != null && preset.IsBuildIn)
- {
- isCustom = false;
- }
-
- EncodeTask task = CreateEncodeTaskObject(mainWindow);
- QueueTask queueTask = new QueueTask(query)
- {
- CustomQuery = (mainWindow.rtf_query.Text != string.Empty) || isCustom,
- Task = task,
- Query = query,
- };
-
- return queueTask;
- }
-
- #region Individual Query Sections
-
- private static string GenerateTabbedComponentsQuery(frmMain mainWindow, bool filters, QueryPictureSettingsMode mode, int width, int height)
- {
- string query = string.Empty;
-
- // Output Settings
- query += OutputSettingsQuery(mainWindow);
-
- // Filters Panel
- if (filters)
- query += FiltersQuery(mainWindow);
-
- // Picture Settings
- query += PictureSettingsQuery(mainWindow, mode, width, height);
-
- // Video Settings
- query += VideoSettingsQuery(mainWindow);
-
- // Audio Settings
- query += AudioSettingsQuery(mainWindow);
-
- // Subtitles Panel
- query += mainWindow.Subtitles.GetCliQuery;
-
- // Chapter Markers
- query += ChapterMarkersQuery(mainWindow);
-
- // X264 Panel
- query += X264Query(mainWindow);
-
- // Extra Settings
- query += ExtraSettings();
-
- return query;
- }
-
- private static string SourceQuery(frmMain mainWindow, int mode, int duration, string preview)
- {
- string query = string.Empty;
- string sourcePath = string.Empty;
-
- sourcePath = mainWindow.selectedTitle != null && File.Exists(mainWindow.selectedTitle.SourceName)
- ? mainWindow.selectedTitle.SourceName.Trim()
- : mainWindow.sourcePath;
-
- if (!string.IsNullOrEmpty(mainWindow.sourcePath) && mainWindow.sourcePath.Trim() != "Select \"Source\" to continue")
- {
- if (mainWindow.sourcePath.EndsWith("\\"))
- {
- query = " -i " + sourcePath;
- }
- else
- {
- query = " -i " + '"' + sourcePath + '"';
- }
- }
-
- if (mainWindow.drp_dvdtitle.Text != string.Empty)
- {
- string[] titleInfo = mainWindow.drp_dvdtitle.Text.Split(' ');
- query += " -t " + titleInfo[0];
- }
-
- if (!UserSettingService.GetUserSetting<bool>(ASUserSettingConstants.DisableLibDvdNav) && mainWindow.drop_angle.Items.Count != 0)
- query += " --angle " + mainWindow.drop_angle.SelectedItem;
-
- // Decide what part of the video we want to encode.
- switch (mode)
- {
- case 0: // Chapters
- if (mainWindow.drop_chapterFinish.Text == mainWindow.drop_chapterStart.Text &&
- mainWindow.drop_chapterStart.Text != string.Empty)
- query += string.Format(" -c {0}", mainWindow.drop_chapterStart.Text);
- else if (mainWindow.drop_chapterStart.Text != string.Empty &&
- mainWindow.drop_chapterFinish.Text != string.Empty)
- query += string.Format(" -c {0}-{1}", mainWindow.drop_chapterStart.Text,
- mainWindow.drop_chapterFinish.Text);
- break;
- case 1: // Seconds
- int start, end;
- int.TryParse(mainWindow.drop_chapterStart.Text, out start);
- int.TryParse(mainWindow.drop_chapterFinish.Text, out end);
- int calculatedDuration = end - start;
-
- query += string.Format(" --start-at duration:{0} --stop-at duration:{1}", mainWindow.drop_chapterStart.Text, calculatedDuration);
- break;
- case 2: // Frames
- int.TryParse(mainWindow.drop_chapterStart.Text, out start);
- int.TryParse(mainWindow.drop_chapterFinish.Text, out end);
- calculatedDuration = end - start;
-
- query += string.Format(" --start-at frame:{0} --stop-at frame:{1}", mainWindow.drop_chapterStart.Text, calculatedDuration);
- break;
- case 3: // Preview
- query += " --start-at-preview " + preview;
- query += " --stop-at duration:" + duration + " ";
- break;
- default:
- break;
- }
-
- return query;
- }
-
- private static string DestinationQuery(frmMain mainWindow, QueryEncodeMode mode)
- {
- string query = string.Empty;
-
- if (string.IsNullOrEmpty(mainWindow.text_destination.Text))
- {
- return string.Empty;
- }
-
- if (mode != QueryEncodeMode.Preview)
- query += string.Format(" -o \"{0}\" ", mainWindow.text_destination.Text);
- else
- {
- if (mainWindow.text_destination.Text != string.Empty)
- query += string.Format(" -o \"{0}\" ", mainWindow.text_destination.Text.Replace(".m", "_sample.m"));
- }
-
- return query;
- }
-
- private static string OutputSettingsQuery(frmMain mainWindow)
- {
- string query = string.Empty;
-
- query += " -f " + mainWindow.drop_format.Text.ToLower().Replace(" file", string.Empty);
-
- // These are output settings features
- if (mainWindow.check_largeFile.Checked)
- query += " -4 ";
-
- if (mainWindow.check_iPodAtom.Checked)
- query += " -I ";
-
- if (mainWindow.check_optimiseMP4.Checked)
- query += " -O ";
-
- return query;
- }
-
- private static string PictureSettingsQuery(frmMain mainWindow, QueryPictureSettingsMode mode, int width, int height)
- {
- string query = string.Empty;
-
- if (mode == QueryPictureSettingsMode.UserInterfaceSettings)
- {
- if (mainWindow.PictureSettings.text_width.Value != 0)
- if (mainWindow.PictureSettings.drp_anamorphic.SelectedIndex != 1) // Prevent usage for strict anamorphic
- query += " -w " + mainWindow.PictureSettings.text_width.Text;
-
- if (mainWindow.PictureSettings.text_height.Value != 0 &&
- mainWindow.PictureSettings.text_height.Text != string.Empty)
- if (mainWindow.PictureSettings.drp_anamorphic.SelectedIndex == 0 ||
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex == 3) // Prevent usage for strict anamorphic
- query += " -l " + mainWindow.PictureSettings.text_height.Text;
- }
- else if (mode == QueryPictureSettingsMode.Custom) // For Add Preset Only.
- {
- query += " -X " + width;
- query += " -Y " + height;
- }
- else if (mode == QueryPictureSettingsMode.SourceMaximum) // For Add Preset Only.
- {
- if (mainWindow.PictureSettings.text_width.Value != 0)
- if (mainWindow.PictureSettings.drp_anamorphic.SelectedIndex != 1) // Prevent usage for strict anamorphic
- query += " -X " + mainWindow.PictureSettings.text_width.Text;
-
- if (mainWindow.PictureSettings.text_height.Value != 0 &&
- mainWindow.PictureSettings.text_height.Text != string.Empty)
- if (mainWindow.PictureSettings.drp_anamorphic.SelectedIndex == 0 ||
- mainWindow.PictureSettings.drp_anamorphic.SelectedIndex == 3) // Prevent usage for strict anamorphic
- query += " -Y " + mainWindow.PictureSettings.text_height.Text;
- }
-
- string cropTop = mainWindow.PictureSettings.crop_top.Text;
- string cropBottom = mainWindow.PictureSettings.crop_bottom.Text;
- string cropLeft = mainWindow.PictureSettings.crop_left.Text;
- string cropRight = mainWindow.PictureSettings.crop_right.Text;
-
- if (mainWindow.PictureSettings.check_customCrop.Checked && mode != QueryPictureSettingsMode.None)
- {
- if (mainWindow.PictureSettings.crop_top.Text == string.Empty)
- cropTop = "0";
- if (mainWindow.PictureSettings.crop_bottom.Text == string.Empty)
- cropBottom = "0";
- if (mainWindow.PictureSettings.crop_left.Text == string.Empty)
- cropLeft = "0";
- if (mainWindow.PictureSettings.crop_right.Text == string.Empty)
- cropRight = "0";
-
- query += " --crop " + cropTop + ":" + cropBottom + ":" + cropLeft + ":" + cropRight;
- }
-
- switch (mainWindow.PictureSettings.drp_anamorphic.SelectedIndex)
- {
- case 0:
- if (mainWindow.PictureSettings.drp_modulus.SelectedIndex != 0)
- query += " --modulus " + mainWindow.PictureSettings.drp_modulus.SelectedItem;
- break;
- case 1:
- query += " --strict-anamorphic ";
- break;
- case 2:
- query += " --loose-anamorphic ";
- if (mainWindow.PictureSettings.drp_modulus.SelectedIndex != 0)
- query += " --modulus " + mainWindow.PictureSettings.drp_modulus.SelectedItem;
- break;
- case 3:
- query += " --custom-anamorphic ";
-
- if (mainWindow.PictureSettings.drp_modulus.SelectedIndex != 0)
- query += " --modulus " + mainWindow.PictureSettings.drp_modulus.SelectedItem;
-
- if (mainWindow.PictureSettings.check_KeepAR.Checked)
- query += " --display-width " + mainWindow.PictureSettings.updownDisplayWidth.Text + " ";
-
- if (mainWindow.PictureSettings.check_KeepAR.Checked)
- query += " --keep-display-aspect ";
-
- if (!mainWindow.PictureSettings.check_KeepAR.Checked)
- if (mainWindow.PictureSettings.updownParWidth.Text != string.Empty &&
- mainWindow.PictureSettings.updownParHeight.Text != string.Empty)
- query += " --pixel-aspect " + mainWindow.PictureSettings.updownParWidth.Text + ":" +
- mainWindow.PictureSettings.updownParHeight.Text + " ";
- break;
- }
-
- return query;
- }
-
- private static string FiltersQuery(frmMain mainWindow)
- {
- return mainWindow.Filters.GetCliQuery;
- }
-
- private static string VideoSettingsQuery(frmMain mainWindow)
- {
- string query = string.Empty;
-
- switch (mainWindow.drp_videoEncoder.Text)
- {
- case "MPEG-4 (FFmpeg)":
- query += " -e ffmpeg4";
- break;
- case "MPEG-2 (FFmpeg)":
- query += " -e ffmpeg2";
- break;
- case "H.264 (x264)":
- query += " -e x264";
- break;
- case "VP3 (Theora)":
- query += " -e theora";
- break;
- default:
- query += " -e x264";
- break;
- }
-
- // Video Settings
- if (mainWindow.radio_avgBitrate.Checked)
- query += " -b " + mainWindow.text_bitrate.Text;
-
- // Video Quality Setting
- if (mainWindow.radio_cq.Checked)
- {
- double cqStep = UserSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- double value;
- switch (mainWindow.drp_videoEncoder.Text)
- {
- case "MPEG-4 (FFmpeg)":
- case "MPEG-2 (FFmpeg)":
- value = 31 - (mainWindow.slider_videoQuality.Value - 1);
- query += " -q " + value.ToString(CultureInfo.InvariantCulture);
- break;
- case "H.264 (x264)":
- value = 51 - (mainWindow.slider_videoQuality.Value * cqStep);
- value = Math.Round(value, 2);
- query += " -q " + value.ToString(CultureInfo.InvariantCulture);
- break;
- case "VP3 (Theora)":
- value = mainWindow.slider_videoQuality.Value;
- query += " -q " + value.ToString(CultureInfo.InvariantCulture);
- break;
- }
- }
-
- if (mainWindow.check_2PassEncode.Checked)
- query += " -2 ";
-
- if (mainWindow.check_turbo.Checked)
- query += " -T ";
-
- if (mainWindow.drp_videoFramerate.Text != "Same as source")
- query += " -r " + mainWindow.drp_videoFramerate.Text;
-
- if (mainWindow.drp_videoFramerate.SelectedIndex == 0)
- {
- // If we use Same as Source, we can either output CFR or VFR
- query += mainWindow.radio_constantFramerate.Checked ? " --cfr " : " --vfr ";
- }
- else
- {
- // We have a hard framerate set, so we can either be Constant or peak (VFR) framerate
- query += mainWindow.radio_constantFramerate.Checked ? " --cfr " : " --pfr ";
- }
-
- return query;
- }
-
- private static string AudioSettingsQuery(frmMain mainWindow)
- {
- // Queries for each option
- string tracks = string.Empty;
- string encoders = string.Empty;
- string mixdowns = string.Empty;
- string samplerates = string.Empty;
- string bitrates = string.Empty;
- string drvValues = string.Empty;
- string gainValues = string.Empty;
- string trackNames = string.Empty;
-
- // If we have no audio tracks, set the query to none
- if (mainWindow.AudioSettings.AudioTracks.ToList().Count == 0)
- {
- return " -a none";
- }
-
- // Generate the sub queries
- foreach (AudioTrack audioTrack in mainWindow.AudioSettings.AudioTracks)
- {
- // Audio Track (-a)
- string track = audioTrack.Track.HasValue ? audioTrack.Track.ToString() : "1"; // Default to "1"
- tracks += string.IsNullOrEmpty(tracks) ? track : string.Format(",{0}", track);
-
- // Audio Encoder (-E)
- encoders += string.IsNullOrEmpty(encoders)
- ? Converters.GetCliAudioEncoder(audioTrack.Encoder)
- : string.Format(",{0}", Converters.GetCliAudioEncoder(audioTrack.Encoder));
-
- // Audio Mixdowns (-6)
- mixdowns += string.IsNullOrEmpty(mixdowns)
- ? Converters.GetCliMixDown(audioTrack.MixDown)
- : string.Format(",{0}", Converters.GetCliMixDown(audioTrack.MixDown));
-
- // Audio Samplerates (-R)
- string rate = audioTrack.SampleRate == 0 ? "Auto" : audioTrack.SampleRate.ToString(Culture); // Default to "Auto"
- samplerates += string.IsNullOrEmpty(samplerates) ? rate : string.Format(",{0}", rate);
-
- // Audio Bitrates (-B)
- bitrates += string.IsNullOrEmpty(bitrates)
- ? audioTrack.Bitrate.ToString(Culture)
- : string.Format(",{0}", audioTrack.Bitrate);
-
- // Audio DRC Values
- drvValues += string.IsNullOrEmpty(drvValues) ? audioTrack.DRC.ToString(Culture) : string.Format(",{0}", audioTrack.DRC.ToString(Culture));
-
- // Audio Gain Control
- gainValues += string.IsNullOrEmpty(gainValues) ? audioTrack.Gain.ToString(Culture) : string.Format(",{0}", audioTrack.Gain.ToString(Culture));
-
-
- trackNames += string.IsNullOrEmpty(trackNames)
- ? string.IsNullOrEmpty(audioTrack.TrackName) ? "\"\"" : string.Format("\"{0}\"", audioTrack.TrackName.Trim())
- : string.IsNullOrEmpty(audioTrack.TrackName) ? ",\"\"" : string.Format(",\"{0}\"", audioTrack.TrackName.Trim());
- }
-
- string audioQuery = string.Format(
- " -a {0} -E {1} -B {2} -6 {3} -R {4} -D {5} --gain={6}",
- tracks,
- encoders,
- bitrates,
- mixdowns,
- samplerates,
- drvValues,
- gainValues);
-
- if (!string.IsNullOrEmpty(trackNames.Trim()) && !string.IsNullOrEmpty(trackNames.Replace("\"", string.Empty).Replace(",", string.Empty).Trim()))
- {
- audioQuery += string.Format(" --aname={0}", trackNames);
- }
-
- // Passthru Settings
- if (mainWindow.AudioSettings.PassthruSettings != null)
- {
- string fallbackEncoders = string.Empty;
-
- if (mainWindow.AudioSettings.PassthruSettings.AudioAllowAACPass)
- {
- fallbackEncoders += "aac";
- }
-
- if (mainWindow.AudioSettings.PassthruSettings.AudioAllowAC3Pass)
- {
- fallbackEncoders += string.IsNullOrEmpty(fallbackEncoders) ? "ac3" : ",ac3";
- }
-
- if (mainWindow.AudioSettings.PassthruSettings.AudioAllowDTSHDPass)
- {
- fallbackEncoders += string.IsNullOrEmpty(fallbackEncoders) ? "dtshd" : ",dtshd";
- }
-
- if (mainWindow.AudioSettings.PassthruSettings.AudioAllowDTSPass)
- {
- fallbackEncoders += string.IsNullOrEmpty(fallbackEncoders) ? "dts" : ",dts";
- }
-
- if (mainWindow.AudioSettings.PassthruSettings.AudioAllowMP3Pass)
- {
- fallbackEncoders += string.IsNullOrEmpty(fallbackEncoders) ? "mp3" : ",mp3";
- }
-
- if (!string.IsNullOrEmpty(fallbackEncoders))
- {
- audioQuery += string.Format(" --audio-copy-mask {0}", fallbackEncoders);
- }
- else
- {
- audioQuery += " --audio-copy-mask none";
- }
-
- audioQuery += string.Format(" --audio-fallback {0}", Converters.GetCliAudioEncoder(mainWindow.AudioSettings.PassthruSettings.AudioEncoderFallback));
- }
-
- return audioQuery;
- }
-
- private static string ChapterMarkersQuery(frmMain mainWindow)
- {
- string query = string.Empty;
-
- // Attach Source name and dvd title to the start of the chapters.csv filename.
- // This is for the queue. It allows different chapter name files for each title.
- string[] destNameSplit = mainWindow.text_destination.Text.Split('\\');
- string destName = destNameSplit[destNameSplit.Length - 1];
- destName = destName.Replace("\"", string.Empty);
- destName = destName.Replace(".mp4", string.Empty).Replace(".m4v", string.Empty).Replace(".mkv", string.Empty);
-
- string sourceTitle = mainWindow.drp_dvdtitle.Text;
- string[] titlesplit = sourceTitle.Split(' ');
- sourceTitle = titlesplit[0];
-
- if (mainWindow.Check_ChapterMarkers.Checked && mainWindow.Check_ChapterMarkers.Enabled)
- {
- if (destName.Trim() != String.Empty)
- {
- string path = sourceTitle != "Automatic"
- ? Path.Combine(Path.GetTempPath(), destName + "-" + sourceTitle + "-chapters.csv")
- : Path.Combine(Path.GetTempPath(), destName + "-chapters.csv");
-
- if (ChapterCsvSave(mainWindow, path) == false)
- query += " -m ";
- else
- query += " --markers=" + "\"" + path + "\"";
- }
- else
- query += " -m";
- }
-
- return query;
- }
-
- private static string X264Query(frmMain mainWindow)
- {
- string advancedOptions = string.Empty;
- if (mainWindow.drp_videoEncoder.SelectedItem.ToString().Contains("FFmpeg"))
- {
- advancedOptions = string.IsNullOrEmpty(mainWindow.advancedEncoderOpts.AdavancedQuery.Trim())
- ? string.Empty
- : mainWindow.advancedEncoderOpts.AdavancedQuery;
- }
- else if (mainWindow.drp_videoEncoder.SelectedItem.ToString().Contains("x264"))
- {
- advancedOptions = string.IsNullOrEmpty(mainWindow.x264Panel.X264Query.Trim())
- ? string.Empty
- : mainWindow.x264Panel.X264Query;
- }
-
- return !string.IsNullOrEmpty(advancedOptions) ? " -x " + advancedOptions : string.Empty;
- }
-
- private static string ExtraSettings()
- {
- string query = string.Empty;
-
- // Verbosity Level
- query += " --verbose=" + UserSettingService.GetUserSetting<int>(ASUserSettingConstants.Verbosity);
-
- // LibDVDNav
- if (UserSettingService.GetUserSetting<bool>(ASUserSettingConstants.DisableLibDvdNav))
- query += " --no-dvdnav";
-
-
- if (UserSettingService.GetUserSetting<int>(ASUserSettingConstants.PreviewScanCount) != 10)
- {
- query += string.Format(
- " --previews {0} ", UserSettingService.GetUserSetting<int>(ASUserSettingConstants.PreviewScanCount));
- }
-
- return query;
- }
-
- #endregion
-
- #region EncodeTask
-
- /// <summary>
- /// Create the EncodeTask model from the currently selected control options.
- /// </summary>
- /// <param name="frmMain">
- /// The frm main.
- /// </param>
- /// <returns>
- /// An EncodeTask Object
- /// </returns>
- private static EncodeTask CreateEncodeTaskObject(frmMain frmMain)
- {
- EncodeTask task = new EncodeTask();
-
- // Source, Destination and Output Settings
- task.Destination = frmMain.text_destination.Text;
- string sourcePath = frmMain.selectedTitle != null && File.Exists(frmMain.selectedTitle.SourceName)
- ? frmMain.selectedTitle.SourceName.Trim()
- : frmMain.sourcePath;
- if (!string.IsNullOrEmpty(sourcePath) && sourcePath.Trim() != "Select \"Source\" to continue")
- {
- task.Source = sourcePath;
- }
-
- if (frmMain.drp_dvdtitle.Text != string.Empty)
- {
- string[] titleInfo = frmMain.drp_dvdtitle.Text.Split(' ');
- int title;
- int.TryParse(titleInfo[0], out title);
- task.Title = title;
- }
-
-
- int start, end, angle;
- int.TryParse(frmMain.drop_chapterStart.Text, out start);
- int.TryParse(frmMain.drop_chapterFinish.Text, out end);
- int.TryParse(frmMain.drop_angle.Text, out angle);
- task.StartPoint = start;
- task.EndPoint = end;
- task.Angle = angle;
-
- switch (frmMain.drop_mode.SelectedIndex)
- {
- case 0: // Chapters
- task.PointToPointMode = PointToPointMode.Chapters;
- break;
- case 1: // Seconds
- task.PointToPointMode = PointToPointMode.Seconds;
- break;
- case 2: // Frames
- task.PointToPointMode = PointToPointMode.Frames;
- break;
- default:
- break;
- }
-
- task.OutputFormat = EnumHelper<OutputFormat>.GetValue(frmMain.drop_format.Text.Replace(" File", string.Empty).Trim());
- task.LargeFile = frmMain.check_largeFile.Checked;
- task.IPod5GSupport = frmMain.check_largeFile.Checked;
- task.OptimizeMP4 = frmMain.check_optimiseMP4.Checked;
-
- // Picture Settings
- int width, height;
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out width);
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out height);
- task.Width = width;
- task.Height = height;
- int top, bottom, left, right;
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out top);
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out bottom);
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out left);
- int.TryParse(frmMain.PictureSettings.crop_top.Text, out right);
- task.Cropping = new Cropping(top, bottom, left, right);
-
- int modulus, displayWidth, parX, parY;
- int.TryParse(frmMain.PictureSettings.drp_modulus.SelectedItem.ToString(), out modulus);
- int.TryParse(frmMain.PictureSettings.updownDisplayWidth.Text, out displayWidth);
- int.TryParse(frmMain.PictureSettings.updownParWidth.Text, out parX);
- int.TryParse(frmMain.PictureSettings.updownParHeight.Text, out parY);
- switch (frmMain.PictureSettings.drp_anamorphic.SelectedIndex)
- {
- case 0:
- task.Anamorphic = Anamorphic.None;
- task.Modulus = modulus;
- break;
- case 1:
- task.Anamorphic = Anamorphic.Strict;
- break;
- case 2:
- task.Anamorphic = Anamorphic.Loose;
- task.Modulus = modulus;
- break;
- case 3:
- task.Anamorphic = Anamorphic.Custom;
- task.Modulus = modulus;
- task.DisplayWidth = displayWidth;
- task.KeepDisplayAspect = frmMain.PictureSettings.check_KeepAR.Checked;
- task.PixelAspectX = parX;
- task.PixelAspectY = parY;
- break;
- }
-
- // Filter Settings
- task.Deblock = frmMain.Filters.Deblock;
- task.Decomb = frmMain.Filters.Decomb;
- task.CustomDecomb = frmMain.Filters.CustomDecombValue;
- task.Deinterlace = frmMain.Filters.Deinterlace;
- task.CustomDeinterlace = frmMain.Filters.CustomDeInterlaceValue;
- task.Deblock = frmMain.Filters.Deblock;
- task.Denoise = frmMain.Filters.Denoise;
- task.CustomDenoise = frmMain.Filters.CustomDenoiseValue;
- task.Detelecine = frmMain.Filters.Detelecine;
- task.CustomDetelecine = frmMain.Filters.CustomDeTelecineValue;
- task.Grayscale = frmMain.Filters.GrayScale;
-
- // Video Settings
- task.VideoEncoder = EnumHelper<VideoEncoder>.GetValue(frmMain.drp_videoEncoder.Text);
- int videoBitrate;
- int.TryParse(frmMain.text_bitrate.Text, out videoBitrate);
- task.VideoBitrate = videoBitrate;
- task.VideoEncodeRateType = frmMain.radio_cq.Checked
- ? VideoEncodeRateType.ConstantQuality
- : VideoEncodeRateType.AverageBitrate;
- task.TwoPass = frmMain.check_2PassEncode.Checked;
- task.TurboFirstPass = frmMain.check_turbo.Checked;
- double framerate;
- double.TryParse(frmMain.drp_videoFramerate.Text, out framerate);
- task.Framerate = framerate;
- task.FramerateMode = frmMain.drp_videoFramerate.SelectedIndex == 0
- ? (frmMain.radio_constantFramerate.Checked ? FramerateMode.CFR : FramerateMode.VFR)
- : (frmMain.radio_constantFramerate.Checked ? FramerateMode.CFR : FramerateMode.PFR);
-
- if (frmMain.radio_cq.Checked)
- {
- double cqStep = UserSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- switch (frmMain.drp_videoEncoder.Text)
- {
- case "MPEG-4 (FFmpeg)":
- case "MPEG-2 (FFmpeg)":
- task.Quality = 31 - (frmMain.slider_videoQuality.Value - 1);
- break;
- case "H.264 (x264)":
- double value = 51 - (frmMain.slider_videoQuality.Value * cqStep);
- task.Quality = Math.Round(value, 2);
- break;
- case "VP3 (Theora)":
- task.Quality = frmMain.slider_videoQuality.Value;
- break;
- }
- }
-
- // Audio
- task.AudioTracks = new ObservableCollection<AudioTrack>(frmMain.AudioSettings.AudioTracks);
- task.AllowedPassthruOptions = new AllowedPassthru
- {
- AudioAllowAACPass = frmMain.AudioSettings.PassthruSettings.AudioAllowAACPass,
- AudioAllowAC3Pass = frmMain.AudioSettings.PassthruSettings.AudioAllowAC3Pass,
- AudioAllowDTSHDPass = frmMain.AudioSettings.PassthruSettings.AudioAllowDTSHDPass,
- AudioAllowDTSPass = frmMain.AudioSettings.PassthruSettings.AudioAllowDTSPass,
- AudioAllowMP3Pass = frmMain.AudioSettings.PassthruSettings.AudioAllowMP3Pass,
- AudioEncoderFallback = frmMain.AudioSettings.PassthruSettings.AudioEncoderFallback
- };
-
- // Subtitles
- task.SubtitleTracks = new ObservableCollection<SubtitleTrack>(frmMain.Subtitles.SubtitlesList);
-
- // Chapters
- task.IncludeChapterMarkers = frmMain.Check_ChapterMarkers.Checked;
- task.ChapterNames = new ObservableCollection<ChapterMarker>();
- foreach (DataGridViewRow row in frmMain.data_chpt.Rows)
- {
- int number;
- int.TryParse(row.Cells[0].Value.ToString(), out number);
- task.ChapterNames.Add(new ChapterMarker(number, row.Cells[1].Value.ToString()));
- }
-
- // Advanced Options
- task.AdvancedEncoderOptions = X264Query(frmMain).Replace("-x", string.Empty).Trim();
-
- // Extra Settings
- task.Verbosity = UserSettingService.GetUserSetting<int>(ASUserSettingConstants.Verbosity);
- task.DisableLibDvdNav = UserSettingService.GetUserSetting<bool>(ASUserSettingConstants.DisableLibDvdNav);
-
- return task;
- }
-
- #endregion
-
- #region Helpers
-
- /// <summary>
- /// Create a CSV file with the data from the Main Window Chapters tab
- /// </summary>
- /// <param name="mainWindow">Main Window</param>
- /// <param name="filePathName">Path to save the csv file</param>
- /// <returns>True if successful </returns>
- private static bool ChapterCsvSave(frmMain mainWindow, string filePathName)
- {
- try
- {
- string csv = string.Empty;
-
- foreach (DataGridViewRow row in mainWindow.data_chpt.Rows)
- {
- csv += row.Cells[0].Value.ToString();
- csv += ",";
- csv += row.Cells[1].Value.ToString().Replace(",", "\\,");
- csv += Environment.NewLine;
- }
- StreamWriter file = new StreamWriter(filePathName);
- file.Write(csv);
- file.Close();
- file.Dispose();
- return true;
- }
- catch (Exception exc)
- {
- MessageBox.Show("Unable to save Chapter Makrers file! \nChapter marker names will NOT be saved in your encode \n\n" + exc, "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return false;
- }
- }
- #endregion
- }
-} \ No newline at end of file
diff --git a/win/CS/Functions/ToolStripRenderOverride.cs b/win/CS/Functions/ToolStripRenderOverride.cs
deleted file mode 100644
index 28845c2ed..000000000
--- a/win/CS/Functions/ToolStripRenderOverride.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-/* ToolStripRenderOverride.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Functions
-{
- using System.Windows.Forms;
-
- public class ToolStripRenderOverride : ToolStripProfessionalRenderer
- {
- ToolStripSystemRenderer render = new ToolStripSystemRenderer();
-
- public ToolStripRenderOverride()
- {
- }
-
- /// <summary>
- /// Fix for a bug in .NET where a white line appears at the bottom of the control.
- /// http://connect.microsoft.com/VisualStudio/feedback/details/92862/toolstrip-always-draws-a-border-on-the-bottom-with-rendermode-system-and-docked-left-or-right
- /// </summary>
- /// <param name="e">
- /// ToolStripRenderEventArgs
- /// </param>
- protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
- {
- //base.OnRenderToolStripBorder(e);
- }
-
- /// <summary>
- /// Change the Button Hover Background style to the system button style
- /// </summary>
- /// <param name="e">
- /// ToolStripRenderEventArgs
- /// </param>
- protected override void OnRenderButtonBackground(ToolStripItemRenderEventArgs e)
- {
- render.DrawButtonBackground(e);
- }
-
- protected override void OnRenderDropDownButtonBackground(ToolStripItemRenderEventArgs e)
- {
- render.DrawDropDownButtonBackground(e);
- }
-
- protected override void OnRenderToolStripBackground(ToolStripRenderEventArgs e)
- {
- //base.OnRenderToolStripBackground(e);
- }
- }
-}
diff --git a/win/CS/HandBrake10.sln b/win/CS/HandBrake10.sln
index fb031213b..939940d73 100644
--- a/win/CS/HandBrake10.sln
+++ b/win/CS/HandBrake10.sln
@@ -1,8 +1,6 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrakeCS", "HandBrakeCS.csproj", "{A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}"
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrake.ApplicationServices", "HandBrake.ApplicationServices\HandBrake.ApplicationServices.csproj", "{087A2BA8-BAC2-4577-A46F-07FF9D420016}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HandBrakeWPF", "HandBrakeWPF\HandBrakeWPF.csproj", "{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}"
@@ -26,20 +24,6 @@ Global
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|Any CPU.ActiveCfg = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|Any CPU.Build.0 = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|Mixed Platforms.Build.0 = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|x64.ActiveCfg = Debug|x64
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|x64.Build.0 = Debug|x64
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|x86.ActiveCfg = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Debug|x86.Build.0 = Debug|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|Any CPU.ActiveCfg = Release|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|Mixed Platforms.ActiveCfg = Release|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|Mixed Platforms.Build.0 = Release|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|x64.ActiveCfg = Release|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|x86.ActiveCfg = Release|x86
- {A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}.Release|x86.Build.0 = Release|x86
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|Any CPU.ActiveCfg = Debug|x86
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|Mixed Platforms.Build.0 = Debug|x86
diff --git a/win/CS/HandBrakeCS.csproj b/win/CS/HandBrakeCS.csproj
index b418caaa7..947eff2c0 100644
--- a/win/CS/HandBrakeCS.csproj
+++ b/win/CS/HandBrakeCS.csproj
@@ -10,7 +10,8 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Handbrake</RootNamespace>
<AssemblyName>Handbrake_old</AssemblyName>
- <ApplicationIcon>handbrakepineapple.ico</ApplicationIcon>
+ <ApplicationIcon>
+ </ApplicationIcon>
<StartupObject>Handbrake.Program</StartupObject>
<TargetZone>LocalIntranet</TargetZone>
<GenerateManifests>false</GenerateManifests>
@@ -106,183 +107,7 @@
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
- <Compile Include="Controls\AudioPanel.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\AudioPanel.Designer.cs">
- <DependentUpon>AudioPanel.cs</DependentUpon>
- </Compile>
- <Compile Include="Controls\AdvancedEncoderOpts.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\AdvancedEncoderOpts.Designer.cs">
- <DependentUpon>AdvancedEncoderOpts.cs</DependentUpon>
- </Compile>
- <Compile Include="Controls\Filters.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\Filters.Designer.cs">
- <DependentUpon>Filters.cs</DependentUpon>
- </Compile>
- <Compile Include="Controls\PictureSettings.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\PictureSettings.designer.cs">
- <DependentUpon>PictureSettings.cs</DependentUpon>
- </Compile>
- <Compile Include="Controls\Subtitles.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\Subtitles.Designer.cs">
- <DependentUpon>Subtitles.cs</DependentUpon>
- </Compile>
- <Compile Include="Controls\x264Panel.cs">
- <SubType>UserControl</SubType>
- </Compile>
- <Compile Include="Controls\x264Panel.Designer.cs">
- <DependentUpon>x264Panel.cs</DependentUpon>
- </Compile>
- <Compile Include="frmPreview.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmPreview.Designer.cs">
- <DependentUpon>frmPreview.cs</DependentUpon>
- </Compile>
- <Compile Include="Functions\ToolStripRenderOverride.cs" />
- <Compile Include="Model\ActivityLogMode.cs" />
- <Compile Include="Model\QueryPictureSettingsMode.cs" />
- <Compile Include="Model\QueryEncodeMode.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="frmAbout.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmAbout.Designer.cs">
- <DependentUpon>frmAbout.cs</DependentUpon>
- </Compile>
- <Compile Include="frmAddPreset.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmAddPreset.Designer.cs">
- <DependentUpon>frmAddPreset.cs</DependentUpon>
- </Compile>
- <Compile Include="frmMain.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmMain.Designer.cs">
- <DependentUpon>frmMain.cs</DependentUpon>
- </Compile>
- <Compile Include="frmOptions.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmOptions.Designer.cs">
- <DependentUpon>frmOptions.cs</DependentUpon>
- </Compile>
- <Compile Include="frmQueue.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmQueue.Designer.cs">
- <DependentUpon>frmQueue.cs</DependentUpon>
- </Compile>
- <Compile Include="Functions\PresetLoader.cs" />
- <Compile Include="Functions\QueryGenerator.cs" />
- <Compile Include="Functions\Main.cs" />
- <Compile Include="frmActivityWindow.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="frmActivityWindow.Designer.cs">
- <DependentUpon>frmActivityWindow.cs</DependentUpon>
- </Compile>
- <Compile Include="Model\SourceType.cs" />
- <Compile Include="Program.cs" />
- <Compile Include="ToolWindows\AdvancedAudio.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\AdvancedAudio.Designer.cs">
- <DependentUpon>AdvancedAudio.cs</DependentUpon>
- </Compile>
- <Compile Include="ToolWindows\BatchAdd.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\BatchAdd.Designer.cs">
- <DependentUpon>BatchAdd.cs</DependentUpon>
- </Compile>
- <Compile Include="ToolWindows\DownloadUpdate.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\DownloadUpdate.Designer.cs">
- <DependentUpon>DownloadUpdate.cs</DependentUpon>
- </Compile>
- <Compile Include="ToolWindows\ExceptionWindow.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\ExceptionWindow.designer.cs">
- <DependentUpon>ExceptionWindow.cs</DependentUpon>
- </Compile>
- <Compile Include="ToolWindows\TitleSpecificScan.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\TitleSpecificScan.Designer.cs">
- <DependentUpon>TitleSpecificScan.cs</DependentUpon>
- </Compile>
- <Compile Include="ToolWindows\UpdateInfo.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="ToolWindows\UpdateInfo.Designer.cs">
- <DependentUpon>UpdateInfo.cs</DependentUpon>
- </Compile>
- <Compile Include="UserSettingConstants.cs" />
- <EmbeddedResource Include="Controls\AudioPanel.resx">
- <DependentUpon>AudioPanel.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Controls\AdvancedEncoderOpts.resx">
- <DependentUpon>AdvancedEncoderOpts.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Controls\Filters.resx">
- <DependentUpon>Filters.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Controls\PictureSettings.resx">
- <DependentUpon>PictureSettings.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Controls\Subtitles.resx">
- <DependentUpon>Subtitles.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Controls\x264Panel.resx">
- <DependentUpon>x264Panel.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="frmPreview.resx">
- <DependentUpon>frmPreview.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="frmAbout.resx">
- <SubType>Designer</SubType>
- <DependentUpon>frmAbout.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="frmAddPreset.resx">
- <DependentUpon>frmAddPreset.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="frmMain.resx">
- <SubType>Designer</SubType>
- <DependentUpon>frmMain.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="frmOptions.resx">
- <SubType>Designer</SubType>
- <DependentUpon>frmOptions.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="frmQueue.resx">
- <SubType>Designer</SubType>
- <DependentUpon>frmQueue.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="frmActivityWindow.resx">
- <DependentUpon>frmActivityWindow.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
@@ -293,71 +118,9 @@
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
- <EmbeddedResource Include="ToolWindows\AdvancedAudio.resx">
- <DependentUpon>AdvancedAudio.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ToolWindows\BatchAdd.resx">
- <DependentUpon>BatchAdd.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ToolWindows\DownloadUpdate.resx">
- <DependentUpon>DownloadUpdate.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="ToolWindows\ExceptionWindow.resx">
- <DependentUpon>ExceptionWindow.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ToolWindows\TitleSpecificScan.resx">
- <DependentUpon>TitleSpecificScan.cs</DependentUpon>
- </EmbeddedResource>
- <EmbeddedResource Include="ToolWindows\UpdateInfo.resx">
- <DependentUpon>UpdateInfo.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <None Include="app.config" />
- <None Include="Installer\Installer64.nsi" />
- <None Include="Installer\MakeNightly64.nsi.tmpl" />
- <None Include="Installer\MakeNightly.nsi.tmpl" />
- <None Include="Installer\Installer.nsi" />
</ItemGroup>
<ItemGroup>
- <Content Include="DEPRECATED WARNING.txt" />
- <Content Include="handbrakepineapple.ico" />
- <Content Include="defaultsettings.xml">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
<None Include="Properties\AssemblyInfo.cs.tmpl" />
- <None Include="Resources\logo64.png" />
- <None Include="Resources\logo128.png" />
- <None Include="Resources\ActivityWindow.png" />
- <None Include="Resources\AddToQueue.png" />
- <Content Include="Resources\ActivityWindow_small.png" />
- <None Include="Resources\AddToQueue_small.png" />
- <None Include="Resources\Add16.png" />
- <Content Include="Resources\copy.png" />
- <Content Include="Resources\disc_small.png" />
- <None Include="Resources\hb32.png" />
- <None Include="Resources\hb16.png" />
- <None Include="Resources\Help16.png" />
- <None Include="Resources\info16.png" />
- <None Include="Resources\folder.png" />
- <None Include="Resources\download.png" />
- <None Include="Resources\ErrorX.png" />
- <None Include="Resources\Help32.png" />
- <None Include="Resources\Help24.png" />
- <None Include="Resources\Options24.png" />
- <Content Include="Resources\Output_Small.png" />
- <None Include="Resources\Pause.png" />
- <None Include="Resources\Play.png" />
- <None Include="Resources\picture.png" />
- <None Include="Resources\Play_small.png" />
- <Content Include="Resources\Pref_Small.png" />
- <Content Include="Resources\Queue.png" />
- <Content Include="Resources\Queue_Small.png" />
- <Content Include="Resources\window.png" />
- <None Include="Resources\save.png" />
- <None Include="Resources\stop.png" />
- <None Include="Resources\Movies.png" />
- <None Include="Resources\General Preferences.png" />
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
diff --git a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
index 1ab37f13e..6d5d162b2 100644
--- a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
+++ b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
@@ -354,10 +354,6 @@
<Content Include="defaultsettings.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
- <Content Include="releasenotes.html">
- <SubType>Designer</SubType>
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
- </Content>
<Resource Include="Views\Images\Refresh.ico" />
<Resource Include="Views\Images\WarningSmall.png" />
<Resource Include="Views\Images\Complete.png" />
@@ -415,10 +411,6 @@
<Project>{F0A61F62-2C3B-4A87-AFF4-0C4256253DA1}</Project>
<Name>HandBrakeInterop</Name>
</ProjectReference>
- <ProjectReference Include="..\HandBrakeCS.csproj">
- <Project>{A2923D42-C38B-4B12-8CBA-B8D93D6B13A3}</Project>
- <Name>HandBrakeCS</Name>
- </ProjectReference>
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
diff --git a/win/CS/HandBrakeWPF/releasenotes.html b/win/CS/HandBrakeWPF/releasenotes.html
deleted file mode 100644
index 0d8beced5..000000000
--- a/win/CS/HandBrakeWPF/releasenotes.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<html>
-
- <h3>HandBrake WPF Relase Notes</h3>
-
-
- <font color="#FF0000">
- <b>!!! Warning !!!</b>
- </font><br /><br />
-
- This build is only recommended for Advanced Users!!! <br /><br />
-
-
- <b> Whats Changed?</b><br /><br />
-
- The Windows User Interface for HandBrake is currently being ported to WPF from the older WinForms technology. <br />
- While there are minor improvements in the new UI, it reamins largely the same as the old forms UI at this stage. <br /><br />
-
- <b> How do I continue using the old winforms GUI?</b><br /><br />
- Until the WPF UI stabilizes, the build will include a copy of the old winforms based UI. <br />
- In the directory which you installed HandBrake, there is a file called HandBrake_old.exe which is the old forms UI. <br />
- You can simply swap the exe file names over if you wish to continue running the old one.<br /><br />
-
-
-
- <b>Bug Reports and Comments</b><br /><br />
-
- Please keep any bug reports to <a href="https://forum.handbrake.fr/viewtopic.php?f=11&t=23843" target="_blank">this thread.</a>
-
-</html> \ No newline at end of file
diff --git a/win/CS/Installer/Installer.nsi b/win/CS/Installer/Installer.nsi
deleted file mode 100644
index c47170981..000000000
--- a/win/CS/Installer/Installer.nsi
+++ /dev/null
@@ -1,325 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "HandBrake"
-!define PRODUCT_VERSION "0.9.6"
-!define PRODUCT_VERSION_NUMBER "0.9.6"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "0"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "handbrakepineapple.ico"
-!define MUI_UNICON "handbrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\Handbrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES\Handbrake"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- Exec $INSTDIR\uninst.exe
- goto done
- Exec '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "Handbrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&srcfamilyid=e5ad0459-cbcc-4b4f-97b6-fb17111cf544&srcdisplaylang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f5%2f6%2f2%2f562A10F9-C9F4-4313-A044-9C94E0A8FAC8%2fdotNetFx40_Client_x86_x64.exe" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- File "*.exe"
- CreateDirectory "$SMPROGRAMS\Handbrake"
- CreateShortCut "$SMPROGRAMS\Handbrake\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- CreateShortCut "$DESKTOP\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- File "*.dll"
- File "*.config"
- File "*.xml"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-
- ; Copy the standard fonts config set into the fonts folder
- SetOutPath "$INSTDIR\fonts"
- SetOverwrite ifnewer
- File /r "fonts\*.*"
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\Handbrake\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- Delete "$INSTDIR\fonts\*.*"
- Delete "$INSTDIR\fonts\conf.d\*.*"
- Delete "$INSTDIR\fonts\conf.avail\*.*"
- RMDir "$INSTDIR\doc"
- RMDIR "$INSTDIR\fonts\conf.d"
- RMDIR "$INSTDIR\fonts\conf.avail"
- RMDIR "$INSTDIR\fonts"
- Delete "$SMPROGRAMS\Handbrake\Uninstall.lnk"
- Delete "$DESKTOP\Handbrake.lnk"
- Delete "$SMPROGRAMS\Handbrake\Handbrake.lnk"
- RMDir "$SMPROGRAMS\Handbrake"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
-
- ;Save the variables in case something else is using them
- Push $0
- Push $1
- Push $2
- Push $3
- Push $4
- Push $R1
- Push $R2
- Push $R3
- Push $R4
- Push $R5
- Push $R6
- Push $R7
- Push $R8
-
- StrCpy $R5 "0"
- StrCpy $R6 "0"
- StrCpy $R7 "0"
- StrCpy $R8 "0.0.0"
- StrCpy $0 0
-
- loop:
-
- ;Get each sub key under "SOFTWARE\Microsoft\NET Framework Setup\NDP"
- EnumRegKey $1 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP" $0
- StrCmp $1 "" done ;jump to end if no more registry keys
- IntOp $0 $0 + 1
- StrCpy $2 $1 1 ;Cut off the first character
- StrCpy $3 $1 "" 1 ;Remainder of string
-
- ;Loop if first character is not a 'v'
- StrCmpS $2 "v" start_parse loop
-
- ;Parse the string
- start_parse:
- StrCpy $R1 ""
- StrCpy $R2 ""
- StrCpy $R3 ""
- StrCpy $R4 $3
-
- StrCpy $4 1
-
- parse:
- StrCmp $3 "" parse_done ;If string is empty, we are finished
- StrCpy $2 $3 1 ;Cut off the first character
- StrCpy $3 $3 "" 1 ;Remainder of string
- StrCmp $2 "." is_dot not_dot ;Move to next part if it's a dot
-
- is_dot:
- IntOp $4 $4 + 1 ; Move to the next section
- goto parse ;Carry on parsing
-
- not_dot:
- IntCmp $4 1 major_ver
- IntCmp $4 2 minor_ver
- IntCmp $4 3 build_ver
- IntCmp $4 4 parse_done
-
- major_ver:
- StrCpy $R1 $R1$2
- goto parse ;Carry on parsing
-
- minor_ver:
- StrCpy $R2 $R2$2
- goto parse ;Carry on parsing
-
- build_ver:
- StrCpy $R3 $R3$2
- goto parse ;Carry on parsing
-
- parse_done:
-
- IntCmp $R1 $R5 this_major_same loop this_major_more
- this_major_more:
- StrCpy $R5 $R1
- StrCpy $R6 $R2
- StrCpy $R7 $R3
- StrCpy $R8 $R4
-
- goto loop
-
- this_major_same:
- IntCmp $R2 $R6 this_minor_same loop this_minor_more
- this_minor_more:
- StrCpy $R6 $R2
- StrCpy $R7 R3
- StrCpy $R8 $R4
- goto loop
-
- this_minor_same:
- IntCmp $R3 $R7 loop loop this_build_more
- this_build_more:
- StrCpy $R7 $R3
- StrCpy $R8 $R4
- goto loop
-
- done:
-
- ;Have we got the framework we need?
- IntCmp $R5 ${MIN_FRA_MAJOR} max_major_same fail OK
- max_major_same:
- IntCmp $R6 ${MIN_FRA_MINOR} max_minor_same fail OK
- max_minor_same:
- IntCmp $R7 ${MIN_FRA_BUILD} OK fail OK
-
- ;Version on machine is greater than what we need
- OK:
- StrCpy $0 "1"
- goto end
-
- fail:
- StrCmp $R8 "0.0.0" end
-
-
- end:
-
- ;Pop the variables we pushed earlier
- Pop $R8
- Pop $R7
- Pop $R6
- Pop $R5
- Pop $R4
- Pop $R3
- Pop $R2
- Pop $R1
- Pop $4
- Pop $3
- Pop $2
- Pop $1
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/Installer/Installer64.nsi b/win/CS/Installer/Installer64.nsi
deleted file mode 100644
index 4c665a974..000000000
--- a/win/CS/Installer/Installer64.nsi
+++ /dev/null
@@ -1,328 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "HandBrake"
-!define PRODUCT_VERSION "0.9.6"
-!define PRODUCT_VERSION_NUMBER "0.9.6"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "0"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "handbrakepineapple.ico"
-!define MUI_UNICON "handbrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\Handbrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES64\Handbrake"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- Exec $INSTDIR\uninst.exe
- goto done
- Exec '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "Handbrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&srcfamilyid=e5ad0459-cbcc-4b4f-97b6-fb17111cf544&srcdisplaylang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f5%2f6%2f2%2f562A10F9-C9F4-4313-A044-9C94E0A8FAC8%2fdotNetFx40_Client_x86_x64.exe" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- File "Handbrake.exe"
- File "HandBrakeCLI.exe"
- CreateDirectory "$SMPROGRAMS\Handbrake"
- CreateShortCut "$SMPROGRAMS\Handbrake\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- CreateShortCut "$DESKTOP\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- File "*.dll"
- File "*.config"
- File "*.xml"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-
- ; Copy the standard fonts config set into the fonts folder
- SetOutPath "$INSTDIR\fonts"
- SetOverwrite ifnewer
- File /r "fonts\*.*"
-
-
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\Handbrake\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- Delete "$INSTDIR\fonts\*.*"
- Delete "$INSTDIR\fonts\conf.d\*.*"
- Delete "$INSTDIR\fonts\conf.avail\*.*"
- RMDir "$INSTDIR\doc"
- RMDIR "$INSTDIR\fonts\conf.d"
- RMDIR "$INSTDIR\fonts\conf.avail"
- RMDIR "$INSTDIR\fonts"
- Delete "$SMPROGRAMS\Handbrake\Uninstall.lnk"
- Delete "$DESKTOP\Handbrake.lnk"
- Delete "$SMPROGRAMS\Handbrake\Handbrake.lnk"
- RMDir "$SMPROGRAMS\Handbrake"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
-
- ;Save the variables in case something else is using them
- Push $0
- Push $1
- Push $2
- Push $3
- Push $4
- Push $R1
- Push $R2
- Push $R3
- Push $R4
- Push $R5
- Push $R6
- Push $R7
- Push $R8
-
- StrCpy $R5 "0"
- StrCpy $R6 "0"
- StrCpy $R7 "0"
- StrCpy $R8 "0.0.0"
- StrCpy $0 0
-
- loop:
-
- ;Get each sub key under "SOFTWARE\Microsoft\NET Framework Setup\NDP"
- EnumRegKey $1 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP" $0
- StrCmp $1 "" done ;jump to end if no more registry keys
- IntOp $0 $0 + 1
- StrCpy $2 $1 1 ;Cut off the first character
- StrCpy $3 $1 "" 1 ;Remainder of string
-
- ;Loop if first character is not a 'v'
- StrCmpS $2 "v" start_parse loop
-
- ;Parse the string
- start_parse:
- StrCpy $R1 ""
- StrCpy $R2 ""
- StrCpy $R3 ""
- StrCpy $R4 $3
-
- StrCpy $4 1
-
- parse:
- StrCmp $3 "" parse_done ;If string is empty, we are finished
- StrCpy $2 $3 1 ;Cut off the first character
- StrCpy $3 $3 "" 1 ;Remainder of string
- StrCmp $2 "." is_dot not_dot ;Move to next part if it's a dot
-
- is_dot:
- IntOp $4 $4 + 1 ; Move to the next section
- goto parse ;Carry on parsing
-
- not_dot:
- IntCmp $4 1 major_ver
- IntCmp $4 2 minor_ver
- IntCmp $4 3 build_ver
- IntCmp $4 4 parse_done
-
- major_ver:
- StrCpy $R1 $R1$2
- goto parse ;Carry on parsing
-
- minor_ver:
- StrCpy $R2 $R2$2
- goto parse ;Carry on parsing
-
- build_ver:
- StrCpy $R3 $R3$2
- goto parse ;Carry on parsing
-
- parse_done:
-
- IntCmp $R1 $R5 this_major_same loop this_major_more
- this_major_more:
- StrCpy $R5 $R1
- StrCpy $R6 $R2
- StrCpy $R7 $R3
- StrCpy $R8 $R4
-
- goto loop
-
- this_major_same:
- IntCmp $R2 $R6 this_minor_same loop this_minor_more
- this_minor_more:
- StrCpy $R6 $R2
- StrCpy $R7 R3
- StrCpy $R8 $R4
- goto loop
-
- this_minor_same:
- IntCmp $R3 $R7 loop loop this_build_more
- this_build_more:
- StrCpy $R7 $R3
- StrCpy $R8 $R4
- goto loop
-
- done:
-
- ;Have we got the framework we need?
- IntCmp $R5 ${MIN_FRA_MAJOR} max_major_same fail OK
- max_major_same:
- IntCmp $R6 ${MIN_FRA_MINOR} max_minor_same fail OK
- max_minor_same:
- IntCmp $R7 ${MIN_FRA_BUILD} OK fail OK
-
- ;Version on machine is greater than what we need
- OK:
- StrCpy $0 "1"
- goto end
-
- fail:
- StrCmp $R8 "0.0.0" end
-
-
- end:
-
- ;Pop the variables we pushed earlier
- Pop $R8
- Pop $R7
- Pop $R6
- Pop $R5
- Pop $R4
- Pop $R3
- Pop $R2
- Pop $R1
- Pop $4
- Pop $3
- Pop $2
- Pop $1
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/Installer/MakeNightly.nsi.tmpl b/win/CS/Installer/MakeNightly.nsi.tmpl
deleted file mode 100644
index ab09c1459..000000000
--- a/win/CS/Installer/MakeNightly.nsi.tmpl
+++ /dev/null
@@ -1,327 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "Handbrake"
-!define PRODUCT_VERSION "$WCREV$ Nightly"
-!define PRODUCT_VERSION_NUMBER "svn$WCREV$"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "0"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "handbrakepineapple.ico"
-!define MUI_UNICON "handbrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\Handbrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES\Handbrake"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- Exec $INSTDIR\uninst.exe
- goto done
- Exec '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "Handbrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&srcfamilyid=e5ad0459-cbcc-4b4f-97b6-fb17111cf544&srcdisplaylang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f5%2f6%2f2%2f562A10F9-C9F4-4313-A044-9C94E0A8FAC8%2fdotNetFx40_Client_x86_x64.exe" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- ; Install Files
- File "*.exe"
- CreateDirectory "$SMPROGRAMS\Handbrake"
- CreateShortCut "$SMPROGRAMS\Handbrake\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- CreateShortCut "$DESKTOP\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- File "*.dll"
- File "*.config"
- File "*.xml"
- File "*.pdb"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-
- ; Copy the standard fonts config set into the fonts folder
- SetOutPath "$INSTDIR\fonts"
- SetOverwrite ifnewer
- File /r "fonts\*.*"
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\Handbrake\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- Delete "$INSTDIR\fonts\*.*"
- Delete "$INSTDIR\fonts\conf.d\*.*"
- Delete "$INSTDIR\fonts\conf.avail\*.*"
- RMDir "$INSTDIR\doc"
- RMDIR "$INSTDIR\fonts\conf.d"
- RMDIR "$INSTDIR\fonts\conf.avail"
- RMDIR "$INSTDIR\fonts"
- Delete "$SMPROGRAMS\Handbrake\Uninstall.lnk"
- Delete "$DESKTOP\Handbrake.lnk"
- Delete "$SMPROGRAMS\Handbrake\Handbrake.lnk"
- RMDir "$SMPROGRAMS\Handbrake"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
-
- ;Save the variables in case something else is using them
- Push $0
- Push $1
- Push $2
- Push $3
- Push $4
- Push $R1
- Push $R2
- Push $R3
- Push $R4
- Push $R5
- Push $R6
- Push $R7
- Push $R8
-
- StrCpy $R5 "0"
- StrCpy $R6 "0"
- StrCpy $R7 "0"
- StrCpy $R8 "0.0.0"
- StrCpy $0 0
-
- loop:
-
- ;Get each sub key under "SOFTWARE\Microsoft\NET Framework Setup\NDP"
- EnumRegKey $1 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP" $0
- StrCmp $1 "" done ;jump to end if no more registry keys
- IntOp $0 $0 + 1
- StrCpy $2 $1 1 ;Cut off the first character
- StrCpy $3 $1 "" 1 ;Remainder of string
-
- ;Loop if first character is not a 'v'
- StrCmpS $2 "v" start_parse loop
-
- ;Parse the string
- start_parse:
- StrCpy $R1 ""
- StrCpy $R2 ""
- StrCpy $R3 ""
- StrCpy $R4 $3
-
- StrCpy $4 1
-
- parse:
- StrCmp $3 "" parse_done ;If string is empty, we are finished
- StrCpy $2 $3 1 ;Cut off the first character
- StrCpy $3 $3 "" 1 ;Remainder of string
- StrCmp $2 "." is_dot not_dot ;Move to next part if it's a dot
-
- is_dot:
- IntOp $4 $4 + 1 ; Move to the next section
- goto parse ;Carry on parsing
-
- not_dot:
- IntCmp $4 1 major_ver
- IntCmp $4 2 minor_ver
- IntCmp $4 3 build_ver
- IntCmp $4 4 parse_done
-
- major_ver:
- StrCpy $R1 $R1$2
- goto parse ;Carry on parsing
-
- minor_ver:
- StrCpy $R2 $R2$2
- goto parse ;Carry on parsing
-
- build_ver:
- StrCpy $R3 $R3$2
- goto parse ;Carry on parsing
-
- parse_done:
-
- IntCmp $R1 $R5 this_major_same loop this_major_more
- this_major_more:
- StrCpy $R5 $R1
- StrCpy $R6 $R2
- StrCpy $R7 $R3
- StrCpy $R8 $R4
-
- goto loop
-
- this_major_same:
- IntCmp $R2 $R6 this_minor_same loop this_minor_more
- this_minor_more:
- StrCpy $R6 $R2
- StrCpy $R7 R3
- StrCpy $R8 $R4
- goto loop
-
- this_minor_same:
- IntCmp $R3 $R7 loop loop this_build_more
- this_build_more:
- StrCpy $R7 $R3
- StrCpy $R8 $R4
- goto loop
-
- done:
-
- ;Have we got the framework we need?
- IntCmp $R5 ${MIN_FRA_MAJOR} max_major_same fail OK
- max_major_same:
- IntCmp $R6 ${MIN_FRA_MINOR} max_minor_same fail OK
- max_minor_same:
- IntCmp $R7 ${MIN_FRA_BUILD} OK fail OK
-
- ;Version on machine is greater than what we need
- OK:
- StrCpy $0 "1"
- goto end
-
- fail:
- StrCmp $R8 "0.0.0" end
-
-
- end:
-
- ;Pop the variables we pushed earlier
- Pop $R8
- Pop $R7
- Pop $R6
- Pop $R5
- Pop $R4
- Pop $R3
- Pop $R2
- Pop $R1
- Pop $4
- Pop $3
- Pop $2
- Pop $1
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/Installer/MakeNightly64.nsi.tmpl b/win/CS/Installer/MakeNightly64.nsi.tmpl
deleted file mode 100644
index 15c35d248..000000000
--- a/win/CS/Installer/MakeNightly64.nsi.tmpl
+++ /dev/null
@@ -1,326 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "Handbrake"
-!define PRODUCT_VERSION "$WCREV$ Nightly"
-!define PRODUCT_VERSION_NUMBER "svn$WCREV$"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "0"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "handbrakepineapple.ico"
-!define MUI_UNICON "handbrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\Handbrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}_x86_64-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES64\Handbrake"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- Exec $INSTDIR\uninst.exe
- goto done
- Exec '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "Handbrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the .NET Framework 4.0 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading .NET Framework 4.0" /canceltext "Cancel" "http://www.microsoft.com/downloads/info.aspx?na=41&srcfamilyid=e5ad0459-cbcc-4b4f-97b6-fb17111cf544&srcdisplaylang=en&u=http%3a%2f%2fdownload.microsoft.com%2fdownload%2f5%2f6%2f2%2f562A10F9-C9F4-4313-A044-9C94E0A8FAC8%2fdotNetFx40_Client_x86_x64.exe" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the .NET 4.0 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- File "*.exe"
- CreateDirectory "$SMPROGRAMS\Handbrake"
- CreateShortCut "$SMPROGRAMS\Handbrake\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- CreateShortCut "$DESKTOP\Handbrake.lnk" "$INSTDIR\Handbrake.exe"
- File "*.dll"
- File "*.config"
- File "*.xml"
- File "*.pdb"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-
- ; Copy the standard fonts config set into the fonts folder
- SetOutPath "$INSTDIR\fonts"
- SetOverwrite ifnewer
- File /r "fonts\*.*"
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\Handbrake\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Handbrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- Delete "$INSTDIR\fonts\*.*"
- Delete "$INSTDIR\fonts\conf.d\*.*"
- Delete "$INSTDIR\fonts\conf.avail\*.*"
- RMDir "$INSTDIR\doc"
- RMDIR "$INSTDIR\fonts\conf.d"
- RMDIR "$INSTDIR\fonts\conf.avail"
- RMDIR "$INSTDIR\fonts"
- Delete "$SMPROGRAMS\Handbrake\Uninstall.lnk"
- Delete "$DESKTOP\Handbrake.lnk"
- Delete "$SMPROGRAMS\Handbrake\Handbrake.lnk"
- RMDir "$SMPROGRAMS\Handbrake"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
-
- ;Save the variables in case something else is using them
- Push $0
- Push $1
- Push $2
- Push $3
- Push $4
- Push $R1
- Push $R2
- Push $R3
- Push $R4
- Push $R5
- Push $R6
- Push $R7
- Push $R8
-
- StrCpy $R5 "0"
- StrCpy $R6 "0"
- StrCpy $R7 "0"
- StrCpy $R8 "0.0.0"
- StrCpy $0 0
-
- loop:
-
- ;Get each sub key under "SOFTWARE\Microsoft\NET Framework Setup\NDP"
- EnumRegKey $1 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP" $0
- StrCmp $1 "" done ;jump to end if no more registry keys
- IntOp $0 $0 + 1
- StrCpy $2 $1 1 ;Cut off the first character
- StrCpy $3 $1 "" 1 ;Remainder of string
-
- ;Loop if first character is not a 'v'
- StrCmpS $2 "v" start_parse loop
-
- ;Parse the string
- start_parse:
- StrCpy $R1 ""
- StrCpy $R2 ""
- StrCpy $R3 ""
- StrCpy $R4 $3
-
- StrCpy $4 1
-
- parse:
- StrCmp $3 "" parse_done ;If string is empty, we are finished
- StrCpy $2 $3 1 ;Cut off the first character
- StrCpy $3 $3 "" 1 ;Remainder of string
- StrCmp $2 "." is_dot not_dot ;Move to next part if it's a dot
-
- is_dot:
- IntOp $4 $4 + 1 ; Move to the next section
- goto parse ;Carry on parsing
-
- not_dot:
- IntCmp $4 1 major_ver
- IntCmp $4 2 minor_ver
- IntCmp $4 3 build_ver
- IntCmp $4 4 parse_done
-
- major_ver:
- StrCpy $R1 $R1$2
- goto parse ;Carry on parsing
-
- minor_ver:
- StrCpy $R2 $R2$2
- goto parse ;Carry on parsing
-
- build_ver:
- StrCpy $R3 $R3$2
- goto parse ;Carry on parsing
-
- parse_done:
-
- IntCmp $R1 $R5 this_major_same loop this_major_more
- this_major_more:
- StrCpy $R5 $R1
- StrCpy $R6 $R2
- StrCpy $R7 $R3
- StrCpy $R8 $R4
-
- goto loop
-
- this_major_same:
- IntCmp $R2 $R6 this_minor_same loop this_minor_more
- this_minor_more:
- StrCpy $R6 $R2
- StrCpy $R7 R3
- StrCpy $R8 $R4
- goto loop
-
- this_minor_same:
- IntCmp $R3 $R7 loop loop this_build_more
- this_build_more:
- StrCpy $R7 $R3
- StrCpy $R8 $R4
- goto loop
-
- done:
-
- ;Have we got the framework we need?
- IntCmp $R5 ${MIN_FRA_MAJOR} max_major_same fail OK
- max_major_same:
- IntCmp $R6 ${MIN_FRA_MINOR} max_minor_same fail OK
- max_minor_same:
- IntCmp $R7 ${MIN_FRA_BUILD} OK fail OK
-
- ;Version on machine is greater than what we need
- OK:
- StrCpy $0 "1"
- goto end
-
- fail:
- StrCmp $R8 "0.0.0" end
-
-
- end:
-
- ;Pop the variables we pushed earlier
- Pop $R8
- Pop $R7
- Pop $R6
- Pop $R5
- Pop $R4
- Pop $R3
- Pop $R2
- Pop $R1
- Pop $4
- Pop $3
- Pop $2
- Pop $1
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/Model/ActivityLogMode.cs b/win/CS/Model/ActivityLogMode.cs
deleted file mode 100644
index 1ab699ea3..000000000
--- a/win/CS/Model/ActivityLogMode.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-/* ActivityLogMode.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Model
-{
- /// <summary>
- /// The Log Mode, either scan or encode
- /// </summary>
- public enum ActivityLogMode
- {
- /// <summary>
- /// Scan Mode
- /// </summary>
- Scan,
-
- /// <summary>
- /// Encode mode
- /// </summary>
- Encode
- }
-}
diff --git a/win/CS/Model/QueryEncodeMode.cs b/win/CS/Model/QueryEncodeMode.cs
deleted file mode 100644
index 63e6eccff..000000000
--- a/win/CS/Model/QueryEncodeMode.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-/* AddPresetMode.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Model
-{
- /// <summary>
- /// Picture Settings Mode when adding presets
- /// </summary>
- public enum QueryEncodeMode
- {
- Preview,
- Standard
- }
-} \ No newline at end of file
diff --git a/win/CS/Model/QueryPictureSettingsMode.cs b/win/CS/Model/QueryPictureSettingsMode.cs
deleted file mode 100644
index 539027145..000000000
--- a/win/CS/Model/QueryPictureSettingsMode.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-/* AddPresetMode.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Model
-{
- /// <summary>
- /// Picture Settings Mode when adding presets
- /// </summary>
- public enum QueryPictureSettingsMode
- {
- None,
- Custom,
- SourceMaximum,
- UserInterfaceSettings
- }
-} \ No newline at end of file
diff --git a/win/CS/Model/SourceType.cs b/win/CS/Model/SourceType.cs
deleted file mode 100644
index 2081ce985..000000000
--- a/win/CS/Model/SourceType.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-/* SourceType.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.Model
-{
- /// <summary>
- /// The Type of source that the user has scanned
- /// </summary>
- public enum SourceType
- {
- /// <summary>
- /// No Source Selected
- /// </summary>
- None = 0,
-
- /// <summary>
- /// The soruce selected is a folder
- /// </summary>
- Folder,
-
- /// <summary>
- /// The source selected is a DVD drive
- /// </summary>
- DvdDrive,
-
- /// <summary>
- /// The source selected is a Video File
- /// </summary>
- VideoFile
- }
-} \ No newline at end of file
diff --git a/win/CS/Program.cs b/win/CS/Program.cs
deleted file mode 100644
index 178973994..000000000
--- a/win/CS/Program.cs
+++ /dev/null
@@ -1,124 +0,0 @@
-/* Program.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Diagnostics;
- using System.IO;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Exceptions;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- using Handbrake.Properties;
- using Handbrake.ToolWindows;
-
- /// <summary>
- /// HandBrake Starts Here
- /// </summary>
- public static class Program
- {
- /// <summary>
- /// The main entry point for the application.
- /// </summary>
- /// <param name="args">
- /// The args.
- /// </param>
- [STAThread]
- public static void Main(string[] args)
- {
- InstanceId = Process.GetProcessesByName("HandBrake").Length;
-
- // Handle any unhandled exceptions
- AppDomain.CurrentDomain.UnhandledException += CurrentDomainUnhandledException;
-
- // Check that HandBrakeCLI is availabl.
- string failedInstall = "HandBrake is not installed properly. Please reinstall HandBrake. \n\n";
- string missingFiles = string.Empty;
-
- // Verify HandBrakeCLI.exe exists
- if (!File.Exists(Path.Combine(Application.StartupPath, "HandBrakeCLI.exe")))
- {
- missingFiles += "\"HandBrakeCLI.exe\" was not found.";
- }
-
- if (missingFiles != string.Empty)
- {
- MessageBox.Show(
- failedInstall + missingFiles,
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- // Check were not running on a screen that's going to cause some funnies to happen.
- Screen scr = Screen.PrimaryScreen;
- if ((scr.Bounds.Width < 1024) || (scr.Bounds.Height < 620))
- {
- MessageBox.Show(
- "Your system does not meet the minimum requirements for HandBrake. \n" +
- "Your screen is running at: " + scr.Bounds.Width + "x" + scr.Bounds.Height +
- " \nScreen resolution is too Low. Must be 1024x620 or greater.\n\n",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- }
- else
- {
- string logDir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), @"HandBrake\logs");
- if (!Directory.Exists(logDir))
- Directory.CreateDirectory(logDir);
-
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
- Application.Run(new frmMain(args));
- }
- }
-
- /// <summary>
- /// Throw up an error message for any unhandled exceptions.
- /// </summary>
- /// <param name="sender">The sender</param>
- /// <param name="e">Unhandled Exception EventArgs </param>
- private static void CurrentDomainUnhandledException(object sender, UnhandledExceptionEventArgs e)
- {
- try
- {
- ExceptionWindow window = new ExceptionWindow();
-
- if (e.ExceptionObject.GetType() == typeof(GeneralApplicationException))
- {
- GeneralApplicationException applicationException = e.ExceptionObject as GeneralApplicationException;
- if (applicationException != null)
- {
- window.Setup(
- applicationException.Error + Environment.NewLine + applicationException.Solution,
- e.ExceptionObject + "\n\n ---- \n\n" + applicationException.ActualException +
- Environment.NewLine + "-----" + Environment.NewLine +
- applicationException.ActualException.InnerException);
- }
- }
- else
- {
- window.Setup("An Unknown Error has occured.", e.ExceptionObject.ToString());
- }
- window.ShowDialog();
- }
- catch (Exception)
- {
- MessageBox.Show(
- "An Unknown Error has occured. \n\n Exception:" + e.ExceptionObject,
- "Unhandled Exception",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- }
- }
-
- public static int InstanceId;
- }
-} \ No newline at end of file
diff --git a/win/CS/Resources/ActivityWindow.png b/win/CS/Resources/ActivityWindow.png
deleted file mode 100644
index 315e0fa17..000000000
--- a/win/CS/Resources/ActivityWindow.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/ActivityWindow_small.png b/win/CS/Resources/ActivityWindow_small.png
deleted file mode 100644
index 916b6ef4a..000000000
--- a/win/CS/Resources/ActivityWindow_small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Add16.png b/win/CS/Resources/Add16.png
deleted file mode 100644
index bad13b66a..000000000
--- a/win/CS/Resources/Add16.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/AddToQueue.png b/win/CS/Resources/AddToQueue.png
deleted file mode 100644
index 8eb079b3d..000000000
--- a/win/CS/Resources/AddToQueue.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/AddToQueue_small.png b/win/CS/Resources/AddToQueue_small.png
deleted file mode 100644
index 5bb08184f..000000000
--- a/win/CS/Resources/AddToQueue_small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Close.png b/win/CS/Resources/Close.png
deleted file mode 100644
index 7d84e5b80..000000000
--- a/win/CS/Resources/Close.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/ErrorX.png b/win/CS/Resources/ErrorX.png
deleted file mode 100644
index 75c63c08a..000000000
--- a/win/CS/Resources/ErrorX.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/General Preferences.png b/win/CS/Resources/General Preferences.png
deleted file mode 100644
index 9814afcc1..000000000
--- a/win/CS/Resources/General Preferences.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Help16.png b/win/CS/Resources/Help16.png
deleted file mode 100644
index bb5ef99ce..000000000
--- a/win/CS/Resources/Help16.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Help24.png b/win/CS/Resources/Help24.png
deleted file mode 100644
index 1c6e13069..000000000
--- a/win/CS/Resources/Help24.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Help32.png b/win/CS/Resources/Help32.png
deleted file mode 100644
index e3dc78d0b..000000000
--- a/win/CS/Resources/Help32.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Movies.png b/win/CS/Resources/Movies.png
deleted file mode 100644
index ec03eb576..000000000
--- a/win/CS/Resources/Movies.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Movies_Small.png b/win/CS/Resources/Movies_Small.png
deleted file mode 100644
index 80f240368..000000000
--- a/win/CS/Resources/Movies_Small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Options24.png b/win/CS/Resources/Options24.png
deleted file mode 100644
index ac5ca9678..000000000
--- a/win/CS/Resources/Options24.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Output_Small.png b/win/CS/Resources/Output_Small.png
deleted file mode 100644
index a1017d6fb..000000000
--- a/win/CS/Resources/Output_Small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Pause.png b/win/CS/Resources/Pause.png
deleted file mode 100644
index a20833967..000000000
--- a/win/CS/Resources/Pause.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Play.png b/win/CS/Resources/Play.png
deleted file mode 100644
index 23fce8283..000000000
--- a/win/CS/Resources/Play.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Play_small.png b/win/CS/Resources/Play_small.png
deleted file mode 100644
index 3e4647a15..000000000
--- a/win/CS/Resources/Play_small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Pref_Small.png b/win/CS/Resources/Pref_Small.png
deleted file mode 100644
index a28fb5b27..000000000
--- a/win/CS/Resources/Pref_Small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Queue.png b/win/CS/Resources/Queue.png
deleted file mode 100644
index 51962a1b0..000000000
--- a/win/CS/Resources/Queue.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Queue_Small.png b/win/CS/Resources/Queue_Small.png
deleted file mode 100644
index 02c7391a9..000000000
--- a/win/CS/Resources/Queue_Small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/Restore.png b/win/CS/Resources/Restore.png
deleted file mode 100644
index d0e2f3b2c..000000000
--- a/win/CS/Resources/Restore.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/arrow_down.png b/win/CS/Resources/arrow_down.png
deleted file mode 100644
index 9a8de4f4a..000000000
--- a/win/CS/Resources/arrow_down.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/arrow_left.png b/win/CS/Resources/arrow_left.png
deleted file mode 100644
index 713030f29..000000000
--- a/win/CS/Resources/arrow_left.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/arrow_right.png b/win/CS/Resources/arrow_right.png
deleted file mode 100644
index a270c5479..000000000
--- a/win/CS/Resources/arrow_right.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/arrow_up.png b/win/CS/Resources/arrow_up.png
deleted file mode 100644
index 530daed53..000000000
--- a/win/CS/Resources/arrow_up.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/copy.png b/win/CS/Resources/copy.png
deleted file mode 100644
index c11c6a753..000000000
--- a/win/CS/Resources/copy.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/disc_small.png b/win/CS/Resources/disc_small.png
deleted file mode 100644
index dca0ad228..000000000
--- a/win/CS/Resources/disc_small.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/download.png b/win/CS/Resources/download.png
deleted file mode 100644
index c3206626b..000000000
--- a/win/CS/Resources/download.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/folder.png b/win/CS/Resources/folder.png
deleted file mode 100644
index a54316ea6..000000000
--- a/win/CS/Resources/folder.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/hb16.png b/win/CS/Resources/hb16.png
deleted file mode 100644
index a9f720775..000000000
--- a/win/CS/Resources/hb16.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/hb32.png b/win/CS/Resources/hb32.png
deleted file mode 100644
index 5054264d3..000000000
--- a/win/CS/Resources/hb32.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/info16.png b/win/CS/Resources/info16.png
deleted file mode 100644
index 6b6b9f01f..000000000
--- a/win/CS/Resources/info16.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/logo128.png b/win/CS/Resources/logo128.png
deleted file mode 100644
index 69d76459d..000000000
--- a/win/CS/Resources/logo128.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/logo64.png b/win/CS/Resources/logo64.png
deleted file mode 100644
index 12808f636..000000000
--- a/win/CS/Resources/logo64.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/picture.png b/win/CS/Resources/picture.png
deleted file mode 100644
index 0072ccfb6..000000000
--- a/win/CS/Resources/picture.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/save.png b/win/CS/Resources/save.png
deleted file mode 100644
index 40885d2d3..000000000
--- a/win/CS/Resources/save.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/stop.png b/win/CS/Resources/stop.png
deleted file mode 100644
index c544b5ee4..000000000
--- a/win/CS/Resources/stop.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/Resources/window.png b/win/CS/Resources/window.png
deleted file mode 100644
index 48a14a35b..000000000
--- a/win/CS/Resources/window.png
+++ /dev/null
Binary files differ
diff --git a/win/CS/ToolWindows/AdvancedAudio.Designer.cs b/win/CS/ToolWindows/AdvancedAudio.Designer.cs
deleted file mode 100644
index 534a5119e..000000000
--- a/win/CS/ToolWindows/AdvancedAudio.Designer.cs
+++ /dev/null
@@ -1,183 +0,0 @@
-namespace Handbrake.ToolWindows
-{
- partial class AdvancedAudio
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AdvancedAudio));
- this.label1 = new System.Windows.Forms.Label();
- this.gainTrackBar = new System.Windows.Forms.TrackBar();
- this.lbl_GainValue = new System.Windows.Forms.Label();
- this.btn_close = new System.Windows.Forms.Button();
- this.label2 = new System.Windows.Forms.Label();
- this.lbl_drc = new System.Windows.Forms.Label();
- this.tb_drc = new System.Windows.Forms.TrackBar();
- this.label3 = new System.Windows.Forms.Label();
- this.audioTrackName = new System.Windows.Forms.TextBox();
- ((System.ComponentModel.ISupportInitialize)(this.gainTrackBar)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.tb_drc)).BeginInit();
- this.SuspendLayout();
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(12, 9);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(97, 13);
- this.label1.TabIndex = 1;
- this.label1.Text = "Audio Gain (dB):";
- //
- // gainTrackBar
- //
- this.gainTrackBar.Location = new System.Drawing.Point(12, 25);
- this.gainTrackBar.Maximum = 41;
- this.gainTrackBar.Name = "gainTrackBar";
- this.gainTrackBar.Size = new System.Drawing.Size(231, 45);
- this.gainTrackBar.TabIndex = 2;
- this.gainTrackBar.Value = 21;
- this.gainTrackBar.Scroll += new System.EventHandler(this.gainTrackBar_Scroll);
- //
- // lbl_GainValue
- //
- this.lbl_GainValue.AutoSize = true;
- this.lbl_GainValue.Location = new System.Drawing.Point(249, 31);
- this.lbl_GainValue.Name = "lbl_GainValue";
- this.lbl_GainValue.Size = new System.Drawing.Size(28, 13);
- this.lbl_GainValue.TabIndex = 3;
- this.lbl_GainValue.Text = "0 dB";
- //
- // btn_close
- //
- this.btn_close.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btn_close.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_close.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_close.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_close.Location = new System.Drawing.Point(206, 199);
- this.btn_close.Name = "btn_close";
- this.btn_close.Size = new System.Drawing.Size(71, 22);
- this.btn_close.TabIndex = 5;
- this.btn_close.TabStop = false;
- this.btn_close.Text = "Close";
- this.btn_close.UseVisualStyleBackColor = true;
- this.btn_close.Click += new System.EventHandler(this.btn_close_Click);
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label2.Location = new System.Drawing.Point(12, 69);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(98, 13);
- this.label2.TabIndex = 6;
- this.label2.Text = "Dynamic Range:";
- //
- // lbl_drc
- //
- this.lbl_drc.AutoSize = true;
- this.lbl_drc.Location = new System.Drawing.Point(249, 95);
- this.lbl_drc.Name = "lbl_drc";
- this.lbl_drc.Size = new System.Drawing.Size(13, 13);
- this.lbl_drc.TabIndex = 8;
- this.lbl_drc.Text = "0";
- //
- // tb_drc
- //
- this.tb_drc.LargeChange = 0;
- this.tb_drc.Location = new System.Drawing.Point(15, 89);
- this.tb_drc.Margin = new System.Windows.Forms.Padding(0);
- this.tb_drc.Maximum = 31;
- this.tb_drc.Name = "tb_drc";
- this.tb_drc.Size = new System.Drawing.Size(228, 45);
- this.tb_drc.TabIndex = 61;
- this.tb_drc.Scroll += new System.EventHandler(this.tb_drc_Scroll);
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label3.Location = new System.Drawing.Point(12, 134);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(77, 13);
- this.label3.TabIndex = 62;
- this.label3.Text = "Track Name:";
- //
- // audioTrackName
- //
- this.audioTrackName.Location = new System.Drawing.Point(15, 150);
- this.audioTrackName.Name = "audioTrackName";
- this.audioTrackName.Size = new System.Drawing.Size(228, 21);
- this.audioTrackName.TabIndex = 63;
- this.audioTrackName.TextChanged += new System.EventHandler(this.audioTrackName_TextChanged);
- //
- // AdvancedAudio
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
- this.ClientSize = new System.Drawing.Size(289, 233);
- this.Controls.Add(this.audioTrackName);
- this.Controls.Add(this.label3);
- this.Controls.Add(this.tb_drc);
- this.Controls.Add(this.lbl_drc);
- this.Controls.Add(this.label2);
- this.Controls.Add(this.btn_close);
- this.Controls.Add(this.lbl_GainValue);
- this.Controls.Add(this.gainTrackBar);
- this.Controls.Add(this.label1);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "AdvancedAudio";
- this.Opacity = 0.95D;
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Advanced Audio";
- this.TopMost = true;
- ((System.ComponentModel.ISupportInitialize)(this.gainTrackBar)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.tb_drc)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.TrackBar gainTrackBar;
- private System.Windows.Forms.Label lbl_GainValue;
- internal System.Windows.Forms.Button btn_close;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.Label lbl_drc;
- internal System.Windows.Forms.TrackBar tb_drc;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.TextBox audioTrackName;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/AdvancedAudio.cs b/win/CS/ToolWindows/AdvancedAudio.cs
deleted file mode 100644
index f3446797c..000000000
--- a/win/CS/ToolWindows/AdvancedAudio.cs
+++ /dev/null
@@ -1,156 +0,0 @@
-/* Advanced Audio.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Globalization;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices.Model.Encoding;
-
- /// <summary>
- /// Advanced Audio Panel
- /// </summary>
- public partial class AdvancedAudio : Form
- {
- /// <summary>
- /// Initializes a new instance of the <see cref="AdvancedAudio"/> class.
- /// </summary>
- public AdvancedAudio()
- {
- InitializeComponent();
- }
-
- private AudioTrack track;
-
- /// <summary>
- /// Gets or sets the Audio Track to alter.
- /// </summary>
- public AudioTrack Track
- {
- get
- {
- return this.track;
- }
-
- set
- {
- this.track = value;
-
- if (this.track == null)
- {
- return;
- }
-
- // Set the Gain Control.
- if (track.Gain == 0)
- {
- gainTrackBar.Value = 21; // The centre point
- }
- else if (track.Gain > 0)
- {
- gainTrackBar.Value = 21 + track.Gain;
- }
- else if (track.Gain < 0)
- {
- gainTrackBar.Value = 20 - Math.Abs(track.Gain);
- }
-
- lbl_GainValue.Text = string.Format("{0} dB", track.Gain);
-
- // Set the DRC Control
- double drcValue = 0;
- int drcCalculated;
- if (track.DRC != 0)
- drcValue = ((track.DRC * 10) + 1) - 10;
- int.TryParse(drcValue.ToString(CultureInfo.InvariantCulture), out drcCalculated);
- tb_drc.Value = drcCalculated;
- lbl_drc.Text = track.DRC.ToString(CultureInfo.InvariantCulture);
- tb_drc.Enabled = track.TrackDisplay.Contains("(AC3)");
-
- // Se the Track Name
- audioTrackName.Text = this.track.TrackName;
- }
- }
-
- /// <summary>
- /// Close the window
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Args</param>
- private void btn_close_Click(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.OK;
- this.Close();
- }
-
- /// <summary>
- /// Set the Gain value for the audio track.
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Arg</param>
- private void gainTrackBar_Scroll(object sender, EventArgs e)
- {
- // Figure out the Gain.
- int gain = 0;
- if (gainTrackBar.Value == 21)
- {
- gain = 0;
- }
- else if (gainTrackBar.Value > 21)
- {
- gain = gainTrackBar.Value - 21;
- }
- else if (gainTrackBar.Value < 21)
- {
- gain = (-20 + gainTrackBar.Value);
- }
-
- lbl_GainValue.Text = string.Format("{0} dB", gain);
-
- // Figure out the DRC Value
- double drcValue = 0;
- int drcCalculated;
- if (track.DRC != 0)
- drcValue = ((track.DRC * 10) + 1) - 10;
- int.TryParse(drcValue.ToString(CultureInfo.InvariantCulture), out drcCalculated);
- tb_drc.Value = drcCalculated;
-
- // Set the model.
- if (this.track == null)
- {
- return;
- }
- this.Track.Gain = gain;
- }
-
- /// <summary>
- /// The Dynamic Range Controller
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Args</param>
- private void tb_drc_Scroll(object sender, EventArgs e)
- {
- double value;
- if (tb_drc.Value == 0) value = 0;
- else
- value = ((tb_drc.Value - 1) / 10.0) + 1;
-
- lbl_drc.Text = value.ToString(CultureInfo.InvariantCulture);
- track.DRC = value;
- }
-
- /// <summary>
- /// Set the Audio Track Name Variable
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The event args</param>
- private void audioTrackName_TextChanged(object sender, EventArgs e)
- {
- this.Track.TrackName = audioTrackName.Text;
- }
- }
-}
diff --git a/win/CS/ToolWindows/AdvancedAudio.resx b/win/CS/ToolWindows/AdvancedAudio.resx
deleted file mode 100644
index c3c3ff8ef..000000000
--- a/win/CS/ToolWindows/AdvancedAudio.resx
+++ /dev/null
@@ -1,500 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- AAAAAAChkAwAAACieap4k3CVZIB/apWlxNTgepXbf4caagAAAAAAAAAAAAAAAAAAAAAAAAChkJ0AAABc
- es1kxaLVl5eNkqnebHp6eK20amSvxlsAAAAAAAAAAAAAAAAAAAAAAACjlqMAAABcY5VurYBlfcuUgciB
- fWSRxceHepPbgAAAAAAAAAAAAAAAAAAAAAAAAACJsqMAAACdeWOIgMeXbcN+35esZdeAedtxxYG0q54A
- AAAAAAAAAAAAAAAAAAAAAKGyshJbAAD/ZGNp2LGUi9caennJh+DYi2Rx1J6LipMAAAAAAAAAAAAAAAAA
- AAAAAKNvEqa9AACGccdxe3Jw1KmBioqAkm1pi5ezkofQq7BcAAAAAAAAAAAAAAAAvaUIPEI+QkI+esFc
- asenr9X9bt6zqoDPsYeX1X7gq2SOfhrAAAAAAAAAAAAAAGJlQ+Mq4+PjKioqREOxS4aI3nJueox6eN7e
- ktWO3WV4ybHb38NiAAAAAAAAAABcSxws4+MtZi3j4+Pj4+MNQzhszH1kjmp72Hnfen+OgHxtgXyXZXLG
- AAAAAAAAAADNLCxYLWZmZmYtZi3jLS0UAUM4o4bYs4+BqYFjcH2Xl86UjpNqjJOtAAAAAAAAAM1DDWYt
- U1Bm4eFmZmYtZuHaFEMpx63MiKR+25WPsX+NcNa0eLNpeZN5AAAAAAAAFWYNQ2ZmUF5m4V7hZmbhZuFe
- a0sI/4aOampq1XIbzd0/bGVy4mVw0xtpAAAAAAAANywNZlNQ2l7a2l7aUOFT2tpeBMg7xTZyZWTXfaDV
- l7SUfo5lZXDIZMpbAAAAAAAA2w2y2l5eXl5eXl5eXtraXl5eXl5reyw2jXHIZZFuj+J9sa/iaWWX4GwA
- AAAAAAAAUA2WXl5eXl5ra2trXl5eXl5eBMU5Cws2aZU/2HHN4sptleKUbnIbcs4AAAAAAACDa1myBP7+
- /v4EBAQ0///+NAQ0PQsLPWNppXqNY5eX4o+z2KWop9ulG8kAAAAAAAAA/BwNBAQ3Lh832tra0gg0NzSl
- Cwul/ASGcM2zfXySiJTN23LLtLGNGwAAAAAAAAAAvTcNUdo0LjTa2tprNDzHBDekCxz8BP4Axty0G39x
- sWW039gbGxvK+wAAAAAAAAAAW1umlvwnCcAENzQ3/giqNMe8pT0EXmAAAHZ8eZeK4G0blaE2ozXxYQAA
- AAAAAAAAAAAAIG0lCWGj+gAAAMYIXF1bAMhL/FwAAAAAW9Xg4tN3menrvvf2t/EAAAAAAAAAAAAA/WkO
- umB3vwBgAHNLYlsAAMI8QjgAAAAAAABg+Ofr6xj3vr6bmea3AAAAAAAAAAAAALUuaAANiQAAALU8xlw2
- bFzBKkLBAAAAAADm9haa9773uZqZ7wAAAAAAAAAAAAAA/zc081uJEgBbW1zSCHYLHADBQjycAAAAAGH2
- vru5FpoW95nnmABgAAAAAAAAAAAVUFNTN1tidQyhoAzGPAB3bcY8PsMAAAAAAObwgua5FrubEZu5F4IA
- AAAAAAAAwJ68NzfaNwAAAAAAAABbPMgAxjg4AAAAAAAAAAAAt+e5vpuavhbp6GcAAAAAAACi2dPZ2dnR
- hQAAAAAAAAAACM0AAAAAAAAAAAAAAAAAAOmam/K7ufbwmGdbXwAAAACk2dFt2c7Ry9NpAAAAAAAA7rjk
- uOTuAAAAAAAAAAAA8euZ6bnpmpmCAAAAAAAAAADKLLI5DQ09xM7ZhgAAAGEj7Afs6gfquOQAAAAAAADw
- 6ZhnE5no6JmZZwAAAAAAAAAAwzlvErIFlhyiYgAAAOXqMeoxI+oHB4IAAAAAYGcTtwCY6LeY54K55QAA
- AAAAAAAAAB8nCTYSPRzEAAAAXyMHIyO4YWEAAAAAAAAAAAAAAACYYQBnmABntwAAAAAAAAAAAAAOJQAA
- AAAAAAAAALa4XAD/xgAAAAAAAAAAAAAAAFsAAAAAt10AAAAAAAAAAAAAAARBOgAAAAAAAAAAAAAAAAAI
- PAAAAAAAAAAAAAAAAFsAAAAAgmEAAAAAAAAAAAAAAEFZUf4AAAAAAAAAAAAAAADCCAAAAAAAAAAAAAAA
- AAAAAAAAWwAAAAAAAAAAAAAAADpROoMAAAAAAAAAAAAAAAAAnGIAAAAAAAAAAAAAAAAAAAAAAFsAAAAA
- AAAAAAAAAAD+YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFxbAAAAAAD///////8AAP//
- /////wAA//4/////AAD/wAPgA/8AAP+AAAAA/wAA/wAAAAB/AAD/gAAAAD8AAP/AAAAAPwAA//AGAAA/
- AAD//BwAAD8AAP/+PAAAHwAA//48AAAfAAD//jgAAA8AAP/+OAAADwAA//44AAAHAAD//jgAAAcAAP/8
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/ToolWindows/BatchAdd.Designer.cs b/win/CS/ToolWindows/BatchAdd.Designer.cs
deleted file mode 100644
index 08a457f19..000000000
--- a/win/CS/ToolWindows/BatchAdd.Designer.cs
+++ /dev/null
@@ -1,224 +0,0 @@
-namespace Handbrake.ToolWindows
-{
- partial class BatchAdd
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BatchAdd));
- this.btnAdd = new System.Windows.Forms.Button();
- this.btnCancel = new System.Windows.Forms.Button();
- this.label3 = new System.Windows.Forms.Label();
- this.label4 = new System.Windows.Forms.Label();
- this.maxDuration = new System.Windows.Forms.MaskedTextBox();
- this.minDuration = new System.Windows.Forms.MaskedTextBox();
- this.panel1 = new System.Windows.Forms.Panel();
- this.label37 = new System.Windows.Forms.Label();
- this.panel2 = new System.Windows.Forms.Panel();
- this.label8 = new System.Windows.Forms.Label();
- this.pictureBox2 = new System.Windows.Forms.PictureBox();
- this.lbl_display = new System.Windows.Forms.Label();
- this.panel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
- this.SuspendLayout();
- //
- // btnAdd
- //
- this.btnAdd.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btnAdd.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btnAdd.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnAdd.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btnAdd.Location = new System.Drawing.Point(194, 117);
- this.btnAdd.Name = "btnAdd";
- this.btnAdd.Size = new System.Drawing.Size(90, 22);
- this.btnAdd.TabIndex = 4;
- this.btnAdd.TabStop = false;
- this.btnAdd.Text = "Add Titles";
- this.btnAdd.UseVisualStyleBackColor = true;
- this.btnAdd.Click += new System.EventHandler(this.BtnScanClick);
- //
- // btnCancel
- //
- this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btnCancel.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btnCancel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnCancel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btnCancel.Location = new System.Drawing.Point(128, 117);
- this.btnCancel.Name = "btnCancel";
- this.btnCancel.Size = new System.Drawing.Size(60, 22);
- this.btnCancel.TabIndex = 5;
- this.btnCancel.TabStop = false;
- this.btnCancel.Text = "Cancel";
- this.btnCancel.UseVisualStyleBackColor = true;
- this.btnCancel.Click += new System.EventHandler(this.BtnCancelClick);
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(125, 74);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(25, 13);
- this.label3.TabIndex = 7;
- this.label3.Text = "and";
- //
- // label4
- //
- this.label4.AutoSize = true;
- this.label4.Location = new System.Drawing.Point(227, 74);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(57, 13);
- this.label4.TabIndex = 8;
- this.label4.Text = "(hh:mm:ss)";
- //
- // maxDuration
- //
- this.maxDuration.Location = new System.Drawing.Point(156, 71);
- this.maxDuration.Mask = "00:00:00";
- this.maxDuration.Name = "maxDuration";
- this.maxDuration.RejectInputOnFirstFailure = true;
- this.maxDuration.Size = new System.Drawing.Size(65, 20);
- this.maxDuration.TabIndex = 11;
- this.maxDuration.Text = "023000";
- this.maxDuration.TextChanged += new System.EventHandler(this.maxDuration_TextChanged);
- //
- // minDuration
- //
- this.minDuration.Location = new System.Drawing.Point(54, 71);
- this.minDuration.Mask = "00:00:00";
- this.minDuration.Name = "minDuration";
- this.minDuration.Size = new System.Drawing.Size(65, 20);
- this.minDuration.TabIndex = 10;
- this.minDuration.Text = "001800";
- this.minDuration.TextChanged += new System.EventHandler(this.minDuration_TextChanged);
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.label37);
- this.panel1.Controls.Add(this.panel2);
- this.panel1.Controls.Add(this.label8);
- this.panel1.Controls.Add(this.pictureBox2);
- this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
- this.panel1.Location = new System.Drawing.Point(0, 0);
- this.panel1.Margin = new System.Windows.Forms.Padding(0);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(299, 65);
- this.panel1.TabIndex = 63;
- //
- // label37
- //
- this.label37.AutoSize = true;
- this.label37.Location = new System.Drawing.Point(51, 27);
- this.label37.Margin = new System.Windows.Forms.Padding(3);
- this.label37.Name = "label37";
- this.label37.Size = new System.Drawing.Size(166, 13);
- this.label37.TabIndex = 105;
- this.label37.Text = "Using the current encode settings";
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.SystemColors.Control;
- this.panel2.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.panel2.Location = new System.Drawing.Point(0, 55);
- this.panel2.MaximumSize = new System.Drawing.Size(0, 10);
- this.panel2.MinimumSize = new System.Drawing.Size(0, 10);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(299, 10);
- this.panel2.TabIndex = 59;
- //
- // label8
- //
- this.label8.AutoSize = true;
- this.label8.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label8.Location = new System.Drawing.Point(51, 11);
- this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(124, 13);
- this.label8.TabIndex = 61;
- this.label8.Text = "Add all Titles betwen";
- //
- // pictureBox2
- //
- this.pictureBox2.Image = global::Handbrake.Properties.Resources.AddToQueue;
- 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;
- //
- // lbl_display
- //
- this.lbl_display.AutoSize = true;
- this.lbl_display.Location = new System.Drawing.Point(51, 96);
- this.lbl_display.Name = "lbl_display";
- this.lbl_display.Size = new System.Drawing.Size(112, 13);
- this.lbl_display.TabIndex = 64;
- this.lbl_display.Text = "This will add {0} items.";
- //
- // BatchAdd
- //
- this.AcceptButton = this.btnAdd;
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.CancelButton = this.btnCancel;
- this.ClientSize = new System.Drawing.Size(299, 151);
- this.Controls.Add(this.lbl_display);
- this.Controls.Add(this.panel1);
- this.Controls.Add(this.maxDuration);
- this.Controls.Add(this.minDuration);
- this.Controls.Add(this.label4);
- this.Controls.Add(this.label3);
- this.Controls.Add(this.btnCancel);
- this.Controls.Add(this.btnAdd);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "BatchAdd";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "*** THIS IS A CONCEPT WINDOW ***";
- this.panel1.ResumeLayout(false);
- this.panel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.Button btnAdd;
- internal System.Windows.Forms.Button btnCancel;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label label4;
- private System.Windows.Forms.MaskedTextBox maxDuration;
- private System.Windows.Forms.MaskedTextBox minDuration;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.Label label37;
- private System.Windows.Forms.Panel panel2;
- private System.Windows.Forms.Label label8;
- private System.Windows.Forms.PictureBox pictureBox2;
- private System.Windows.Forms.Label lbl_display;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/BatchAdd.cs b/win/CS/ToolWindows/BatchAdd.cs
deleted file mode 100644
index 25b6d4abc..000000000
--- a/win/CS/ToolWindows/BatchAdd.cs
+++ /dev/null
@@ -1,149 +0,0 @@
-/* TitleSpecificScan.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Linq;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- /// <summary>
- /// Title Specific Scan
- /// </summary>
- public partial class BatchAdd : Form
- {
- /// <summary>
- /// The standard display count texts
- /// </summary>
- private const string DisplayAddCount = "This will add {0} items.";
-
- /// <summary>
- /// The Source Data (IF Available)
- /// </summary>
- private readonly Source sourceData;
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="BatchAdd"/> class.
- /// </summary>
- /// <param name="sourceData">
- /// The source Data.
- /// </param>
- public BatchAdd(Source sourceData)
- {
- this.sourceData = sourceData;
- InitializeComponent();
-
- // Get the Default values for batch encoding.
- this.minDuration.Text = this.UserSettingService.GetUserSetting<string>(UserSettingConstants.BatchMinDuration);
- this.maxDuration.Text = this.UserSettingService.GetUserSetting<string>(UserSettingConstants.BatchMaxDuration);
- this.UpdateEncodeDisplay();
- }
-
- /// <summary>
- /// Button Cancel Click Event Handler
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void BtnCancelClick(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.Cancel;
- }
-
- /// <summary>
- /// Button Scan Click Event Handler
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void BtnScanClick(object sender, EventArgs e)
- {
- this.UserSettingService.SetUserSetting(UserSettingConstants.BatchMinDuration, this.minDuration.Text);
- this.UserSettingService.SetUserSetting(UserSettingConstants.BatchMaxDuration, this.maxDuration.Text);
- this.DialogResult = DialogResult.OK;
- }
-
- /// <summary>
- /// Gets the minimum duration that the user entered.
- /// </summary>
- public TimeSpan Min
- {
- get
- {
- TimeSpan title;
- TimeSpan.TryParse(this.minDuration.Text, out title);
-
- return title;
- }
- }
-
- /// <summary>
- /// Gets the maximum duration that the user entered.
- /// </summary>
- public TimeSpan Max
- {
- get
- {
- TimeSpan title;
- TimeSpan.TryParse(this.maxDuration.Text, out title);
-
- return title;
- }
- }
-
- /// <summary>
- /// Update the Display which shows the number of titles that will be added.
- /// </summary>
- private void UpdateEncodeDisplay()
- {
- int count = this.sourceData.Titles.Count(title => title.Duration.TotalSeconds > this.Min.TotalSeconds && title.Duration.TotalSeconds < this.Max.TotalSeconds);
-
- if (count > 0)
- {
- lbl_display.Text = string.Format(DisplayAddCount, count);
- lbl_display.Visible = true;
- }
- else
- {
- lbl_display.Visible = false;
- }
- }
-
- /// <summary>
- /// Min Duration has changed.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void minDuration_TextChanged(object sender, EventArgs e)
- {
- this.UpdateEncodeDisplay();
- }
-
- /// <summary>
- /// Max duration was changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void maxDuration_TextChanged(object sender, EventArgs e)
- {
- this.UpdateEncodeDisplay();
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/BatchAdd.resx b/win/CS/ToolWindows/BatchAdd.resx
deleted file mode 100644
index c3c3ff8ef..000000000
--- a/win/CS/ToolWindows/BatchAdd.resx
+++ /dev/null
@@ -1,500 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/ToolWindows/DownloadUpdate.Designer.cs b/win/CS/ToolWindows/DownloadUpdate.Designer.cs
deleted file mode 100644
index 74b0affe7..000000000
--- a/win/CS/ToolWindows/DownloadUpdate.Designer.cs
+++ /dev/null
@@ -1,111 +0,0 @@
-/* frmDownload.Designer.cs
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- partial class DownloadUpdate
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DownloadUpdate));
- this.lblProgress = new System.Windows.Forms.Label();
- this.progress_download = new System.Windows.Forms.ProgressBar();
- this.btn_cancel = new System.Windows.Forms.Button();
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- this.PictureBox1 = new System.Windows.Forms.PictureBox();
- this.tableLayoutPanel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).BeginInit();
- this.SuspendLayout();
- //
- // lblProgress
- //
- resources.ApplyResources(this.lblProgress, "lblProgress");
- this.lblProgress.Name = "lblProgress";
- //
- // progress_download
- //
- resources.ApplyResources(this.progress_download, "progress_download");
- this.progress_download.Name = "progress_download";
- this.progress_download.Style = System.Windows.Forms.ProgressBarStyle.Continuous;
- //
- // btn_cancel
- //
- resources.ApplyResources(this.btn_cancel, "btn_cancel");
- this.btn_cancel.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_cancel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_cancel.Name = "btn_cancel";
- this.btn_cancel.TabStop = false;
- this.btn_cancel.UseVisualStyleBackColor = true;
- this.btn_cancel.Click += new System.EventHandler(this.BtnCancelClick);
- //
- // tableLayoutPanel1
- //
- resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
- this.tableLayoutPanel1.Controls.Add(this.PictureBox1, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.btn_cancel, 1, 2);
- this.tableLayoutPanel1.Controls.Add(this.progress_download, 1, 0);
- this.tableLayoutPanel1.Controls.Add(this.lblProgress, 1, 1);
- this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- //
- // PictureBox1
- //
- this.PictureBox1.Image = global::Handbrake.Properties.Resources.Download;
- resources.ApplyResources(this.PictureBox1, "PictureBox1");
- this.PictureBox1.Name = "PictureBox1";
- this.tableLayoutPanel1.SetRowSpan(this.PictureBox1, 3);
- this.PictureBox1.TabStop = false;
- //
- // DownloadUpdate
- //
- resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.tableLayoutPanel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "DownloadUpdate";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.tableLayoutPanel1.ResumeLayout(false);
- this.tableLayoutPanel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Label lblProgress;
- private System.Windows.Forms.ProgressBar progress_download;
- internal System.Windows.Forms.Button btn_cancel;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
- internal System.Windows.Forms.PictureBox PictureBox1;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/DownloadUpdate.cs b/win/CS/ToolWindows/DownloadUpdate.cs
deleted file mode 100644
index f359e09a4..000000000
--- a/win/CS/ToolWindows/DownloadUpdate.cs
+++ /dev/null
@@ -1,122 +0,0 @@
-/* DownloadUpdate.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Diagnostics;
- using System.IO;
- using System.Net;
- using System.Threading;
- using System.Windows.Forms;
-
- /// <summary>
- /// The Download Window
- /// </summary>
- public partial class DownloadUpdate : Form
- {
- private readonly Thread downloadThread;
- private Stream responceStream;
- private Stream localStream;
- private HttpWebRequest webRequest;
- private HttpWebResponse webResponse;
- private static int progress;
- private bool killThread;
-
- private delegate void UpdateProgessCallback(long bytesRead, long totalBytes);
-
- private delegate void DownloadCompleteCallback();
-
- private delegate void DownloadFailedCallback();
-
- public DownloadUpdate(string filename)
- {
- InitializeComponent();
-
- this.downloadThread = new Thread(Download);
- this.downloadThread.Start(filename);
- }
-
- private void Download(object file)
- {
- string tempPath = Path.Combine(Path.GetTempPath(), "handbrake-setup.exe");
- string hbUpdate = (string)file;
- WebClient wcDownload = new WebClient();
-
- try
- {
- if (File.Exists(tempPath))
- File.Delete(tempPath);
-
- this.webRequest = (HttpWebRequest)WebRequest.Create(hbUpdate);
- this.webRequest.Credentials = CredentialCache.DefaultCredentials;
- this.webResponse = (HttpWebResponse)this.webRequest.GetResponse();
- long fileSize = this.webResponse.ContentLength;
-
- this.responceStream = wcDownload.OpenRead(hbUpdate);
- this.localStream = new FileStream(tempPath, FileMode.Create, FileAccess.Write, FileShare.None);
-
- int bytesSize;
- byte[] downBuffer = new byte[2048];
-
- long flength = 0;
- while ((bytesSize = this.responceStream.Read(downBuffer, 0, downBuffer.Length)) > 0)
- {
- if (this.killThread)
- return;
- this.localStream.Write(downBuffer, 0, bytesSize);
- flength = this.localStream.Length;
- Invoke(new UpdateProgessCallback(this.UpdateProgress), new object[] {this.localStream.Length, fileSize});
- }
-
- this.responceStream.Close();
- this.localStream.Close();
-
- if (flength != fileSize)
- Invoke(new DownloadFailedCallback(this.DownloadFailed));
- else
- Invoke(new DownloadCompleteCallback(this.DownloadComplete));
- }
- catch
- {
- lblProgress.Text = "An Error Occured. Please try again later.";
- }
- }
-
- private void UpdateProgress(long bytesRead, long totalBytes)
- {
- long p = (bytesRead * 100) / totalBytes;
- int.TryParse(p.ToString(), out progress);
- progress_download.Value = progress;
- lblProgress.Text = (bytesRead / 1024) + "k of " + (totalBytes / 1024) + "k ";
- }
-
- private void DownloadComplete()
- {
- lblProgress.Text = "Download Complete";
- btn_cancel.Text = "Close";
-
- Process.Start(Path.Combine(Path.GetTempPath(), "handbrake-setup.exe"));
- this.Close();
- Application.Exit();
- }
-
- private void DownloadFailed()
- {
- lblProgress.Text = "Download Failed";
- btn_cancel.Text = "Close";
- }
-
- private void BtnCancelClick(object sender, EventArgs e)
- {
- this.killThread = true;
- lblProgress.Text = "Cancelling ...";
- if (this.webResponse != null) this.webResponse.Close();
- if (this.responceStream != null) this.responceStream.Close();
- if (this.localStream != null) this.localStream.Close();
- this.Close();
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/DownloadUpdate.resx b/win/CS/ToolWindows/DownloadUpdate.resx
deleted file mode 100644
index db4b953de..000000000
--- a/win/CS/ToolWindows/DownloadUpdate.resx
+++ /dev/null
@@ -1,670 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="lblProgress.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="lblProgress.Location" type="System.Drawing.Point, System.Drawing">
- <value>73, 29</value>
- </data>
- <data name="lblProgress.Size" type="System.Drawing.Size, System.Drawing">
- <value>98, 13</value>
- </data>
- <data name="lblProgress.TabIndex" type="System.Int32, mscorlib">
- <value>10</value>
- </data>
- <data name="lblProgress.Text" xml:space="preserve">
- <value>Awaiting Download</value>
- </data>
- <data name="&gt;&gt;lblProgress.Name" xml:space="preserve">
- <value>lblProgress</value>
- </data>
- <data name="&gt;&gt;lblProgress.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;lblProgress.Parent" xml:space="preserve">
- <value>tableLayoutPanel1</value>
- </data>
- <data name="&gt;&gt;lblProgress.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="progress_download.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>Left, Right</value>
- </data>
- <data name="progress_download.Location" type="System.Drawing.Point, System.Drawing">
- <value>73, 3</value>
- </data>
- <data name="progress_download.Size" type="System.Drawing.Size, System.Drawing">
- <value>277, 23</value>
- </data>
- <data name="progress_download.TabIndex" type="System.Int32, mscorlib">
- <value>9</value>
- </data>
- <data name="&gt;&gt;progress_download.Name" xml:space="preserve">
- <value>progress_download</value>
- </data>
- <data name="&gt;&gt;progress_download.Type" xml:space="preserve">
- <value>System.Windows.Forms.ProgressBar, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;progress_download.Parent" xml:space="preserve">
- <value>tableLayoutPanel1</value>
- </data>
- <data name="&gt;&gt;progress_download.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="btn_cancel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
- <value>Right</value>
- </data>
- <data name="btn_cancel.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_cancel.Location" type="System.Drawing.Point, System.Drawing">
- <value>279, 46</value>
- </data>
- <data name="btn_cancel.Size" type="System.Drawing.Size, System.Drawing">
- <value>71, 22</value>
- </data>
- <data name="btn_cancel.TabIndex" type="System.Int32, mscorlib">
- <value>26</value>
- </data>
- <data name="btn_cancel.Text" xml:space="preserve">
- <value>Cancel</value>
- </data>
- <data name="&gt;&gt;btn_cancel.Name" xml:space="preserve">
- <value>btn_cancel</value>
- </data>
- <data name="&gt;&gt;btn_cancel.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_cancel.Parent" xml:space="preserve">
- <value>tableLayoutPanel1</value>
- </data>
- <data name="&gt;&gt;btn_cancel.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="tableLayoutPanel1.ColumnCount" type="System.Int32, mscorlib">
- <value>2</value>
- </data>
- <data name="PictureBox1.InitialImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
- <value />
- </data>
- <data name="PictureBox1.Location" type="System.Drawing.Point, System.Drawing">
- <value>3, 3</value>
- </data>
- <data name="PictureBox1.Size" type="System.Drawing.Size, System.Drawing">
- <value>64, 64</value>
- </data>
- <data name="PictureBox1.TabIndex" type="System.Int32, mscorlib">
- <value>25</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Name" xml:space="preserve">
- <value>PictureBox1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Type" xml:space="preserve">
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Parent" xml:space="preserve">
- <value>tableLayoutPanel1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="tableLayoutPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Fill</value>
- </data>
- <data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
- <value>9, 9</value>
- </data>
- <data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
- <value>3</value>
- </data>
- <data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
- <value>353, 73</value>
- </data>
- <data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
- <value>27</value>
- </data>
- <data name="&gt;&gt;tableLayoutPanel1.Name" xml:space="preserve">
- <value>tableLayoutPanel1</value>
- </data>
- <data name="&gt;&gt;tableLayoutPanel1.Type" xml:space="preserve">
- <value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;tableLayoutPanel1.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;tableLayoutPanel1.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
- <value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="PictureBox1" Row="0" RowSpan="3" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="btn_cancel" Row="2" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="progress_download" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;Control Name="lblProgress" Row="1" RowSpan="1" Column="1" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="AutoSize,0,AutoSize,0" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0" /&gt;&lt;/TableLayoutSettings&gt;</value>
- </data>
- <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
- <value>6, 13</value>
- </data>
- <data name="$this.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
- <value>371, 91</value>
- </data>
- <data name="$this.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 8.25pt</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- AAAAcQByc3R1dnd4eQAAAAAAAGgAaWprbG1ub3AAAAAAXF1eX2BhYmNkZWZnAAAAT1BRUlNUVVZXWFla
- WwAAQUJDREVGR0hJSktMTU4AADM0NTY3ODk6Ozw9Pj9AAAAAJygpKissLQAuLzAxMgAAABwdHh8gISIA
- ACMkJSYAABITFAAAFRYXAAAYGRobAAAHCAkKAAsMDQAADg8QEQAAAAMAAAAEBQAAAAAABgAAAAACAAAA
- AAAAAAAAAAAAAP//AADgBwAA4AMAAPoDAAD6AQAA+gEAAOABAADAAQAAgAEAAIABAADAQQAAwGEAAIxh
- AACEYQAA3PsAAN//AAAoAAAAMAAAAGAAAAABACAAAAAAAIAlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAMAAAAGAAAACAAA
- AAcAAAAHAAAABgAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxIOAwgFBAEOAQAAEgAA
- ABgAAAAbAAAAHQAAAB0AAAAcAQEAGQAAABYAAAAQAAAADQAAAAwAAAAKAAAACgAAAAsAAAAQAAAAFwMH
- CRwBAgMhAAMEIwEEBSUAAgMmAQICIwEBAR8AAAAYAAAAEQAAAAkAAAADAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQICAAgBAgATAQEBIAcI
- CCwFBgc2BQUGQAYGBkgGBgVOBAQEVQUFBVUEBARTAQICTQcHB0UGBgY+BwcHNgICAi4AAAAoAAAAJAAA
- ACcBAgIsAAABKQAAADAAAAA7AAAARwAAAE0BAABOAAAATAAAAEgAAAJCAQUHOAEAACwAAAAeAAAAEgAA
- AAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEGRIMEgAA
- AB8AAAAxAAAAOwAAAFUAAAB2AAAAjQAAAKgAAAC1AAAAsQAAALIAAACrAAAAmQAAAIcAAABuAAAAWgAA
- AEoAAABAAAAAQQABAzwAAAA8AAAAfA4eJZoGDA/AEx8m2A8YHNoSFxjaEBgbxwcAAJgDAACDAAAAagAA
- AFUAAABHAAAAMwAAACAAAAAQAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAIAAAAQBQMCIAAAADMBAABMEA4Nkjc2Ndh9e3r4kI+P/J+fn/+IiIn/b29v/3Jycv9xcnL/Xlxb+0lK
- SvJGRkbaUVBQzBoaGqIAAAB4AAAAUwEAAF4MCwu/G1Fw/xtTdf8iQVD/ImCB/xtXdv8YN0n/HE1s/x46
- S/8QIy35EiUw4QoDAKMAAABwAAAAXAIAAEIAAAArAAAAGAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAQAAAASAAAAIwUFBjIAAABkQ0ND/46Ojv9/gID8hoaG/YmJif1ycnL8YWJh/VVV
- Vf1bW1v+ZGVl/nNzc/94eHj/np+f/7Ozs/9HSEn6AAECmR41QuYaP1L/KW2V+xZbh/spVm38Gi85/B1X
- dPwpQE78H2OO/CZoj/0eSmP+Dz1a/w8oN/0AAACtAAABdgAAAGAAAABEAAAAKwAAABcAAAAGAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAMAAAAGwEBAC4AAAA9Dg0LtDUzMv9nZ2b/bm5u/oWF
- hfu7u7v9v7+//qioqP5xcXH+cnJy/nl5efuQkJD6cXFx/FBQUP8kJCLuAwAAvyJpj/8mdJ77FRsd/ipp
- iv4sW3L+KFNs/hZLbf4kOUb/HDlJ/htae/4XKjX+KF17/DCTxf4jPEj5AQAAyQUEBHEAAABRAAAAOgAA
- ACIAAAAPAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAACgAAABgAAAAlAAAANhMQ
- DoYqKCfbVVNT/zIxMf+Li4v/4uPi/qurq/99fX3+fX19/2FhYf+UlZX/fHt8/zIzNNEFAQCqHjdF8yNZ
- dvwkUGj+Hk1q/y9adP8hKi3/IERa/xhah/8kdKT/IGOG/xEwQP4lUWj/MlVo/zJmfP4hNT3+Ey88/wkV
- G9MAAABZAAIDPAAAACYAAAATAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAIAAAAJAAAAEQAAABAAAAAlAAAAUAAAAH4TExPdtbW1/qysrPx+fn7+QUBA9RUUE48AAABzSFNQRQAA
- AEseOkvoI2iW/yArMf0TM0P/G2SS/h5VeP41XXH/J1d0/h0+UP8rYXz/NISq/zxrf/8hXH/+FFB4/ixt
- jP8oSFn+IWKJ+w0iK/8DBAScAAMFOQAAASEAAAARAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAABMREANaW1oDDQsJAQcICAAEAwNqdHR0/8PDxPhmZmf/DAwMmHt6
- egAiLzUAbImSABsgIZQoc5z/G0hn+iNQaP8fU27+Jm+W/zFwkP8qXXv/GUJc/y9QXv8papD/MFZq/xca
- Gv8zfKD/KH6q/zSMtv4sUmj/G2WX+ydxlf4aPE3MAAAAHAoYHxcAAAAIMSgjAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAQEAAgIBAgAAAAMAAAArSEhI+8TE
- xP1LTEz7AAAAMwAAAAIbLDUHJj9NABAVGK8oYHz+F0BV+xxkkv4kapr/Jkte/yA1Pv8veJv/KWmH/zRo
- g/8TTXb/ImyW/ydVaf8ZMkP/Klx4/zFmfv8nQ07+L4ex/jap4P0WNUP1AAAAUgAAAQAAAAACfmteAAoJ
- CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOrr
- 6gD+/v4ELzAw0rS0tP8xMTHkAgECDl5eXgARBwEADwcBLiZRZ/EOGBz+H2KH/RM/W/8eYpH/LU9f/yZk
- jf8kWHf/MlRh/zFmf/8mg7r/K43C/zZviP8VSG//G2KR/x1FV/8mU2z/LWGE/y5LV/0jWXL+K1Rm9ggA
- AEofEA4AJx8aAQoFAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAKSlpQGvsLAAMDExqJubm/4oJya3eHp7AGRsbwUrRVEAHSYpkClqjP8KJzf6GEpk/yeB
- r/8sdZz/OGV6/xVMbv8icKP/I1Zt/x0cHP83YHD/OpC2/zNjef8idaT/IGmP/yJcdf8kWn//FlSA/iM6
- Rv8RKjb8Oqnb/yRCUOMnHBgMIBsYAAgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAENDQwJFRUUALi4uh42Ojv8cHR6hRkhJAEFVXgWh3uQAHy0zuiZL
- Xv4YVXv7F0Ri/iR6ov80aYH/MYCl/xxijP8hcqb/MXma/y5edv82hK3/MU9b/yUtMv8eZof/M6vj/x9O
- Yv8ufqf/IXOh/y90lf4XP1T+IV+A/C1hef8AAAI7AAECAA4REQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKampgGysrIALS4uopGRkf4VFRWhNTc5ACQm
- JwYsIBcADAQBqh9Sbf8TSGr7H16H/xsyPP8iMjn/MW+L/zCazf81ndH/OV5t/yVwnP8TUnv/MY28/yM5
- Qf8iU23/HlFp/xhIXv8pZoH/Oa/l/zBjev8cXYX+IGaZ+Ro2RP4IBQZgCQYGAAwMCwMbEgwAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAgIAAAAAAG5ubgDIyMgIPTw83KWl
- pv80MzPEw8TFAXt7egQBAAAACAQDZx84Rv8tfaj7JFp1/ydef/8reKf/NG2I/y9UZP83TFX/NoGj/yR9
- sv8QOVr/K4Ox/zRVZf8eXIX/JmeR/xgyPf8UO07/Gz5O/yBQZv8hdKH/JHKj+iZ8pv4AAACbAgoOAAYT
- GgIQCgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALCgkAERAPBAAA
- AAAAAABWZ2Zm/7Ozs/46OzvvCwsLFrq9vwEuQT8AGRscdypNX/8kOkT7J0hW/yV5qf8LME//NZ/X/yVE
- Uf8UJzH/KWmG/zCXyf8zmNH/K2B4/ztwiv8ZYI7/J3al/yVOYv8gcp7/IWqT/w4vPv8og67+Nq/o/R1c
- ef4JGyPuCQ4SHQYDBAAIBAIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAA
- AAQNEBABHSIjACAkJQovLi7YwcDA/bS0tPpeXl7/CQkJZAAAAADA9f8CCR4txhxeif8cOEX7JTpD/zdz
- kP8lhbX/NoCj/yRWbv8bZI7/Hl6D/yJPZP8kUWT/HEda/x9BT/89q+D/NXKN/yNZc/8bXYn/HmKQ/x9l
- if8JGB//H1lz/hlVcPwldpz/AQAAZQEAAAAECgwHAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAA
- AAH/AAEDERgdAAAAAAAKAAABAAAANwAAAKw1ODr/cnR1/F1fYf1OUVP9FRMT6wkAAEA+eaMAFCAnqyFk
- j/8TO1L7H2OP/y1PZ/84eZb/K2V//yBliP8YUHX/Jnyx/xpTbv8ZUnD/JXyn/yVzmP8lQk7/KDY8/xxW
- cv8wnNL/L5LH/yRxlf8XPVH/JlFv/iFadvonf6j+BQECgwYFBQAMFBoIAAAAAAAAAAAAAAAAAAAAAABs
- ogACAAAAAAIDA/8CAgCBAAAAAAAAJBQRFGstTlnBBnOK/wCYtv8ArtX9AKLM/wCkz/8ArNX+CJa6/x5Y
- aPwAJS6sBwICty1gff8VO1D8Fkdn/x1uof8xbIj/HSMm/yRbdf8rkMT/LZPF/xtbd/8ne6v/F0lz/yqH
- t/8XPEz/M57V/zBui/8maIb/NKvi/x9cef8dX4f/GlmE/ytkhPsfYHz/CBslmhVIYQAMICoIAAAAAAAA
- AAAAAAAAJNT/AABilAACAAECAgABAAQAABcADRSWPHWH9Fu00P8dxPT/BNT//RG8//wOvf//B9D//gHX
- //4C0///BNb//SrU//5tzO//L5Kr/wNBU/8XIyr/KElb/yuOv/84eZb/J1Z0/yROZ/8lWXL/GlFq/xtL
- Yf8qjb//K4zE/yd0mf8vb47/GViE/ymDtv81b4r/GUlg/yBEU/8rhrX/IXKh/jiVwvwbKzP/AgwRxxeB
- tgEHGyUFAAAAAAAAAAADBgoAJ+b/AAA6VwEAAAAACAAAUwBBVuBbr8z/ddn//w66//sVnfn9JJD0/jps
- 9f4jkvT+EK/2/xan9/8Psvn+D7P4/wmm9f4luP38xOX//WnG7v8AUHb+HjVB/yFKXv8xVWX/HV2F/xZX
- gv8yXnT/J1Jn/zNwkv8kTWD/LZjJ/yFRaP8udZn/GFmB/yZ5p/8nVWv/ID9O/y6BsP8qVmr/MZ/S/zZx
- i/09eJP/GzZC8gAAABwJAgAAAAAAAAAAAAAAAAAABSAtAQE0TgAKAQE7AEty/2/P//+Bz//6B6D0/TCA
- +P48cvn+O2z5/jtw+v87dvv/LIP1/ztt9/8lj/b/HJz4/i+J+P8XiPb+ZY32/vnv//9lyf/+AGeR/zI7
- PP8bIyb/NG+N/zSUxP83aH3/KoCt/xZPev8sgbL/HThE/zJngP8yW2z/Mp3Q/zCf1P81Wmr/OYGo/xVW
- g/8sdJ3/LWJ5/ytbcf0neqD/KmN/9QAAACIAAAAAAAAAAAYFBwAAAAAABBkqAQggKxIAS3DeUsb//s3M
- +vsrefP/Lob8/ilE1v4ULbz/PXr//zRm8f8vXun/PnL9/zls9/82c/f/L4b6/0Bz//8uU9//ESq7/2+O
- 8v+Qo/D/IHPN/xc0Tf8nYYT/Ikpf/ypJVv8oPEX/LGuM/x5wov8tfaj/OWyD/ymFtP8vdJf/NV5u/zFl
- fP89cIf/O7Lv/xdEX/8vk8b/KDtC/yxQX/0mdpz/KVFi6WJRShIAAAAAAAAAAAYFBgAyWHQCD0h0AAIH
- Ioc6fOD/4ev/+3ma+f8uZ/r+RoD//xYuvf8AAJP/OXL5/yxV4P8DCZr/MWbv/z15//87cvv/MVzp/zdx
- +P8sWOH/AACV/wAAiP8ANF3/AnSB/wUmOf8VHiv/GlyB/zBid/8yY3z/L2F5/y5xkP86epb/RYyw/xJG
- bP8rgrb/Q5zE/x82Qf80a4f/O3mV/0G17P82cIn/LWOE/z9nffxNjan/JjtCwqHT5gBhf4oGAAAAAAYE
- AwAvS0wAE1NlFwwsd++PrP/91dbz/Txx9P4lUd7/FCu5/wwYrf8AAJX/Bw6l/wkTqP8AAJH/Chaq/xUt
- u/8vX+j/HT3J/wcPoP8KFqn/AACg/wIBZP8MPFr/Enyp/wEuQf9CW1T/NHaW/zxxiP8lYob/G2KQ/zFX
- af8eJCX/MHGP/zOb0/80q+n/O4Cf/yRlif8XVn3/PG2J/ztvhP8zZoH/Ez1d/iJhh/stSFT+BgcHeAoa
- IAAFBwcHAAAAAAkVLgIAAAAAAAAAOSNTuv/C1//9oKDd/gUNov4CBJr/AACQ/wAAlf8AAJr/AACZ/wAA
- mP8AAJ7/AACb/wAAkv8FDKH/DRus/wAAkf8AAJT/AACY/wECp/8CAKL/CgiI/y1Ja/+V6uX/PVxf/zNd
- cf8eZ47/EkBd/ztwiv8sao7/J1l2/zhofP9Jrtn/L1ls/yyHu/8cZpf/PrDp/yU4P/83cIr/MpzT/jqq
- 4/sgNj//AwMEZgMAAAAGBgUHAAAAAAAEJwIAAQgAAAEDQRIrof7I2f38l5rd/QAAmP8AAKP/AACd/wAA
- oP8AAJf/AQGJ/wEBi/8AAIr/AACL/wAAlP8AAJr/AACb/wAAof8AAKX/AACc/wAAYf8XJk7/UIOF/p77
- +P+g/Pj+OlhZ/iQ4Q/41gqb+QZ7K/jl0kf8iZpP/E0lr/0Cx6P80SlT/JT5K/zB/pP9Dwfb/OX6e/yta
- ef87dZn+SY2r/Td3lPw1V2T8BAMDSgUFAwALDQ0FAAAAAAQCNAMFBCkACAcXVQAAhf6zuvP6rbLl/QAA
- cv8EA1D+BwlD/xoBLf8aBDX/Dw1r/w0LZf8QDmT/FhBX/wcjO/8BFUP/CgRF/wgIV/8EA2L/CxJJ/2Og
- lf+a+vD/q////3W3sf8iOUf+LDVB/jFTYPwhUW3/Ol5y/h45Rv4vmM//NpvR/0G79v82aYD/NZLD/zJw
- lf8uTFj/Mltv/xdIav4hcKH/MU1a+kCJqv8aRVi+JFlxACtPXwEAAAAAAAAAAAICHgIBARMAAAAUPwIB
- Q/52ebj72OD5/QcHdf0CAYT9BhV3/pgEAP9RDCj+FRqM/yYdkP8GB6f+GQmP/xRncv4CmIf+HQZS/xMW
- h/4QB1r/OldT/6r///+V8/X/ME1J/gAARP8AAIT+Gxwm/zNpgP8ORG37NIrA/jJZaf8oVmv+LXKR/iVK
- Wv83fZ7/E0Zn/x9vov85dpL/NkxT/zqs5f8zh7T9OGR1/kCMr/g/Ozk5Q0lLACAzOwIAAAAAAAAAAAAA
- AAAHCAYAUlQJBxIPD+AeG3X/wMbw/0ZIvP8PCpr/JyBV/6EAAv4qE1P/CQuy/xUQwv8KCbL/DQiO/hYZ
- T/8Atar/GSVS/xAJff8gF4T+LDdK/qL//v52wLn/AAA2/gEDYv8CBE37AAAATRs2Qb8weKH/Obbt/z+F
- pfsvdJv+HGiU/zWJs/41bYX/Na3o/y+Wyv88d4//Royw/0N8nf5CfZz8L0tX+RYfI4xXVFsZRD9FAwAA
- AAAAAAAAAAAAAAAAAAAMDAwCJCUQAAoLCHMKCQffS05etpedu9MICyrpQA8X+YoAAP4NFzH6FhB++xcT
- c/ocF177GRlt/BwGR/sAfnr9D2Rt/x4LR/4gH17/DwcV/zRYVv9wppf+BQBc+wAAl/4AAxGxAAFhAGgA
- ABEcGhyXK1hn6yRMXv8xmM7+F05y+jOj3/0nQ03/SYen/jyDs/4qLTL/M2dj/zlMKv1AbDf+IToL3gEH
- AG4bXAARLGsAAAEDAgIBAAEAAAAAAAAAAAAAAAAAAAAEAQQDBAkDAwOmAAAArJWcspIoR0ueRwAA7nAA
- AP8ABgDPRUEqxCkpGckAAADVAAIA2gAAANcAQkL5AHl4/gYAAMgECQCsCgwJrwAAAOgIS1X/AkVd+gIK
- Nf8LAABoEQsKAB4YGwAHAAAAAAAAGggFBnwwcZD9OabY/z+y6P9BZoD+OVND/ydMGP8icQD/LJoC/y+u
- Gv0pnBP+G24V1QoeA2gcPQZQDhIJJgEAAgABAAEDAAAAAAAAAAAAAAAABgYFAQsLCwANDQ0kAgICwiEi
- K8EnMkLGPQAC/iEMDN0BAwWPS0pQixsbH5EAAAKWAgMGngMCA5sCCAjJAFBQ/wkND+IKCQvEAAAArAAA
- AKIFISrbAZmv/wDH2vsDXnLyCAsKPQ8YGAAEIScFFRQQABEAAAADAAApAQMOcQ8SHakgSRD+LY8G/i6S
- AP4zqQn/MZEN/zCZGv8ylxv/M4kO/yNSAf8WLQD/Dh0BpgAAATEBAAACAAAAAAAAAAAAAAAACAcIAAkJ
- BAEDAwQAAwMCFwIBAMARAADKmAAA/xQMC5IAAABJ4uHgXGpqaVwAAABcAgMDXgADA1MQAQGBA5qa+wBD
- Q9AKAQGyQWpq/yI4OOAFAADIAiAo7QDX//sAwO3/AyUsgAQ1QAAFUmQDFw4HAQ8AAAUOIggsHjEAgCZ6
- Ddkwux/9MnwE/TGREP4wnhT/MJoP/zFjAP4udQD8I1AA/REVBKgWHQc0GicKIgAAAAYAAAAAAAAAAAwT
- GgAHDxYABQUGAQkIEAUFAQAFDAoGKwUQOtQFGGL+GxNB/w8UErkMDAqFbm9wfGJiYmwEBARrCgoKawgL
- DGkOAABrDmxs9gB5efUfGxvrsP///2qqqv0AAACRAyEoqgDN+/wDl7j/CRYWUgsWGAADHSQEAAAAAAAA
- AF0DBgD4JW4U/ymvJv8tfQf/LmoA/zGvIf4weQT/MMIp/zGWE/8rWwD+GEYA/REzA/UAAAKjAQAGWggG
- BjUKCAcAAAAAAA0VHQAIDxcAAAAAAAMPPAAEDTYAAgYbkQArw/8AOe75ADnr/gEWYv8GBgWfCgwQfBMU
- FJwdHh+tJSYnrh4oKbAcHyCpDjc31ACdnv0BAAC+QE9O/CxJS/8AOETLAaC+/wGlx/8MLTWeF3d3ARNM
- XAIAAAAAAAAAAAAAABURLAFbDjUIXAkQAKkYMwDyK2IA/DG2Jv4vfgn/MI8N/jDXN/4tiA7+LmEA/CRF
- A/wIDwHVBAMBngkOAj8JBwYAAAAAAAwTGgAECQ0AAAAAHwsTKGsJDyJbDQwQmwold/0AHpD7ACCv/QAa
- df0HAwQ1BwEAAAAAAAcAAAAHAAAACAgIBwsICgoHBQYFUQGVk/8ASkh3AG1pPwA2OaUBbYDfAWZ6yAEB
- A2YAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAANGwAAER8AKxEkAG0XRwWpL20A/jGmHvwwhxH/MHEA/zGX
- F/8txy3+JHoG/xxNAf0IGAKPAAADNgQACAQCAQEAAAAAARopNwASIjACIC05yVZ0kP9KZHz/UWyH/1t4
- jf9adYr8PlVu/w8VHeMAAAAaAAAAACEaEwAAAAEABgwOAAwBAAAKAAAABwAADAJwc+0BXGXeA5moFQB4
- hi8AAAACAAAAAAADAAAAAwIADQAAAA0AAAAAAAAACwgIAAAAAAAZPgIICRUDFAAABSAkdALsM30A/S+I
- E/4wdwr+MYMA/jJuAP0ldA39DjgS1xExAuAHHADrCQUHvQgCC30HBQUtBAMDBQAAAAAAAAAhKjlG+Vt4
- kfpDWG36KzxM/VNyj/89U2r+RmB3/jZKW/lJY3vgKTZEuRIQECoUFhgACg8RAyAAIAABAAMIABcASAYR
- CeEBQgn/BSwA5ABEAP0BLAPEAhIGnwIAAh8DAAINEwAMACQCGAAAAAAAIRkXABgdDQJHcxIADAAQDhc1
- BtYwmwD/LF0A/yZvBfwybwH+KnoA/y10AP4rVQD/CA0CpSx5AQ4teAAdBwAGPwQFADwAAAAPAwEBAzRH
- VwA7XWAXM0VT567W9P+2xdf4XnCA/sjd7/652vv+epWr/h8oL/89Umf/YoWn/xciLI8uQ1UAJTc/BgcA
- BAUDDAKDAWAA/wDJAP4AgwD+AMsD/wCQAv8AhwD/AJQA/gE6AfcEKgNpBjIEAAgiBQMAAAAAHhYVACxr
- CwAAABIrFDgF0SN2AP8SPQDQCRQAuiFtAPMpWQD+GlAA/BxVAO8qVQDzIVIA/wYaAmUOMQMACBgDAAYF
- AgAAAAAABQMCACg2QQIlODsACBIbTxoqM/RYcH7/dnR0/2daV/61ur//g4GB/6CnsvyApMT7Hys2/wkM
- D1gLDRIADxoRAQ4ACQkFMgPgAJMA+gCrAPgAlgD8AKMA/QBeAf0AkwP/AIAD/wZxBOQDEgJRARAAAAAN
- AAISDQ0BCQIJAAMACFkMGgTYHWQA4QgeAXwAAAAjDzUAmBlRAv8PHgCuEjsAxxRLAM8PEgBcLmkA/xAt
- APoABQI7Ag0DAAQDAwMAAAAAAwAAAGiNrAAAAAABCxMbACIAAC1UIiyVSyco8YAAAP5MWmT7V2Bv/4ii
- wP91mrf+ISs0yAAAABURIBcBAgIAAAkABlMEVAP8AIIA/wBWA/8AUAP/ADYA/QAMAP8BCgDnAAAAeRlj
- EgwJPgYABgAEAAAwAABXQj8AAAAAAAAOABYAAAAUAQADBQUEAwAJFAISDzUB9wAOAIIGCwA8CRoBchA1
- Af4AAAAYChgAYBEiAdUBAAKvAgAEMwUEAwACAQEDAAAAAENabQAAAAAAAwAAAlIIBQBvAAAlKQAA508B
- AO0AAAAxAAAAMgAAAEIAAAAyAAAAAgQFBgAWIhkBCQAGAAAEADcAGwBzATwBjQkBAK0CAADIATA0/wQ3
- Or0VmJwUBLCzAAAAAAAQVwoBBAQCAAAYAAAyJiQAAQABAAAAAAADAwIAEBIKAAwNBwAKCgWKBAQDqDkq
- JwMACgARETQGIwokAf8FBwNlAgMCAAAAAFQAAgA2AAMACQAAAAAKBwcAAAAAAAAAAAABAAAAAgICAAAC
- ACAcA23yYBTX/zcMmPsNBxFLFgkmABwKMwAAAAAAAAAAAAAAAAAVIxkACgAHAAEEAQAAKwAAAdMBABHn
- 8gAJ19YFA3Jy5wGhodMA+/kAAtXUAgAdAAAOUAkAAwQCAAAAAAAAAAAAAAAAAAAAAAATDw0CEAwLAAoH
- ByUHBQWnVUU8BRANCwABDwACEEkDAAQNAcsCBgGhAwsBAgECAAIAAAA7AAAACQAAAAAAAAAAAAAAAAAA
- AAAPCRECCgAWAAMAAFVfDdn/rH7/+IhI//8cAEmtRAC1AkgIpwYDAwMCAAAAAAAAAAAKCwcADQMJAAcF
- BQEBCgEDAP8AAwZbWQUGeXgACCwrggF+f/8CAAA6AwAAAAQFBAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAABAAAAAAAAADwAAAAbBQQDAAAAAAEKCQcCBAAEAAYEBGIEBAPJAwICAAAAAAAAAAAKAAAAFAAA
- AAAAAAAAAAAAAAAAAAAJBQoBBwQPAAQCByc7B43pfDbo/E8bp/kFAhJiDwM2ABwFQAIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAEGAAAABAAAGwQaGdkEFBNWBRwcAAUNDQIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAABAQEAAAAAAAAAAAAAAAAADAoJAAAAAAAeGBQABgcEAAYFBAcGBQSpAQAAIgEB
- AQAEAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAOCA8AGwszABcHLQABAQJ8HQBT4gAABbUAHAAAAH4AAAA4
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0AAAANAAAAFQwJAAoAABgBAAAMAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAAAAAAAdFhMACQcGAwgG
- BQAFBANhBgUEUQgGBQAKCAYDAAAAAQAAAAAAAAAA////////AAD///////8AAP/+P////wAA/8AD4AP/
- AAD/gAAAAP8AAP8AAAAAfwAA/4AAAAA/AAD/wAAAAD8AAP/wBgAAPwAA//wcAAA/AAD//jwAAB8AAP/+
- PAAAHwAA//44AAAPAAD//jgAAA8AAP/+OAAABwAA//44AAAHAAD//DgAAAcAAP/8GAAAAwAA//gYAAAD
- AAD/wAAAAAMAAP8AAAAAAwAA/AAAAAADAAD8AAAAAAMAAPgAAAAAAwAA8AAAAAADAADwAAAAAAMAAPAA
- AAAAAwAA8AAAAAAHAADgAAAAAAcAAPAAAAAADwAA8AAAEAAPAADwAAAYAA8AAPgAAB4ABwAA/AAAH4AD
- AAD+EAAPgA8AAP4AAA4AAwAA/AAAHwADAADwH8Q/wAcAAOAf5//gAQAA4Afgf8AfAADgA4AfgA8AAPAD
- gB4QDwAA+AcAf/JHAAD8/4H/5y8AAPj/+f/vPwAA8H/5//8/AAD4f/z//78AAPj/////nwAAKAAAACAA
- AABAAAAAAQAgAAAAAACAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAQEBAAAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlDWggSKjYNDyIsDQsc
- JAwoQlEJFB4jAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMD
- AgAMDQAGDA0OEQAAABoAAAAmAAAAMAAAADYAAAA1AAAALwsLCycYGRkfDAwMGwAAABkEDBAbAAAAHAAA
- ACgAAAA0AAAAOAAAADMAAAAqAAYKHwABAhIAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAACCwkGEgEAACkAAABDCAYFeR0cHJ0bGxy1FxcXtxcXF7MMCwqhAAAAggAAAGEAAABCAAAANwAA
- AEgMICqQDyAotxMrN84QHybQEBkeuAcFA5IBAABsAQAARwEAAC0AAAASAAAAAgAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAsHBgYkAAAASTk4ONV6eXn/lpaW/4uMjP9mZmb/ZmZm/2NjYv9iYmL4gICA60tL
- S8gBAgSFFy453x1bgv8iT2n/H1Bp/x9GXP8iWHn/GkBW/w4nOPEBAwacAAAAWwAAADwAAAAaAAAAAwAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAABgICAhsAAAAzIiAftFJRUf9oaGj/lpaW/7i4uP16enr9c3Nz/42N
- jv+AgYH/ODEt7g8lMOAlaIv/IEVZ+ipWbfwdSWP9IEpl/RtMZ/0bQFT8LWyO/x0/TvcDBQauAAABUAAA
- AC8GFBoQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwEBAA4AAAAaDQsJXS8tLKI7OjrixcXF/pKT
- k/5TUlLzWlpbu0dISI0OHyqxIk1o+hw9TfwfXYT+LEtc/x9HYP4laZD+LGeE/yNSbf8pY4L9KVBk/hIw
- Qf8DBASNBQoNLAUAABQGDBABAAAAAAAAAAAAAAAAAAAAAAAAAAABAQAAAgIBAAAAAAAAAAAAAAAAAAAA
- AD+EhIP7iYmJ/w0NDHAGAAAAAAAACyRXdPAfUnL/IFNw/SVhgf8rZIP+JVBn/ypde/8oTF7+JlNq/y6A
- qv8tYHv7JHil/hlBU8mk//8MCjZOCFSt1wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAF7e3sBjY2NB2pqauB2dnb7AAAAHAALEwEVJS1NHDpI/xlPbfweX4v+KEpd/iZdev8yYXX/ImuZ/yp7
- pP8eRmH+IVRy/iZNYf4ydpn8I1Rq+RkqMXQzU1cAJkxeAj5vggAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAO3t7QH09PQAaGhouGVlZeLd3d0DGoW6AClOYbYYQlj+GVd4+y9+pf8qYH3/G2OS/yZK
- Wf8zY3j/N2+J/yRsk/8icZj/Il2A/x5Laf4fSFn+LnOS/yYyMTAmNz8AHSwyAwAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAA3NzcAuTk5ABlZWa0Xl5f1gAAAAA8j74AGSkwxRtUd/4aUXL8Kk9d/i14
- nP8ui73/MmuI/yNpk/8qUWT/IlJo/yFlg/8lZob+M4u1/x5UdfofUnL9ERcXZw8UFAAWIycIAAAAAAAA
- AAAAAAAAAAAAAAAAAAAQDAsAEgAAAP///wKFhoYEmJucB2dqauZsb2/mS05PCwAJFQMXHyKVJ1dw/yVc
- evsgW4D/MW2K/y9LVP8xfqT/HGyg/zFwj/8kWn7/HlBu/xpIXf8eTWL+JHWh+yd/sP4IFx2iP3WMAA4s
- OwgAAAAAAAAAAAAAAAABKDQAAAAAAA4JBwIAAAACSk1MABoWFgAGAABrpp2b/3xycfwAAAA8M36tABk/
- V8EfQFP/K09f/CV3pP8veJz/GEFZ/yJkhv8rb5D/JU5g/zCAq/8rZYP/H2WP/xtbgf8aTWT9I26P/xdL
- ZPI3PUAcBA0SAAAAAAAAAAAAAAAAAAEUGgAAvPsCGRISAAAAAABOODYfL0NFch9RWfBRgI38O2t2/hk0
- O85JhZw1FjNIwR1TdP8dUXP8NG2L/yZVaf8hcqH/I3Kd/xlPa/8gbJb/JlZr/ylXa/8qg7D/LY6+/xhC
- W/4hUW/+IWqM/wAAADoAAAAAAAAAAAAAAAAAPlsAAQ4TAQAQFAAAAAA8MFNfsimZs/MAr93/Bbz7/wDH
- +v4A0P7+C8Px/zydt/8hZXfwCyw6/yJXeP4wfaT/Ij1O/yZoif8gXnr/JXag/yeAtP8kZIX/JnSj/y5x
- kf8hW3T/I2uS/yuBs/wfQ1P+AgYJXAAAAAAMEyYAAAAAAAA2SAEAPEgAACg5hUWZuP9Oy///Hqv//y+E
- /fwygvv+HKD3/xqm+v8Pr/z9JrH//6je//9CkrL/FENW/y5KVv8ka5f/LGWB/yhbd/8nZoj/J2uJ/y1i
- fP8if7P/LGF7/yRVcf8qcJX+MoOn+zBmf/8XM0CSGjpJAAsSJQAZbI0DBl+EAAAtSl9PodT/grz//B1/
- +PspQtP+PW77/zVn8f49cPv+NnT3/jSK/v8nY+/+T2LZ/pG7/v8WXJP+IDhH/ypeeP8xW2z/JGyT/yl4
- pf8vZX//L2+P/zR3lP89e5f/K4Cw/yVsk/8uTlv7K3KT/yVKWowtVmgACw8aAlOIjgAPZW4TMl2q6rvV
- //1Hd/r8Llnm/wMHm/4kStb/Dh2v/yNI0v84cPb/LVjj/yRF0f8AAJH/BS9s/wdieP8RJDT/KmSB/y9e
- df8pZIP/NGN1/zB3nv8qjMT/NHCL/yZSa/9AjbH/M3WV/ihRbv07aX3+GCImUxIZGgAUKlkJAAAoAAAA
- IE94l+P/naLn/AgctP8CBKH+AAGh/wAAmf8AAJz/AACc/wsZtP8KFrD/AACX/wAAnP8AAIH+Cih2/2uq
- p/5Fcn3+IWGG/yVihP4rT2L/K2WE/0GXv/8saor/I4G4/zdxjv4yYHf+LpDD/yJBUP4AAAAoAAAAAAUO
- egoBBFAAAANBYXOD2f2Lj9f6AAB4/gACe/4AAHn+BQR6/wYFeP8GBnT/AABw/wAAfP8BAY3/AwV2/zhW
- f/+GztH/hNHL/jFDSP4tZYD9OnSP/yVslf4vkMP+OnKK/y1hfP87krb/K2B+/y5nifxChqL/Lltv4Ud7
- hxFAk6QEAwFFCgAAKAAAAB5cQkKR/6iv4v4AAHf/Jw9L/2EGCf4VGID9Ew6V/RQWcv0Ib2L+FRRc/ggA
- Wf1TgYT9q////kVxfP8CA1L/Hi44/iNihf8ya4z6K2N+/DGBpf4zdJL+IHCf/zNieP80cY7+LH2t+zlr
- g/4pV25kVpy5ADlpfQcJCAADAQAAAAcIBRsTEC3ri47B7CcxnftKCy/9Ywsc/wkRp/8WEqj/Fwd7/wt3
- f/4UQXL/GAVq/0Jgbv99x779AABM/gAAWN8/SHBHJ1dy2DKIsf8ucJX/InCd/jRzj/83ltD+N2yQ/kJy
- i/1CbXL+HzAuxxMfEgxia2sAKCIeAg0LAwAHBwgCBwgLAAAAAGgjISC9U3F5p0gAAPMxBgfuHyo3zxIR
- GN0KBBTgAjA38wVQT/kRBhTIAAAAxxVBQvgHPHj/BQIlpBUTZwAVOkcQPzw8YSRffN4ymdD7OGaF/Dhc
- RP8lYQ/+Lo4W/S+PFv4VRgawBwwAYwAPABgAAAAACgkPAAcGBgADAQACBAMABwMEA3sdFRDHVgEA8wwH
- Botna2xsCgwNeQAAAHYDEhCaAVdX9wcHBcATISHAAg4TzQCInvkBoL/0AAwCPQg1RQBLamcACQAAGRgy
- GYondBryLooA/jCkCf4wjgr+MIoP/iZdBvQhTwCwFzQFRGqJAAAAAAAAAAAAAAQSRwAHDy8ABgwZOgYR
- TPAwFD72BQYCjYN5YXgoIhJ4EgAAdRgAAH0FeHjyEjo75H28vf8fFQ6/AGyH1wOy3P8HKS05ADpMAExK
- QBMJDgSqI3cS9CyND/8whAz+MJgW/zGnGv4rYgD9GDgA8RAtBIUHGAZBBgIGAwAAAAAAAAAAAB2KAwAf
- jRYCD0SbACvE/wApx/8BDTezBhxnQwwaTGkOYGFuDmRlZwZlZcYAZ2XMJ05NrwpJVeAAiKTqBmp0eQaI
- mQABcnkBABMAAwIQAC4HIQRjFScAyS6KEP0xjxH9MJ4X/i6vIP0nXQD/BhEAyjAsA00LGAUAi4+UBI+V
- nQAnND+hO1Jj8TtQZu09V3j8JTtm/goRI30ABCwABAwqAAdaWwAEYGIABDpDTQFdaeMAPEo3AA8nTwAA
- ABgIV18ABEWBAAaKZAAQGAYATWADAIGZAgwkaQHAMoMG/zCCDfozeQD+J3sR+RE/CcsWIhG8OjMFcwge
- Ay7X4uoAi56jB0ZZa+iDnLf/XXOF/4qrwvxUaXr6MUJR9UVbatEAAAAcLDJABBYACCQFRACvAWQB/wF3
- AP0AYwDmAkAAsBAHBEwEHwAACC4JAhtEBwAiTAgJHDwHoyJpAP8iVgDnLGwB/yVqAPsoUwD/DRwChERu
- IAIYTwEkKGoMDUxbaAYtQVAAESw6ZlRzgvh3bHL9o52k/4+eqv99la//MURW/SsuLRcAQQAAAy0CmwCR
- AP8ArQH9AIsA/gB0AP8AcgD/ATIAdgNjAwAHQwMDFkUEDg4lBZMXUQC6AxQASBJDAM4SMgDHET4A0RxB
- AZcdQQD/DSIAUxIrAQAGCgMAvdz2AAAAAAFkAAAAewAALEMAAOVFBwDFSDU7o0xgbq0aIylWUENTAAUR
- BQkDOAKkAlQA3AEWAPIAIg7+AhMNnQQLDCQDBgYAAwADABr8BQBq/xUDCRUCDgoUBAAKFgRDChwCq0Z6
- ERQNKgG2BxgBXxdABFIAAAKIAAACCgUFAwOUrcEAQAmRAmAEjgE+AlJ6Vxuw+zEMY5xnFIcASwCEACw7
- RwAAAAAAAP//ABT2DQAKSVkGCYaPIAJ0d+0DeXo/A4iIAAN0dQMEAAMAGv8IAAMIAABIRkgAAwACDAcE
- BXcBAAESDBwEAAUOAlsECwGjETkGAAACACEAAgAEAAAAAQAAAABzE+QCiQ/0ADYGk7GISv//Sh2XyspG
- +wWqLu0EJzM9AwAAAAAAAAAAAAAAAAB2dQECgYAABD8+kQJDQ5YCXFwCAm9vAwIgAgAAAAAAAAAAAA4R
- DwAAAAAKAAAADgAAAAADAAMBBQMEDwUDBI4AAAAKAAAABgUEAwQAAAEAAAAAABABMwMNATkAEwImSyoA
- besJABliNglYAC0JUgMAAAAAAAAAAAAAAAAAAAAAAAAAAwkAAAQDAAAXBwAAQAoAAAAaAAABAAAAAAAA
- AAAAAAAAFxgZAAAAAAAAAAAAAAAAAwoJBgEGBQMABQQDVAYKAyQFBAMADwwKAAAAAAD///////////4B
- wH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAAAAHgAAAB4AAAAeAA
- AAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9/s/j/P/v8///7ygA
- AAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoJuXACEgIQBvbm4AAAAAAP//
- /wMAAAAAyMPAABAuPwDY//8A////CQAAAAAAAAAAAAAAAKoKCgARKDMAAAAAAIJ9eAAuMTUWNzY1c1pa
- Wqo5OTmzNzc3oDw5N28GEhlZFTVIqRYxQL8PIy+lAQIEXgAAABeOCwwCBB8uAAAAAABqaGcAGBgYFCoq
- KZ9mZWX8kZGR/25vb/9RUlPfFjtP8CRUbv8hT2r/IVJt/xw/UfIDCg5vbQ0PDQkcJgAAAAAAAAAAABIS
- EwBISUoAOTg4H3p6e+xXRTpCETdMfB9UdP8nV3L4KV56/CdgfvgpYoH/HUpgynTAwQk4dZICAwwQAAAA
- AAAjIyQAtra4Bevu7wBbYGGpTSscEhhBWMMhXHv+K2uO/C1lgv4mYoD/I2GB+iZffP8hSl1gL2J9ABBS
- aAA4bHQAKygpACwpKQBkV1MIdWZj2DwOBBkaPVO/J19+/ytohvwmaIz/KGB9/iFdfPsgY4b+GU5qryqJ
- tQAWYnsBO3B1AC1CQwEnZWhWDmqEvCSdtP8cdIG2Hkxf3iddev8lYoL9IGaL/yZnif4ob5T9IWSI/h9W
- ct5+vckEQXiGA1R/iAdDia+zPJj0/y2B//8imv/9K6T//12T1f8bS2T+KVp1/ipsjv8rcZT+Lm+P/itu
- kf8tYnvuAAAAIG2MwgBAWpZgb43n/wwiwPgJD6X7Gya+/hYixvsACY79M2yB/zRofP8pYYD8M3yh/zB1
- lvwyc5P+LFtz30jA2gR0gMUAQEaKf1Vauf8YAE/9FgZ9/wYeev8FC2n/Tnim/091kvoqTWf/LnKY/zB4
- n/8xcZ/7NW+W/zBfd41EhKMACQIAAA0EADA8P1nFTBMb6iQSV9sKL1HoDS5C6zFMVeoBIF7WFFpuSydw
- hrswdpD2M3ZR/TJ2NfgTJxNYSm8RAwAIPQgJFFcAAAMtbxwPN9shIQBkBxAChQ9SUNknQUjcAISf6A+o
- 0QYeRhc1JGgM3TGbBPorgwf9EykAs0JpBxM7bbwCIUiUdDNUkeIcOn7oRE1QOwxjSxsFVk2ZDE48qgpl
- aVUZfEQDX5EmDyBaAq8xhwz/KXsL+w4nA5onaQkwiHt1AF5fWYBybWrzcH2E+kFTaoAFKQofAW0A+gBm
- APQDPQJ5CE0AABJBAjQUPwGYF0MAxhpAAMgPIAFWFzkDCE0AUABQFFYRSQ1t0SsXOz8eEDYKAj4rFgRD
- MFwCR0mXBU9PBAJJSwIGBQMCBQUEJQQHAyUFDwJcBAYCIxM9BAEtDpYAHAByLFEls+ERAC4EEgIuAAkf
- IwAGUV0ABDQzSwkyMgQBNTQAFCIPAAYCBQUGBAQABAAEOwUEBAAAAAEB//8AAOAHAADgAwAA+gMAAPoB
- AAD6AQAA4AEAAMABAACAAQAAgAEAAMBBAADAYQAAjGEAAIRhAADc+wAA3/8AAA==
-</value>
- </data>
- <data name="$this.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
- <value>9, 9, 9, 9</value>
- </data>
- <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
- <value>CenterScreen</value>
- </data>
- <data name="$this.Text" xml:space="preserve">
- <value>Downloading Update</value>
- </data>
- <data name="&gt;&gt;$this.Name" xml:space="preserve">
- <value>DownloadUpdate</value>
- </data>
- <data name="&gt;&gt;$this.Type" xml:space="preserve">
- <value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/ToolWindows/ExceptionWindow.cs b/win/CS/ToolWindows/ExceptionWindow.cs
deleted file mode 100644
index d329ad0cc..000000000
--- a/win/CS/ToolWindows/ExceptionWindow.cs
+++ /dev/null
@@ -1,81 +0,0 @@
-/* ExceptionWindow.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Windows.Forms;
-
- /// <summary>
- /// A window to display Exceptions in a form which can be easily copied and reported by users.
- /// </summary>
- public partial class ExceptionWindow : Form
- {
- /// <summary>
- /// Initializes a new instance of the <see cref="ExceptionWindow"/> class.
- /// </summary>
- public ExceptionWindow()
- {
- InitializeComponent();
- }
-
- /// <summary>
- /// Setup the window with the error message.
- /// </summary>
- /// <param name="shortError">
- /// The short error.
- /// </param>
- /// <param name="longError">
- /// The long error.
- /// </param>
- public void Setup(string shortError, string longError)
- {
- lbl_shortError.Text = shortError;
- rtf_exceptionFull.Text = shortError + Environment.NewLine + longError;
- }
-
- /// <summary>
- /// Copy the Exception Information to the Clipboard.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnCopyClick(object sender, EventArgs e)
- {
- Clipboard.SetDataObject(rtf_exceptionFull.SelectedText != string.Empty ? rtf_exceptionFull.SelectedText : rtf_exceptionFull.Text, true);
- }
-
- /// <summary>
- /// Copy from the right click menu
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuCopyLogClick(object sender, EventArgs e)
- {
- Clipboard.SetDataObject(rtf_exceptionFull.SelectedText != string.Empty ? rtf_exceptionFull.SelectedText : rtf_exceptionFull.Text, true);
- }
-
- /// <summary>
- /// Close the window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnCloseClick(object sender, EventArgs e)
- {
- this.Close();
- }
- }
-}
diff --git a/win/CS/ToolWindows/ExceptionWindow.designer.cs b/win/CS/ToolWindows/ExceptionWindow.designer.cs
deleted file mode 100644
index 4865f3f21..000000000
--- a/win/CS/ToolWindows/ExceptionWindow.designer.cs
+++ /dev/null
@@ -1,187 +0,0 @@
-namespace Handbrake.ToolWindows
-{
- partial class ExceptionWindow
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ExceptionWindow));
- this.panel1 = new System.Windows.Forms.Panel();
- this.panel2 = new System.Windows.Forms.Panel();
- this.PictureBox1 = new System.Windows.Forms.PictureBox();
- this.label3 = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.lbl_shortError = new System.Windows.Forms.Label();
- this.panel3 = new System.Windows.Forms.Panel();
- this.panel5 = new System.Windows.Forms.Panel();
- this.panel4 = new System.Windows.Forms.Panel();
- this.panel6 = new System.Windows.Forms.Panel();
- this.btn_close = new System.Windows.Forms.Button();
- this.btn_copy = new System.Windows.Forms.Button();
- this.rtf_exceptionFull = new System.Windows.Forms.RichTextBox();
- this.mnu_copy_log = new System.Windows.Forms.ToolStripMenuItem();
- this.panel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).BeginInit();
- this.panel4.SuspendLayout();
- this.panel6.SuspendLayout();
- this.SuspendLayout();
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.panel2);
- this.panel1.Controls.Add(this.PictureBox1);
- this.panel1.Controls.Add(this.label3);
- this.panel1.Controls.Add(this.label1);
- this.panel1.Controls.Add(this.lbl_shortError);
- resources.ApplyResources(this.panel1, "panel1");
- this.panel1.Name = "panel1";
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.SystemColors.Control;
- resources.ApplyResources(this.panel2, "panel2");
- this.panel2.MaximumSize = new System.Drawing.Size(0, 10);
- this.panel2.MinimumSize = new System.Drawing.Size(0, 10);
- this.panel2.Name = "panel2";
- //
- // PictureBox1
- //
- this.PictureBox1.Image = Properties.Resources.ErrorX;
- resources.ApplyResources(this.PictureBox1, "PictureBox1");
- this.PictureBox1.Name = "PictureBox1";
- this.PictureBox1.TabStop = false;
- //
- // label3
- //
- resources.ApplyResources(this.label3, "label3");
- this.label3.Name = "label3";
- //
- // label1
- //
- resources.ApplyResources(this.label1, "label1");
- this.label1.Name = "label1";
- //
- // lbl_shortError
- //
- resources.ApplyResources(this.lbl_shortError, "lbl_shortError");
- this.lbl_shortError.Name = "lbl_shortError";
- //
- // panel3
- //
- resources.ApplyResources(this.panel3, "panel3");
- this.panel3.Name = "panel3";
- //
- // panel5
- //
- resources.ApplyResources(this.panel5, "panel5");
- this.panel5.Name = "panel5";
- //
- // panel4
- //
- this.panel4.Controls.Add(this.panel6);
- resources.ApplyResources(this.panel4, "panel4");
- this.panel4.Name = "panel4";
- //
- // panel6
- //
- this.panel6.Controls.Add(this.btn_close);
- this.panel6.Controls.Add(this.btn_copy);
- resources.ApplyResources(this.panel6, "panel6");
- this.panel6.Name = "panel6";
- //
- // btn_close
- //
- this.btn_close.BackColor = System.Drawing.Color.Transparent;
- this.btn_close.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- resources.ApplyResources(this.btn_close, "btn_close");
- this.btn_close.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_close.Name = "btn_close";
- this.btn_close.UseVisualStyleBackColor = false;
- this.btn_close.Click += new System.EventHandler(this.BtnCloseClick);
- //
- // btn_copy
- //
- this.btn_copy.BackColor = System.Drawing.Color.Transparent;
- this.btn_copy.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- resources.ApplyResources(this.btn_copy, "btn_copy");
- this.btn_copy.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_copy.Image = Properties.Resources.copy;
- this.btn_copy.Name = "btn_copy";
- this.btn_copy.UseVisualStyleBackColor = false;
- this.btn_copy.Click += new System.EventHandler(this.BtnCopyClick);
- //
- // rtf_exceptionFull
- //
- resources.ApplyResources(this.rtf_exceptionFull, "rtf_exceptionFull");
- this.rtf_exceptionFull.Name = "rtf_exceptionFull";
- //
- // mnu_copy_log
- //
- this.mnu_copy_log.Image = Properties.Resources.copy;
- this.mnu_copy_log.Name = "mnu_copy_log";
- resources.ApplyResources(this.mnu_copy_log, "mnu_copy_log");
- this.mnu_copy_log.Click += new System.EventHandler(this.MnuCopyLogClick);
- //
- // ExceptionWindow
- //
- resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.rtf_exceptionFull);
- this.Controls.Add(this.panel3);
- this.Controls.Add(this.panel5);
- this.Controls.Add(this.panel4);
- this.Controls.Add(this.panel1);
- this.Name = "ExceptionWindow";
- this.TopMost = true;
- this.panel1.ResumeLayout(false);
- this.panel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).EndInit();
- this.panel4.ResumeLayout(false);
- this.panel6.ResumeLayout(false);
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.Panel panel2;
- internal System.Windows.Forms.PictureBox PictureBox1;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label lbl_shortError;
- private System.Windows.Forms.Panel panel3;
- private System.Windows.Forms.Panel panel5;
- private System.Windows.Forms.Panel panel4;
- private System.Windows.Forms.RichTextBox rtf_exceptionFull;
- internal System.Windows.Forms.Button btn_close;
- private System.Windows.Forms.Panel panel6;
- internal System.Windows.Forms.Button btn_copy;
- private System.Windows.Forms.ContextMenuStrip rightClickMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_copy_log;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/ExceptionWindow.resx b/win/CS/ToolWindows/ExceptionWindow.resx
deleted file mode 100644
index 6492d0740..000000000
--- a/win/CS/ToolWindows/ExceptionWindow.resx
+++ /dev/null
@@ -1,868 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Bottom</value>
- </data>
- <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 87</value>
- </data>
- <data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
- <value>669, 10</value>
- </data>
- <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="panel2.TabIndex" type="System.Int32, mscorlib">
- <value>59</value>
- </data>
- <data name="&gt;&gt;panel2.Name" xml:space="preserve">
- <value>panel2</value>
- </data>
- <data name="&gt;&gt;panel2.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel2.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="PictureBox1.InitialImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
- <value />
- </data>
- <data name="PictureBox1.Location" type="System.Drawing.Point, System.Drawing">
- <value>12, 12</value>
- </data>
- <data name="PictureBox1.Size" type="System.Drawing.Size, System.Drawing">
- <value>64, 64</value>
- </data>
- <data name="PictureBox1.TabIndex" type="System.Int32, mscorlib">
- <value>24</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Name" xml:space="preserve">
- <value>PictureBox1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Type" xml:space="preserve">
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="label3.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label3.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 8.25pt, style=Bold</value>
- </data>
- <data name="label3.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 63</value>
- </data>
- <data name="label3.Size" type="System.Drawing.Size, System.Drawing">
- <value>80, 13</value>
- </data>
- <data name="label3.TabIndex" type="System.Int32, mscorlib">
- <value>57</value>
- </data>
- <data name="label3.Text" xml:space="preserve">
- <value>Error Details:</value>
- </data>
- <data name="&gt;&gt;label3.Name" xml:space="preserve">
- <value>label3</value>
- </data>
- <data name="&gt;&gt;label3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;label3.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="label1.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label1.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 9.75pt, style=Bold</value>
- </data>
- <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 12</value>
- </data>
- <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
- <value>150, 16</value>
- </data>
- <data name="label1.TabIndex" type="System.Int32, mscorlib">
- <value>25</value>
- </data>
- <data name="label1.Text" xml:space="preserve">
- <value>An Error has occured.</value>
- </data>
- <data name="&gt;&gt;label1.Name" xml:space="preserve">
- <value>label1</value>
- </data>
- <data name="&gt;&gt;label1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;label1.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name="lbl_shortError.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 33</value>
- </data>
- <data name="lbl_shortError.Size" type="System.Drawing.Size, System.Drawing">
- <value>573, 30</value>
- </data>
- <data name="lbl_shortError.TabIndex" type="System.Int32, mscorlib">
- <value>58</value>
- </data>
- <data name="lbl_shortError.Text" xml:space="preserve">
- <value>An Unknown Error has occured.</value>
- </data>
- <data name="&gt;&gt;lbl_shortError.Name" xml:space="preserve">
- <value>lbl_shortError</value>
- </data>
- <data name="&gt;&gt;lbl_shortError.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;lbl_shortError.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;lbl_shortError.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name="panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Top</value>
- </data>
- <data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 0</value>
- </data>
- <data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
- <value>669, 97</value>
- </data>
- <data name="panel1.TabIndex" type="System.Int32, mscorlib">
- <value>61</value>
- </data>
- <data name="&gt;&gt;panel1.Name" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;panel1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel1.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name="panel3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Left</value>
- </data>
- <data name="panel3.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 97</value>
- </data>
- <data name="panel3.Size" type="System.Drawing.Size, System.Drawing">
- <value>76, 216</value>
- </data>
- <data name="panel3.TabIndex" type="System.Int32, mscorlib">
- <value>68</value>
- </data>
- <data name="&gt;&gt;panel3.Name" xml:space="preserve">
- <value>panel3</value>
- </data>
- <data name="&gt;&gt;panel3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel3.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel3.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="panel5.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Right</value>
- </data>
- <data name="panel5.Location" type="System.Drawing.Point, System.Drawing">
- <value>640, 97</value>
- </data>
- <data name="panel5.Size" type="System.Drawing.Size, System.Drawing">
- <value>29, 216</value>
- </data>
- <data name="panel5.TabIndex" type="System.Int32, mscorlib">
- <value>69</value>
- </data>
- <data name="&gt;&gt;panel5.Name" xml:space="preserve">
- <value>panel5</value>
- </data>
- <data name="&gt;&gt;panel5.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel5.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel5.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="btn_close.Font" type="System.Drawing.Font, System.Drawing">
- <value>Verdana, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_close.Location" type="System.Drawing.Point, System.Drawing">
- <value>105, 8</value>
- </data>
- <data name="btn_close.Size" type="System.Drawing.Size, System.Drawing">
- <value>70, 25</value>
- </data>
- <data name="btn_close.TabIndex" type="System.Int32, mscorlib">
- <value>56</value>
- </data>
- <data name="btn_close.Text" xml:space="preserve">
- <value>OK</value>
- </data>
- <data name="&gt;&gt;btn_close.Name" xml:space="preserve">
- <value>btn_close</value>
- </data>
- <data name="&gt;&gt;btn_close.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_close.Parent" xml:space="preserve">
- <value>panel6</value>
- </data>
- <data name="&gt;&gt;btn_close.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="btn_copy.Font" type="System.Drawing.Font, System.Drawing">
- <value>Verdana, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_copy.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
- <value>MiddleLeft</value>
- </data>
- <data name="btn_copy.Location" type="System.Drawing.Point, System.Drawing">
- <value>14, 8</value>
- </data>
- <data name="btn_copy.Size" type="System.Drawing.Size, System.Drawing">
- <value>85, 25</value>
- </data>
- <data name="btn_copy.TabIndex" type="System.Int32, mscorlib">
- <value>57</value>
- </data>
- <data name="btn_copy.Text" xml:space="preserve">
- <value>Copy</value>
- </data>
- <data name="&gt;&gt;btn_copy.Name" xml:space="preserve">
- <value>btn_copy</value>
- </data>
- <data name="&gt;&gt;btn_copy.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_copy.Parent" xml:space="preserve">
- <value>panel6</value>
- </data>
- <data name="&gt;&gt;btn_copy.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="panel6.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Right</value>
- </data>
- <data name="panel6.Location" type="System.Drawing.Point, System.Drawing">
- <value>491, 0</value>
- </data>
- <data name="panel6.Size" type="System.Drawing.Size, System.Drawing">
- <value>178, 42</value>
- </data>
- <data name="panel6.TabIndex" type="System.Int32, mscorlib">
- <value>58</value>
- </data>
- <data name="&gt;&gt;panel6.Name" xml:space="preserve">
- <value>panel6</value>
- </data>
- <data name="&gt;&gt;panel6.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel6.Parent" xml:space="preserve">
- <value>panel4</value>
- </data>
- <data name="&gt;&gt;panel6.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="panel4.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Bottom</value>
- </data>
- <data name="panel4.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 313</value>
- </data>
- <data name="panel4.Size" type="System.Drawing.Size, System.Drawing">
- <value>669, 42</value>
- </data>
- <data name="panel4.TabIndex" type="System.Int32, mscorlib">
- <value>69</value>
- </data>
- <data name="&gt;&gt;panel4.Name" xml:space="preserve">
- <value>panel4</value>
- </data>
- <data name="&gt;&gt;panel4.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel4.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel4.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name="rtf_exceptionFull.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Fill</value>
- </data>
- <data name="rtf_exceptionFull.Location" type="System.Drawing.Point, System.Drawing">
- <value>76, 97</value>
- </data>
- <data name="rtf_exceptionFull.Size" type="System.Drawing.Size, System.Drawing">
- <value>564, 216</value>
- </data>
- <data name="rtf_exceptionFull.TabIndex" type="System.Int32, mscorlib">
- <value>70</value>
- </data>
- <data name="rtf_exceptionFull.Text" xml:space="preserve">
- <value />
- </data>
- <data name="&gt;&gt;rtf_exceptionFull.Name" xml:space="preserve">
- <value>rtf_exceptionFull</value>
- </data>
- <data name="&gt;&gt;rtf_exceptionFull.Type" xml:space="preserve">
- <value>System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;rtf_exceptionFull.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;rtf_exceptionFull.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="mnu_copy_log.Size" type="System.Drawing.Size, System.Drawing">
- <value>152, 22</value>
- </data>
- <data name="mnu_copy_log.Text" xml:space="preserve">
- <value>Copy</value>
- </data>
- <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
- <value>6, 13</value>
- </data>
- <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
- <value>669, 355</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
- <data name="$this.Text" xml:space="preserve">
- <value>Error</value>
- </data>
- <data name="&gt;&gt;mnu_copy_log.Name" xml:space="preserve">
- <value>mnu_copy_log</value>
- </data>
- <data name="&gt;&gt;mnu_copy_log.Type" xml:space="preserve">
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;$this.Name" xml:space="preserve">
- <value>ExceptionWindow</value>
- </data>
- <data name="&gt;&gt;$this.Type" xml:space="preserve">
- <value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/ToolWindows/TitleSpecificScan.Designer.cs b/win/CS/ToolWindows/TitleSpecificScan.Designer.cs
deleted file mode 100644
index 61976f910..000000000
--- a/win/CS/ToolWindows/TitleSpecificScan.Designer.cs
+++ /dev/null
@@ -1,121 +0,0 @@
-namespace Handbrake.ToolWindows
-{
- partial class TitleSpecificScan
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TitleSpecificScan));
- this.label1 = new System.Windows.Forms.Label();
- this.titleNumber = new System.Windows.Forms.TextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.btnScan = new System.Windows.Forms.Button();
- this.btnCancel = new System.Windows.Forms.Button();
- this.SuspendLayout();
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(12, 9);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(92, 13);
- this.label1.TabIndex = 1;
- this.label1.Text = "Scan title number:";
- //
- // titleNumber
- //
- this.titleNumber.Location = new System.Drawing.Point(110, 6);
- this.titleNumber.Name = "titleNumber";
- this.titleNumber.Size = new System.Drawing.Size(51, 20);
- this.titleNumber.TabIndex = 2;
- this.titleNumber.Text = "0";
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(12, 29);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(309, 13);
- this.label2.TabIndex = 3;
- this.label2.Text = "Note: (entering 0 or leaving blank will result in a full source scan)";
- //
- // btnScan
- //
- this.btnScan.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btnScan.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnScan.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btnScan.Location = new System.Drawing.Point(231, 56);
- this.btnScan.Name = "btnScan";
- this.btnScan.Size = new System.Drawing.Size(90, 22);
- this.btnScan.TabIndex = 4;
- this.btnScan.TabStop = false;
- this.btnScan.Text = "Open Title";
- this.btnScan.UseVisualStyleBackColor = true;
- this.btnScan.Click += new System.EventHandler(this.BtnScanClick);
- //
- // btnCancel
- //
- this.btnCancel.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btnCancel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btnCancel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btnCancel.Location = new System.Drawing.Point(15, 56);
- this.btnCancel.Name = "btnCancel";
- this.btnCancel.Size = new System.Drawing.Size(60, 22);
- this.btnCancel.TabIndex = 5;
- this.btnCancel.TabStop = false;
- this.btnCancel.Text = "Cancel";
- this.btnCancel.UseVisualStyleBackColor = true;
- this.btnCancel.Click += new System.EventHandler(this.BtnCancelClick);
- //
- // TitleSpecificScan
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(334, 89);
- this.Controls.Add(this.btnCancel);
- this.Controls.Add(this.btnScan);
- this.Controls.Add(this.label2);
- this.Controls.Add(this.titleNumber);
- this.Controls.Add(this.label1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Name = "TitleSpecificScan";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "Title Scan";
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.TextBox titleNumber;
- private System.Windows.Forms.Label label2;
- internal System.Windows.Forms.Button btnScan;
- internal System.Windows.Forms.Button btnCancel;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/TitleSpecificScan.cs b/win/CS/ToolWindows/TitleSpecificScan.cs
deleted file mode 100644
index 6c938342e..000000000
--- a/win/CS/ToolWindows/TitleSpecificScan.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-/* TitleSpecificScan.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Windows.Forms;
-
- /// <summary>
- /// Title Specific Scan
- /// </summary>
- public partial class TitleSpecificScan : Form
- {
- public TitleSpecificScan()
- {
- InitializeComponent();
- }
-
- /// <summary>
- /// Button Cancel Click Event Handler
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void BtnCancelClick(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.Cancel;
- }
-
- /// <summary>
- /// Button Scan Click Event Handler
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void BtnScanClick(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.OK;
- }
-
- /// <summary>
- /// Gets the title that the user entered.
- /// </summary>
- public int Title
- {
- get
- {
- int title;
- int.TryParse(this.titleNumber.Text, out title);
-
- return title;
- }
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/TitleSpecificScan.resx b/win/CS/ToolWindows/TitleSpecificScan.resx
deleted file mode 100644
index ff217dc4f..000000000
--- a/win/CS/ToolWindows/TitleSpecificScan.resx
+++ /dev/null
@@ -1,500 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/ToolWindows/UpdateInfo.Designer.cs b/win/CS/ToolWindows/UpdateInfo.Designer.cs
deleted file mode 100644
index 9e0aa0d65..000000000
--- a/win/CS/ToolWindows/UpdateInfo.Designer.cs
+++ /dev/null
@@ -1,241 +0,0 @@
-/* frmUpdater.Designer.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- partial class UpdateInfo
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(UpdateInfo));
- this.label1 = new System.Windows.Forms.Label();
- this.label6 = new System.Windows.Forms.Label();
- this.btn_skip = new System.Windows.Forms.Button();
- this.btn_installUpdate = new System.Windows.Forms.Button();
- this.btn_remindLater = new System.Windows.Forms.Button();
- this.label3 = new System.Windows.Forms.Label();
- this.lbl_update_text = new System.Windows.Forms.Label();
- this.panel1 = new System.Windows.Forms.Panel();
- this.panel2 = new System.Windows.Forms.Panel();
- this.PictureBox1 = new System.Windows.Forms.PictureBox();
- this.statusStrip1 = new System.Windows.Forms.StatusStrip();
- this.panel3 = new System.Windows.Forms.Panel();
- this.panel5 = new System.Windows.Forms.Panel();
- this.wBrowser = new System.Windows.Forms.WebBrowser();
- this.splitContainer1 = new System.Windows.Forms.SplitContainer();
- this.button_container = new System.Windows.Forms.SplitContainer();
- this.panel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
- this.splitContainer1.Panel1.SuspendLayout();
- this.splitContainer1.Panel2.SuspendLayout();
- this.splitContainer1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.button_container)).BeginInit();
- this.button_container.Panel1.SuspendLayout();
- this.button_container.Panel2.SuspendLayout();
- this.button_container.SuspendLayout();
- this.SuspendLayout();
- //
- // label1
- //
- resources.ApplyResources(this.label1, "label1");
- this.label1.Name = "label1";
- //
- // label6
- //
- resources.ApplyResources(this.label6, "label6");
- this.label6.Name = "label6";
- //
- // btn_skip
- //
- resources.ApplyResources(this.btn_skip, "btn_skip");
- this.btn_skip.BackColor = System.Drawing.Color.Transparent;
- this.btn_skip.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_skip.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_skip.Name = "btn_skip";
- this.btn_skip.UseVisualStyleBackColor = false;
- this.btn_skip.Click += new System.EventHandler(this.BtnSkipClick);
- //
- // btn_installUpdate
- //
- resources.ApplyResources(this.btn_installUpdate, "btn_installUpdate");
- this.btn_installUpdate.BackColor = System.Drawing.Color.Transparent;
- this.btn_installUpdate.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_installUpdate.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_installUpdate.Name = "btn_installUpdate";
- this.btn_installUpdate.UseVisualStyleBackColor = false;
- this.btn_installUpdate.Click += new System.EventHandler(this.BtnInstallUpdateClick);
- //
- // btn_remindLater
- //
- resources.ApplyResources(this.btn_remindLater, "btn_remindLater");
- this.btn_remindLater.BackColor = System.Drawing.Color.Transparent;
- this.btn_remindLater.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_remindLater.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_remindLater.Name = "btn_remindLater";
- this.btn_remindLater.UseVisualStyleBackColor = false;
- this.btn_remindLater.Click += new System.EventHandler(this.BtnRemindLaterClick);
- //
- // label3
- //
- resources.ApplyResources(this.label3, "label3");
- this.label3.Name = "label3";
- //
- // lbl_update_text
- //
- resources.ApplyResources(this.lbl_update_text, "lbl_update_text");
- this.lbl_update_text.Name = "lbl_update_text";
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.panel2);
- this.panel1.Controls.Add(this.PictureBox1);
- this.panel1.Controls.Add(this.label3);
- this.panel1.Controls.Add(this.label1);
- this.panel1.Controls.Add(this.lbl_update_text);
- this.panel1.Controls.Add(this.label6);
- resources.ApplyResources(this.panel1, "panel1");
- this.panel1.Name = "panel1";
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.SystemColors.Control;
- resources.ApplyResources(this.panel2, "panel2");
- this.panel2.MaximumSize = new System.Drawing.Size(0, 10);
- this.panel2.MinimumSize = new System.Drawing.Size(0, 10);
- this.panel2.Name = "panel2";
- //
- // PictureBox1
- //
- this.PictureBox1.Image = global::Handbrake.Properties.Resources.logo64;
- resources.ApplyResources(this.PictureBox1, "PictureBox1");
- this.PictureBox1.Name = "PictureBox1";
- this.PictureBox1.TabStop = false;
- //
- // statusStrip1
- //
- resources.ApplyResources(this.statusStrip1, "statusStrip1");
- this.statusStrip1.Name = "statusStrip1";
- //
- // panel3
- //
- resources.ApplyResources(this.panel3, "panel3");
- this.panel3.Name = "panel3";
- //
- // panel5
- //
- resources.ApplyResources(this.panel5, "panel5");
- this.panel5.Name = "panel5";
- //
- // wBrowser
- //
- resources.ApplyResources(this.wBrowser, "wBrowser");
- this.wBrowser.MinimumSize = new System.Drawing.Size(20, 20);
- this.wBrowser.Name = "wBrowser";
- //
- // splitContainer1
- //
- resources.ApplyResources(this.splitContainer1, "splitContainer1");
- this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
- this.splitContainer1.Name = "splitContainer1";
- //
- // splitContainer1.Panel1
- //
- this.splitContainer1.Panel1.Controls.Add(this.wBrowser);
- //
- // splitContainer1.Panel2
- //
- this.splitContainer1.Panel2.Controls.Add(this.button_container);
- //
- // button_container
- //
- resources.ApplyResources(this.button_container, "button_container");
- this.button_container.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
- this.button_container.Name = "button_container";
- //
- // button_container.Panel1
- //
- this.button_container.Panel1.Controls.Add(this.btn_skip);
- //
- // button_container.Panel2
- //
- this.button_container.Panel2.Controls.Add(this.btn_remindLater);
- this.button_container.Panel2.Controls.Add(this.btn_installUpdate);
- //
- // UpdateInfo
- //
- resources.ApplyResources(this, "$this");
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.Controls.Add(this.splitContainer1);
- this.Controls.Add(this.panel5);
- this.Controls.Add(this.panel3);
- this.Controls.Add(this.statusStrip1);
- this.Controls.Add(this.panel1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
- this.MaximizeBox = false;
- this.Name = "UpdateInfo";
- this.panel1.ResumeLayout(false);
- this.panel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).EndInit();
- this.splitContainer1.Panel1.ResumeLayout(false);
- this.splitContainer1.Panel2.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
- this.splitContainer1.ResumeLayout(false);
- this.button_container.Panel1.ResumeLayout(false);
- this.button_container.Panel1.PerformLayout();
- this.button_container.Panel2.ResumeLayout(false);
- this.button_container.Panel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.button_container)).EndInit();
- this.button_container.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.PictureBox PictureBox1;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label label6;
- internal System.Windows.Forms.Button btn_skip;
- internal System.Windows.Forms.Button btn_installUpdate;
- internal System.Windows.Forms.Button btn_remindLater;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label lbl_update_text;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.StatusStrip statusStrip1;
- private System.Windows.Forms.Panel panel3;
- private System.Windows.Forms.Panel panel5;
- private System.Windows.Forms.WebBrowser wBrowser;
- private System.Windows.Forms.SplitContainer splitContainer1;
- private System.Windows.Forms.SplitContainer button_container;
- private System.Windows.Forms.Panel panel2;
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/UpdateInfo.cs b/win/CS/ToolWindows/UpdateInfo.cs
deleted file mode 100644
index a893dbccc..000000000
--- a/win/CS/ToolWindows/UpdateInfo.cs
+++ /dev/null
@@ -1,125 +0,0 @@
-/* UpdateInfo.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake.ToolWindows
-{
- using System;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices.Model.General;
-
- /// <summary>
- /// A window to display update information.
- /// </summary>
- public partial class UpdateInfo : Form
- {
- /// <summary>
- /// An instance of the Appcast Reader
- /// </summary>
- private readonly UpdateCheckInformation appcast;
-
- /// <summary>
- /// The Current Version
- /// </summary>
- private readonly string currentVersion;
-
- /// <summary>
- /// The Current Build
- /// </summary>
- private readonly int currentBuild;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="UpdateInfo"/> class.
- /// </summary>
- /// <param name="reader">
- /// The appcast reader.
- /// </param>
- /// <param name="currentVersion">
- /// The current Version.
- /// </param>
- /// <param name="currentBuild">
- /// The current Build.
- /// </param>
- public UpdateInfo(UpdateCheckInformation reader, string currentVersion, int currentBuild)
- {
- InitializeComponent();
-
- appcast = reader;
- this.currentVersion = currentVersion;
- this.currentBuild = currentBuild;
- GetRss();
- SetVersions();
- }
-
- /// <summary>
- /// Gets the SkipVersion number
- /// </summary>
- public int SkipVersion { get; private set; }
-
-
- /// <summary>
- /// Get the RSS feed
- /// </summary>
- private void GetRss()
- {
- wBrowser.Url = appcast.DescriptionUrl;
- }
-
- /// <summary>
- /// Set the versions
- /// </summary>
- private void SetVersions()
- {
- string old = string.Format("(You have: {0} / {1})", this.currentVersion, this.currentBuild);
- string newBuild = appcast.Version.Trim() + " (" + appcast.Build + ")";
- lbl_update_text.Text = string.Format("HandBrake {0} is now available. {1}", newBuild, old);
- }
-
- /// <summary>
- /// Handle the Install Update button click event.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void BtnInstallUpdateClick(object sender, EventArgs e)
- {
- DownloadUpdate download = new DownloadUpdate(appcast.DownloadFile);
- download.ShowDialog();
- this.DialogResult = DialogResult.OK;
- }
-
- /// <summary>
- /// Handle the Remind Later button click event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void BtnRemindLaterClick(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.Cancel;
- }
-
- /// <summary>
- /// Handle the Skip update button click event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnSkipClick(object sender, EventArgs e)
- {
- this.SkipVersion = int.Parse(appcast.Build);
- this.DialogResult = DialogResult.OK;
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/ToolWindows/UpdateInfo.resx b/win/CS/ToolWindows/UpdateInfo.resx
deleted file mode 100644
index 4503c923b..000000000
--- a/win/CS/ToolWindows/UpdateInfo.resx
+++ /dev/null
@@ -1,1021 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="label1.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="label1.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 9.75pt, style=Bold</value>
- </data>
- <data name="label1.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 12</value>
- </data>
- <data name="label1.Size" type="System.Drawing.Size, System.Drawing">
- <value>273, 16</value>
- </data>
- <data name="label1.TabIndex" type="System.Int32, mscorlib">
- <value>25</value>
- </data>
- <data name="label1.Text" xml:space="preserve">
- <value>A New Version of Handbrake is available!</value>
- </data>
- <data name="&gt;&gt;label1.Name" xml:space="preserve">
- <value>label1</value>
- </data>
- <data name="&gt;&gt;label1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;label1.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name="label6.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label6.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 46</value>
- </data>
- <data name="label6.Size" type="System.Drawing.Size, System.Drawing">
- <value>175, 13</value>
- </data>
- <data name="label6.TabIndex" type="System.Int32, mscorlib">
- <value>30</value>
- </data>
- <data name="label6.Text" xml:space="preserve">
- <value>Would you like to download it now?</value>
- </data>
- <data name="&gt;&gt;label6.Name" xml:space="preserve">
- <value>label6</value>
- </data>
- <data name="&gt;&gt;label6.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;label6.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;label6.ZOrder" xml:space="preserve">
- <value>5</value>
- </data>
- <data name="btn_skip.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <data name="btn_skip.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
- <value>GrowAndShrink</value>
- </data>
- <data name="btn_skip.Font" type="System.Drawing.Font, System.Drawing">
- <value>Verdana, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_skip.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 3</value>
- </data>
- <data name="btn_skip.Size" type="System.Drawing.Size, System.Drawing">
- <value>129, 23</value>
- </data>
- <data name="btn_skip.TabIndex" type="System.Int32, mscorlib">
- <value>54</value>
- </data>
- <data name="btn_skip.Text" xml:space="preserve">
- <value>Skip This Version</value>
- </data>
- <data name="&gt;&gt;btn_skip.Name" xml:space="preserve">
- <value>btn_skip</value>
- </data>
- <data name="&gt;&gt;btn_skip.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_skip.Parent" xml:space="preserve">
- <value>button_container.Panel1</value>
- </data>
- <data name="&gt;&gt;btn_skip.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="btn_installUpdate.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="btn_installUpdate.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
- <value>GrowAndShrink</value>
- </data>
- <data name="btn_installUpdate.Font" type="System.Drawing.Font, System.Drawing">
- <value>Verdana, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_installUpdate.Location" type="System.Drawing.Point, System.Drawing">
- <value>153, 3</value>
- </data>
- <data name="btn_installUpdate.Size" type="System.Drawing.Size, System.Drawing">
- <value>109, 23</value>
- </data>
- <data name="btn_installUpdate.TabIndex" type="System.Int32, mscorlib">
- <value>55</value>
- </data>
- <data name="btn_installUpdate.Text" xml:space="preserve">
- <value>Install Update</value>
- </data>
- <data name="&gt;&gt;btn_installUpdate.Name" xml:space="preserve">
- <value>btn_installUpdate</value>
- </data>
- <data name="&gt;&gt;btn_installUpdate.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_installUpdate.Parent" xml:space="preserve">
- <value>button_container.Panel2</value>
- </data>
- <data name="&gt;&gt;btn_installUpdate.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="btn_remindLater.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="btn_remindLater.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
- <value>GrowAndShrink</value>
- </data>
- <data name="btn_remindLater.Font" type="System.Drawing.Font, System.Drawing">
- <value>Verdana, 8.25pt, style=Bold</value>
- </data>
- <data name="btn_remindLater.Location" type="System.Drawing.Point, System.Drawing">
- <value>19, 3</value>
- </data>
- <data name="btn_remindLater.Size" type="System.Drawing.Size, System.Drawing">
- <value>127, 23</value>
- </data>
- <data name="btn_remindLater.TabIndex" type="System.Int32, mscorlib">
- <value>56</value>
- </data>
- <data name="btn_remindLater.Text" xml:space="preserve">
- <value>Remind me Later</value>
- </data>
- <data name="&gt;&gt;btn_remindLater.Name" xml:space="preserve">
- <value>btn_remindLater</value>
- </data>
- <data name="&gt;&gt;btn_remindLater.Type" xml:space="preserve">
- <value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;btn_remindLater.Parent" xml:space="preserve">
- <value>button_container.Panel2</value>
- </data>
- <data name="&gt;&gt;btn_remindLater.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="label3.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="label3.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 8.25pt, style=Bold</value>
- </data>
- <data name="label3.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 63</value>
- </data>
- <data name="label3.Size" type="System.Drawing.Size, System.Drawing">
- <value>90, 13</value>
- </data>
- <data name="label3.TabIndex" type="System.Int32, mscorlib">
- <value>57</value>
- </data>
- <data name="label3.Text" xml:space="preserve">
- <value>Release Notes:</value>
- </data>
- <data name="&gt;&gt;label3.Name" xml:space="preserve">
- <value>label3</value>
- </data>
- <data name="&gt;&gt;label3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;label3.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="lbl_update_text.AutoSize" type="System.Boolean, mscorlib">
- <value>True</value>
- </data>
- <data name="lbl_update_text.Location" type="System.Drawing.Point, System.Drawing">
- <value>84, 33</value>
- </data>
- <data name="lbl_update_text.Size" type="System.Drawing.Size, System.Drawing">
- <value>409, 13</value>
- </data>
- <data name="lbl_update_text.TabIndex" type="System.Int32, mscorlib">
- <value>58</value>
- </data>
- <data name="lbl_update_text.Text" xml:space="preserve">
- <value>HandBrake {0.0.0} (000000000) is now available. (You have: {0.0.0} (000000000))</value>
- </data>
- <data name="&gt;&gt;lbl_update_text.Name" xml:space="preserve">
- <value>lbl_update_text</value>
- </data>
- <data name="&gt;&gt;lbl_update_text.Type" xml:space="preserve">
- <value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;lbl_update_text.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;lbl_update_text.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <data name="panel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Bottom</value>
- </data>
- <data name="panel2.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 87</value>
- </data>
- <data name="panel2.Size" type="System.Drawing.Size, System.Drawing">
- <value>710, 10</value>
- </data>
- <data name="panel2.TabIndex" type="System.Int32, mscorlib">
- <value>59</value>
- </data>
- <data name="&gt;&gt;panel2.Name" xml:space="preserve">
- <value>panel2</value>
- </data>
- <data name="&gt;&gt;panel2.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel2.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;panel2.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="PictureBox1.InitialImage" type="System.Resources.ResXNullRef, System.Windows.Forms">
- <value />
- </data>
- <data name="PictureBox1.Location" type="System.Drawing.Point, System.Drawing">
- <value>12, 12</value>
- </data>
- <data name="PictureBox1.Size" type="System.Drawing.Size, System.Drawing">
- <value>64, 64</value>
- </data>
- <data name="PictureBox1.TabIndex" type="System.Int32, mscorlib">
- <value>24</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Name" xml:space="preserve">
- <value>PictureBox1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Type" xml:space="preserve">
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;PictureBox1.Parent" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;PictureBox1.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Top</value>
- </data>
- <data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 0</value>
- </data>
- <data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
- <value>710, 97</value>
- </data>
- <data name="panel1.TabIndex" type="System.Int32, mscorlib">
- <value>60</value>
- </data>
- <data name="&gt;&gt;panel1.Name" xml:space="preserve">
- <value>panel1</value>
- </data>
- <data name="&gt;&gt;panel1.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel1.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel1.ZOrder" xml:space="preserve">
- <value>4</value>
- </data>
- <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <data name="statusStrip1.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 346</value>
- </data>
- <data name="statusStrip1.Size" type="System.Drawing.Size, System.Drawing">
- <value>710, 22</value>
- </data>
- <data name="statusStrip1.TabIndex" type="System.Int32, mscorlib">
- <value>65</value>
- </data>
- <data name="statusStrip1.Text" xml:space="preserve">
- <value>statusStrip1</value>
- </data>
- <data name="&gt;&gt;statusStrip1.Name" xml:space="preserve">
- <value>statusStrip1</value>
- </data>
- <data name="&gt;&gt;statusStrip1.Type" xml:space="preserve">
- <value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;statusStrip1.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;statusStrip1.ZOrder" xml:space="preserve">
- <value>3</value>
- </data>
- <data name="panel3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Left</value>
- </data>
- <data name="panel3.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 97</value>
- </data>
- <data name="panel3.Size" type="System.Drawing.Size, System.Drawing">
- <value>87, 249</value>
- </data>
- <data name="panel3.TabIndex" type="System.Int32, mscorlib">
- <value>67</value>
- </data>
- <data name="&gt;&gt;panel3.Name" xml:space="preserve">
- <value>panel3</value>
- </data>
- <data name="&gt;&gt;panel3.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel3.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel3.ZOrder" xml:space="preserve">
- <value>2</value>
- </data>
- <data name="panel5.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Right</value>
- </data>
- <data name="panel5.Location" type="System.Drawing.Point, System.Drawing">
- <value>681, 97</value>
- </data>
- <data name="panel5.Size" type="System.Drawing.Size, System.Drawing">
- <value>29, 249</value>
- </data>
- <data name="panel5.TabIndex" type="System.Int32, mscorlib">
- <value>68</value>
- </data>
- <data name="&gt;&gt;panel5.Name" xml:space="preserve">
- <value>panel5</value>
- </data>
- <data name="&gt;&gt;panel5.Type" xml:space="preserve">
- <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;panel5.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;panel5.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="wBrowser.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Fill</value>
- </data>
- <data name="wBrowser.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 0</value>
- </data>
- <data name="wBrowser.Size" type="System.Drawing.Size, System.Drawing">
- <value>594, 203</value>
- </data>
- <data name="wBrowser.TabIndex" type="System.Int32, mscorlib">
- <value>31</value>
- </data>
- <data name="&gt;&gt;wBrowser.Name" xml:space="preserve">
- <value>wBrowser</value>
- </data>
- <data name="&gt;&gt;wBrowser.Type" xml:space="preserve">
- <value>System.Windows.Forms.WebBrowser, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;wBrowser.Parent" xml:space="preserve">
- <value>splitContainer1.Panel1</value>
- </data>
- <data name="&gt;&gt;wBrowser.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="splitContainer1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Fill</value>
- </data>
- <data name="splitContainer1.Location" type="System.Drawing.Point, System.Drawing">
- <value>87, 97</value>
- </data>
- <data name="splitContainer1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
- <value>0, 0, 0, 0</value>
- </data>
- <data name="splitContainer1.Orientation" type="System.Windows.Forms.Orientation, System.Windows.Forms">
- <value>Horizontal</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel1.Name" xml:space="preserve">
- <value>splitContainer1.Panel1</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel1.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel1.Parent" xml:space="preserve">
- <value>splitContainer1</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel1.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="button_container.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
- <value>Fill</value>
- </data>
- <data name="button_container.Location" type="System.Drawing.Point, System.Drawing">
- <value>0, 0</value>
- </data>
- <data name="&gt;&gt;button_container.Panel1.Name" xml:space="preserve">
- <value>button_container.Panel1</value>
- </data>
- <data name="&gt;&gt;button_container.Panel1.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;button_container.Panel1.Parent" xml:space="preserve">
- <value>button_container</value>
- </data>
- <data name="&gt;&gt;button_container.Panel1.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="&gt;&gt;button_container.Panel2.Name" xml:space="preserve">
- <value>button_container.Panel2</value>
- </data>
- <data name="&gt;&gt;button_container.Panel2.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;button_container.Panel2.Parent" xml:space="preserve">
- <value>button_container</value>
- </data>
- <data name="&gt;&gt;button_container.Panel2.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="button_container.Size" type="System.Drawing.Size, System.Drawing">
- <value>594, 42</value>
- </data>
- <data name="button_container.SplitterDistance" type="System.Int32, mscorlib">
- <value>318</value>
- </data>
- <data name="button_container.TabIndex" type="System.Int32, mscorlib">
- <value>0</value>
- </data>
- <data name="&gt;&gt;button_container.Name" xml:space="preserve">
- <value>button_container</value>
- </data>
- <data name="&gt;&gt;button_container.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;button_container.Parent" xml:space="preserve">
- <value>splitContainer1.Panel2</value>
- </data>
- <data name="&gt;&gt;button_container.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel2.Name" xml:space="preserve">
- <value>splitContainer1.Panel2</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel2.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel2.Parent" xml:space="preserve">
- <value>splitContainer1</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Panel2.ZOrder" xml:space="preserve">
- <value>1</value>
- </data>
- <data name="splitContainer1.Size" type="System.Drawing.Size, System.Drawing">
- <value>594, 249</value>
- </data>
- <data name="splitContainer1.SplitterDistance" type="System.Int32, mscorlib">
- <value>203</value>
- </data>
- <data name="splitContainer1.TabIndex" type="System.Int32, mscorlib">
- <value>69</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Name" xml:space="preserve">
- <value>splitContainer1</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Type" xml:space="preserve">
- <value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
- <data name="&gt;&gt;splitContainer1.Parent" xml:space="preserve">
- <value>$this</value>
- </data>
- <data name="&gt;&gt;splitContainer1.ZOrder" xml:space="preserve">
- <value>0</value>
- </data>
- <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
- <value>6, 13</value>
- </data>
- <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
- <value>710, 368</value>
- </data>
- <data name="$this.Font" type="System.Drawing.Font, System.Drawing">
- <value>Tahoma, 8.25pt</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
- <data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
- <value>540, 300</value>
- </data>
- <data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
- <value>CenterScreen</value>
- </data>
- <data name="$this.Text" xml:space="preserve">
- <value>Update</value>
- </data>
- <data name="&gt;&gt;$this.Name" xml:space="preserve">
- <value>UpdateInfo</value>
- </data>
- <data name="&gt;&gt;$this.Type" xml:space="preserve">
- <value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/UserSettingConstants.cs b/win/CS/UserSettingConstants.cs
deleted file mode 100644
index 02c417eb7..000000000
--- a/win/CS/UserSettingConstants.cs
+++ /dev/null
@@ -1,48 +0,0 @@
-/* UserSettingConstants.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- /// <summary>
- /// Constants for the User Settings Service
- /// </summary>
- public class UserSettingConstants
- {
- public const string UpdateStatus = "updateStatus";
- public const string TooltipEnable = "tooltipEnable";
- public const string Skipversion = "skipversion";
- public const string AutoNaming = "autoNaming";
- public const string AutoNamePath = "autoNamePath";
- public const string Appcast_i686 = "appcast_i686";
- public const string Appcast_x64 = "appcast_x64";
- public const string AutoNameFormat = "autoNameFormat";
- public const string VLC_Path = "VLC_Path";
- public const string MainWindowMinimize = "MainWindowMinimize";
- public const string QueryEditorTab = "QueryEditorTab";
- public const string PresetNotification = "presetNotification";
- public const string TrayIconAlerts = "trayIconAlerts";
- public const string LastUpdateCheckDate = "lastUpdateCheckDate";
- public const string DaysBetweenUpdateCheck = "daysBetweenUpdateCheck";
- public const string UseM4v = "useM4v";
- public const string PromptOnUnmatchingQueries = "PromptOnUnmatchingQueries";
- public const string NativeLanguage = "NativeLanguage";
- public const string NativeLanguageForSubtitles = "NativeLanguageSubtitles";
- public const string DubMode = "DubMode";
- public const string ClearOldLogs = "clearOldLogs";
- public const string AutoNameTitleCase = "AutoNameTitleCase";
- public const string AutoNameRemoveUnderscore = "AutoNameRemoveUnderscore";
- public const string ActivityWindowLastMode = "ActivityWindowLastMode";
- public const string UseClosedCaption = "useClosedCaption";
- public const string BatchMinDuration = "batchMinDuration";
- public const string BatchMaxDuration = "batchMaxDuration";
- public const string DefaultPlayer = "defaultPlayer";
- public const string SelectedLanguages = "SelectedLanguages";
- public const string DubModeAudio = "DubModeAudio";
- public const string DubModeSubtitle = "DubModeSubtitle";
- public const string AddOnlyOneAudioPerLanguage = "addOnlyOneAudioPerLanguage";
- public const string MinTitleLength = "MinTitleLength";
- public const string ShowAdvancedAudioPassthruOpts = "ShowAdvancedAudioPassthruOpts";
- }
-}
diff --git a/win/CS/app.config b/win/CS/app.config
deleted file mode 100644
index b802015fe..000000000
--- a/win/CS/app.config
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0"?>
-<configuration>
- <configSections>
- <section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler, Castle.Windsor"/>
-
- </configSections>
-
-
- <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/></startup>
-
- <!--<castle>
- <components>
- <component id="IErrorService"
- service="HandBrake.Framework.Services.Interfaces.IErrorService, HandBrake.Framework"
- type="HandBrake.Framework.Services.ErrorService, HandBrake.Framework"/>
- </components>
- </castle>-->
-
-</configuration>
diff --git a/win/CS/build.xml b/win/CS/build.xml
index 95ff15eff..928b3da6f 100644
--- a/win/CS/build.xml
+++ b/win/CS/build.xml
@@ -23,7 +23,6 @@
<ProjectsToBuild Include="HandBrake.Interop\HandBrakeInterop\*proj" Exclude="$(MSBuildProjectFile)"/>
<ProjectsToBuild Include="HandBrake.ApplicationServices\*proj" Exclude="$(MSBuildProjectFile)"/>
<ProjectsToBuild Include="HandBrakeWPF\HandBrakeWPF.*proj" Exclude="$(MSBuildProjectFile)"/>
- <ProjectsToBuild Include="HandBrakeWPF\HandBrakeCS.*proj" Exclude="$(MSBuildProjectFile)"/>
</ItemGroup>
<!-- Dependencies -->
@@ -39,7 +38,7 @@
<Target Name="Nightly" DependsOnTargets="$(NightlyDependsOn)"/>
<Target Name="Release" DependsOnTargets="$(InstallDependsOn)"/>
- <!-- Build All Components (Forms, WPF, ApplicationServices, Interop -->
+ <!-- Build All Components (WPF, ApplicationServices, Interop -->
<Target Name="BuildRelease">
<MSBuild Projects ="@(ProjectsToBuild)"
ContinueOnError ="false"
diff --git a/win/CS/defaultsettings.xml b/win/CS/defaultsettings.xml
deleted file mode 100644
index 6bd00ae0d..000000000
--- a/win/CS/defaultsettings.xml
+++ /dev/null
@@ -1,443 +0,0 @@
-<?xml version="1.0"?>
-<dictionary>
- <item>
- <key>
- <string>X264Step</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:double" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0.25</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>Verbosity</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">1</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>WhenCompleteAction</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">Do nothing</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>GrowlEncode</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>GrowlQueue</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>ProcessPriority</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">Below Normal</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>PreventSleep</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>ShowCLI</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>SaveLogToCopyDirectory</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>SaveLogWithVideo</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>DisableLibDvdNav</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>SendFile</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>MinTitleScanDuration</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">10</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>HandBrakeBuild</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">00010101</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>HandBrakeVersion</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">NotSet</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>updateStatus</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>tooltipEnable</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>defaultPreset</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance" />
- </value>
- </item>
- <item>
- <key>
- <string>skipversion</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>autoNaming</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>autoNamePath</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance" />
- </value>
- </item>
- <item>
- <key>
- <string>appcast_i686</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">http://handbrake.fr/appcast.i386.xml</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>appcast_x64</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">http://handbrake.fr/appcast.86_64.xml</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>autoNameFormat</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">{source}-{title}</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>VLC_Path</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">C:\Program Files\VideoLAN\vlc\vlc.exe</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>MainWindowMinimize</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>QueryEditorTab</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>presetNotification</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>trayIconAlerts</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>lastUpdateCheckDate</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:dateTime" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">2011-08-15T00:00:00+01:00</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>daysBetweenUpdateCheck</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">7</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>useM4v</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>PromptOnUnmatchingQueries</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>NativeLanguage</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">Any</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>NativeLanguageSubtitles</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">Any</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>DubMode</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">255</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>CliExeHash</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance" />
- </value>
- </item>
- <item>
- <key>
- <string>previewScanCount</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">10</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>clearOldLogs</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>AutoNameTitleCase</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>AutoNameRemoveUnderscore</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>ActivityWindowLastMode</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>useClosedCaption</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>batchMinDuration</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">00:18:00</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>batchMaxDuration</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">02:30:00</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>defaultPlayer</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>SelectedLanguages</string>
- </key>
- <value>
- <ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
- </value>
- </item>
- <item>
- <key>
- <string>DubModeAudio</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>DubModeSubtitle</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>addOnlyOneAudioPerLanguage</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">true</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>MinTitleLength</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">10</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>HandBrakeExeHash</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">RQuM6TVXbXkdih1PmGTf+h178Ho=</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>ShowAdvancedAudioPassthruOpts</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>HandBrakePlatform</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">MinGW i686</anyType>
- </value>
- </item>
- <item>
- <key>
- <string>ClearCompletedFromQueue</string>
- </key>
- <value>
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:boolean" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">false</anyType>
- </value>
- </item>
-</dictionary> \ No newline at end of file
diff --git a/win/CS/frmAbout.Designer.cs b/win/CS/frmAbout.Designer.cs
deleted file mode 100644
index 8db142190..000000000
--- a/win/CS/frmAbout.Designer.cs
+++ /dev/null
@@ -1,165 +0,0 @@
-/* frmAbout.Designer.cs
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- partial class frmAbout
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmAbout));
- this.Label3 = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.PictureBox1 = new System.Windows.Forms.PictureBox();
- this.btn_close = new System.Windows.Forms.Button();
- this.richTextBox1 = new System.Windows.Forms.RichTextBox();
- this.label2 = new System.Windows.Forms.Label();
- this.lbl_GUIBuild = new System.Windows.Forms.Label();
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).BeginInit();
- this.SuspendLayout();
- //
- // Label3
- //
- this.Label3.AutoSize = true;
- this.Label3.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Label3.Location = new System.Drawing.Point(124, 12);
- this.Label3.Margin = new System.Windows.Forms.Padding(3, 3, 3, 1);
- this.Label3.Name = "Label3";
- this.Label3.Size = new System.Drawing.Size(99, 19);
- this.Label3.TabIndex = 25;
- this.Label3.Text = "HandBrake";
- this.Label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(125, 36);
- this.label1.Margin = new System.Windows.Forms.Padding(3);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(196, 13);
- this.label1.TabIndex = 33;
- this.label1.Text = "Copyright 2003-2012 HandBrake Team";
- this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // PictureBox1
- //
- this.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center;
- this.PictureBox1.Image = global::Handbrake.Properties.Resources.logo128;
- this.PictureBox1.InitialImage = null;
- this.PictureBox1.Location = new System.Drawing.Point(9, 9);
- this.PictureBox1.Margin = new System.Windows.Forms.Padding(0);
- this.PictureBox1.Name = "PictureBox1";
- this.PictureBox1.Size = new System.Drawing.Size(96, 96);
- this.PictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
- this.PictureBox1.TabIndex = 33;
- this.PictureBox1.TabStop = false;
- //
- // btn_close
- //
- this.btn_close.DialogResult = System.Windows.Forms.DialogResult.OK;
- this.btn_close.Location = new System.Drawing.Point(468, 270);
- this.btn_close.Name = "btn_close";
- this.btn_close.Size = new System.Drawing.Size(75, 23);
- this.btn_close.TabIndex = 35;
- this.btn_close.Text = "OK";
- this.btn_close.UseVisualStyleBackColor = true;
- this.btn_close.Click += new System.EventHandler(this.btn_close_Click);
- //
- // richTextBox1
- //
- this.richTextBox1.Location = new System.Drawing.Point(128, 102);
- this.richTextBox1.Name = "richTextBox1";
- this.richTextBox1.Size = new System.Drawing.Size(415, 162);
- this.richTextBox1.TabIndex = 36;
- this.richTextBox1.Text = resources.GetString("richTextBox1.Text");
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(125, 83);
- this.label2.Margin = new System.Windows.Forms.Padding(3);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(46, 13);
- this.label2.TabIndex = 37;
- this.label2.Text = "License:";
- this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // lbl_GUIBuild
- //
- this.lbl_GUIBuild.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbl_GUIBuild.Location = new System.Drawing.Point(229, 17);
- this.lbl_GUIBuild.Margin = new System.Windows.Forms.Padding(3, 1, 3, 3);
- this.lbl_GUIBuild.Name = "lbl_GUIBuild";
- this.lbl_GUIBuild.Size = new System.Drawing.Size(224, 13);
- this.lbl_GUIBuild.TabIndex = 38;
- this.lbl_GUIBuild.Text = "{GUI Version}";
- this.lbl_GUIBuild.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // frmAbout
- //
- this.AcceptButton = this.btn_close;
- this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
- this.CancelButton = this.btn_close;
- this.ClientSize = new System.Drawing.Size(555, 302);
- this.Controls.Add(this.lbl_GUIBuild);
- this.Controls.Add(this.label2);
- this.Controls.Add(this.richTextBox1);
- this.Controls.Add(this.btn_close);
- this.Controls.Add(this.label1);
- this.Controls.Add(this.PictureBox1);
- this.Controls.Add(this.Label3);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "frmAbout";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "About HandBrake";
- ((System.ComponentModel.ISupportInitialize)(this.PictureBox1)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.Label Label3;
- internal System.Windows.Forms.Label label1;
- internal System.Windows.Forms.PictureBox PictureBox1;
- private System.Windows.Forms.Button btn_close;
- private System.Windows.Forms.RichTextBox richTextBox1;
- internal System.Windows.Forms.Label label2;
- internal System.Windows.Forms.Label lbl_GUIBuild;
- }
-} \ No newline at end of file
diff --git a/win/CS/frmAbout.cs b/win/CS/frmAbout.cs
deleted file mode 100644
index 976f897b2..000000000
--- a/win/CS/frmAbout.cs
+++ /dev/null
@@ -1,47 +0,0 @@
-/* frmAbout.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Services;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- /// <summary>
- /// The About Window
- /// </summary>
- public partial class frmAbout : Form
- {
- IUserSettingService userSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmAbout"/> class.
- /// </summary>
- public frmAbout()
- {
- InitializeComponent();
-
- string nightly = userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion).Contains("svn") ? " (SVN / Nightly Build)" : string.Empty;
- lbl_GUIBuild.Text = userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion) + " (" + userSettingService.GetUserSetting<int>(ASUserSettingConstants.HandBrakeBuild) + ") " + nightly;
- }
-
- /// <summary>
- /// Button - Close the window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_close_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/frmAbout.resx b/win/CS/frmAbout.resx
deleted file mode 100644
index c8eac0bfc..000000000
--- a/win/CS/frmAbout.resx
+++ /dev/null
@@ -1,515 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="richTextBox1.Text" xml:space="preserve">
- <value>This program is free software; you can redistribute it and/or
-modify it under the terms of the GNU General Public License
-as published by the Free Software Foundation; either version 2
-of the License, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</value>
- </data>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/frmActivityWindow.Designer.cs b/win/CS/frmActivityWindow.Designer.cs
deleted file mode 100644
index 134689c0a..000000000
--- a/win/CS/frmActivityWindow.Designer.cs
+++ /dev/null
@@ -1,186 +0,0 @@
-/* frmDvdInfo.Designer.cs
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- partial class frmActivityWindow
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmActivityWindow));
- this.rtf_actLog = new System.Windows.Forms.RichTextBox();
- this.rightClickMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_copy_log = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_openLogFolder = new System.Windows.Forms.ToolStripMenuItem();
- this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
- this.toolStrip1 = new System.Windows.Forms.ToolStrip();
- this.btn_copy = new System.Windows.Forms.ToolStripButton();
- this.logSelector = new System.Windows.Forms.ToolStripComboBox();
- this.btn_openLogDirectory = new System.Windows.Forms.ToolStripButton();
- this.panel1 = new System.Windows.Forms.Panel();
- this.rightClickMenu.SuspendLayout();
- this.toolStrip1.SuspendLayout();
- this.SuspendLayout();
- //
- // rtf_actLog
- //
- this.rtf_actLog.ContextMenuStrip = this.rightClickMenu;
- this.rtf_actLog.Cursor = System.Windows.Forms.Cursors.IBeam;
- this.rtf_actLog.DetectUrls = false;
- this.rtf_actLog.Dock = System.Windows.Forms.DockStyle.Fill;
- this.rtf_actLog.Location = new System.Drawing.Point(0, 25);
- this.rtf_actLog.Name = "rtf_actLog";
- this.rtf_actLog.ReadOnly = true;
- this.rtf_actLog.Size = new System.Drawing.Size(404, 552);
- this.rtf_actLog.TabIndex = 29;
- this.rtf_actLog.Text = "";
- //
- // rightClickMenu
- //
- this.rightClickMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_copy_log,
- this.mnu_openLogFolder});
- this.rightClickMenu.Name = "rightClickMenu";
- this.rightClickMenu.Size = new System.Drawing.Size(178, 48);
- //
- // mnu_copy_log
- //
- this.mnu_copy_log.Image = global::Handbrake.Properties.Resources.copy;
- this.mnu_copy_log.Name = "mnu_copy_log";
- this.mnu_copy_log.Size = new System.Drawing.Size(177, 22);
- this.mnu_copy_log.Text = "Copy";
- this.mnu_copy_log.Click += new System.EventHandler(this.MnuCopyLogClick);
- //
- // mnu_openLogFolder
- //
- this.mnu_openLogFolder.Image = global::Handbrake.Properties.Resources.folder;
- this.mnu_openLogFolder.Name = "mnu_openLogFolder";
- this.mnu_openLogFolder.Size = new System.Drawing.Size(177, 22);
- this.mnu_openLogFolder.Text = "Open Log Directory";
- this.mnu_openLogFolder.Click += new System.EventHandler(this.MnuOpenLogFolderClick);
- //
- // ToolTip
- //
- this.ToolTip.Active = false;
- //
- // toolStrip1
- //
- this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
- this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.btn_copy,
- this.logSelector,
- this.btn_openLogDirectory});
- this.toolStrip1.Location = new System.Drawing.Point(0, 0);
- this.toolStrip1.Name = "toolStrip1";
- this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.toolStrip1.Size = new System.Drawing.Size(404, 25);
- this.toolStrip1.TabIndex = 96;
- this.toolStrip1.Text = "toolStrip1";
- //
- // btn_copy
- //
- this.btn_copy.Image = ((System.Drawing.Image)(resources.GetObject("btn_copy.Image")));
- this.btn_copy.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_copy.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_copy.Name = "btn_copy";
- this.btn_copy.Size = new System.Drawing.Size(55, 22);
- this.btn_copy.Text = "Copy";
- this.btn_copy.Click += new System.EventHandler(this.BtnCopyClick);
- //
- // logSelector
- //
- this.logSelector.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
- this.logSelector.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.logSelector.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.logSelector.Items.AddRange(new object[] {
- "Scan Log",
- "Encode Log"});
- this.logSelector.Name = "logSelector";
- this.logSelector.Size = new System.Drawing.Size(121, 25);
- this.logSelector.SelectedIndexChanged += new System.EventHandler(this.LogSelectorClick);
- //
- // btn_openLogDirectory
- //
- this.btn_openLogDirectory.Image = global::Handbrake.Properties.Resources.folder;
- this.btn_openLogDirectory.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_openLogDirectory.Name = "btn_openLogDirectory";
- this.btn_openLogDirectory.Size = new System.Drawing.Size(130, 22);
- this.btn_openLogDirectory.Text = "Open Log Directory";
- this.btn_openLogDirectory.Click += new System.EventHandler(this.btn_openLogDirectory_Click);
- //
- // panel1
- //
- this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.panel1.Location = new System.Drawing.Point(0, 25);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(404, 552);
- this.panel1.TabIndex = 97;
- //
- // frmActivityWindow
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.BackColor = System.Drawing.SystemColors.ControlLight;
- this.ClientSize = new System.Drawing.Size(404, 577);
- this.Controls.Add(this.rtf_actLog);
- this.Controls.Add(this.panel1);
- this.Controls.Add(this.toolStrip1);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "frmActivityWindow";
- this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Activity Window";
- this.Load += new System.EventHandler(this.ActivityWindowLoad);
- this.rightClickMenu.ResumeLayout(false);
- this.toolStrip1.ResumeLayout(false);
- this.toolStrip1.PerformLayout();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.RichTextBox rtf_actLog;
- internal System.Windows.Forms.ToolTip ToolTip;
- private System.Windows.Forms.ToolStrip toolStrip1;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.ToolStripButton btn_copy;
- private System.Windows.Forms.ContextMenuStrip rightClickMenu;
- private System.Windows.Forms.ToolStripMenuItem mnu_copy_log;
- private System.Windows.Forms.ToolStripMenuItem mnu_openLogFolder;
- private System.Windows.Forms.ToolStripComboBox logSelector;
- private System.Windows.Forms.ToolStripButton btn_openLogDirectory;
- }
-} \ No newline at end of file
diff --git a/win/CS/frmActivityWindow.cs b/win/CS/frmActivityWindow.cs
deleted file mode 100644
index 28be0cc48..000000000
--- a/win/CS/frmActivityWindow.cs
+++ /dev/null
@@ -1,493 +0,0 @@
-/* frmActivityWindow.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.ComponentModel;
- using System.Diagnostics;
- using System.IO;
- using System.Text;
- using System.Threading;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Exceptions;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- using Handbrake.Functions;
-
- using Model;
- using Timer = System.Threading.Timer;
-
- /// <summary>
- /// The Activity Log Window
- /// </summary>
- public partial class frmActivityWindow : Form
- {
- /* Private Variables */
-
- /// <summary>
- /// The Encode Object
- /// </summary>
- private readonly IEncode encode;
-
- /// <summary>
- /// The Scan Object
- /// </summary>
- private readonly IScan scan;
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// The current position in the log file
- /// </summary>
- private int position;
-
- /// <summary>
- /// A Timer for this window
- /// </summary>
- private Timer windowTimer;
-
- /// <summary>
- /// The Type of log that the window is currently dealing with
- /// </summary>
- private ActivityLogMode mode;
-
- /* Constructor */
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmActivityWindow"/> class.
- /// </summary>
- /// <param name="encode">
- /// The encode.
- /// </param>
- /// <param name="scan">
- /// The scan.
- /// </param>
- public frmActivityWindow(IEncode encode, IScan scan)
- {
- InitializeComponent();
-
- this.encode = encode;
- this.scan = scan;
- this.position = 0;
-
- // Listen for Scan and Encode Starting Events
- scan.ScanStared += scan_ScanStared;
- encode.EncodeStarted += encode_EncodeStarted;
- }
-
- /* Delegates */
-
- /// <summary>
- /// A callback function for updating the ui
- /// </summary>
- /// <param name="text">
- /// The text.
- /// </param>
- private delegate void SetTextCallback(StringBuilder text);
-
- /// <summary>
- /// Clear text callback
- /// </summary>
- private delegate void SetTextClearCallback();
-
- /// <summary>
- /// Set mode callback
- /// </summary>
- /// <param name="setMode">
- /// The set mode.
- /// </param>
- private delegate void SetModeCallback(ActivityLogMode setMode);
-
- /* Private Methods */
-
- /// <summary>
- /// Set the window to scan mode
- /// </summary>
- /// <param name="setMode">
- /// The set Mode.
- /// </param>
- private void SetMode(ActivityLogMode setMode)
- {
- if (IsHandleCreated)
- {
- if (rtf_actLog.InvokeRequired)
- {
- IAsyncResult invoked = BeginInvoke(new SetModeCallback(SetMode), new object[] { setMode });
- EndInvoke(invoked);
- }
- else
- {
- Reset();
- this.mode = setMode;
-
- Array values = Enum.GetValues(typeof(ActivityLogMode));
- this.UserSettingService.SetUserSetting(UserSettingConstants.ActivityWindowLastMode, (int)values.GetValue(Convert.ToInt32(setMode)));
-
- this.Text = mode == ActivityLogMode.Scan
- ? "Activity Window (Scan Log)"
- : "Activity Window (Encode Log)";
-
- this.logSelector.SelectedIndex = mode == ActivityLogMode.Scan ? 0 : 1;
-
- if (mode == ActivityLogMode.Scan)
- {
- scan.ScanCompleted += stopWindowRefresh;
- encode.EncodeCompleted -= stopWindowRefresh;
- }
- else
- {
- scan.ScanCompleted -= stopWindowRefresh;
- encode.EncodeCompleted += stopWindowRefresh;
- }
-
- // Start a fresh window timer
- windowTimer = new Timer(new TimerCallback(LogMonitor), null, 1000, 1000);
- }
- }
- }
-
- /// <summary>
- /// On Window load, start a new timer
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void ActivityWindowLoad(object sender, EventArgs e)
- {
- try
- {
- // Set the inital log file.
- if (encode.IsEncoding)
- {
- this.logSelector.SelectedIndex = 1;
- }
- else if (scan.IsScanning)
- {
- this.logSelector.SelectedIndex = 0;
- }
- else
- {
- // Otherwise, use the last mode the window was in.
- ActivityLogMode activitLogMode = (ActivityLogMode)Enum.ToObject(typeof(ActivityLogMode),
- this.UserSettingService.GetUserSetting<int>(UserSettingConstants.ActivityWindowLastMode));
- this.logSelector.SelectedIndex = activitLogMode == ActivityLogMode.Scan ? 0 : 1;
- }
- }
- catch (Exception exc)
- {
- throw new GeneralApplicationException("Error Loading the Activity Window", string.Empty, exc);
- }
- }
-
- /// <summary>
- /// Set the Log window to encode mode when an encode starts.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void encode_EncodeStarted(object sender, EventArgs e)
- {
- SetMode(ActivityLogMode.Encode);
- }
-
- /// <summary>
- /// Set the log widow to scan mode when a scan starts
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void scan_ScanStared(object sender, EventArgs e)
- {
- SetMode(ActivityLogMode.Scan);
- }
-
- /// <summary>
- /// Stop refreshing the window when no scanning or encoding is happening.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void stopWindowRefresh(object sender, EventArgs e)
- {
- windowTimer.Dispose();
- Reset();
- LogMonitor(null);
- }
-
- /// <summary>
- /// Append new text to the window
- /// </summary>
- /// <param name="n">
- /// The n.
- /// </param>
- private void LogMonitor(object n)
- {
- AppendWindowText(GetLog());
- }
-
- /// <summary>
- /// New Code for getting the Activity log from the Services rather than reading a file.
- /// </summary>
- /// <returns>
- /// The StringBuilder containing a log
- /// </returns>
- private StringBuilder GetLog()
- {
- StringBuilder appendText = new StringBuilder();
-
- try
- {
- if (this.mode == ActivityLogMode.Scan)
- {
- if (scan == null || scan.ActivityLog == string.Empty)
- {
- appendText.AppendFormat("Waiting for the log to be generated ...\n");
- position = 0;
- ClearWindowText();
- return appendText;
- }
-
- using (StringReader reader = new StringReader(scan.ActivityLog))
- {
- LogReader(reader, appendText);
- }
- }
- else
- {
- if (encode == null || encode.ActivityLog == string.Empty)
- {
- appendText.AppendFormat("Waiting for the log to be generated ...\n");
- position = 0;
- ClearWindowText();
- return appendText;
- }
-
- using (StringReader reader = new StringReader(encode.ActivityLog))
- {
- LogReader(reader, appendText);
- }
- }
- }
- catch (Exception exc)
- {
- windowTimer.Dispose();
- throw new GeneralApplicationException("Failed to Get Log.", string.Empty, exc);
- }
-
- return appendText;
- }
-
- /// <summary>
- /// Reads the log data from a Scan or Encode object
- /// </summary>
- /// <param name="reader">
- /// The reader.
- /// </param>
- /// <param name="appendText">
- /// The append text.
- /// </param>
- private void LogReader(StringReader reader, StringBuilder appendText)
- {
- string line;
- int i = 1;
- while ((line = reader.ReadLine()) != null)
- {
- if (i > position)
- {
- appendText.AppendLine(line);
- position++;
- }
- i++;
- }
- }
-
- /// <summary>
- /// Append text to the RTF box
- /// </summary>
- /// <param name="text">
- /// The text.
- /// </param>
- private void AppendWindowText(StringBuilder text)
- {
- try
- {
- if (IsHandleCreated)
- {
- if (rtf_actLog.InvokeRequired)
- {
- IAsyncResult invoked = BeginInvoke(new SetTextCallback(AppendWindowText), new object[] { text });
- EndInvoke(invoked);
- }
- else
- lock (rtf_actLog)
- rtf_actLog.AppendText(text.ToString());
-
- // Stop the refresh process if log has finished.
- if (text.ToString().Contains("HandBrake has Exited"))
- {
- windowTimer.Dispose();
- }
- }
- }
- catch (Exception)
- {
- return;
- }
- }
-
- /// <summary>
- /// Clear the contents of the log window
- /// </summary>
- private void ClearWindowText()
- {
- try
- {
- if (IsHandleCreated)
- {
- if (rtf_actLog.InvokeRequired)
- {
- IAsyncResult invoked = BeginInvoke(new SetTextClearCallback(ClearWindowText));
- EndInvoke(invoked);
- }
- else
- lock (rtf_actLog)
- rtf_actLog.Clear();
- }
- }
- catch (Exception)
- {
- return;
- }
- }
-
- /// <summary>
- /// Reset Everything
- /// </summary>
- private void Reset()
- {
- if (windowTimer != null)
- windowTimer.Dispose();
- position = 0;
- ClearWindowText();
- windowTimer = new Timer(new TimerCallback(LogMonitor), null, 1000, 1000);
- }
-
- /* Menus and Buttons */
-
- /// <summary>
- /// Copy log to clipboard
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuCopyLogClick(object sender, EventArgs e)
- {
- Clipboard.SetDataObject(rtf_actLog.SelectedText != string.Empty ? rtf_actLog.SelectedText : rtf_actLog.Text, true);
- }
-
- /// <summary>
- /// Open the log folder
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuOpenLogFolderClick(object sender, EventArgs e)
- {
- btn_openLogDirectory_Click(sender, e);
- }
-
- /// <summary>
- /// Open the Log Directory
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Evennt Args</param>
- private void btn_openLogDirectory_Click(object sender, EventArgs e)
- {
- string logDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake\\logs";
- string windir = Environment.GetEnvironmentVariable("WINDIR");
- Process prc = new Process
- {
- StartInfo =
- {
- FileName = windir + @"\explorer.exe",
- Arguments = logDir
- }
- };
- prc.Start();
- }
-
- /// <summary>
- /// Copy the log
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnCopyClick(object sender, EventArgs e)
- {
- Clipboard.SetDataObject(rtf_actLog.SelectedText != string.Empty ? rtf_actLog.SelectedText : rtf_actLog.Text, true);
- }
-
- /// <summary>
- /// Change the Log file in the viewer
- /// </summary>
- /// <param name="sender">The Sender </param>
- /// <param name="e">The EventArgs</param>
- private void LogSelectorClick(object sender, EventArgs e)
- {
- this.SetMode((string)this.logSelector.SelectedItem == "Scan Log" ? ActivityLogMode.Scan : ActivityLogMode.Encode);
- }
-
- /* Overrides */
-
- /// <summary>
- /// override onclosing
- /// </summary>
- /// <param name="e">
- /// The e.
- /// </param>
- protected override void OnClosing(CancelEventArgs e)
- {
- scan.ScanStared -= scan_ScanStared;
- encode.EncodeStarted -= encode_EncodeStarted;
-
- scan.ScanCompleted -= stopWindowRefresh;
- encode.EncodeCompleted -= stopWindowRefresh;
-
- windowTimer.Dispose();
- e.Cancel = true;
- this.Dispose();
- base.OnClosing(e);
- }
-
-
- }
-} \ No newline at end of file
diff --git a/win/CS/frmActivityWindow.resx b/win/CS/frmActivityWindow.resx
deleted file mode 100644
index bc1cc8d50..000000000
--- a/win/CS/frmActivityWindow.resx
+++ /dev/null
@@ -1,523 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="rightClickMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>205, 18</value>
- </metadata>
- <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>105, 17</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="btn_copy.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHlSURBVDhPpZPfT5JhGIb9U0rHXHXsH9BaWa0222oe1EFb
- 2TriQI86atlsyzVstIkhzcLSAfYhNJdSiRCIEmEi9gMX2Vawoe77lET0w67gZUnQhm4+23323tfz3O/z
- vjU1+y2n9zMFSe6okGU0TL9ziqnge/bELpgry+wIcK39GRNe7+4Q+3i0zJ/b/k33wCtc/igXW7twT3iq
- QyxjMwLgioH0ASJxhQfml0g+BZtXxuqReTwmox9eEXrtmy8H9jsDOxNsbuVQ1rIkUmkBqKyOwSUaWvw4
- XKESxGTziHN9/i10owq3pJ+0PYkz8Gb5P0CrMYVzWuFIswNpZLIIMeTzFnKvZ1SW5AyLiVU+xpcxjSQF
- oFPKCUUWVrmsS3K4+QWHzg9R3/S0CCjk3ciqO521phjXDfPcty6WTaD8Uln4sYF/bg2jFEJz9lEJoKSz
- fPqWYuZLgkDkO+53X2nvK6735mAarSHJpXsxzt2eFTJKQTSne0qAhlNXqFSbflYA1Hy8lKwyF19nPKxg
- f7vCw6EAdY366uu92jEtAP92/jtBj22S2uO66oALNzxkNrcxDYfptYcwPg+KzgWzweLj4LG71QGNWlf+
- tq1C9U1mNGd6qTvZTe2Jrry5kwNH7+z+zPf0mfZ76A/LmeTprDhiYwAAAABJRU5ErkJggg==
-</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/frmAddPreset.Designer.cs b/win/CS/frmAddPreset.Designer.cs
deleted file mode 100644
index 7712f02a6..000000000
--- a/win/CS/frmAddPreset.Designer.cs
+++ /dev/null
@@ -1,246 +0,0 @@
-/* AudioTrack.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- partial class frmAddPreset
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmAddPreset));
- this.lbl_name = new System.Windows.Forms.Label();
- this.txt_preset_name = new System.Windows.Forms.TextBox();
- this.btn_add = new System.Windows.Forms.Button();
- this.btn_cancel = new System.Windows.Forms.Button();
- this.check_useFilters = new System.Windows.Forms.CheckBox();
- this.toolTip = new System.Windows.Forms.ToolTip(this.components);
- this.cb_usePictureSettings = new System.Windows.Forms.ComboBox();
- this.label2 = new System.Windows.Forms.Label();
- this.label3 = new System.Windows.Forms.Label();
- this.lbl_x = new System.Windows.Forms.Label();
- this.maxWidth = new System.Windows.Forms.NumericUpDown();
- this.maxHeight = new System.Windows.Forms.NumericUpDown();
- ((System.ComponentModel.ISupportInitialize)(this.maxWidth)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.maxHeight)).BeginInit();
- this.SuspendLayout();
- //
- // lbl_name
- //
- this.lbl_name.AutoSize = true;
- this.lbl_name.Location = new System.Drawing.Point(12, 18);
- this.lbl_name.Name = "lbl_name";
- this.lbl_name.Size = new System.Drawing.Size(75, 13);
- this.lbl_name.TabIndex = 1;
- this.lbl_name.Text = "Preset Name: ";
- //
- // txt_preset_name
- //
- this.txt_preset_name.Location = new System.Drawing.Point(130, 15);
- this.txt_preset_name.Name = "txt_preset_name";
- this.txt_preset_name.Size = new System.Drawing.Size(172, 21);
- this.txt_preset_name.TabIndex = 0;
- //
- // btn_add
- //
- this.btn_add.BackColor = System.Drawing.Color.Transparent;
- this.btn_add.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btn_add.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_add.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_add.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_add.Location = new System.Drawing.Point(182, 157);
- this.btn_add.Name = "btn_add";
- this.btn_add.Size = new System.Drawing.Size(57, 22);
- this.btn_add.TabIndex = 3;
- this.btn_add.Text = "Add";
- this.btn_add.UseVisualStyleBackColor = false;
- this.btn_add.Click += new System.EventHandler(this.BtnAddClick);
- //
- // btn_cancel
- //
- this.btn_cancel.BackColor = System.Drawing.Color.Transparent;
- this.btn_cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
- this.btn_cancel.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_cancel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_cancel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_cancel.Location = new System.Drawing.Point(245, 157);
- this.btn_cancel.Name = "btn_cancel";
- this.btn_cancel.Size = new System.Drawing.Size(57, 22);
- this.btn_cancel.TabIndex = 4;
- this.btn_cancel.Text = "Cancel";
- this.btn_cancel.UseVisualStyleBackColor = false;
- this.btn_cancel.Click += new System.EventHandler(this.BtnCancelClick);
- //
- // check_useFilters
- //
- this.check_useFilters.AutoSize = true;
- this.check_useFilters.Checked = true;
- this.check_useFilters.CheckState = System.Windows.Forms.CheckState.Checked;
- this.check_useFilters.Location = new System.Drawing.Point(130, 134);
- this.check_useFilters.Name = "check_useFilters";
- this.check_useFilters.Size = new System.Drawing.Size(119, 17);
- this.check_useFilters.TabIndex = 2;
- this.check_useFilters.Text = "Save Filter Settings";
- this.toolTip.SetToolTip(this.check_useFilters, "Save Picture Width/Height and Crop Values");
- this.check_useFilters.UseVisualStyleBackColor = true;
- //
- // cb_usePictureSettings
- //
- this.cb_usePictureSettings.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_usePictureSettings.FormattingEnabled = true;
- this.cb_usePictureSettings.Items.AddRange(new object[] {
- "None",
- "Custom",
- "Source Maximum"});
- this.cb_usePictureSettings.Location = new System.Drawing.Point(130, 79);
- this.cb_usePictureSettings.Name = "cb_usePictureSettings";
- this.cb_usePictureSettings.Size = new System.Drawing.Size(172, 21);
- this.cb_usePictureSettings.TabIndex = 1;
- this.cb_usePictureSettings.SelectedIndexChanged += new System.EventHandler(this.cb_usePictureSettings_SelectedIndexChanged);
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label2.Location = new System.Drawing.Point(12, 57);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(100, 13);
- this.label2.TabIndex = 7;
- this.label2.Text = "Picture Settings:";
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(12, 82);
- this.label3.Margin = new System.Windows.Forms.Padding(3);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(87, 13);
- this.label3.TabIndex = 8;
- this.label3.Text = "Use Picture Size:";
- //
- // lbl_x
- //
- this.lbl_x.AutoSize = true;
- this.lbl_x.Location = new System.Drawing.Point(211, 110);
- this.lbl_x.Name = "lbl_x";
- this.lbl_x.Size = new System.Drawing.Size(13, 13);
- this.lbl_x.TabIndex = 11;
- this.lbl_x.Text = "X";
- //
- // maxWidth
- //
- this.maxWidth.Location = new System.Drawing.Point(130, 107);
- this.maxWidth.Maximum = new decimal(new int[] {
- 32000,
- 0,
- 0,
- 0});
- this.maxWidth.Name = "maxWidth";
- this.maxWidth.Size = new System.Drawing.Size(74, 21);
- this.maxWidth.TabIndex = 12;
- this.maxWidth.Value = new decimal(new int[] {
- 1280,
- 0,
- 0,
- 0});
- //
- // maxHeight
- //
- this.maxHeight.Location = new System.Drawing.Point(229, 107);
- this.maxHeight.Maximum = new decimal(new int[] {
- 32000,
- 0,
- 0,
- 0});
- this.maxHeight.Name = "maxHeight";
- this.maxHeight.Size = new System.Drawing.Size(73, 21);
- this.maxHeight.TabIndex = 13;
- this.maxHeight.Value = new decimal(new int[] {
- 720,
- 0,
- 0,
- 0});
- //
- // frmAddPreset
- //
- this.AcceptButton = this.btn_add;
- this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
- this.AutoSize = true;
- this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.CancelButton = this.btn_cancel;
- this.ClientSize = new System.Drawing.Size(319, 191);
- this.Controls.Add(this.maxHeight);
- this.Controls.Add(this.maxWidth);
- this.Controls.Add(this.lbl_x);
- this.Controls.Add(this.label3);
- this.Controls.Add(this.label2);
- this.Controls.Add(this.cb_usePictureSettings);
- this.Controls.Add(this.lbl_name);
- this.Controls.Add(this.txt_preset_name);
- this.Controls.Add(this.check_useFilters);
- this.Controls.Add(this.btn_cancel);
- this.Controls.Add(this.btn_add);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "frmAddPreset";
- this.Padding = new System.Windows.Forms.Padding(9);
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Hide;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "Add New Preset";
- this.TopMost = true;
- ((System.ComponentModel.ISupportInitialize)(this.maxWidth)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.maxHeight)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.Label lbl_name;
- private System.Windows.Forms.TextBox txt_preset_name;
- internal System.Windows.Forms.Button btn_add;
- internal System.Windows.Forms.Button btn_cancel;
- private System.Windows.Forms.CheckBox check_useFilters;
- private System.Windows.Forms.ToolTip toolTip;
- private System.Windows.Forms.ComboBox cb_usePictureSettings;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label lbl_x;
- private System.Windows.Forms.NumericUpDown maxWidth;
- private System.Windows.Forms.NumericUpDown maxHeight;
- }
-} \ No newline at end of file
diff --git a/win/CS/frmAddPreset.cs b/win/CS/frmAddPreset.cs
deleted file mode 100644
index 6bbfb3918..000000000
--- a/win/CS/frmAddPreset.cs
+++ /dev/null
@@ -1,141 +0,0 @@
-/* frmAddPreset.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Services;
- using HandBrake.ApplicationServices.Utilities;
-
- using Handbrake.Functions;
- using Handbrake.Model;
-
- /// <summary>
- /// The Add Preset Window
- /// </summary>
- public partial class frmAddPreset : Form
- {
- private readonly frmMain mainWindow;
-
- /// <summary>
- /// The Preset Handler
- /// </summary>
- private readonly PresetService presetCode;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmAddPreset"/> class.
- /// </summary>
- /// <param name="mainWindow">
- /// The Main Window
- /// </param>
- /// <param name="presetHandler">
- /// The preset handler.
- /// </param>
- public frmAddPreset(frmMain mainWindow, PresetService presetHandler)
- {
- InitializeComponent();
- this.mainWindow = mainWindow;
- presetCode = presetHandler;
-
- cb_usePictureSettings.SelectedIndex = 0;
- }
-
- /// <summary>
- /// Handle the Add button event.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnAddClick(object sender, EventArgs e)
- {
- if (string.IsNullOrEmpty(txt_preset_name.Text.Trim()))
- {
- MessageBox.Show("You must enter a preset name!", "Warning",
- MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
-
- QueryPictureSettingsMode pictureSettingsMode;
-
- switch (cb_usePictureSettings.SelectedIndex)
- {
- case 0:
- pictureSettingsMode = QueryPictureSettingsMode.None;
- break;
- case 1:
- pictureSettingsMode = QueryPictureSettingsMode.Custom;
- break;
- case 2:
- pictureSettingsMode = QueryPictureSettingsMode.SourceMaximum;
- break;
- default:
- pictureSettingsMode = QueryPictureSettingsMode.None;
- break;
- }
-
- string query = QueryGenerator.GenerateQueryForPreset(mainWindow, pictureSettingsMode, check_useFilters.Checked, Convert.ToInt32(maxWidth.Value), Convert.ToInt32(maxHeight.Value));
-
- Preset preset = new Preset
- {
- Name = this.txt_preset_name.Text,
- Query = query,
- CropSettings = pictureSettingsMode != QueryPictureSettingsMode.None,
- Description = string.Empty,
- Task = QueryParserUtility.Parse(query),
- };
-
- if (presetCode.Add(preset))
- {
- this.DialogResult = DialogResult.OK;
- this.Close();
- }
- else
- MessageBox.Show("Sorry, that preset name already exists. Please choose another!", "Warning",
- MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- /// <summary>
- /// Handle the Cancel button event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void BtnCancelClick(object sender, EventArgs e)
- {
- this.DialogResult = DialogResult.Cancel;
- this.Close();
- }
-
- /// <summary>
- /// Picutre Settings option changed.
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The Event Args</param>
- private void cb_usePictureSettings_SelectedIndexChanged(object sender, EventArgs e)
- {
- if (cb_usePictureSettings.SelectedItem.ToString().Contains("Custom"))
- {
- maxWidth.Visible = true;
- maxHeight.Visible = true;
- lbl_x.Visible = true;
- }
- else
- {
- maxWidth.Visible = false;
- maxHeight.Visible = false;
- lbl_x.Visible = false;
- }
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/frmAddPreset.resx b/win/CS/frmAddPreset.resx
deleted file mode 100644
index aeea816b3..000000000
--- a/win/CS/frmAddPreset.resx
+++ /dev/null
@@ -1,503 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/frmMain.Designer.cs b/win/CS/frmMain.Designer.cs
deleted file mode 100644
index 430440cc2..000000000
--- a/win/CS/frmMain.Designer.cs
+++ /dev/null
@@ -1,2011 +0,0 @@
-/* frmMain.Designer.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-using System;
-using System.Windows.Forms;
-
-namespace Handbrake
-{
- using System.Collections.ObjectModel;
-
- partial class frmMain
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.Windows.Forms.ContextMenuStrip notifyIconMenu;
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmMain));
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
- HandBrake.ApplicationServices.Model.Encoding.AllowedPassthru allowedPassthru1 = new HandBrake.ApplicationServices.Model.Encoding.AllowedPassthru();
- this.btn_restore = new System.Windows.Forms.ToolStripMenuItem();
- this.DVD_Save = new System.Windows.Forms.SaveFileDialog();
- this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
- this.text_destination = new System.Windows.Forms.TextBox();
- this.drp_videoEncoder = new System.Windows.Forms.ComboBox();
- this.check_largeFile = new System.Windows.Forms.CheckBox();
- this.check_turbo = new System.Windows.Forms.CheckBox();
- this.drp_videoFramerate = new System.Windows.Forms.ComboBox();
- this.slider_videoQuality = new System.Windows.Forms.TrackBar();
- this.text_bitrate = new System.Windows.Forms.TextBox();
- this.check_optimiseMP4 = new System.Windows.Forms.CheckBox();
- this.check_iPodAtom = new System.Windows.Forms.CheckBox();
- this.data_chpt = new System.Windows.Forms.DataGridView();
- this.number = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.name = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.ChaptersMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_resetChapters = new System.Windows.Forms.ToolStripMenuItem();
- this.drop_format = new System.Windows.Forms.ComboBox();
- this.drop_chapterFinish = new System.Windows.Forms.ComboBox();
- this.drop_chapterStart = new System.Windows.Forms.ComboBox();
- this.drop_angle = new System.Windows.Forms.ComboBox();
- this.drp_dvdtitle = new System.Windows.Forms.ComboBox();
- this.btn_importChapters = new System.Windows.Forms.Button();
- this.btn_export = new System.Windows.Forms.Button();
- this.drop_mode = new System.Windows.Forms.ComboBox();
- this.btn_generate_Query = new System.Windows.Forms.Button();
- this.radio_cq = new System.Windows.Forms.RadioButton();
- this.radio_avgBitrate = new System.Windows.Forms.RadioButton();
- this.check_2PassEncode = new System.Windows.Forms.CheckBox();
- this.btn_file_source = new System.Windows.Forms.ToolStripMenuItem();
- this.treeView_presets = new System.Windows.Forms.TreeView();
- this.presets_menu = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.pmnu_expandAll = new System.Windows.Forms.ToolStripMenuItem();
- this.pmnu_collapse = new System.Windows.Forms.ToolStripMenuItem();
- this.sep1 = new System.Windows.Forms.ToolStripSeparator();
- this.pmnu_import = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
- this.pmnu_saveChanges = new System.Windows.Forms.ToolStripMenuItem();
- this.pmnu_delete = new System.Windows.Forms.ToolStripMenuItem();
- this.DVD_Open = new System.Windows.Forms.FolderBrowserDialog();
- this.File_Open = new System.Windows.Forms.OpenFileDialog();
- this.ISO_Open = new System.Windows.Forms.OpenFileDialog();
- this.FileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_killCLI = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_exit = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_open3 = new System.Windows.Forms.ToolStripMenuItem();
- this.ToolsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_encode = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_encodeLog = new System.Windows.Forms.ToolStripMenuItem();
- this.ToolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
- this.mnu_options = new System.Windows.Forms.ToolStripMenuItem();
- this.frmMainMenu = new System.Windows.Forms.MenuStrip();
- this.label5 = new System.Windows.Forms.Label();
- this.Label47 = new System.Windows.Forms.Label();
- this.Label3 = new System.Windows.Forms.Label();
- this.tab_audio = new System.Windows.Forms.TabPage();
- this.AudioSettings = new Handbrake.Controls.AudioPanel();
- this.AudioMenuRowHeightHack = new System.Windows.Forms.ImageList(this.components);
- this.tab_video = new System.Windows.Forms.TabPage();
- this.panel1 = new System.Windows.Forms.Panel();
- this.radio_constantFramerate = new System.Windows.Forms.RadioButton();
- this.radio_peakAndVariable = new System.Windows.Forms.RadioButton();
- this.label25 = new System.Windows.Forms.Label();
- this.Label2 = new System.Windows.Forms.Label();
- this.lbl_SliderValue = new System.Windows.Forms.Label();
- this.lbl_framerate = new System.Windows.Forms.Label();
- this.tab_picture = new System.Windows.Forms.TabPage();
- this.PictureSettings = new Handbrake.Controls.PictureSettings();
- this.Check_ChapterMarkers = new System.Windows.Forms.CheckBox();
- this.tabs_panel = new System.Windows.Forms.TabControl();
- this.tab_filters = new System.Windows.Forms.TabPage();
- this.Filters = new Handbrake.Controls.Filters();
- this.tab_subtitles = new System.Windows.Forms.TabPage();
- this.Subtitles = new Handbrake.Controls.Subtitles();
- this.tab_chapters = new System.Windows.Forms.TabPage();
- this.label31 = new System.Windows.Forms.Label();
- this.tab_advanced = new System.Windows.Forms.TabPage();
- this.advancedEncoderOpts = new Handbrake.Controls.AdvancedEncoderOpts();
- this.x264Panel = new Handbrake.Controls.x264Panel();
- this.tab_query = new System.Windows.Forms.TabPage();
- this.btn_clear = new System.Windows.Forms.Button();
- this.label34 = new System.Windows.Forms.Label();
- this.label33 = new System.Windows.Forms.Label();
- this.rtf_query = new System.Windows.Forms.RichTextBox();
- this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.splitContainer1 = new System.Windows.Forms.SplitContainer();
- this.presetsToolStrip = new System.Windows.Forms.ToolStrip();
- this.BtnAddPreset = new System.Windows.Forms.ToolStripButton();
- this.BtnRemovePreset = new System.Windows.Forms.ToolStripButton();
- this.toolStripDropDownButton2 = new System.Windows.Forms.ToolStripDropDownButton();
- this.MnuSetDefaultPreset = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
- this.MnuImportPreset = new System.Windows.Forms.ToolStripMenuItem();
- this.MnuExportPreset = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator6 = new System.Windows.Forms.ToolStripSeparator();
- this.MnuResetBuiltInPresets = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStrip1 = new System.Windows.Forms.ToolStrip();
- this.btn_source = new System.Windows.Forms.ToolStripDropDownButton();
- this.btn_dvd_source = new System.Windows.Forms.ToolStripMenuItem();
- this.btnTitleSpecific = new System.Windows.Forms.ToolStripMenuItem();
- this.FileTitleSpecificScan = new System.Windows.Forms.ToolStripMenuItem();
- this.FolderTitleSpecificScan = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
- this.toolStripSeparator10 = new System.Windows.Forms.ToolStripSeparator();
- this.btn_start = new System.Windows.Forms.ToolStripButton();
- this.btn_add2Queue = new System.Windows.Forms.ToolStripSplitButton();
- this.mnu_AddAllTitles = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_AddTittleRange = new System.Windows.Forms.ToolStripMenuItem();
- this.btn_showQueue = new System.Windows.Forms.ToolStripButton();
- this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
- this.tb_preview = new System.Windows.Forms.ToolStripButton();
- this.btn_ActivityWindow = new System.Windows.Forms.ToolStripButton();
- this.toolStripSeparator8 = new System.Windows.Forms.ToolStripSeparator();
- this.toolStripDropDownButton1 = new System.Windows.Forms.ToolStripDropDownButton();
- this.MnuUserGuide = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator9 = new System.Windows.Forms.ToolStripSeparator();
- this.MnuCheckForUpdates = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
- this.MnuAboutHandBrake = new System.Windows.Forms.ToolStripMenuItem();
- this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);
- this.StatusStrip = new System.Windows.Forms.StatusStrip();
- this.ProgressBarStatus = new System.Windows.Forms.ToolStripProgressBar();
- this.lbl_encode = new System.Windows.Forms.ToolStripStatusLabel();
- this.lbl_updateCheck = new System.Windows.Forms.ToolStripStatusLabel();
- this.lbl_libhb_warning = new System.Windows.Forms.ToolStripStatusLabel();
- this.hbproc = new System.Diagnostics.Process();
- this.File_Save = new System.Windows.Forms.SaveFileDialog();
- this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
- this.btn_destBrowse = new System.Windows.Forms.Button();
- this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- this.Label10 = new System.Windows.Forms.Label();
- this.lbl_angle = new System.Windows.Forms.Label();
- this.Label13 = new System.Windows.Forms.Label();
- this.label_duration = new System.Windows.Forms.Label();
- this.lbl_duration = new System.Windows.Forms.Label();
- this.labelStaticDestination = new System.Windows.Forms.Label();
- this.labelPreset = new System.Windows.Forms.Label();
- this.labelSource = new System.Windows.Forms.Label();
- this.labelStaticSource = new System.Windows.Forms.Label();
- this.SourceLayoutPanel = new System.Windows.Forms.FlowLayoutPanel();
- this.openPreset = new System.Windows.Forms.OpenFileDialog();
- this.File_ChapterImport = new System.Windows.Forms.OpenFileDialog();
- notifyIconMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
- notifyIconMenu.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.slider_videoQuality)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.data_chpt)).BeginInit();
- this.ChaptersMenu.SuspendLayout();
- this.presets_menu.SuspendLayout();
- this.frmMainMenu.SuspendLayout();
- this.tab_audio.SuspendLayout();
- this.tab_video.SuspendLayout();
- this.panel1.SuspendLayout();
- this.tab_picture.SuspendLayout();
- this.tabs_panel.SuspendLayout();
- this.tab_filters.SuspendLayout();
- this.tab_subtitles.SuspendLayout();
- this.tab_chapters.SuspendLayout();
- this.tab_advanced.SuspendLayout();
- this.tab_query.SuspendLayout();
- this.groupBox2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
- this.splitContainer1.Panel1.SuspendLayout();
- this.splitContainer1.Panel2.SuspendLayout();
- this.splitContainer1.SuspendLayout();
- this.presetsToolStrip.SuspendLayout();
- this.toolStrip1.SuspendLayout();
- this.StatusStrip.SuspendLayout();
- this.tableLayoutPanel2.SuspendLayout();
- this.tableLayoutPanel3.SuspendLayout();
- this.tableLayoutPanel1.SuspendLayout();
- this.SourceLayoutPanel.SuspendLayout();
- this.SuspendLayout();
- //
- // notifyIconMenu
- //
- notifyIconMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.btn_restore});
- notifyIconMenu.Name = "notifyIconMenu";
- notifyIconMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- notifyIconMenu.Size = new System.Drawing.Size(114, 26);
- //
- // btn_restore
- //
- this.btn_restore.Image = global::Handbrake.Properties.Resources.Restore;
- this.btn_restore.Name = "btn_restore";
- this.btn_restore.Size = new System.Drawing.Size(113, 22);
- this.btn_restore.Text = "Restore";
- this.btn_restore.Click += new System.EventHandler(this.btn_restore_Click);
- //
- // DVD_Save
- //
- this.DVD_Save.Filter = "mp4|*.mp4;*.m4v|mkv|*.mkv";
- this.DVD_Save.SupportMultiDottedExtensions = true;
- //
- // ToolTip
- //
- this.ToolTip.Active = false;
- this.ToolTip.AutomaticDelay = 1000;
- this.ToolTip.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
- this.ToolTip.ToolTipTitle = "Tooltip";
- //
- // text_destination
- //
- this.text_destination.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.text_destination.Location = new System.Drawing.Point(36, 3);
- this.text_destination.Name = "text_destination";
- this.text_destination.Size = new System.Drawing.Size(603, 21);
- this.text_destination.TabIndex = 1;
- this.ToolTip.SetToolTip(this.text_destination, "Location where the encoded file will be saved.");
- this.text_destination.TextChanged += new System.EventHandler(this.text_destination_TextChanged);
- //
- // drp_videoEncoder
- //
- this.drp_videoEncoder.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_videoEncoder.FormattingEnabled = true;
- this.drp_videoEncoder.Items.AddRange(new object[] {
- "H.264 (x264)",
- "MPEG-4 (FFmpeg)",
- "MPEG-2 (FFmpeg)",
- "VP3 (Theora)"});
- this.drp_videoEncoder.Location = new System.Drawing.Point(125, 35);
- this.drp_videoEncoder.Name = "drp_videoEncoder";
- this.drp_videoEncoder.Size = new System.Drawing.Size(126, 21);
- this.drp_videoEncoder.TabIndex = 6;
- this.ToolTip.SetToolTip(this.drp_videoEncoder, "Select a video encoder");
- this.drp_videoEncoder.SelectedIndexChanged += new System.EventHandler(this.drp_videoEncoder_SelectedIndexChanged);
- //
- // check_largeFile
- //
- this.check_largeFile.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_largeFile.AutoSize = true;
- this.check_largeFile.BackColor = System.Drawing.Color.Transparent;
- this.check_largeFile.Location = new System.Drawing.Point(179, 5);
- this.check_largeFile.Name = "check_largeFile";
- this.check_largeFile.Size = new System.Drawing.Size(91, 17);
- this.check_largeFile.TabIndex = 2;
- this.check_largeFile.Text = "Large file size";
- this.ToolTip.SetToolTip(this.check_largeFile, "Caution: This option will likely break device compatibility with all but the Appl" +
- "eTV Take 2.\r\nChecking this box enables a 64bit mp4 file which can be over 4GB.");
- this.check_largeFile.UseVisualStyleBackColor = false;
- //
- // check_turbo
- //
- this.check_turbo.AutoSize = true;
- this.check_turbo.BackColor = System.Drawing.Color.Transparent;
- this.check_turbo.Enabled = false;
- this.check_turbo.Location = new System.Drawing.Point(495, 134);
- this.check_turbo.Name = "check_turbo";
- this.check_turbo.Size = new System.Drawing.Size(99, 17);
- this.check_turbo.TabIndex = 9;
- this.check_turbo.Text = "Turbo first Pass";
- this.ToolTip.SetToolTip(this.check_turbo, "Makes the first pass of a 2 pass encode faster.");
- this.check_turbo.UseVisualStyleBackColor = false;
- //
- // drp_videoFramerate
- //
- this.drp_videoFramerate.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_videoFramerate.FormattingEnabled = true;
- this.drp_videoFramerate.Items.AddRange(new object[] {
- "Same as source",
- "5",
- "10",
- "12",
- "15",
- "23.976",
- "24",
- "25",
- "29.97",
- "30",
- "50",
- "59.94",
- "60"});
- this.drp_videoFramerate.Location = new System.Drawing.Point(125, 62);
- this.drp_videoFramerate.Name = "drp_videoFramerate";
- this.drp_videoFramerate.Size = new System.Drawing.Size(125, 21);
- this.drp_videoFramerate.TabIndex = 2;
- this.ToolTip.SetToolTip(this.drp_videoFramerate, "Can be left to \"Same as source\" in most cases.");
- this.drp_videoFramerate.SelectedIndexChanged += new System.EventHandler(this.drp_videoFramerate_SelectedIndexChanged);
- //
- // slider_videoQuality
- //
- this.slider_videoQuality.BackColor = System.Drawing.SystemColors.Window;
- this.slider_videoQuality.Enabled = false;
- this.slider_videoQuality.Location = new System.Drawing.Point(377, 60);
- this.slider_videoQuality.Margin = new System.Windows.Forms.Padding(0);
- this.slider_videoQuality.Maximum = 100;
- this.slider_videoQuality.Name = "slider_videoQuality";
- this.slider_videoQuality.Size = new System.Drawing.Size(322, 45);
- this.slider_videoQuality.TabIndex = 13;
- this.slider_videoQuality.TickFrequency = 17;
- this.ToolTip.SetToolTip(this.slider_videoQuality, resources.GetString("slider_videoQuality.ToolTip"));
- this.slider_videoQuality.ValueChanged += new System.EventHandler(this.slider_videoQuality_Scroll);
- //
- // text_bitrate
- //
- this.text_bitrate.Location = new System.Drawing.Point(489, 107);
- this.text_bitrate.Name = "text_bitrate";
- this.text_bitrate.Size = new System.Drawing.Size(81, 21);
- this.text_bitrate.TabIndex = 14;
- this.ToolTip.SetToolTip(this.text_bitrate, resources.GetString("text_bitrate.ToolTip"));
- //
- // check_optimiseMP4
- //
- this.check_optimiseMP4.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_optimiseMP4.AutoSize = true;
- this.check_optimiseMP4.BackColor = System.Drawing.Color.Transparent;
- this.check_optimiseMP4.Location = new System.Drawing.Point(276, 5);
- this.check_optimiseMP4.Name = "check_optimiseMP4";
- this.check_optimiseMP4.Size = new System.Drawing.Size(96, 17);
- this.check_optimiseMP4.TabIndex = 3;
- this.check_optimiseMP4.Text = "Web optimized";
- this.ToolTip.SetToolTip(this.check_optimiseMP4, "MP4 files can be optimized for progressive downloads over the Web,\r\nbut note that" +
- " QuickTime can only read the files as long as the file extension is .mp4\r\nCan on" +
- "ly be used with H.264 ");
- this.check_optimiseMP4.UseVisualStyleBackColor = false;
- //
- // check_iPodAtom
- //
- this.check_iPodAtom.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_iPodAtom.AutoSize = true;
- this.check_iPodAtom.BackColor = System.Drawing.Color.Transparent;
- this.check_iPodAtom.Location = new System.Drawing.Point(378, 5);
- this.check_iPodAtom.Name = "check_iPodAtom";
- this.check_iPodAtom.Size = new System.Drawing.Size(102, 17);
- this.check_iPodAtom.TabIndex = 4;
- this.check_iPodAtom.Text = "iPod 5G support";
- this.ToolTip.SetToolTip(this.check_iPodAtom, "Support for legacy 5th Generation iPods.\r\nEncodes will not sync if this option is" +
- " not enabled for H.264 encodes.");
- this.check_iPodAtom.UseVisualStyleBackColor = false;
- //
- // data_chpt
- //
- this.data_chpt.AllowUserToAddRows = false;
- this.data_chpt.AllowUserToDeleteRows = false;
- this.data_chpt.AllowUserToResizeRows = false;
- this.data_chpt.BackgroundColor = System.Drawing.Color.White;
- this.data_chpt.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.None;
- this.data_chpt.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
- this.data_chpt.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
- this.number,
- this.name});
- this.data_chpt.ContextMenuStrip = this.ChaptersMenu;
- this.data_chpt.Location = new System.Drawing.Point(16, 55);
- this.data_chpt.MultiSelect = false;
- this.data_chpt.Name = "data_chpt";
- this.data_chpt.RowHeadersVisible = false;
- this.data_chpt.Size = new System.Drawing.Size(684, 236);
- this.data_chpt.TabIndex = 3;
- this.ToolTip.SetToolTip(this.data_chpt, resources.GetString("data_chpt.ToolTip"));
- //
- // number
- //
- dataGridViewCellStyle1.Format = "N0";
- dataGridViewCellStyle1.NullValue = null;
- this.number.DefaultCellStyle = dataGridViewCellStyle1;
- this.number.Frozen = true;
- this.number.HeaderText = "Chapter Number";
- this.number.MaxInputLength = 3;
- this.number.Name = "number";
- this.number.Resizable = System.Windows.Forms.DataGridViewTriState.False;
- this.number.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.number.Width = 165;
- //
- // name
- //
- this.name.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- this.name.HeaderText = "Chapter Name";
- this.name.Name = "name";
- this.name.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- //
- // ChaptersMenu
- //
- this.ChaptersMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_resetChapters});
- this.ChaptersMenu.Name = "presets_menu";
- this.ChaptersMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.ChaptersMenu.Size = new System.Drawing.Size(188, 26);
- this.ChaptersMenu.Text = ";";
- //
- // mnu_resetChapters
- //
- this.mnu_resetChapters.Name = "mnu_resetChapters";
- this.mnu_resetChapters.Size = new System.Drawing.Size(187, 22);
- this.mnu_resetChapters.Text = "Reset Chapter Names";
- this.mnu_resetChapters.Click += new System.EventHandler(this.mnu_resetChapters_Click);
- //
- // drop_format
- //
- this.drop_format.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_format.FormattingEnabled = true;
- this.drop_format.Items.AddRange(new object[] {
- "MP4 File",
- "MKV File"});
- this.drop_format.Location = new System.Drawing.Point(67, 3);
- this.drop_format.Name = "drop_format";
- this.drop_format.Size = new System.Drawing.Size(106, 21);
- this.drop_format.TabIndex = 1;
- this.ToolTip.SetToolTip(this.drop_format, "Select the file container format.\r\nHandBrake supports MKV and MP4(M4v)");
- this.drop_format.SelectedIndexChanged += new System.EventHandler(this.drop_format_SelectedIndexChanged);
- //
- // drop_chapterFinish
- //
- this.drop_chapterFinish.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_chapterFinish.FormattingEnabled = true;
- this.drop_chapterFinish.Location = new System.Drawing.Point(509, 3);
- this.drop_chapterFinish.Name = "drop_chapterFinish";
- this.drop_chapterFinish.Size = new System.Drawing.Size(69, 21);
- this.drop_chapterFinish.TabIndex = 7;
- this.ToolTip.SetToolTip(this.drop_chapterFinish, "Select the chapter range you would like to enocde. (default: All Chapters)");
- this.drop_chapterFinish.SelectedIndexChanged += new System.EventHandler(this.chapersChanged);
- //
- // drop_chapterStart
- //
- this.drop_chapterStart.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_chapterStart.FormattingEnabled = true;
- this.drop_chapterStart.Location = new System.Drawing.Point(383, 3);
- this.drop_chapterStart.Name = "drop_chapterStart";
- this.drop_chapterStart.Size = new System.Drawing.Size(69, 21);
- this.drop_chapterStart.TabIndex = 5;
- this.ToolTip.SetToolTip(this.drop_chapterStart, "Select the chapter range you would like to enocde. (default: All Chapters)");
- this.drop_chapterStart.SelectedIndexChanged += new System.EventHandler(this.chapersChanged);
- //
- // drop_angle
- //
- this.drop_angle.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_angle.FormattingEnabled = true;
- this.drop_angle.Location = new System.Drawing.Point(209, 3);
- this.drop_angle.Name = "drop_angle";
- this.drop_angle.Size = new System.Drawing.Size(45, 21);
- this.drop_angle.TabIndex = 3;
- this.ToolTip.SetToolTip(this.drop_angle, "Select the chapter range you would like to enocde. (default: All Chapters)");
- //
- // drp_dvdtitle
- //
- this.drp_dvdtitle.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_dvdtitle.DropDownWidth = 180;
- this.drp_dvdtitle.FormattingEnabled = true;
- this.drp_dvdtitle.Items.AddRange(new object[] {
- "Automatic"});
- this.drp_dvdtitle.Location = new System.Drawing.Point(40, 3);
- this.drp_dvdtitle.Name = "drp_dvdtitle";
- this.drp_dvdtitle.Size = new System.Drawing.Size(119, 21);
- this.drp_dvdtitle.TabIndex = 1;
- this.ToolTip.SetToolTip(this.drp_dvdtitle, "Select the title you wish to encode.\r\n\r\nWhen a DVD is in use, HandBrake will try " +
- "to determine the \"Main Feature\" title automatically.\r\nPlease note, this is not a" +
- "lways accurate and should be checked.");
- this.drp_dvdtitle.SelectedIndexChanged += new System.EventHandler(this.drp_dvdtitle_SelectedIndexChanged);
- this.drp_dvdtitle.Click += new System.EventHandler(this.drp_dvdtitle_Click);
- //
- // btn_importChapters
- //
- this.btn_importChapters.AutoSize = true;
- this.btn_importChapters.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_importChapters.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_importChapters.Location = new System.Drawing.Point(544, 28);
- this.btn_importChapters.Name = "btn_importChapters";
- this.btn_importChapters.Size = new System.Drawing.Size(75, 23);
- this.btn_importChapters.TabIndex = 1;
- this.btn_importChapters.Text = "Import";
- this.ToolTip.SetToolTip(this.btn_importChapters, resources.GetString("btn_importChapters.ToolTip"));
- this.btn_importChapters.UseVisualStyleBackColor = true;
- this.btn_importChapters.Click += new System.EventHandler(this.btn_importChapters_Click);
- //
- // btn_export
- //
- this.btn_export.AutoSize = true;
- this.btn_export.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_export.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_export.Location = new System.Drawing.Point(625, 28);
- this.btn_export.Name = "btn_export";
- this.btn_export.Size = new System.Drawing.Size(75, 23);
- this.btn_export.TabIndex = 0;
- this.btn_export.Text = "Export";
- this.ToolTip.SetToolTip(this.btn_export, resources.GetString("btn_export.ToolTip"));
- this.btn_export.UseVisualStyleBackColor = true;
- this.btn_export.Click += new System.EventHandler(this.btn_export_Click);
- //
- // drop_mode
- //
- this.drop_mode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_mode.FormattingEnabled = true;
- this.drop_mode.Items.AddRange(new object[] {
- "Chapters",
- "Seconds",
- "Frames"});
- this.drop_mode.Location = new System.Drawing.Point(295, 3);
- this.drop_mode.Name = "drop_mode";
- this.drop_mode.Size = new System.Drawing.Size(77, 21);
- this.drop_mode.TabIndex = 4;
- this.ToolTip.SetToolTip(this.drop_mode, resources.GetString("drop_mode.ToolTip"));
- this.drop_mode.SelectedIndexChanged += new System.EventHandler(this.drop_mode_SelectedIndexChanged);
- //
- // btn_generate_Query
- //
- this.btn_generate_Query.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_generate_Query.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_generate_Query.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_generate_Query.Location = new System.Drawing.Point(16, 104);
- this.btn_generate_Query.Name = "btn_generate_Query";
- this.btn_generate_Query.Size = new System.Drawing.Size(126, 22);
- this.btn_generate_Query.TabIndex = 2;
- this.btn_generate_Query.Text = "Generate Query";
- this.ToolTip.SetToolTip(this.btn_generate_Query, "This will allow you to override the generated query.\r\nNote, The query in the box " +
- "below will always override any automatically generated query, even if you change" +
- " title or source.");
- this.btn_generate_Query.UseVisualStyleBackColor = true;
- this.btn_generate_Query.Click += new System.EventHandler(this.btn_generate_Query_Click);
- //
- // radio_cq
- //
- this.radio_cq.AutoSize = true;
- this.radio_cq.BackColor = System.Drawing.Color.Transparent;
- this.radio_cq.Location = new System.Drawing.Point(366, 37);
- this.radio_cq.Name = "radio_cq";
- this.radio_cq.Size = new System.Drawing.Size(105, 17);
- this.radio_cq.TabIndex = 3;
- this.radio_cq.Text = "Constant Quality:";
- this.ToolTip.SetToolTip(this.radio_cq, resources.GetString("radio_cq.ToolTip"));
- this.radio_cq.UseVisualStyleBackColor = false;
- this.radio_cq.CheckedChanged += new System.EventHandler(this.radio_cq_CheckedChanged);
- //
- // radio_avgBitrate
- //
- this.radio_avgBitrate.AutoSize = true;
- this.radio_avgBitrate.BackColor = System.Drawing.Color.Transparent;
- this.radio_avgBitrate.Checked = true;
- this.radio_avgBitrate.Location = new System.Drawing.Point(367, 108);
- this.radio_avgBitrate.Name = "radio_avgBitrate";
- this.radio_avgBitrate.Size = new System.Drawing.Size(112, 17);
- this.radio_avgBitrate.TabIndex = 4;
- this.radio_avgBitrate.TabStop = true;
- this.radio_avgBitrate.Text = "Avg Bitrate (kbps):";
- this.ToolTip.SetToolTip(this.radio_avgBitrate, resources.GetString("radio_avgBitrate.ToolTip"));
- this.radio_avgBitrate.UseVisualStyleBackColor = false;
- this.radio_avgBitrate.CheckedChanged += new System.EventHandler(this.radio_avgBitrate_CheckedChanged);
- //
- // check_2PassEncode
- //
- this.check_2PassEncode.AutoSize = true;
- this.check_2PassEncode.BackColor = System.Drawing.Color.Transparent;
- this.check_2PassEncode.Location = new System.Drawing.Point(385, 134);
- this.check_2PassEncode.Name = "check_2PassEncode";
- this.check_2PassEncode.Size = new System.Drawing.Size(106, 17);
- this.check_2PassEncode.TabIndex = 10;
- this.check_2PassEncode.Text = "2-Pass Encoding";
- this.ToolTip.SetToolTip(this.check_2PassEncode, resources.GetString("check_2PassEncode.ToolTip"));
- this.check_2PassEncode.UseVisualStyleBackColor = false;
- this.check_2PassEncode.CheckedChanged += new System.EventHandler(this.check_2PassEncode_CheckedChanged);
- //
- // btn_file_source
- //
- this.btn_file_source.Image = global::Handbrake.Properties.Resources.Movies_Small;
- this.btn_file_source.Name = "btn_file_source";
- this.btn_file_source.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
- this.btn_file_source.Size = new System.Drawing.Size(182, 22);
- this.btn_file_source.Text = "Video File";
- this.btn_file_source.Click += new System.EventHandler(this.BtnFileScanClicked);
- //
- // treeView_presets
- //
- this.treeView_presets.ContextMenuStrip = this.presets_menu;
- this.treeView_presets.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.treeView_presets.ForeColor = System.Drawing.Color.DarkBlue;
- this.treeView_presets.FullRowSelect = true;
- this.treeView_presets.HideSelection = false;
- this.treeView_presets.ItemHeight = 21;
- this.treeView_presets.Location = new System.Drawing.Point(0, 0);
- this.treeView_presets.Margin = new System.Windows.Forms.Padding(3, 3, 3, 0);
- this.treeView_presets.Name = "treeView_presets";
- this.treeView_presets.ShowLines = false;
- this.treeView_presets.Size = new System.Drawing.Size(240, 424);
- this.treeView_presets.TabIndex = 0;
- this.treeView_presets.AfterSelect += new System.Windows.Forms.TreeViewEventHandler(this.treeView_presets_AfterSelect);
- this.treeView_presets.KeyUp += new System.Windows.Forms.KeyEventHandler(this.treeView_presets_deleteKey);
- this.treeView_presets.MouseDown += new System.Windows.Forms.MouseEventHandler(this.treeview_presets_mouseDown);
- this.treeView_presets.MouseMove += new System.Windows.Forms.MouseEventHandler(this.TreeViewPresetsMouseMove);
- //
- // presets_menu
- //
- this.presets_menu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.pmnu_expandAll,
- this.pmnu_collapse,
- this.sep1,
- this.pmnu_import,
- this.toolStripSeparator2,
- this.pmnu_saveChanges,
- this.pmnu_delete});
- this.presets_menu.Name = "presets_menu";
- this.presets_menu.Size = new System.Drawing.Size(148, 126);
- this.presets_menu.Text = ";";
- this.presets_menu.Opening += new System.ComponentModel.CancelEventHandler(this.presets_menu_Opening);
- //
- // pmnu_expandAll
- //
- this.pmnu_expandAll.Name = "pmnu_expandAll";
- this.pmnu_expandAll.Size = new System.Drawing.Size(147, 22);
- this.pmnu_expandAll.Text = "Expand All";
- this.pmnu_expandAll.Click += new System.EventHandler(this.pmnu_expandAll_Click);
- //
- // pmnu_collapse
- //
- this.pmnu_collapse.Name = "pmnu_collapse";
- this.pmnu_collapse.Size = new System.Drawing.Size(147, 22);
- this.pmnu_collapse.Text = "Collapse All";
- this.pmnu_collapse.Click += new System.EventHandler(this.pmnu_collapse_Click);
- //
- // sep1
- //
- this.sep1.Name = "sep1";
- this.sep1.Size = new System.Drawing.Size(144, 6);
- //
- // pmnu_import
- //
- this.pmnu_import.Name = "pmnu_import";
- this.pmnu_import.Size = new System.Drawing.Size(147, 22);
- this.pmnu_import.Text = "Import";
- this.pmnu_import.Click += new System.EventHandler(this.pmnu_import_Click);
- //
- // toolStripSeparator2
- //
- this.toolStripSeparator2.Name = "toolStripSeparator2";
- this.toolStripSeparator2.Size = new System.Drawing.Size(144, 6);
- //
- // pmnu_saveChanges
- //
- this.pmnu_saveChanges.Name = "pmnu_saveChanges";
- this.pmnu_saveChanges.Size = new System.Drawing.Size(147, 22);
- this.pmnu_saveChanges.Text = "Save Changes";
- this.pmnu_saveChanges.Click += new System.EventHandler(this.pmnu_saveChanges_Click);
- //
- // pmnu_delete
- //
- this.pmnu_delete.Name = "pmnu_delete";
- this.pmnu_delete.Size = new System.Drawing.Size(147, 22);
- this.pmnu_delete.Text = "Delete";
- this.pmnu_delete.Click += new System.EventHandler(this.pmnu_delete_click);
- //
- // DVD_Open
- //
- this.DVD_Open.Description = "Select a VIDEO_TS folder or a folder which contains a collection of video files.";
- //
- // File_Open
- //
- this.File_Open.DefaultExt = "hb";
- this.File_Open.Filter = "hb|*.hb";
- //
- // ISO_Open
- //
- this.ISO_Open.DefaultExt = "ISO";
- this.ISO_Open.Filter = "All Files|*.*";
- this.ISO_Open.RestoreDirectory = true;
- this.ISO_Open.SupportMultiDottedExtensions = true;
- //
- // FileToolStripMenuItem
- //
- this.FileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_killCLI,
- this.mnu_exit});
- this.FileToolStripMenuItem.Name = "FileToolStripMenuItem";
- this.FileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);
- this.FileToolStripMenuItem.Text = "&File";
- //
- // mnu_killCLI
- //
- this.mnu_killCLI.Name = "mnu_killCLI";
- this.mnu_killCLI.Size = new System.Drawing.Size(138, 22);
- this.mnu_killCLI.Text = "Cancel Scan";
- this.mnu_killCLI.Visible = false;
- this.mnu_killCLI.Click += new System.EventHandler(this.mnu_killCLI_Click);
- //
- // mnu_exit
- //
- this.mnu_exit.Name = "mnu_exit";
- this.mnu_exit.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.F4)));
- this.mnu_exit.Size = new System.Drawing.Size(138, 22);
- this.mnu_exit.Text = "E&xit";
- this.mnu_exit.Click += new System.EventHandler(this.mnu_exit_Click);
- //
- // mnu_open3
- //
- this.mnu_open3.Name = "mnu_open3";
- this.mnu_open3.Size = new System.Drawing.Size(32, 19);
- //
- // ToolsToolStripMenuItem
- //
- this.ToolsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_encode,
- this.mnu_encodeLog,
- this.ToolStripSeparator5,
- this.mnu_options});
- this.ToolsToolStripMenuItem.Name = "ToolsToolStripMenuItem";
- this.ToolsToolStripMenuItem.Size = new System.Drawing.Size(48, 20);
- this.ToolsToolStripMenuItem.Text = "&Tools";
- //
- // mnu_encode
- //
- this.mnu_encode.Image = global::Handbrake.Properties.Resources.Queue_Small;
- this.mnu_encode.Name = "mnu_encode";
- this.mnu_encode.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Q)));
- this.mnu_encode.Size = new System.Drawing.Size(201, 22);
- this.mnu_encode.Text = "Show Queue";
- this.mnu_encode.Click += new System.EventHandler(this.mnu_encode_Click);
- //
- // mnu_encodeLog
- //
- this.mnu_encodeLog.Image = global::Handbrake.Properties.Resources.ActivityWindow_small;
- this.mnu_encodeLog.Name = "mnu_encodeLog";
- this.mnu_encodeLog.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.L)));
- this.mnu_encodeLog.Size = new System.Drawing.Size(201, 22);
- this.mnu_encodeLog.Text = "Activity Window";
- this.mnu_encodeLog.Click += new System.EventHandler(this.mnu_encodeLog_Click);
- //
- // ToolStripSeparator5
- //
- this.ToolStripSeparator5.Name = "ToolStripSeparator5";
- this.ToolStripSeparator5.Size = new System.Drawing.Size(198, 6);
- //
- // mnu_options
- //
- this.mnu_options.Image = global::Handbrake.Properties.Resources.Pref_Small;
- this.mnu_options.Name = "mnu_options";
- this.mnu_options.Size = new System.Drawing.Size(201, 22);
- this.mnu_options.Text = "Options";
- this.mnu_options.Click += new System.EventHandler(this.mnu_options_Click);
- //
- // frmMainMenu
- //
- this.frmMainMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.FileToolStripMenuItem,
- this.ToolsToolStripMenuItem});
- this.frmMainMenu.Location = new System.Drawing.Point(0, 0);
- this.frmMainMenu.Name = "frmMainMenu";
- this.frmMainMenu.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.frmMainMenu.Size = new System.Drawing.Size(1002, 24);
- this.frmMainMenu.TabIndex = 0;
- this.frmMainMenu.TabStop = true;
- this.frmMainMenu.Text = "MenuStrip";
- //
- // label5
- //
- this.label5.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label5.AutoSize = true;
- this.label5.ForeColor = System.Drawing.Color.Black;
- this.label5.Location = new System.Drawing.Point(3, 7);
- this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(58, 13);
- this.label5.TabIndex = 0;
- this.label5.Text = "Container:";
- //
- // Label47
- //
- this.Label47.AutoSize = true;
- this.Label47.BackColor = System.Drawing.Color.Transparent;
- this.Label47.ForeColor = System.Drawing.Color.Black;
- this.Label47.Location = new System.Drawing.Point(13, 39);
- this.Label47.Name = "Label47";
- this.Label47.Size = new System.Drawing.Size(70, 13);
- this.Label47.TabIndex = 7;
- this.Label47.Text = "Video Codec:";
- //
- // Label3
- //
- this.Label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.Label3.AutoSize = true;
- this.Label3.ForeColor = System.Drawing.Color.Black;
- this.Label3.Location = new System.Drawing.Point(3, 8);
- this.Label3.Name = "Label3";
- this.Label3.Size = new System.Drawing.Size(27, 13);
- this.Label3.TabIndex = 0;
- this.Label3.Text = "File:";
- //
- // tab_audio
- //
- this.tab_audio.BackColor = System.Drawing.Color.Transparent;
- this.tab_audio.Controls.Add(this.AudioSettings);
- this.tab_audio.Location = new System.Drawing.Point(4, 22);
- this.tab_audio.Name = "tab_audio";
- this.tab_audio.Padding = new System.Windows.Forms.Padding(3);
- this.tab_audio.Size = new System.Drawing.Size(724, 308);
- this.tab_audio.TabIndex = 3;
- this.tab_audio.Text = "Audio";
- this.tab_audio.UseVisualStyleBackColor = true;
- //
- // AudioSettings
- //
- this.AudioSettings.BackColor = System.Drawing.Color.Transparent;
- this.AudioSettings.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.AudioSettings.Location = new System.Drawing.Point(0, 0);
- this.AudioSettings.Name = "AudioSettings";
- allowedPassthru1.AudioAllowAACPass = true;
- allowedPassthru1.AudioAllowAC3Pass = true;
- allowedPassthru1.AudioAllowDTSHDPass = true;
- allowedPassthru1.AudioAllowDTSPass = true;
- allowedPassthru1.AudioAllowMP3Pass = true;
- allowedPassthru1.AudioEncoderFallback = HandBrake.Interop.Model.Encoding.AudioEncoder.Ac3;
- allowedPassthru1.IsEnabled = false;
- this.AudioSettings.PassthruSettings = allowedPassthru1;
- this.AudioSettings.Size = new System.Drawing.Size(720, 310);
- this.AudioSettings.TabIndex = 0;
- //
- // AudioMenuRowHeightHack
- //
- this.AudioMenuRowHeightHack.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
- this.AudioMenuRowHeightHack.ImageSize = new System.Drawing.Size(1, 18);
- this.AudioMenuRowHeightHack.TransparentColor = System.Drawing.Color.Transparent;
- //
- // tab_video
- //
- this.tab_video.BackColor = System.Drawing.Color.Transparent;
- this.tab_video.Controls.Add(this.panel1);
- this.tab_video.Controls.Add(this.drp_videoFramerate);
- this.tab_video.Controls.Add(this.radio_cq);
- this.tab_video.Controls.Add(this.radio_avgBitrate);
- this.tab_video.Controls.Add(this.drp_videoEncoder);
- this.tab_video.Controls.Add(this.Label47);
- this.tab_video.Controls.Add(this.label25);
- this.tab_video.Controls.Add(this.check_turbo);
- this.tab_video.Controls.Add(this.check_2PassEncode);
- this.tab_video.Controls.Add(this.Label2);
- this.tab_video.Controls.Add(this.slider_videoQuality);
- this.tab_video.Controls.Add(this.text_bitrate);
- this.tab_video.Controls.Add(this.lbl_SliderValue);
- this.tab_video.Controls.Add(this.lbl_framerate);
- this.tab_video.Location = new System.Drawing.Point(4, 22);
- this.tab_video.Name = "tab_video";
- this.tab_video.Padding = new System.Windows.Forms.Padding(3);
- this.tab_video.Size = new System.Drawing.Size(724, 308);
- this.tab_video.TabIndex = 2;
- this.tab_video.Text = "Video";
- this.tab_video.UseVisualStyleBackColor = true;
- //
- // panel1
- //
- this.panel1.Controls.Add(this.radio_constantFramerate);
- this.panel1.Controls.Add(this.radio_peakAndVariable);
- this.panel1.Location = new System.Drawing.Point(125, 92);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(184, 59);
- this.panel1.TabIndex = 20;
- //
- // radio_constantFramerate
- //
- this.radio_constantFramerate.AutoSize = true;
- this.radio_constantFramerate.BackColor = System.Drawing.Color.Transparent;
- this.radio_constantFramerate.Checked = true;
- this.radio_constantFramerate.Location = new System.Drawing.Point(0, 0);
- this.radio_constantFramerate.Name = "radio_constantFramerate";
- this.radio_constantFramerate.Size = new System.Drawing.Size(117, 17);
- this.radio_constantFramerate.TabIndex = 17;
- this.radio_constantFramerate.TabStop = true;
- this.radio_constantFramerate.Text = "Constant Framerate";
- this.radio_constantFramerate.UseVisualStyleBackColor = false;
- //
- // radio_peakAndVariable
- //
- this.radio_peakAndVariable.AutoSize = true;
- this.radio_peakAndVariable.BackColor = System.Drawing.Color.Transparent;
- this.radio_peakAndVariable.Location = new System.Drawing.Point(0, 23);
- this.radio_peakAndVariable.Name = "radio_peakAndVariable";
- this.radio_peakAndVariable.Size = new System.Drawing.Size(113, 17);
- this.radio_peakAndVariable.TabIndex = 19;
- this.radio_peakAndVariable.Text = "Variable Framerate";
- this.radio_peakAndVariable.UseVisualStyleBackColor = false;
- //
- // label25
- //
- this.label25.AutoSize = true;
- this.label25.BackColor = System.Drawing.Color.Transparent;
- this.label25.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label25.Location = new System.Drawing.Point(13, 13);
- this.label25.Name = "label25";
- this.label25.Size = new System.Drawing.Size(38, 13);
- this.label25.TabIndex = 8;
- this.label25.Text = "Video";
- //
- // Label2
- //
- this.Label2.AutoSize = true;
- this.Label2.BackColor = System.Drawing.Color.Transparent;
- this.Label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Label2.Location = new System.Drawing.Point(363, 13);
- this.Label2.Name = "Label2";
- this.Label2.Size = new System.Drawing.Size(47, 13);
- this.Label2.TabIndex = 11;
- this.Label2.Text = "Quality";
- //
- // lbl_SliderValue
- //
- this.lbl_SliderValue.AutoSize = true;
- this.lbl_SliderValue.BackColor = System.Drawing.Color.Transparent;
- this.lbl_SliderValue.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbl_SliderValue.Location = new System.Drawing.Point(487, 39);
- this.lbl_SliderValue.Name = "lbl_SliderValue";
- this.lbl_SliderValue.Size = new System.Drawing.Size(21, 13);
- this.lbl_SliderValue.TabIndex = 15;
- this.lbl_SliderValue.Text = "RF";
- //
- // lbl_framerate
- //
- this.lbl_framerate.AutoSize = true;
- this.lbl_framerate.BackColor = System.Drawing.Color.Transparent;
- this.lbl_framerate.Location = new System.Drawing.Point(13, 65);
- this.lbl_framerate.Name = "lbl_framerate";
- this.lbl_framerate.Size = new System.Drawing.Size(90, 13);
- this.lbl_framerate.TabIndex = 16;
- this.lbl_framerate.Text = "Framerate (FPS):";
- //
- // tab_picture
- //
- this.tab_picture.BackColor = System.Drawing.Color.Transparent;
- this.tab_picture.Controls.Add(this.PictureSettings);
- this.tab_picture.Location = new System.Drawing.Point(4, 22);
- this.tab_picture.Name = "tab_picture";
- this.tab_picture.Padding = new System.Windows.Forms.Padding(3);
- this.tab_picture.Size = new System.Drawing.Size(724, 308);
- this.tab_picture.TabIndex = 0;
- this.tab_picture.Text = "Picture";
- this.tab_picture.UseVisualStyleBackColor = true;
- //
- // PictureSettings
- //
- this.PictureSettings.BackColor = System.Drawing.Color.Transparent;
- this.PictureSettings.CurrentlySelectedPreset = null;
- this.PictureSettings.Enabled = false;
- this.PictureSettings.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.PictureSettings.Location = new System.Drawing.Point(0, 0);
- this.PictureSettings.Name = "PictureSettings";
- this.PictureSettings.PresetMaximumResolution = new System.Drawing.Size(0, 0);
- this.PictureSettings.Size = new System.Drawing.Size(666, 279);
- this.PictureSettings.SizeSet = false;
- this.PictureSettings.TabIndex = 0;
- //
- // Check_ChapterMarkers
- //
- this.Check_ChapterMarkers.AutoSize = true;
- this.Check_ChapterMarkers.BackColor = System.Drawing.Color.Transparent;
- this.Check_ChapterMarkers.Location = new System.Drawing.Point(16, 32);
- this.Check_ChapterMarkers.Name = "Check_ChapterMarkers";
- this.Check_ChapterMarkers.Size = new System.Drawing.Size(136, 17);
- this.Check_ChapterMarkers.TabIndex = 4;
- this.Check_ChapterMarkers.Text = "Create chapter markers";
- this.Check_ChapterMarkers.UseVisualStyleBackColor = false;
- this.Check_ChapterMarkers.CheckedChanged += new System.EventHandler(this.Check_ChapterMarkers_CheckedChanged);
- //
- // tabs_panel
- //
- this.tabs_panel.Controls.Add(this.tab_picture);
- this.tabs_panel.Controls.Add(this.tab_filters);
- this.tabs_panel.Controls.Add(this.tab_video);
- this.tabs_panel.Controls.Add(this.tab_audio);
- this.tabs_panel.Controls.Add(this.tab_subtitles);
- this.tabs_panel.Controls.Add(this.tab_chapters);
- this.tabs_panel.Controls.Add(this.tab_advanced);
- this.tabs_panel.Controls.Add(this.tab_query);
- this.tabs_panel.Location = new System.Drawing.Point(12, 218);
- this.tabs_panel.Name = "tabs_panel";
- this.tabs_panel.SelectedIndex = 0;
- this.tabs_panel.Size = new System.Drawing.Size(732, 334);
- this.tabs_panel.TabIndex = 6;
- //
- // tab_filters
- //
- this.tab_filters.Controls.Add(this.Filters);
- this.tab_filters.Location = new System.Drawing.Point(4, 22);
- this.tab_filters.Name = "tab_filters";
- this.tab_filters.Size = new System.Drawing.Size(724, 308);
- this.tab_filters.TabIndex = 1;
- this.tab_filters.Text = "Video Filters";
- this.tab_filters.UseVisualStyleBackColor = true;
- //
- // Filters
- //
- this.Filters.BackColor = System.Drawing.Color.Transparent;
- this.Filters.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Filters.Location = new System.Drawing.Point(0, 0);
- this.Filters.Name = "Filters";
- this.Filters.Size = new System.Drawing.Size(713, 310);
- this.Filters.TabIndex = 0;
- //
- // tab_subtitles
- //
- this.tab_subtitles.Controls.Add(this.Subtitles);
- this.tab_subtitles.Location = new System.Drawing.Point(4, 22);
- this.tab_subtitles.Name = "tab_subtitles";
- this.tab_subtitles.Padding = new System.Windows.Forms.Padding(3);
- this.tab_subtitles.Size = new System.Drawing.Size(724, 308);
- this.tab_subtitles.TabIndex = 4;
- this.tab_subtitles.Text = "Subtitles";
- this.tab_subtitles.UseVisualStyleBackColor = true;
- //
- // Subtitles
- //
- this.Subtitles.BackColor = System.Drawing.Color.Transparent;
- this.Subtitles.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Subtitles.Location = new System.Drawing.Point(0, 0);
- this.Subtitles.Name = "Subtitles";
- this.Subtitles.Size = new System.Drawing.Size(722, 310);
- this.Subtitles.TabIndex = 0;
- //
- // tab_chapters
- //
- this.tab_chapters.BackColor = System.Drawing.Color.Transparent;
- this.tab_chapters.Controls.Add(this.btn_export);
- this.tab_chapters.Controls.Add(this.btn_importChapters);
- this.tab_chapters.Controls.Add(this.label31);
- this.tab_chapters.Controls.Add(this.data_chpt);
- this.tab_chapters.Controls.Add(this.Check_ChapterMarkers);
- this.tab_chapters.Location = new System.Drawing.Point(4, 22);
- this.tab_chapters.Name = "tab_chapters";
- this.tab_chapters.Size = new System.Drawing.Size(724, 308);
- this.tab_chapters.TabIndex = 5;
- this.tab_chapters.Text = "Chapters";
- this.tab_chapters.UseVisualStyleBackColor = true;
- //
- // label31
- //
- this.label31.AutoSize = true;
- this.label31.BackColor = System.Drawing.Color.Transparent;
- 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(13, 13);
- this.label31.Name = "label31";
- this.label31.Size = new System.Drawing.Size(102, 13);
- this.label31.TabIndex = 2;
- this.label31.Text = "Chapter Markers";
- //
- // tab_advanced
- //
- this.tab_advanced.BackColor = System.Drawing.Color.Transparent;
- this.tab_advanced.Controls.Add(this.advancedEncoderOpts);
- this.tab_advanced.Controls.Add(this.x264Panel);
- this.tab_advanced.Location = new System.Drawing.Point(4, 22);
- this.tab_advanced.Name = "tab_advanced";
- this.tab_advanced.Padding = new System.Windows.Forms.Padding(3);
- this.tab_advanced.Size = new System.Drawing.Size(724, 308);
- this.tab_advanced.TabIndex = 6;
- this.tab_advanced.Text = "Advanced";
- this.tab_advanced.UseVisualStyleBackColor = true;
- //
- // advancedEncoderOpts
- //
- this.advancedEncoderOpts.AdavancedQuery = "";
- this.advancedEncoderOpts.BackColor = System.Drawing.Color.Transparent;
- this.advancedEncoderOpts.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.advancedEncoderOpts.Location = new System.Drawing.Point(0, 0);
- this.advancedEncoderOpts.Name = "advancedEncoderOpts";
- this.advancedEncoderOpts.Size = new System.Drawing.Size(720, 209);
- this.advancedEncoderOpts.TabIndex = 1;
- //
- // x264Panel
- //
- this.x264Panel.BackColor = System.Drawing.Color.Transparent;
- this.x264Panel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.x264Panel.Location = new System.Drawing.Point(0, 0);
- this.x264Panel.Name = "x264Panel";
- this.x264Panel.Size = new System.Drawing.Size(720, 306);
- this.x264Panel.TabIndex = 0;
- this.x264Panel.X264Query = "";
- //
- // tab_query
- //
- this.tab_query.Controls.Add(this.btn_clear);
- this.tab_query.Controls.Add(this.label34);
- this.tab_query.Controls.Add(this.btn_generate_Query);
- this.tab_query.Controls.Add(this.label33);
- this.tab_query.Controls.Add(this.rtf_query);
- this.tab_query.Location = new System.Drawing.Point(4, 22);
- this.tab_query.Name = "tab_query";
- this.tab_query.Size = new System.Drawing.Size(724, 308);
- this.tab_query.TabIndex = 7;
- this.tab_query.Text = "Query Editor";
- this.tab_query.UseVisualStyleBackColor = true;
- //
- // btn_clear
- //
- this.btn_clear.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_clear.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_clear.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_clear.Location = new System.Drawing.Point(634, 104);
- this.btn_clear.Name = "btn_clear";
- this.btn_clear.Size = new System.Drawing.Size(75, 22);
- this.btn_clear.TabIndex = 0;
- this.btn_clear.Text = "Clear";
- this.btn_clear.UseVisualStyleBackColor = true;
- this.btn_clear.Click += new System.EventHandler(this.btn_clear_Click);
- //
- // label34
- //
- this.label34.AutoSize = true;
- this.label34.Location = new System.Drawing.Point(13, 35);
- this.label34.Name = "label34";
- this.label34.Size = new System.Drawing.Size(631, 52);
- this.label34.TabIndex = 1;
- this.label34.Text = resources.GetString("label34.Text");
- //
- // label33
- //
- this.label33.AutoSize = true;
- this.label33.BackColor = System.Drawing.Color.Transparent;
- this.label33.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label33.Location = new System.Drawing.Point(13, 13);
- this.label33.Name = "label33";
- this.label33.Size = new System.Drawing.Size(77, 13);
- this.label33.TabIndex = 3;
- this.label33.Text = "Query Editor";
- //
- // rtf_query
- //
- this.rtf_query.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.rtf_query.Location = new System.Drawing.Point(16, 132);
- this.rtf_query.Name = "rtf_query";
- this.rtf_query.Size = new System.Drawing.Size(693, 161);
- this.rtf_query.TabIndex = 4;
- this.rtf_query.Text = "";
- //
- // groupBox2
- //
- this.groupBox2.Controls.Add(this.splitContainer1);
- this.groupBox2.ForeColor = System.Drawing.Color.Black;
- this.groupBox2.Location = new System.Drawing.Point(750, 70);
- this.groupBox2.Name = "groupBox2";
- this.groupBox2.Size = new System.Drawing.Size(246, 482);
- this.groupBox2.TabIndex = 4;
- this.groupBox2.TabStop = false;
- this.groupBox2.Text = "Presets";
- //
- // splitContainer1
- //
- this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.splitContainer1.Location = new System.Drawing.Point(3, 17);
- this.splitContainer1.Name = "splitContainer1";
- this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
- //
- // splitContainer1.Panel1
- //
- this.splitContainer1.Panel1.Controls.Add(this.treeView_presets);
- //
- // splitContainer1.Panel2
- //
- this.splitContainer1.Panel2.Controls.Add(this.presetsToolStrip);
- this.splitContainer1.Size = new System.Drawing.Size(240, 462);
- this.splitContainer1.SplitterDistance = 424;
- this.splitContainer1.TabIndex = 0;
- //
- // presetsToolStrip
- //
- this.presetsToolStrip.CanOverflow = false;
- this.presetsToolStrip.Dock = System.Windows.Forms.DockStyle.Fill;
- this.presetsToolStrip.GripMargin = new System.Windows.Forms.Padding(0);
- this.presetsToolStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
- this.presetsToolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.BtnAddPreset,
- this.BtnRemovePreset,
- this.toolStripDropDownButton2});
- this.presetsToolStrip.Location = new System.Drawing.Point(0, 0);
- this.presetsToolStrip.Name = "presetsToolStrip";
- this.presetsToolStrip.Padding = new System.Windows.Forms.Padding(0);
- this.presetsToolStrip.Size = new System.Drawing.Size(240, 34);
- this.presetsToolStrip.TabIndex = 2;
- this.presetsToolStrip.Text = "toolStrip2";
- //
- // BtnAddPreset
- //
- this.BtnAddPreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.BtnAddPreset.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.BtnAddPreset.Image = global::Handbrake.Properties.Resources.Add16;
- this.BtnAddPreset.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.BtnAddPreset.Name = "BtnAddPreset";
- this.BtnAddPreset.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never;
- this.BtnAddPreset.Padding = new System.Windows.Forms.Padding(8, 0, 8, 0);
- this.BtnAddPreset.Size = new System.Drawing.Size(65, 31);
- this.BtnAddPreset.Text = "Add";
- this.BtnAddPreset.Click += new System.EventHandler(this.BtnAddPreset_Click);
- //
- // BtnRemovePreset
- //
- this.BtnRemovePreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.BtnRemovePreset.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.BtnRemovePreset.Image = global::Handbrake.Properties.Resources.Close;
- this.BtnRemovePreset.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.BtnRemovePreset.Name = "BtnRemovePreset";
- this.BtnRemovePreset.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never;
- this.BtnRemovePreset.Padding = new System.Windows.Forms.Padding(0, 0, 8, 0);
- this.BtnRemovePreset.Size = new System.Drawing.Size(82, 31);
- this.BtnRemovePreset.Text = "Remove";
- this.BtnRemovePreset.Click += new System.EventHandler(this.BtnRemovePreset_Click);
- //
- // toolStripDropDownButton2
- //
- this.toolStripDropDownButton2.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.MnuSetDefaultPreset,
- this.toolStripSeparator3,
- this.MnuImportPreset,
- this.MnuExportPreset,
- this.toolStripSeparator6,
- this.MnuResetBuiltInPresets});
- this.toolStripDropDownButton2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.toolStripDropDownButton2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.toolStripDropDownButton2.Image = global::Handbrake.Properties.Resources.Options24;
- this.toolStripDropDownButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.toolStripDropDownButton2.Name = "toolStripDropDownButton2";
- this.toolStripDropDownButton2.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never;
- this.toolStripDropDownButton2.Size = new System.Drawing.Size(79, 31);
- this.toolStripDropDownButton2.Text = "Options";
- //
- // MnuSetDefaultPreset
- //
- this.MnuSetDefaultPreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuSetDefaultPreset.Name = "MnuSetDefaultPreset";
- this.MnuSetDefaultPreset.Size = new System.Drawing.Size(178, 22);
- this.MnuSetDefaultPreset.Text = "Set Default";
- this.MnuSetDefaultPreset.Click += new System.EventHandler(this.MnuSetDefaultPreset_Click);
- //
- // toolStripSeparator3
- //
- this.toolStripSeparator3.Name = "toolStripSeparator3";
- this.toolStripSeparator3.Size = new System.Drawing.Size(175, 6);
- //
- // MnuImportPreset
- //
- this.MnuImportPreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuImportPreset.Name = "MnuImportPreset";
- this.MnuImportPreset.Size = new System.Drawing.Size(178, 22);
- this.MnuImportPreset.Text = "Import";
- this.MnuImportPreset.Click += new System.EventHandler(this.MnuImportPreset_Click);
- //
- // MnuExportPreset
- //
- this.MnuExportPreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuExportPreset.Name = "MnuExportPreset";
- this.MnuExportPreset.Size = new System.Drawing.Size(178, 22);
- this.MnuExportPreset.Text = "Export";
- this.MnuExportPreset.Click += new System.EventHandler(this.MnuExportPreset_Click);
- //
- // toolStripSeparator6
- //
- this.toolStripSeparator6.Name = "toolStripSeparator6";
- this.toolStripSeparator6.Size = new System.Drawing.Size(175, 6);
- //
- // MnuResetBuiltInPresets
- //
- this.MnuResetBuiltInPresets.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuResetBuiltInPresets.Name = "MnuResetBuiltInPresets";
- this.MnuResetBuiltInPresets.Size = new System.Drawing.Size(178, 22);
- this.MnuResetBuiltInPresets.Text = "Reset Built-In Presets";
- this.MnuResetBuiltInPresets.Click += new System.EventHandler(this.MnuResetBuiltInPresets_Click);
- //
- // toolStrip1
- //
- this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
- this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.btn_source,
- this.toolStripSeparator10,
- this.btn_start,
- this.btn_add2Queue,
- this.btn_showQueue,
- this.toolStripSeparator4,
- this.tb_preview,
- this.btn_ActivityWindow,
- this.toolStripSeparator8,
- this.toolStripDropDownButton1});
- this.toolStrip1.Location = new System.Drawing.Point(0, 24);
- this.toolStrip1.Name = "toolStrip1";
- this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.toolStrip1.Size = new System.Drawing.Size(1002, 39);
- this.toolStrip1.TabIndex = 1;
- this.toolStrip1.TabStop = true;
- this.toolStrip1.Text = "toolStrip1";
- //
- // btn_source
- //
- this.btn_source.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.btn_file_source,
- this.btn_dvd_source,
- this.btnTitleSpecific,
- this.toolStripSeparator1});
- this.btn_source.Image = global::Handbrake.Properties.Resources.Movies;
- this.btn_source.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_source.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_source.Name = "btn_source";
- this.btn_source.Size = new System.Drawing.Size(88, 36);
- this.btn_source.Text = "Source";
- this.btn_source.ToolTipText = "Open a new source file or folder.";
- this.btn_source.Click += new System.EventHandler(this.btn_source_Click);
- //
- // btn_dvd_source
- //
- this.btn_dvd_source.Image = global::Handbrake.Properties.Resources.folder;
- this.btn_dvd_source.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_dvd_source.Name = "btn_dvd_source";
- this.btn_dvd_source.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift)
- | System.Windows.Forms.Keys.O)));
- this.btn_dvd_source.Size = new System.Drawing.Size(182, 22);
- this.btn_dvd_source.Text = "Folder";
- this.btn_dvd_source.Click += new System.EventHandler(this.BtnFolderScanClicked);
- //
- // btnTitleSpecific
- //
- this.btnTitleSpecific.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.FileTitleSpecificScan,
- this.FolderTitleSpecificScan});
- this.btnTitleSpecific.Name = "btnTitleSpecific";
- this.btnTitleSpecific.Size = new System.Drawing.Size(182, 22);
- this.btnTitleSpecific.Text = "Title Specific Scan";
- //
- // FileTitleSpecificScan
- //
- this.FileTitleSpecificScan.Image = global::Handbrake.Properties.Resources.Movies_Small;
- this.FileTitleSpecificScan.Name = "FileTitleSpecificScan";
- this.FileTitleSpecificScan.Size = new System.Drawing.Size(125, 22);
- this.FileTitleSpecificScan.Text = "Video File";
- this.FileTitleSpecificScan.Click += new System.EventHandler(this.VideoTitleSpecificScanClick);
- //
- // FolderTitleSpecificScan
- //
- this.FolderTitleSpecificScan.Image = global::Handbrake.Properties.Resources.folder;
- this.FolderTitleSpecificScan.Name = "FolderTitleSpecificScan";
- this.FolderTitleSpecificScan.Size = new System.Drawing.Size(125, 22);
- this.FolderTitleSpecificScan.Text = "Folder";
- this.FolderTitleSpecificScan.Click += new System.EventHandler(this.FolderTitleSpecificScanClick);
- //
- // toolStripSeparator1
- //
- this.toolStripSeparator1.Name = "toolStripSeparator1";
- this.toolStripSeparator1.Size = new System.Drawing.Size(179, 6);
- //
- // toolStripSeparator10
- //
- this.toolStripSeparator10.Name = "toolStripSeparator10";
- this.toolStripSeparator10.Size = new System.Drawing.Size(6, 39);
- //
- // btn_start
- //
- this.btn_start.Image = global::Handbrake.Properties.Resources.Play;
- this.btn_start.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_start.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_start.Name = "btn_start";
- this.btn_start.Size = new System.Drawing.Size(67, 36);
- this.btn_start.Text = "Start";
- this.btn_start.ToolTipText = "Start the encoding process";
- this.btn_start.Click += new System.EventHandler(this.btn_start_Click);
- //
- // btn_add2Queue
- //
- this.btn_add2Queue.DropDownButtonWidth = 20;
- this.btn_add2Queue.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_AddAllTitles,
- this.mnu_AddTittleRange});
- this.btn_add2Queue.Image = global::Handbrake.Properties.Resources.AddToQueue;
- this.btn_add2Queue.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_add2Queue.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_add2Queue.Name = "btn_add2Queue";
- this.btn_add2Queue.Size = new System.Drawing.Size(138, 36);
- this.btn_add2Queue.Text = "Add to Queue";
- this.btn_add2Queue.ToolTipText = "Add a new item to the Queue";
- this.btn_add2Queue.ButtonClick += new System.EventHandler(this.btn_add2Queue_Click);
- //
- // mnu_AddAllTitles
- //
- this.mnu_AddAllTitles.Name = "mnu_AddAllTitles";
- this.mnu_AddAllTitles.Size = new System.Drawing.Size(192, 22);
- this.mnu_AddAllTitles.Text = "Add All (Experimental)";
- this.mnu_AddAllTitles.ToolTipText = "Add all titles to the queue.\r\nUse caution with this feature as incorrect usage ma" +
- "y result in a queue of failed encodes.";
- this.mnu_AddAllTitles.Click += new System.EventHandler(this.mnu_AddAllTitles_Click);
- //
- // mnu_AddTittleRange
- //
- this.mnu_AddTittleRange.Name = "mnu_AddTittleRange";
- this.mnu_AddTittleRange.Size = new System.Drawing.Size(192, 22);
- this.mnu_AddTittleRange.Text = "Add Range";
- this.mnu_AddTittleRange.Visible = false;
- this.mnu_AddTittleRange.Click += new System.EventHandler(this.mnu_AddTittleRange_Click);
- //
- // btn_showQueue
- //
- this.btn_showQueue.Image = global::Handbrake.Properties.Resources.Queue;
- this.btn_showQueue.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_showQueue.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_showQueue.Name = "btn_showQueue";
- this.btn_showQueue.Size = new System.Drawing.Size(110, 36);
- this.btn_showQueue.Tag = "";
- this.btn_showQueue.Text = "Show Queue";
- this.btn_showQueue.Click += new System.EventHandler(this.btn_showQueue_Click);
- //
- // toolStripSeparator4
- //
- this.toolStripSeparator4.Name = "toolStripSeparator4";
- this.toolStripSeparator4.Size = new System.Drawing.Size(6, 39);
- //
- // tb_preview
- //
- this.tb_preview.Image = global::Handbrake.Properties.Resources.window;
- this.tb_preview.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.tb_preview.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.tb_preview.Name = "tb_preview";
- this.tb_preview.Size = new System.Drawing.Size(84, 36);
- this.tb_preview.Text = "Preview";
- this.tb_preview.Click += new System.EventHandler(this.tb_preview_Click);
- //
- // btn_ActivityWindow
- //
- this.btn_ActivityWindow.Image = global::Handbrake.Properties.Resources.ActivityWindow;
- this.btn_ActivityWindow.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_ActivityWindow.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_ActivityWindow.Name = "btn_ActivityWindow";
- this.btn_ActivityWindow.Size = new System.Drawing.Size(130, 36);
- this.btn_ActivityWindow.Text = "Activity Window";
- this.btn_ActivityWindow.ToolTipText = "Displays the activity window which displays the log of the last completed or curr" +
- "ently running encode.";
- this.btn_ActivityWindow.Click += new System.EventHandler(this.btn_ActivityWindow_Click);
- //
- // toolStripSeparator8
- //
- this.toolStripSeparator8.Name = "toolStripSeparator8";
- this.toolStripSeparator8.Size = new System.Drawing.Size(6, 39);
- //
- // toolStripDropDownButton1
- //
- this.toolStripDropDownButton1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
- this.toolStripDropDownButton1.AutoSize = false;
- this.toolStripDropDownButton1.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.MnuUserGuide,
- this.toolStripSeparator9,
- this.MnuCheckForUpdates,
- this.toolStripSeparator11,
- this.MnuAboutHandBrake});
- this.toolStripDropDownButton1.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.toolStripDropDownButton1.Image = global::Handbrake.Properties.Resources.Help24;
- this.toolStripDropDownButton1.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.toolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.toolStripDropDownButton1.Margin = new System.Windows.Forms.Padding(0, 1, 8, 2);
- this.toolStripDropDownButton1.Name = "toolStripDropDownButton1";
- this.toolStripDropDownButton1.Size = new System.Drawing.Size(69, 36);
- this.toolStripDropDownButton1.Text = "Help";
- //
- // MnuUserGuide
- //
- this.MnuUserGuide.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuUserGuide.Image = global::Handbrake.Properties.Resources.info16;
- this.MnuUserGuide.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.MnuUserGuide.Name = "MnuUserGuide";
- this.MnuUserGuide.Size = new System.Drawing.Size(192, 24);
- this.MnuUserGuide.Text = "HandBrake User Guide";
- this.MnuUserGuide.Click += new System.EventHandler(this.MnuUserGuide_Click);
- //
- // toolStripSeparator9
- //
- this.toolStripSeparator9.Name = "toolStripSeparator9";
- this.toolStripSeparator9.Size = new System.Drawing.Size(189, 6);
- //
- // MnuCheckForUpdates
- //
- this.MnuCheckForUpdates.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuCheckForUpdates.Name = "MnuCheckForUpdates";
- this.MnuCheckForUpdates.Size = new System.Drawing.Size(192, 24);
- this.MnuCheckForUpdates.Text = "Check for Updates";
- this.MnuCheckForUpdates.Click += new System.EventHandler(this.MnuCheckForUpdates_Click);
- //
- // toolStripSeparator11
- //
- this.toolStripSeparator11.Name = "toolStripSeparator11";
- this.toolStripSeparator11.Size = new System.Drawing.Size(189, 6);
- //
- // MnuAboutHandBrake
- //
- this.MnuAboutHandBrake.Font = new System.Drawing.Font("Segoe UI", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.MnuAboutHandBrake.Image = global::Handbrake.Properties.Resources.hb16;
- this.MnuAboutHandBrake.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.MnuAboutHandBrake.Name = "MnuAboutHandBrake";
- this.MnuAboutHandBrake.Size = new System.Drawing.Size(192, 24);
- this.MnuAboutHandBrake.Text = "About HandBrake";
- this.MnuAboutHandBrake.Click += new System.EventHandler(this.MnuAboutHandBrake_Click);
- //
- // notifyIcon
- //
- this.notifyIcon.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Info;
- this.notifyIcon.BalloonTipText = "HandBrake Status Here";
- this.notifyIcon.BalloonTipTitle = "HandBrake";
- this.notifyIcon.ContextMenuStrip = notifyIconMenu;
- this.notifyIcon.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon.Icon")));
- this.notifyIcon.Text = "HandBrake";
- this.notifyIcon.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon_MouseDoubleClick);
- //
- // StatusStrip
- //
- this.StatusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.ProgressBarStatus,
- this.lbl_encode,
- this.lbl_updateCheck,
- this.lbl_libhb_warning});
- this.StatusStrip.Location = new System.Drawing.Point(0, 561);
- this.StatusStrip.Name = "StatusStrip";
- this.StatusStrip.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.StatusStrip.Size = new System.Drawing.Size(1002, 22);
- this.StatusStrip.SizingGrip = false;
- this.StatusStrip.TabIndex = 7;
- this.StatusStrip.Text = "statusStrip1";
- //
- // ProgressBarStatus
- //
- this.ProgressBarStatus.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
- this.ProgressBarStatus.Name = "ProgressBarStatus";
- this.ProgressBarStatus.Size = new System.Drawing.Size(100, 16);
- this.ProgressBarStatus.Visible = false;
- //
- // lbl_encode
- //
- this.lbl_encode.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbl_encode.Name = "lbl_encode";
- this.lbl_encode.Size = new System.Drawing.Size(28, 17);
- this.lbl_encode.Text = "{0}";
- //
- // lbl_updateCheck
- //
- this.lbl_updateCheck.BackColor = System.Drawing.Color.Transparent;
- this.lbl_updateCheck.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
- this.lbl_updateCheck.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.lbl_updateCheck.Name = "lbl_updateCheck";
- this.lbl_updateCheck.Size = new System.Drawing.Size(139, 17);
- this.lbl_updateCheck.Text = "Checking for Updates ...";
- this.lbl_updateCheck.Visible = false;
- //
- // lbl_libhb_warning
- //
- this.lbl_libhb_warning.ForeColor = System.Drawing.Color.Red;
- this.lbl_libhb_warning.Name = "lbl_libhb_warning";
- this.lbl_libhb_warning.Size = new System.Drawing.Size(198, 17);
- this.lbl_libhb_warning.Text = "Warning: Experimental LibHB in use!";
- this.lbl_libhb_warning.Visible = false;
- //
- // hbproc
- //
- this.hbproc.StartInfo.Domain = "";
- this.hbproc.StartInfo.LoadUserProfile = false;
- this.hbproc.StartInfo.Password = null;
- this.hbproc.StartInfo.StandardErrorEncoding = null;
- this.hbproc.StartInfo.StandardOutputEncoding = null;
- this.hbproc.StartInfo.UserName = "";
- this.hbproc.SynchronizingObject = this;
- //
- // File_Save
- //
- this.File_Save.DefaultExt = "hb";
- this.File_Save.Filter = "hb|*.hb";
- //
- // tableLayoutPanel2
- //
- this.tableLayoutPanel2.AutoSize = true;
- this.tableLayoutPanel2.ColumnCount = 3;
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel2.Controls.Add(this.Label3, 0, 0);
- this.tableLayoutPanel2.Controls.Add(this.text_destination, 1, 0);
- this.tableLayoutPanel2.Controls.Add(this.btn_destBrowse, 2, 0);
- this.tableLayoutPanel2.Location = new System.Drawing.Point(21, 132);
- 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.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 29F));
- this.tableLayoutPanel2.Size = new System.Drawing.Size(723, 29);
- this.tableLayoutPanel2.TabIndex = 3;
- //
- // btn_destBrowse
- //
- this.btn_destBrowse.AutoSize = true;
- this.btn_destBrowse.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_destBrowse.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_destBrowse.Location = new System.Drawing.Point(645, 3);
- this.btn_destBrowse.Name = "btn_destBrowse";
- this.btn_destBrowse.Size = new System.Drawing.Size(75, 23);
- this.btn_destBrowse.TabIndex = 2;
- this.btn_destBrowse.Text = "Browse";
- this.btn_destBrowse.UseVisualStyleBackColor = true;
- this.btn_destBrowse.Click += new System.EventHandler(this.btn_destBrowse_Click);
- //
- // tableLayoutPanel3
- //
- this.tableLayoutPanel3.AutoSize = true;
- this.tableLayoutPanel3.ColumnCount = 5;
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel3.Controls.Add(this.label5, 0, 0);
- this.tableLayoutPanel3.Controls.Add(this.drop_format, 1, 0);
- this.tableLayoutPanel3.Controls.Add(this.check_largeFile, 2, 0);
- this.tableLayoutPanel3.Controls.Add(this.check_optimiseMP4, 3, 0);
- this.tableLayoutPanel3.Controls.Add(this.check_iPodAtom, 4, 0);
- this.tableLayoutPanel3.Location = new System.Drawing.Point(21, 180);
- 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(723, 27);
- this.tableLayoutPanel3.TabIndex = 5;
- //
- // tableLayoutPanel1
- //
- this.tableLayoutPanel1.AutoSize = true;
- this.tableLayoutPanel1.ColumnCount = 12;
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 35F));
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 5F));
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());
- this.tableLayoutPanel1.Controls.Add(this.Label10, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.drp_dvdtitle, 1, 0);
- this.tableLayoutPanel1.Controls.Add(this.lbl_angle, 2, 0);
- this.tableLayoutPanel1.Controls.Add(this.drop_angle, 3, 0);
- this.tableLayoutPanel1.Controls.Add(this.drop_chapterStart, 7, 0);
- this.tableLayoutPanel1.Controls.Add(this.Label13, 8, 0);
- this.tableLayoutPanel1.Controls.Add(this.drop_chapterFinish, 9, 0);
- this.tableLayoutPanel1.Controls.Add(this.label_duration, 10, 0);
- this.tableLayoutPanel1.Controls.Add(this.lbl_duration, 11, 0);
- this.tableLayoutPanel1.Controls.Add(this.drop_mode, 5, 0);
- this.tableLayoutPanel1.Location = new System.Drawing.Point(21, 86);
- this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- this.tableLayoutPanel1.RowCount = 1;
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));
- this.tableLayoutPanel1.Size = new System.Drawing.Size(723, 28);
- this.tableLayoutPanel1.TabIndex = 2;
- //
- // Label10
- //
- this.Label10.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.Label10.AutoSize = true;
- this.Label10.ForeColor = System.Drawing.Color.Black;
- this.Label10.Location = new System.Drawing.Point(3, 7);
- this.Label10.Name = "Label10";
- this.Label10.Size = new System.Drawing.Size(31, 13);
- this.Label10.TabIndex = 0;
- this.Label10.Text = "Title:";
- //
- // lbl_angle
- //
- this.lbl_angle.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.lbl_angle.AutoSize = true;
- this.lbl_angle.ForeColor = System.Drawing.Color.Black;
- this.lbl_angle.Location = new System.Drawing.Point(165, 7);
- this.lbl_angle.Name = "lbl_angle";
- this.lbl_angle.Size = new System.Drawing.Size(38, 13);
- this.lbl_angle.TabIndex = 2;
- this.lbl_angle.Text = "Angle:";
- //
- // Label13
- //
- this.Label13.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.Label13.AutoSize = true;
- this.Label13.Location = new System.Drawing.Point(458, 7);
- this.Label13.Name = "Label13";
- this.Label13.Size = new System.Drawing.Size(45, 13);
- this.Label13.TabIndex = 6;
- this.Label13.Text = "through";
- //
- // label_duration
- //
- this.label_duration.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.label_duration.AutoSize = true;
- this.label_duration.BackColor = System.Drawing.Color.Transparent;
- this.label_duration.Location = new System.Drawing.Point(584, 7);
- this.label_duration.Name = "label_duration";
- this.label_duration.Size = new System.Drawing.Size(52, 13);
- this.label_duration.TabIndex = 8;
- this.label_duration.Text = "Duration:";
- //
- // lbl_duration
- //
- this.lbl_duration.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.lbl_duration.AutoSize = true;
- this.lbl_duration.BackColor = System.Drawing.Color.Transparent;
- this.lbl_duration.Location = new System.Drawing.Point(642, 7);
- this.lbl_duration.Name = "lbl_duration";
- this.lbl_duration.Size = new System.Drawing.Size(39, 13);
- this.lbl_duration.TabIndex = 9;
- this.lbl_duration.Text = "--:--:--";
- //
- // labelStaticDestination
- //
- this.labelStaticDestination.AutoSize = true;
- this.labelStaticDestination.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.labelStaticDestination.Location = new System.Drawing.Point(9, 116);
- this.labelStaticDestination.Name = "labelStaticDestination";
- this.labelStaticDestination.Size = new System.Drawing.Size(75, 13);
- this.labelStaticDestination.TabIndex = 3;
- this.labelStaticDestination.Text = "Destination:";
- //
- // labelPreset
- //
- this.labelPreset.AutoSize = true;
- this.labelPreset.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.labelPreset.Location = new System.Drawing.Point(9, 164);
- this.labelPreset.Name = "labelPreset";
- this.labelPreset.Size = new System.Drawing.Size(180, 13);
- this.labelPreset.TabIndex = 5;
- this.labelPreset.Text = "Output Settings (Preset: None)";
- //
- // labelSource
- //
- this.labelSource.AutoSize = true;
- this.labelSource.Location = new System.Drawing.Point(55, 0);
- this.labelSource.Name = "labelSource";
- this.labelSource.Size = new System.Drawing.Size(137, 13);
- this.labelSource.TabIndex = 1;
- this.labelSource.Text = "Select \"Source\" to continue";
- //
- // labelStaticSource
- //
- this.labelStaticSource.AutoSize = true;
- this.labelStaticSource.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.labelStaticSource.Location = new System.Drawing.Point(0, 0);
- this.labelStaticSource.Margin = new System.Windows.Forms.Padding(0, 0, 3, 0);
- this.labelStaticSource.Name = "labelStaticSource";
- this.labelStaticSource.Size = new System.Drawing.Size(49, 13);
- this.labelStaticSource.TabIndex = 0;
- this.labelStaticSource.Text = "Source:";
- //
- // SourceLayoutPanel
- //
- this.SourceLayoutPanel.AutoSize = true;
- this.SourceLayoutPanel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.SourceLayoutPanel.Controls.Add(this.labelStaticSource);
- this.SourceLayoutPanel.Controls.Add(this.labelSource);
- this.SourceLayoutPanel.Location = new System.Drawing.Point(9, 70);
- this.SourceLayoutPanel.Margin = new System.Windows.Forms.Padding(0);
- this.SourceLayoutPanel.Name = "SourceLayoutPanel";
- this.SourceLayoutPanel.Size = new System.Drawing.Size(195, 13);
- this.SourceLayoutPanel.TabIndex = 2;
- //
- // openPreset
- //
- this.openPreset.DefaultExt = "plist";
- this.openPreset.Filter = "Plist Files|*.plist";
- //
- // File_ChapterImport
- //
- this.File_ChapterImport.Filter = "CSV Files|*.csv";
- //
- // frmMain
- //
- this.AllowDrop = true;
- this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
- this.AutoSize = true;
- this.ClientSize = new System.Drawing.Size(1002, 583);
- this.Controls.Add(this.tableLayoutPanel3);
- this.Controls.Add(this.toolStrip1);
- this.Controls.Add(this.SourceLayoutPanel);
- this.Controls.Add(this.frmMainMenu);
- this.Controls.Add(this.tableLayoutPanel2);
- this.Controls.Add(this.labelPreset);
- this.Controls.Add(this.groupBox2);
- this.Controls.Add(this.StatusStrip);
- this.Controls.Add(this.tableLayoutPanel1);
- this.Controls.Add(this.tabs_panel);
- this.Controls.Add(this.labelStaticDestination);
- this.DoubleBuffered = true;
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.KeyPreview = true;
- this.MinimumSize = new System.Drawing.Size(900, 500);
- this.Name = "frmMain";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "HandBrake";
- notifyIconMenu.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.slider_videoQuality)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.data_chpt)).EndInit();
- this.ChaptersMenu.ResumeLayout(false);
- this.presets_menu.ResumeLayout(false);
- this.frmMainMenu.ResumeLayout(false);
- this.frmMainMenu.PerformLayout();
- this.tab_audio.ResumeLayout(false);
- this.tab_video.ResumeLayout(false);
- this.tab_video.PerformLayout();
- this.panel1.ResumeLayout(false);
- this.panel1.PerformLayout();
- this.tab_picture.ResumeLayout(false);
- this.tabs_panel.ResumeLayout(false);
- this.tab_filters.ResumeLayout(false);
- this.tab_subtitles.ResumeLayout(false);
- this.tab_chapters.ResumeLayout(false);
- this.tab_chapters.PerformLayout();
- this.tab_advanced.ResumeLayout(false);
- this.tab_query.ResumeLayout(false);
- this.tab_query.PerformLayout();
- this.groupBox2.ResumeLayout(false);
- this.splitContainer1.Panel1.ResumeLayout(false);
- this.splitContainer1.Panel2.ResumeLayout(false);
- this.splitContainer1.Panel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
- this.splitContainer1.ResumeLayout(false);
- this.presetsToolStrip.ResumeLayout(false);
- this.presetsToolStrip.PerformLayout();
- this.toolStrip1.ResumeLayout(false);
- this.toolStrip1.PerformLayout();
- this.StatusStrip.ResumeLayout(false);
- this.StatusStrip.PerformLayout();
- this.tableLayoutPanel2.ResumeLayout(false);
- this.tableLayoutPanel2.PerformLayout();
- this.tableLayoutPanel3.ResumeLayout(false);
- this.tableLayoutPanel3.PerformLayout();
- this.tableLayoutPanel1.ResumeLayout(false);
- this.tableLayoutPanel1.PerformLayout();
- this.SourceLayoutPanel.ResumeLayout(false);
- this.SourceLayoutPanel.PerformLayout();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- internal System.Windows.Forms.ToolTip ToolTip;
- internal System.Windows.Forms.ToolStripMenuItem FileToolStripMenuItem;
- internal System.Windows.Forms.ToolStripMenuItem mnu_open3;
- internal System.Windows.Forms.ToolStripMenuItem mnu_exit;
- internal System.Windows.Forms.ToolStripMenuItem ToolsToolStripMenuItem;
- internal System.Windows.Forms.ToolStripMenuItem mnu_encode;
- internal System.Windows.Forms.ToolStripSeparator ToolStripSeparator5;
- internal System.Windows.Forms.ToolStripMenuItem mnu_options;
- internal System.Windows.Forms.MenuStrip frmMainMenu;
- internal System.Windows.Forms.Label Label3;
- internal System.Windows.Forms.ComboBox drp_videoEncoder;
- internal System.Windows.Forms.Label Label47;
- internal System.Windows.Forms.TextBox text_destination;
- internal System.Windows.Forms.TabPage tab_audio;
- internal System.Windows.Forms.TabPage tab_video;
- internal System.Windows.Forms.CheckBox check_largeFile;
- internal System.Windows.Forms.CheckBox check_turbo;
- internal System.Windows.Forms.Label Label2;
- internal System.Windows.Forms.Label lbl_SliderValue;
- internal System.Windows.Forms.ComboBox drp_videoFramerate;
- internal System.Windows.Forms.CheckBox check_2PassEncode;
- internal System.Windows.Forms.TrackBar slider_videoQuality;
- internal System.Windows.Forms.TextBox text_bitrate;
- internal System.Windows.Forms.TabPage tab_picture;
- internal System.Windows.Forms.CheckBox Check_ChapterMarkers;
- internal System.Windows.Forms.TabControl tabs_panel;
- internal System.Windows.Forms.Label lbl_framerate;
- private System.Windows.Forms.GroupBox groupBox2;
- private System.Windows.Forms.SaveFileDialog DVD_Save;
- private System.Windows.Forms.OpenFileDialog File_Open;
- internal System.Windows.Forms.CheckBox check_iPodAtom;
- private System.Windows.Forms.TabPage tab_chapters;
- internal System.Windows.Forms.Label label31;
- internal System.Windows.Forms.CheckBox check_optimiseMP4;
- internal System.Windows.Forms.DataGridView data_chpt;
- private System.Windows.Forms.TabPage tab_query;
- private System.Windows.Forms.Label label34;
- internal System.Windows.Forms.Button btn_generate_Query;
- internal System.Windows.Forms.Label label33;
- internal System.Windows.Forms.Button btn_clear;
- private System.Windows.Forms.ToolStrip toolStrip1;
- private System.Windows.Forms.ToolStripButton btn_start;
- private System.Windows.Forms.ToolStripButton btn_showQueue;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
- private System.Windows.Forms.ToolStripButton btn_ActivityWindow;
- internal System.Windows.Forms.Label label25;
- internal System.Windows.Forms.TabPage tab_advanced;
- internal System.Windows.Forms.TreeView treeView_presets;
- internal System.Windows.Forms.RichTextBox rtf_query;
- private System.Windows.Forms.NotifyIcon notifyIcon;
- private System.Windows.Forms.ToolStripMenuItem btn_restore;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator10;
- private System.Windows.Forms.ToolStripMenuItem btn_file_source;
- private System.Windows.Forms.ToolStripDropDownButton btn_source;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
- private System.Windows.Forms.ToolStripMenuItem btn_dvd_source;
- internal System.Windows.Forms.ComboBox drop_format;
- internal System.Windows.Forms.Label label5;
- internal System.Windows.Forms.ToolStripMenuItem mnu_encodeLog;
- private System.Windows.Forms.StatusStrip StatusStrip;
- private System.Windows.Forms.ToolStripStatusLabel lbl_encode;
- internal System.Windows.Forms.OpenFileDialog ISO_Open;
- internal System.Windows.Forms.FolderBrowserDialog DVD_Open;
- private System.Windows.Forms.ContextMenuStrip presets_menu;
- private System.Windows.Forms.ToolStripMenuItem pmnu_expandAll;
- private System.Windows.Forms.ToolStripMenuItem pmnu_collapse;
- private System.Windows.Forms.ToolStripSeparator sep1;
- private System.Windows.Forms.ToolStripMenuItem pmnu_delete;
- private System.Windows.Forms.SplitContainer splitContainer1;
- private System.Windows.Forms.ImageList AudioMenuRowHeightHack;
- private System.Windows.Forms.ToolStripMenuItem pmnu_saveChanges;
- private System.Windows.Forms.ToolStripMenuItem mnu_killCLI;
- private System.Windows.Forms.TabPage tab_filters;
- internal System.Windows.Forms.RadioButton radio_cq;
- internal System.Windows.Forms.RadioButton radio_avgBitrate;
- internal Handbrake.Controls.x264Panel x264Panel;
- private System.Windows.Forms.ToolStripButton tb_preview;
- private System.Diagnostics.Process hbproc;
- private TabPage tab_subtitles;
- internal Handbrake.Controls.Subtitles Subtitles;
- internal Handbrake.Controls.Filters Filters;
- private ToolStripStatusLabel lbl_updateCheck;
- internal SaveFileDialog File_Save;
- private TableLayoutPanel tableLayoutPanel2;
- private Button btn_destBrowse;
- private TableLayoutPanel tableLayoutPanel3;
- private TableLayoutPanel tableLayoutPanel1;
- internal Label lbl_angle;
- internal ComboBox drop_angle;
- internal ComboBox drop_chapterStart;
- internal Label Label13;
- internal ComboBox drop_chapterFinish;
- internal Label label_duration;
- internal Label lbl_duration;
- private Label labelStaticDestination;
- internal Label labelPreset;
- internal Handbrake.Controls.PictureSettings PictureSettings;
- private Label labelSource;
- internal ComboBox drp_dvdtitle;
- internal Label Label10;
- private Label labelStaticSource;
- private FlowLayoutPanel SourceLayoutPanel;
- private OpenFileDialog openPreset;
- private Button btn_importChapters;
- private OpenFileDialog File_ChapterImport;
- private ContextMenuStrip ChaptersMenu;
- private ToolStripMenuItem mnu_resetChapters;
- private ToolStripMenuItem pmnu_import;
- private ToolStripSeparator toolStripSeparator2;
- internal ComboBox drop_mode;
- private Button btn_export;
- private DataGridViewTextBoxColumn number;
- private DataGridViewTextBoxColumn name;
- private ToolStripProgressBar ProgressBarStatus;
- private ToolStripMenuItem btnTitleSpecific;
- private ToolStripMenuItem FileTitleSpecificScan;
- private ToolStripMenuItem FolderTitleSpecificScan;
- private ToolStripSeparator toolStripSeparator8;
- private ToolStripDropDownButton toolStripDropDownButton1;
- private ToolStripMenuItem MnuUserGuide;
- private ToolStripSeparator toolStripSeparator9;
- private ToolStripMenuItem MnuCheckForUpdates;
- private ToolStripSeparator toolStripSeparator11;
- private ToolStripMenuItem MnuAboutHandBrake;
- private ToolStrip presetsToolStrip;
- private ToolStripButton BtnAddPreset;
- private ToolStripButton BtnRemovePreset;
- private ToolStripDropDownButton toolStripDropDownButton2;
- private ToolStripMenuItem MnuSetDefaultPreset;
- private ToolStripSeparator toolStripSeparator3;
- private ToolStripMenuItem MnuImportPreset;
- private ToolStripMenuItem MnuExportPreset;
- private ToolStripSeparator toolStripSeparator6;
- private ToolStripMenuItem MnuResetBuiltInPresets;
- internal RadioButton radio_peakAndVariable;
- internal RadioButton radio_constantFramerate;
- private Panel panel1;
- internal Controls.AdvancedEncoderOpts advancedEncoderOpts;
- public Controls.AudioPanel AudioSettings;
- private ToolStripSplitButton btn_add2Queue;
- private ToolStripMenuItem mnu_AddAllTitles;
- private ToolStripMenuItem mnu_AddTittleRange;
- private ToolStripStatusLabel lbl_libhb_warning;
- }
-} \ No newline at end of file
diff --git a/win/CS/frmMain.cs b/win/CS/frmMain.cs
deleted file mode 100644
index 1ebda69f1..000000000
--- a/win/CS/frmMain.cs
+++ /dev/null
@@ -1,2685 +0,0 @@
-/* frmMain.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Diagnostics;
- using System.Drawing;
- using System.Globalization;
- using System.IO;
- using System.Linq;
- using System.Threading;
- using System.Windows.Forms;
-
- using Functions;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.EventArgs;
- using HandBrake.ApplicationServices.Exceptions;
- using HandBrake.ApplicationServices.Model.General;
- using HandBrake.ApplicationServices.Utilities;
- using HandBrake.ApplicationServices.Functions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Parsing;
- using HandBrake.ApplicationServices.Services;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- using Handbrake.ToolWindows;
-
- using Model;
-
- using Ookii.Dialogs.Wpf;
-
- using Properties;
-
- using Application = System.Windows.Forms.Application;
- using DataFormats = System.Windows.Forms.DataFormats;
- using DragDropEffects = System.Windows.Forms.DragDropEffects;
- using DragEventArgs = System.Windows.Forms.DragEventArgs;
- using Main = Handbrake.Functions.Main;
- using MessageBox = System.Windows.Forms.MessageBox;
-
- /// <summary>
- /// The Main Window
- /// </summary>
- public partial class frmMain : Form
- {
- #region Private Varibles
- // Objects which may be used by one or more other objects *************
- private IUserSettingService userSettingService = ServiceManager.UserSettingService;
- private IQueueProcessor queueProcessor = new QueueProcessor(Program.InstanceId);
- private PresetService presetHandler = new PresetService();
-
- // Windows ************************************************************
- private frmQueue queueWindow;
- private frmPreview qtpreview;
- private frmActivityWindow activityWindow;
-
- // Globals: Mainly used for tracking. *********************************
- public Title selectedTitle;
- public string sourcePath;
- private SourceType selectedSourceType;
- private string dvdDrivePath;
- private string dvdDriveLabel;
- private Preset currentlySelectedPreset;
- private Source currentSource;
-
- private IScan SourceScan;
- private List<DriveInformation> drives;
- private QueueTask queueEdit;
-
- // Delegates **********************************************************
- private delegate void UpdateWindowHandler();
-
- #endregion
-
- // Applicaiton Startup ************************************************
-
- #region Properties
-
- /// <summary>
- /// Gets SourceName.
- /// </summary>
- public string SourceName
- {
- get
- {
- if (this.selectedSourceType == SourceType.DvdDrive)
- {
- return this.dvdDriveLabel;
- }
-
- if (selectedTitle != null && !string.IsNullOrEmpty(selectedTitle.SourceName))
- {
- return Path.GetFileNameWithoutExtension(selectedTitle.SourceName);
- }
-
- // We have a drive, selected as a folder.
- if (this.sourcePath.EndsWith("\\"))
- {
- drives = GeneralUtilities.GetDrives();
- foreach (DriveInformation item in drives)
- {
- if (item.RootDirectory.Contains(this.sourcePath))
- {
- return item.VolumeLabel;
- }
- }
- }
-
- if (Path.GetFileNameWithoutExtension(this.sourcePath) != "VIDEO_TS")
- return Path.GetFileNameWithoutExtension(this.sourcePath);
-
- return Path.GetFileNameWithoutExtension(Path.GetDirectoryName(this.sourcePath));
- }
- }
-
- #endregion
-
- #region Application Startup
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmMain"/> class.
- /// </summary>
- /// <param name="args">
- /// The arguments passed in on application startup.
- /// </param>
- public frmMain(string[] args)
- {
- InitializeComponent();
- this.presetsToolStrip.Renderer = new ToolStripRenderOverride();
-
- // We can use LibHB, if the library hb.dll exists.
- this.SourceScan = File.Exists("hb.dll") ? (IScan)new LibScan() : new ScanService();
- lbl_libhb_warning.Visible = File.Exists("hb.dll") ? true : false;
-
- // Update the users config file with the CLI version data.
- Main.SetCliVersionData();
-
- if (userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion).Contains("svn"))
- {
- this.Text += " " + userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion);
- }
-
- // Check for new versions, if update checking is enabled
- if (userSettingService.GetUserSetting<bool>(UserSettingConstants.UpdateStatus))
- {
- if (DateTime.Now.Subtract(userSettingService.GetUserSetting<DateTime>(UserSettingConstants.LastUpdateCheckDate)).TotalDays
- > userSettingService.GetUserSetting<int>(UserSettingConstants.DaysBetweenUpdateCheck))
- {
- // Set when the last update was
- this.userSettingService.SetUserSetting(UserSettingConstants.LastUpdateCheckDate, DateTime.Now);
- string url = userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakePlatform).Contains("x86_64")
- ? userSettingService.GetUserSetting<string>(UserSettingConstants.Appcast_x64)
- : userSettingService.GetUserSetting<string>(UserSettingConstants.Appcast_i686);
- UpdateService.BeginCheckForUpdates(new AsyncCallback(UpdateCheckDone), false, url, userSettingService.GetUserSetting<int>(ASUserSettingConstants.HandBrakeBuild),
- userSettingService.GetUserSetting<int>(UserSettingConstants.Skipversion));
- }
- }
-
- // Clear the log files in the background
- if (userSettingService.GetUserSetting<bool>(UserSettingConstants.ClearOldLogs))
- {
- Thread clearLog = new Thread(() => GeneralUtilities.ClearLogFiles(30));
- clearLog.Start();
- }
-
- // Setup the GUI components
- LoadPresetPanel(); // Load the Preset Panel
- treeView_presets.ExpandAll();
- lbl_encode.Text = string.Empty;
- drop_mode.SelectedIndex = 0;
- queueWindow = new frmQueue(this.queueProcessor, this); // Prepare the Queue
- if (!userSettingService.GetUserSetting<bool>(UserSettingConstants.QueryEditorTab))
- tabs_panel.TabPages.RemoveAt(7); // Remove the query editor tab if the user does not want it enabled.
- if (userSettingService.GetUserSetting<bool>(UserSettingConstants.TooltipEnable))
- ToolTip.Active = true;
-
- // Load the user's default settings or Normal Preset
- if (this.presetHandler.DefaultPreset != null)
- {
- this.loadPreset(this.presetHandler.DefaultPreset.Name);
- }
- else
- loadPreset("Normal");
-
- // Register with Growl (if not using Growl for the encoding completion action, this wont hurt anything)
- GrowlCommunicator.Register();
-
- // Event Handlers and Queue Recovery
- events();
- Main.RecoverQueue(this.queueProcessor);
-
- // If have a file passed in via command arguemtents, check it's a file and try scanning it.
- if (args.Length >= 1 && (File.Exists(args[0]) || Directory.Exists(args[0])))
- {
- this.StartScan(args[0], 0);
- }
- }
-
- /// <summary>
- /// When the update check is done, process the results.
- /// </summary>
- /// <param name="result">IAsyncResult result</param>
- private void UpdateCheckDone(IAsyncResult result)
- {
- if (InvokeRequired)
- {
- Invoke(new MethodInvoker(() => UpdateCheckDone(result)));
- return;
- }
-
- try
- {
- UpdateCheckInformation info = UpdateService.EndCheckForUpdates(result);
-
- if (info.NewVersionAvailable)
- {
- UpdateInfo updateWindow = new UpdateInfo(info, userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion),
- userSettingService.GetUserSetting<int>(ASUserSettingConstants.HandBrakeBuild));
- updateWindow.ShowDialog();
- }
- }
- catch (Exception ex)
- {
- if ((bool)result.AsyncState)
- throw new GeneralApplicationException("Unable to check for updates.", "Please try again later. The service may currently be down or inaccessible. ", ex);
- }
- }
-
- #endregion
-
- #region Events
-
- // Encoding Events for setting up the GUI
- private void events()
- {
- // Handle Widget changes when preset is selected.
- RegisterPresetEventHandler();
-
- // Handle Window Resize
- if (userSettingService.GetUserSetting<bool>(UserSettingConstants.MainWindowMinimize))
- this.Resize += this.frmMain_Resize;
-
- // Handle Encode Start / Finish / Pause
- this.queueProcessor.EncodeService.EncodeStarted += this.encodeStarted;
- this.queueProcessor.EncodeService.EncodeCompleted += encodeEnded;
-
- // Scan Started and Completed Events
- SourceScan.ScanStatusChanged += this.SourceScanScanStatusChanged;
- SourceScan.ScanCompleted += this.SourceScanScanCompleted;
-
- // Handle a file being draged onto the GUI.
- this.DragEnter += frmMain_DragEnter;
- this.DragDrop += this.frmMain_DragDrop;
- }
-
- // Change the preset label to custom when a user changes a setting. Don't want to give the impression that users can change settings and still be using a preset
- private void RegisterPresetEventHandler()
- {
- // Output Settings
- drop_format.SelectedIndexChanged += this.changePresetLabel;
- check_largeFile.CheckedChanged += this.changePresetLabel;
- check_iPodAtom.CheckedChanged += this.changePresetLabel;
- check_optimiseMP4.CheckedChanged += this.changePresetLabel;
-
- // Picture Settings
- PictureSettings.PictureSettingsChanged += this.changePresetLabel;
-
- // Filter Settings
- Filters.FilterSettingsChanged += this.changePresetLabel;
-
- // Video Tab
- drp_videoEncoder.SelectedIndexChanged += this.changePresetLabel;
- check_2PassEncode.CheckedChanged += this.changePresetLabel;
- check_turbo.CheckedChanged += this.changePresetLabel;
- text_bitrate.TextChanged += this.changePresetLabel;
- slider_videoQuality.ValueChanged += this.changePresetLabel;
-
- // Audio Panel
- AudioSettings.AudioListChanged += this.changePresetLabel;
-
- // Advanced Tab
- x264Panel.rtf_x264Query.TextChanged += this.changePresetLabel;
- }
-
- private void UnRegisterPresetEventHandler()
- {
- // Output Settings
- drop_format.SelectedIndexChanged -= this.changePresetLabel;
- check_largeFile.CheckedChanged -= this.changePresetLabel;
- check_iPodAtom.CheckedChanged -= this.changePresetLabel;
- check_optimiseMP4.CheckedChanged -= this.changePresetLabel;
-
- // Picture Settings
- PictureSettings.PictureSettingsChanged -= this.changePresetLabel;
-
- // Filter Settings
- Filters.FilterSettingsChanged -= this.changePresetLabel;
-
- // Video Tab
- drp_videoEncoder.SelectedIndexChanged -= this.changePresetLabel;
- check_2PassEncode.CheckedChanged -= this.changePresetLabel;
- check_turbo.CheckedChanged -= this.changePresetLabel;
- text_bitrate.TextChanged -= this.changePresetLabel;
- slider_videoQuality.ValueChanged -= this.changePresetLabel;
-
- // Audio Panel
- AudioSettings.AudioListChanged -= this.changePresetLabel;
-
- // Advanced Tab
- x264Panel.rtf_x264Query.TextChanged -= this.changePresetLabel;
- }
-
- private void changePresetLabel(object sender, EventArgs e)
- {
- labelPreset.Text = "Output Settings (Preset: Custom)";
- }
-
- private static void frmMain_DragEnter(object sender, DragEventArgs e)
- {
- if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
- e.Effect = DragDropEffects.All;
- }
-
- private void frmMain_DragDrop(object sender, DragEventArgs e)
- {
- string[] fileList = e.Data.GetData(DataFormats.FileDrop) as string[];
- sourcePath = string.Empty;
-
- if (fileList != null)
- {
- if (!string.IsNullOrEmpty(fileList[0]))
- {
- this.selectedSourceType = SourceType.VideoFile;
- StartScan(fileList[0], 0);
- }
- else
- UpdateSourceLabel();
- }
- else
- UpdateSourceLabel();
- }
-
- private void encodeStarted(object sender, EventArgs e)
- {
- SetEncodeStarted();
- this.queueProcessor.EncodeService.EncodeStatusChanged += EncodeQueue_EncodeStatusChanged;
- }
-
- private void encodeEnded(object sender, EventArgs e)
- {
- this.queueProcessor.EncodeService.EncodeStatusChanged -= EncodeQueue_EncodeStatusChanged;
- SetEncodeFinished();
- }
- #endregion
-
- // User Interface Menus / Tool Strips *********************************
-
- #region File Menu
-
- /// <summary>
- /// Kill The scan menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_killCLI_Click(object sender, EventArgs e)
- {
- KillScan();
- }
-
- /// <summary>
- /// Exit the Application Menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_exit_Click(object sender, EventArgs e)
- {
- Application.Exit();
- }
-
- #endregion
-
- #region Tools Menu
-
- /// <summary>
- /// Menu - Start Button
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_encode_Click(object sender, EventArgs e)
- {
- queueWindow.Show();
- }
-
- /// <summary>
- /// Menu - Display the Log Window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_encodeLog_Click(object sender, EventArgs e)
- {
- this.btn_ActivityWindow_Click(this, null);
- }
-
- /// <summary>
- /// Menu - Display the Options Window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_options_Click(object sender, EventArgs e)
- {
- Form options = new frmOptions(this);
- options.ShowDialog();
- }
-
- #endregion
-
- #region Help Menu (Toolbar)
-
- /// <summary>
- /// Menu - Display the User Guide Web Page
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void MnuUserGuide_Click(object sender, EventArgs e)
- {
- Process.Start("http://trac.handbrake.fr/wiki/HandBrakeGuide");
- }
-
- /// <summary>
- /// Check for Updates
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void MnuCheckForUpdates_Click(object sender, EventArgs e)
- {
- lbl_updateCheck.Visible = true;
- this.userSettingService.SetUserSetting(UserSettingConstants.LastUpdateCheckDate, DateTime.Now);
- string url = userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakePlatform).Contains("x86_64")
- ? userSettingService.GetUserSetting<string>(UserSettingConstants.Appcast_x64)
- : userSettingService.GetUserSetting<string>(UserSettingConstants.Appcast_i686);
- UpdateService.BeginCheckForUpdates(new AsyncCallback(UpdateCheckDoneMenu), false,
- url, userSettingService.GetUserSetting<int>(ASUserSettingConstants.HandBrakeBuild),
- userSettingService.GetUserSetting<int>(UserSettingConstants.Skipversion));
- }
-
- /// <summary>
- /// Menu - Display the About Window
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">The EventArgs</param>
- private void MnuAboutHandBrake_Click(object sender, EventArgs e)
- {
- using (frmAbout About = new frmAbout())
- {
- About.ShowDialog();
- }
- }
-
- #endregion
-
- #region Preset Bar
-
- /// <summary>
- /// RMenu - Expand All
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void pmnu_expandAll_Click(object sender, EventArgs e)
- {
- treeView_presets.ExpandAll();
- }
-
- /// <summary>
- /// RMenu - Collaspe All
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void pmnu_collapse_Click(object sender, EventArgs e)
- {
- treeView_presets.CollapseAll();
- }
-
- /// <summary>
- /// Menu - Import Preset
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void pmnu_import_Click(object sender, EventArgs e)
- {
- ImportPreset();
- }
-
- /// <summary>
- /// RMenu - Save Changes to Preset
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void pmnu_saveChanges_Click(object sender, EventArgs e)
- {
- if (this.selectedTitle == null)
- {
- MessageBox.Show(
- "Please scan a source before trying to update a preset.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- DialogResult result =
- MessageBox.Show(
- "Do you wish to include picture settings when updating the preset: " +
- treeView_presets.SelectedNode.Text, "Update Preset", MessageBoxButtons.YesNoCancel,
- MessageBoxIcon.Question);
- string query = QueryGenerator.GenerateQueryForPreset(
- this, QueryPictureSettingsMode.SourceMaximum, true, 0, 0);
- Preset preset = new Preset
- {
- Name = this.treeView_presets.SelectedNode.Text,
- Query = query,
- CropSettings = (result == DialogResult.Yes),
- Task = QueryParserUtility.Parse(query),
- };
-
- presetHandler.Update(preset);
- }
-
- /// <summary>
- /// RMenu - Delete Preset
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void pmnu_delete_click(object sender, EventArgs e)
- {
- BtnRemovePreset_Click(sender, e);
- }
-
- /// <summary>
- /// Preset Menu Is Opening. Setup the Menu
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void presets_menu_Opening(object sender, CancelEventArgs e)
- {
- // Make sure that the save menu is always disabled by default
- pmnu_saveChanges.Enabled = false;
-
- // Now enable the save menu if the selected preset is a user preset
- if (treeView_presets.SelectedNode != null)
- pmnu_saveChanges.Enabled = presetHandler.CanUpdatePreset(treeView_presets.SelectedNode.Text);
-
- treeView_presets.Select();
- }
-
- // Presets Management
-
- private void BtnAddPreset_Click(object sender, EventArgs e)
- {
- if (this.selectedTitle == null)
- {
- MessageBox.Show(
- "Please scan a source before trying to import a preset.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- Form preset = new frmAddPreset(this, presetHandler);
- if (preset.ShowDialog() == DialogResult.OK)
- {
- TreeNode presetTreeview = new TreeNode(presetHandler.LastPresetAdded.Name) { ForeColor = Color.Black, Tag = presetHandler.LastPresetAdded };
- treeView_presets.Nodes.Add(presetTreeview);
- presetHandler.LastPresetAdded = null;
- }
- }
-
- private void BtnRemovePreset_Click(object sender, EventArgs e)
- {
- if (treeView_presets.SelectedNode == null)
- {
- return;
- }
-
- DialogResult result = MessageBox.Show("Are you sure you wish to delete the selected preset?", "Preset",
- MessageBoxButtons.YesNo, MessageBoxIcon.Question);
- if (result == DialogResult.Yes)
- {
- if (treeView_presets.SelectedNode.Nodes.Count > 0)
- {
- // Delete the selected group category
- this.presetHandler.RemoveGroup(treeView_presets.SelectedNode.Text.Trim());
- }
- else
- {
- Preset preset = treeView_presets.SelectedNode.Tag as Preset;
- if (preset != null && preset.IsDefault)
- {
- MessageBox.Show(
- "Your default preset can not be deleted. It is a required preset.",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Information);
- }
-
- // Delete the selected item.
- presetHandler.Remove((Preset)treeView_presets.SelectedNode.Tag);
- }
-
- this.LoadPresetPanel();
- }
-
- treeView_presets.Select();
- treeView_presets.ExpandAll();
- }
-
- private void MnuSetDefaultPreset_Click(object sender, EventArgs e)
- {
- if (treeView_presets.SelectedNode != null)
- {
- Preset preset = treeView_presets.SelectedNode.Tag as Preset;
- if (preset != null)
- {
- MessageBox.Show(
- "New default preset set: " + treeView_presets.SelectedNode.Text,
- "Alert",
- MessageBoxButtons.OK,
- MessageBoxIcon.Information);
- this.presetHandler.SetDefault(preset);
- }
- }
- else
- MessageBox.Show("Please select a preset first.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- private void MnuImportPreset_Click(object sender, EventArgs e)
- {
- this.ImportPreset();
- }
-
- private void MnuExportPreset_Click(object sender, EventArgs e)
- {
- this.ExportPreset();
- }
-
- private void MnuResetBuiltInPresets_Click(object sender, EventArgs e)
- {
- presetHandler.UpdateBuiltInPresets();
- LoadPresetPanel();
- treeView_presets.ExpandAll();
- }
-
- /// <summary>
- /// PresetBar Mouse Down event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void treeview_presets_mouseDown(object sender, MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Right)
- treeView_presets.SelectedNode = treeView_presets.GetNodeAt(e.Location);
- else if (e.Button == MouseButtons.Left)
- {
- if (treeView_presets.GetNodeAt(e.Location) != null)
- {
- if (labelPreset.Text.Contains(treeView_presets.GetNodeAt(e.Location).Text))
- selectPreset();
- }
- }
-
- treeView_presets.Select();
- }
-
- /// <summary>
- /// Preset Bar after selecting the preset
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void treeView_presets_AfterSelect(object sender, TreeViewEventArgs e)
- {
- selectPreset();
- }
-
- /// <summary>
- /// When the mouse moves, display a preset
- /// </summary>
- /// <param name="sender">The Sender</param>
- /// <param name="e">the MouseEventArgs</param>
- private void TreeViewPresetsMouseMove(object sender, MouseEventArgs e)
- {
- TreeNode theNode = this.treeView_presets.GetNodeAt(e.X, e.Y);
-
- if ((theNode != null))
- {
- // Change the ToolTip only if the pointer moved to a new node.
- if (theNode.ToolTipText != this.ToolTip.GetToolTip(this.treeView_presets))
- {
- this.ToolTip.SetToolTip(this.treeView_presets, theNode.ToolTipText);
- }
- }
- else // Pointer is not over a node so clear the ToolTip.
- {
- this.ToolTip.SetToolTip(this.treeView_presets, string.Empty);
- }
- }
-
- /// <summary>
- /// Preset Bar - Handle the Delete Key
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void treeView_presets_deleteKey(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Delete)
- {
- this.BtnRemovePreset_Click(sender, e);
- }
- }
-
- /// <summary>
- /// Select the selected preset and setup the GUI
- /// </summary>
- private void selectPreset()
- {
- if (treeView_presets.SelectedNode != null)
- {
- // Ok, so, we've selected a preset. Now we want to load it.
- string presetName = treeView_presets.SelectedNode.Text;
- Preset preset = presetHandler.GetPreset(presetName);
- if (preset != null)
- {
- string query = presetHandler.GetPreset(presetName).Query;
-
- if (query != null)
- {
- // Ok, Reset all the H264 widgets before changing the preset
- x264Panel.Reset2Defaults();
-
- // Now load the preset
- PresetLoader.LoadPreset(this, preset);
-
- // The x264 widgets will need updated, so do this now:
- x264Panel.StandardizeOptString();
- x264Panel.SetCurrentSettingsInPanel();
-
- // Finally, let this window have a copy of the preset settings.
- this.currentlySelectedPreset = preset;
- PictureSettings.SetPresetCropWarningLabel(preset);
- }
- }
- }
- }
-
- /// <summary>
- /// Load the Normal Preset
- /// </summary>
- /// <param name="presetName">
- /// The preset name.
- /// </param>
- private void loadPreset(string presetName)
- {
- foreach (TreeNode treenode in treeView_presets.Nodes)
- {
- if (treenode.Tag != null && ((Preset)treenode.Tag).Name == presetName)
- {
- treeView_presets.SelectedNode = treenode;
- return;
- }
-
- foreach (TreeNode node in treenode.Nodes)
- {
- if (node.Text.Equals(presetName))
- {
- treeView_presets.SelectedNode = node;
- return;
- }
- }
- }
- }
-
- /// <summary>
- /// Import a plist preset
- /// </summary>
- private void ImportPreset()
- {
- if (openPreset.ShowDialog() == DialogResult.OK)
- {
- Preset parsed = PlistPresetHandler.Import(openPreset.FileName);
-
- if (presetHandler.CheckIfPresetExists(parsed.Name))
- {
- if (!presetHandler.CanUpdatePreset(parsed.Name))
- {
- MessageBox.Show(
- "You can not import a preset with the same name as a built-in preset.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- DialogResult result =
- MessageBox.Show("This preset appears to already exist. Would you like to overwrite it?",
- "Overwrite preset?",
- MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
- if (result == DialogResult.Yes)
- {
- parsed.Query = QueryGeneratorUtility.GenerateQuery(parsed.Task);
- parsed.Task.AllowedPassthruOptions = parsed.Task.AllowedPassthruOptions;
- parsed.CropSettings = false;
-
- presetHandler.Update(parsed);
- }
- }
- else
- {
- parsed.Query = QueryGeneratorUtility.GenerateQuery(parsed.Task);
- parsed.Task.AllowedPassthruOptions = parsed.Task.AllowedPassthruOptions;
- parsed.CropSettings = false;
-
- if (presetHandler.Add(parsed))
- {
- TreeNode preset_treeview = new TreeNode(parsed.Name)
- {
- ForeColor = Color.Black,
- Tag = parsed,
- };
- treeView_presets.Nodes.Add(preset_treeview);
- }
- }
- }
- }
-
- /// <summary>
- /// Export a plist Preset
- /// </summary>
- private void ExportPreset()
- {
- if (this.selectedTitle == null)
- {
- MessageBox.Show(
- "Please scan a source before trying to export a preset.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- SaveFileDialog savefiledialog = new SaveFileDialog { Filter = "plist|*.plist" };
-
- if (treeView_presets.SelectedNode != null)
- {
- if (savefiledialog.ShowDialog() == DialogResult.OK)
- {
- Preset preset = presetHandler.GetPreset(treeView_presets.SelectedNode.Text);
- PlistPresetHandler.Export(savefiledialog.FileName, preset);
- }
- }
- }
-
- #endregion
-
- #region ToolStrip
-
- /// <summary>
- /// Toolbar - When the Source button is clicked, Clear any DVD drives and add any available DVD drives that can be used as a source.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_source_Click(object sender, EventArgs e)
- {
- // Remove old Drive Menu Items.
- List<ToolStripMenuItem> itemsToRemove = new List<ToolStripMenuItem>();
- foreach (var item in btn_source.DropDownItems)
- {
- if (item.GetType() == typeof(ToolStripMenuItem))
- {
- ToolStripMenuItem menuItem = (ToolStripMenuItem)item;
- if (menuItem.Name.StartsWith("Drive"))
- {
- itemsToRemove.Add(menuItem);
- }
- }
- }
-
- foreach (ToolStripMenuItem item in itemsToRemove)
- btn_source.DropDownItems.Remove(item);
-
- Thread driveInfoThread = new Thread(SetDriveSelectionMenuItem);
- driveInfoThread.Start();
- }
-
- /// <summary>
- /// Toolbar - Start The Encode
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_start_Click(object sender, EventArgs e)
- {
- if (btn_start.Text == "Stop")
- {
- DialogResult result = !userSettingService.GetUserSetting<bool>(ASUserSettingConstants.ShowCLI)
- ? MessageBox.Show(
- "Are you sure you wish to cancel the encode?\n\nPlease note: Stopping this encode will render the file unplayable. ",
- "Cancel Encode?",
- MessageBoxButtons.YesNo,
- MessageBoxIcon.Question)
- : MessageBox.Show(
- "Are you sure you wish to cancel the encode?",
- "Cancel Encode?",
- MessageBoxButtons.YesNo,
- MessageBoxIcon.Question);
-
- if (result == DialogResult.Yes)
- {
- // Pause The Queue
- this.queueProcessor.Pause();
-
- if (userSettingService.GetUserSetting<bool>(ASUserSettingConstants.ShowCLI))
- this.queueProcessor.EncodeService.SafelyStop();
- else
- this.queueProcessor.EncodeService.Stop();
- }
- }
- else
- {
- // If we have a custom query, then we'll want to figure out what the new source and destination is, otherwise we'll just use the gui components.
- string jobSourcePath = !string.IsNullOrEmpty(rtf_query.Text) ? Main.GetSourceFromQuery(rtf_query.Text) : sourcePath;
- string jobDestination = !string.IsNullOrEmpty(rtf_query.Text) ? Main.GetDestinationFromQuery(rtf_query.Text) : text_destination.Text;
- QueueTask task = QueryGenerator.GenerateFullQuery(this);
-
- if (this.queueProcessor.QueueManager.Count != 0 || (!string.IsNullOrEmpty(jobSourcePath) && !string.IsNullOrEmpty(jobDestination)))
- {
- string specifiedQuery = rtf_query.Text != string.Empty
- ? rtf_query.Text
- : task.Query;
-
- // Check to make sure the generated query matches the GUI settings
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.PromptOnUnmatchingQueries) && !string.IsNullOrEmpty(specifiedQuery) &&
- task.Query != specifiedQuery)
- {
- DialogResult result = MessageBox.Show("The query under the \"Query Editor\" tab " +
- "does not match the current GUI settings.\n\nBecause the manual query takes " +
- "priority over the GUI, your recently updated settings will not be taken " +
- "into account when encoding this job." +
- Environment.NewLine + Environment.NewLine +
- "Do you want to replace the manual query with the updated GUI-generated query?",
- "Manual Query does not Match GUI",
- MessageBoxButtons.YesNoCancel, MessageBoxIcon.Asterisk,
- MessageBoxDefaultButton.Button3);
-
- switch (result)
- {
- case DialogResult.Yes:
- // Replace the manual query with the generated one
-
- rtf_query.Text = task.Query;
- break;
- case DialogResult.No:
- // Use the manual query
- task.Query = specifiedQuery;
- break;
- case DialogResult.Cancel:
- // Don't start the encode
- return;
- }
- }
- else
- {
- task.Query = specifiedQuery;
- }
-
- DialogResult overwrite = DialogResult.Yes;
- if (!string.IsNullOrEmpty(jobDestination) && File.Exists(jobDestination))
- {
- overwrite = MessageBox.Show(
- "The destination file already exists. Are you sure you want to overwrite it?",
- "Overwrite File?",
- MessageBoxButtons.YesNo,
- MessageBoxIcon.Question);
- }
-
- if (overwrite == DialogResult.Yes)
- {
-
-
- if (this.queueProcessor.QueueManager.Count == 0)
- this.queueProcessor.QueueManager.Add(QueryGenerator.GenerateFullQuery(this));
-
- queueWindow.SetQueue();
- if (this.queueProcessor.QueueManager.Count > 1)
- queueWindow.Show(false);
-
- SetEncodeStarted(); // Encode is running, so setup the GUI appropriately
- this.queueProcessor.Start(); // Start The Queue Encoding Process
- }
-
- this.Focus();
- }
- else if (string.IsNullOrEmpty(sourcePath) || string.IsNullOrEmpty(text_destination.Text))
- MessageBox.Show("No source or destination selected.", "Warning", MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- }
- }
-
- /// <summary>
- /// Toolbar - Add the current job to the Queue
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_add2Queue_Click(object sender, EventArgs e)
- {
- // Add the item to the queue.
- AddItemToQueue(true);
- queueWindow.Show();
- }
-
- /// <summary>
- /// Add All Scanned Titles
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void mnu_AddAllTitles_Click(object sender, EventArgs e)
- {
- AddRangeOfTitles(false);
- }
-
- /// <summary>
- /// Add a range of scanned titles
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void mnu_AddTittleRange_Click(object sender, EventArgs e)
- {
- AddRangeOfTitles(true);
- }
-
- /// <summary>
- /// Add Multiple Items to the Queue at once.
- /// </summary>
- /// <param name="addRange">
- /// The add Range.
- /// </param>
- private void AddRangeOfTitles(bool addRange)
- {
- if (!this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNaming))
- {
- MessageBox.Show(
- "You need to enable 'Auto Naming' in options to use this feature.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- if (this.SourceScan.SouceData == null)
- {
- MessageBox.Show(
- "You must first scan a source before you can use this feature. Select the 'Source' button on the toolbar.",
- "Error",
- MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- return;
- }
-
- bool errors = false;
- if (addRange) // Add Range
- {
- BatchAdd batchAdd = new BatchAdd(this.SourceScan.SouceData);
- if (batchAdd.ShowDialog() == DialogResult.OK)
- {
- TimeSpan min = batchAdd.Min;
- TimeSpan max = batchAdd.Max;
-
- foreach (Title title in this.SourceScan.SouceData.Titles)
- {
- if (title.Duration.TotalSeconds > min.TotalSeconds && title.Duration.TotalSeconds < max.TotalSeconds)
- {
- // Add to Queue
- this.drp_dvdtitle.SelectedItem = title;
-
- if (!this.AddItemToQueue(false))
- {
- errors = true;
- }
- }
- }
- }
- }
- else // Add All
- {
-
- string warning = string.Format(
- "You are about to add *ALL* titles to the queue. \nCurrent settings will be applied to *ALL {0} Titles*. \n\nAre you sure you want to do this?", this.SourceScan.SouceData.Titles.Count);
-
- DialogResult question =
- MessageBox.Show(
- warning,
- "Warning",
- MessageBoxButtons.YesNoCancel,
- MessageBoxIcon.Warning);
-
- if (question == DialogResult.Yes)
- {
- foreach (Title title in this.SourceScan.SouceData.Titles)
- {
- // Add to Queue
- this.drp_dvdtitle.SelectedItem = title;
-
- if (!this.AddItemToQueue(false))
- {
- errors = true;
- }
- }
- }
- }
-
- if (errors)
- {
- MessageBox.Show(
- "One or more items could not be added to the queue. You should check your queue and manually add any missing jobs.",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- }
-
- }
-
- private bool AddItemToQueue(bool showError)
- {
- // If we have a custom query, then we'll want to figure out what the new source and destination is, otherwise we'll just use the gui components.
- string jobSourcePath = !string.IsNullOrEmpty(rtf_query.Text) ? Main.GetSourceFromQuery(rtf_query.Text) : sourcePath;
- string jobDestination = !string.IsNullOrEmpty(rtf_query.Text) ? Main.GetDestinationFromQuery(rtf_query.Text) : text_destination.Text;
-
- // Make sure we have a Source and Destination.
- if (string.IsNullOrEmpty(jobSourcePath) || string.IsNullOrEmpty(jobDestination))
- {
- if (showError)
- MessageBox.Show("No source or destination selected.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return false;
- }
-
- // Make sure we don't have a duplciate on the queue.
- if (this.queueProcessor.QueueManager.CheckForDestinationPathDuplicates(jobDestination))
- {
- if (showError)
- {
- DialogResult result;
- result =
- MessageBox.Show(
- string.Format(
- "There is already a queue item for this destination path.\nDestination Path: {0} \n\nIf you continue, the encode will be overwritten. Do you wish to continue?",
- jobDestination),
- "Warning",
- MessageBoxButtons.YesNo,
- MessageBoxIcon.Warning);
-
- if (result != DialogResult.Yes) return false;
- }
- else
- {
- return false;
- }
- }
-
- // Add the job.
- QueueTask query = QueryGenerator.GenerateFullQuery(this);
- this.queueProcessor.QueueManager.Add(query);
-
- lbl_encode.Text = this.queueProcessor.QueueManager.Count + " encode(s) pending in the queue";
-
- return true;
- }
-
- /// <summary>
- /// Toolbar - Show the Queue
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_showQueue_Click(object sender, EventArgs e)
- {
- queueWindow.Show();
- queueWindow.Activate();
- }
-
- /// <summary>
- /// Toolbar - Show the Preview Window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void tb_preview_Click(object sender, EventArgs e)
- {
- if (string.IsNullOrEmpty(sourcePath) || string.IsNullOrEmpty(text_destination.Text))
- MessageBox.Show("No source or destination selected.", "Warning", MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- else
- {
- if (qtpreview == null)
- {
- qtpreview = new frmPreview(this);
- qtpreview.Show();
- }
- else if (qtpreview.IsDisposed)
- {
- qtpreview = new frmPreview(this);
- qtpreview.Show();
- }
- else
- MessageBox.Show(qtpreview, "The preview window is already open!", "Warning", MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- }
- }
-
- /// <summary>
- /// Toolbar - Show the Activity log Window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_ActivityWindow_Click(object sender, EventArgs e)
- {
- if (this.activityWindow == null || !this.activityWindow.IsHandleCreated)
- this.activityWindow = new frmActivityWindow(this.queueProcessor.EncodeService, SourceScan);
-
- this.activityWindow.Show();
- this.activityWindow.Activate();
- }
-
- #endregion
-
- #region System Tray Icon
-
- /// <summary>
- /// Handle Resizing of the main window when deaing with the Notify Icon
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void frmMain_Resize(object sender, EventArgs e)
- {
- if (FormWindowState.Minimized == this.WindowState)
- {
- notifyIcon.Visible = true;
- this.Hide();
- }
- else if (FormWindowState.Normal == this.WindowState)
- notifyIcon.Visible = false;
- }
-
- /// <summary>
- /// Double Click the Tray Icon
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void notifyIcon_MouseDoubleClick(object sender, MouseEventArgs e)
- {
- this.Visible = true;
- this.Activate();
- this.WindowState = FormWindowState.Normal;
- notifyIcon.Visible = false;
- }
-
- /// <summary>
- /// Tray Icon - Restore Menu Item - Resture the Window
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void btn_restore_Click(object sender, EventArgs e)
- {
- this.Visible = true;
- this.Activate();
- this.WindowState = FormWindowState.Normal;
- notifyIcon.Visible = false;
- }
-
- #endregion
-
- #region Main Window and Tab Control
-
- // Source
- private void BtnFolderScanClicked(object sender, EventArgs e)
- {
- VistaFolderBrowserDialog modernFolderDialog = new VistaFolderBrowserDialog { ShowNewFolderButton = true, RootFolder = Environment.SpecialFolder.DesktopDirectory };
- this.btn_source.HideDropDown();
- if (modernFolderDialog.ShowDialog() == true)
- {
- this.selectedSourceType = SourceType.Folder;
- SelectSource(modernFolderDialog.SelectedPath, 0);
- }
- else
- UpdateSourceLabel();
- }
-
- private void BtnFileScanClicked(object sender, EventArgs e)
- {
- this.btn_source.HideDropDown();
- if (ISO_Open.ShowDialog() == DialogResult.OK)
- {
- this.selectedSourceType = SourceType.VideoFile;
- SelectSource(ISO_Open.FileName, 0);
- }
- else
- UpdateSourceLabel();
- }
-
- private void MnuDvdDriveClick(object sender, EventArgs e)
- {
- ToolStripMenuItem item = sender as ToolStripMenuItem;
- if (item != null)
- {
- string driveId = item.Name.Replace("Drive", string.Empty);
- int id;
- if (int.TryParse(driveId, out id))
- {
- this.dvdDrivePath = drives[id].RootDirectory;
- this.dvdDriveLabel = drives[id].VolumeLabel;
-
- if (this.dvdDrivePath == null) return;
- this.selectedSourceType = SourceType.DvdDrive;
- SelectSource(this.dvdDrivePath, 0);
- }
- }
- }
-
- private void VideoTitleSpecificScanClick(object sender, EventArgs e)
- {
- this.btn_source.HideDropDown();
- if (ISO_Open.ShowDialog() == DialogResult.OK)
- {
- this.selectedSourceType = SourceType.VideoFile;
-
- int sourceTitle = 0;
- TitleSpecificScan title = new TitleSpecificScan();
- if (title.ShowDialog() == DialogResult.OK)
- {
- sourceTitle = title.Title;
- SelectSource(ISO_Open.FileName, sourceTitle);
- }
- }
- else
- UpdateSourceLabel();
- }
-
- private void FolderTitleSpecificScanClick(object sender, EventArgs e)
- {
- this.btn_source.HideDropDown();
-
- VistaFolderBrowserDialog modernFolderDialog = new VistaFolderBrowserDialog { ShowNewFolderButton = true, RootFolder = Environment.SpecialFolder.DesktopDirectory };
- if (modernFolderDialog.ShowDialog() == true)
- {
- this.selectedSourceType = SourceType.Folder;
-
- int sourceTitle;
- TitleSpecificScan title = new TitleSpecificScan();
- if (title.ShowDialog() == DialogResult.OK)
- {
- sourceTitle = title.Title;
- SelectSource(modernFolderDialog.SelectedPath, sourceTitle);
- }
- }
- else
- UpdateSourceLabel();
- }
-
- private void SelectSource(string file, int titleSpecific)
- {
- Check_ChapterMarkers.Enabled = true;
- sourcePath = string.Empty;
-
- if (file == string.Empty) // Must have a file or path
- {
- UpdateSourceLabel();
- return;
- }
-
- sourcePath = Path.GetFileName(file);
- StartScan(file, titleSpecific);
- }
-
- private void drp_dvdtitle_Click(object sender, EventArgs e)
- {
- if ((drp_dvdtitle.Items.Count == 1) && (drp_dvdtitle.Items[0].ToString() == "Automatic"))
- MessageBox.Show(
- "There are no titles to select. Please load a source file by clicking the 'Source' button above before trying to select a title.",
- "Alert", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- }
-
- private void drp_dvdtitle_SelectedIndexChanged(object sender, EventArgs e)
- {
- UnRegisterPresetEventHandler();
- drop_mode.SelectedIndex = 0;
-
- drop_chapterStart.Items.Clear();
- drop_chapterFinish.Items.Clear();
-
- if (string.IsNullOrEmpty(drp_dvdtitle.Text) || drp_dvdtitle.Text == "Automatic" || this.currentSource == null)
- {
- return;
- }
-
- selectedTitle = drp_dvdtitle.SelectedItem as Title;
- if (selectedTitle == null)
- {
- return;
- }
-
- lbl_duration.Text = selectedTitle.Duration.ToString();
- PictureSettings.CurrentlySelectedPreset = this.currentlySelectedPreset;
- PictureSettings.Source = selectedTitle; // Setup Picture Settings Tab Control
-
- // Populate the Angles dropdown
- drop_angle.Items.Clear();
- if (!userSettingService.GetUserSetting<bool>(ASUserSettingConstants.DisableLibDvdNav))
- {
- drop_angle.Visible = true;
- lbl_angle.Visible = true;
-
- for (int i = 1; i <= selectedTitle.AngleCount; i++)
- drop_angle.Items.Add(i.ToString());
-
- if (drop_angle.Items.Count == 0)
- {
- drop_angle.Visible = false;
- lbl_angle.Visible = false;
- }
-
- if (drop_angle.Items.Count != 0)
- drop_angle.SelectedIndex = 0;
- }
- else
- {
- drop_angle.Visible = false;
- lbl_angle.Visible = false;
- }
-
- // Populate the Start chapter Dropdown
- drop_chapterStart.Items.Clear();
- drop_chapterStart.Items.AddRange(selectedTitle.Chapters.ToArray());
- if (drop_chapterStart.Items.Count > 0)
- drop_chapterStart.Text = drop_chapterStart.Items[0].ToString();
-
- // Populate the Final Chapter Dropdown
- drop_chapterFinish.Items.Clear();
- drop_chapterFinish.Items.AddRange(selectedTitle.Chapters.ToArray());
- if (drop_chapterFinish.Items.Count > 0)
- drop_chapterFinish.Text = drop_chapterFinish.Items[drop_chapterFinish.Items.Count - 1].ToString();
-
- // Populate the Audio Channels Dropdown
- AudioSettings.SetTrackListAfterTitleChange(selectedTitle, this.currentlySelectedPreset);
-
- // Populate the Subtitles dropdown
- Subtitles.SetSubtitleTrackAuto(selectedTitle.Subtitles.ToArray());
-
- // Update the source label if we have multiple streams
- if (selectedTitle != null)
- if (!string.IsNullOrEmpty(selectedTitle.SourceName))
- labelSource.Text = Path.GetFileName(selectedTitle.SourceName);
-
- // Run the AutoName & ChapterNaming functions
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNaming))
- {
- string autoPath = Main.AutoName(this);
- if (autoPath != null)
- text_destination.Text = autoPath;
- else
- MessageBox.Show(
- "You currently have \"Automatically name output files\" enabled for the destination file box, but you do not have a valid default directory set.\n\nYou should set a \"Default Path\" in HandBrakes preferences. (See 'Tools' menu -> 'Options' -> 'Output Files' Tab -> 'Default Path')",
- "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- data_chpt.Rows.Clear();
- if (selectedTitle.Chapters.Count != 1)
- {
- DataGridView chapterGridView = Main.ChapterNaming(selectedTitle, data_chpt, drop_chapterFinish.Text);
- if (chapterGridView != null)
- data_chpt = chapterGridView;
- }
- else
- {
- Check_ChapterMarkers.Checked = false;
- Check_ChapterMarkers.Enabled = false;
- }
-
- // Hack to force the redraw of the scrollbars which don't resize properly when the control is disabled.
- data_chpt.Columns[0].Width = 166;
- data_chpt.Columns[0].Width = 165;
-
- RegisterPresetEventHandler();
- }
-
- private void chapersChanged(object sender, EventArgs e)
- {
- if (drop_mode.SelectedIndex != 0) // Function is not used if we are not in chapters mode.
- return;
-
- Control ctl = (Control)sender;
- int chapterStart, chapterEnd;
- int.TryParse(drop_chapterStart.Text, out chapterStart);
- int.TryParse(drop_chapterFinish.Text, out chapterEnd);
-
- switch (ctl.Name)
- {
- case "drop_chapterStart":
- if (drop_chapterFinish.SelectedIndex == -1 && drop_chapterFinish.Items.Count != 0)
- drop_chapterFinish.SelectedIndex = drop_chapterFinish.Items.Count - 1;
-
- if (chapterEnd != 0)
- if (chapterStart > chapterEnd)
- drop_chapterFinish.Text = chapterStart.ToString();
- break;
- case "drop_chapterFinish":
- if (drop_chapterStart.Items.Count >= 1 && drop_chapterStart.SelectedIndex == -1)
- drop_chapterStart.SelectedIndex = 0;
-
- if (chapterStart != 0)
- if (chapterEnd < chapterStart)
- drop_chapterFinish.Text = chapterStart.ToString();
-
- // Add more rows to the Chapter menu if needed.
- if (Check_ChapterMarkers.Checked)
- {
- int i = data_chpt.Rows.Count, finish = 0;
- int.TryParse(drop_chapterFinish.Text, out finish);
-
- while (i < finish)
- {
- int n = data_chpt.Rows.Add();
- data_chpt.Rows[n].Cells[0].Value = (i + 1);
- data_chpt.Rows[n].Cells[1].Value = "Chapter " + (i + 1);
- data_chpt.Rows[n].Cells[0].ValueType = typeof(int);
- data_chpt.Rows[n].Cells[1].ValueType = typeof(string);
- i++;
- }
- }
- break;
- }
-
- // Update the Duration
- lbl_duration.Text =
- this.selectedTitle.CalculateDuration(
- drop_chapterStart.SelectedIndex + 1, drop_chapterFinish.SelectedIndex + 1).ToString();
-
- // Run the Autonaming function
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNaming))
- text_destination.Text = Main.AutoName(this);
-
- // Disable chapter markers if only 1 chapter is selected.
- if (chapterStart == chapterEnd)
- {
- Check_ChapterMarkers.Enabled = false;
- btn_importChapters.Enabled = false;
- data_chpt.Enabled = false;
- }
- else
- {
- Check_ChapterMarkers.Enabled = true;
- if (Check_ChapterMarkers.Checked)
- {
- btn_importChapters.Enabled = true;
- data_chpt.Enabled = true;
- }
- }
- }
-
- private void SecondsOrFramesChanged(object sender, EventArgs e)
- {
- int start, end;
- int.TryParse(drop_chapterStart.Text, out start);
- int.TryParse(drop_chapterFinish.Text, out end);
- double duration = end - start;
-
- switch (drop_mode.SelectedIndex)
- {
- case 1:
- lbl_duration.Text = TimeSpan.FromSeconds(duration).ToString();
- return;
- case 2:
- if (selectedTitle != null)
- {
- duration = duration / selectedTitle.Fps;
- lbl_duration.Text = TimeSpan.FromSeconds(duration).ToString();
- }
- else
- lbl_duration.Text = "--:--:--";
-
- return;
- }
- }
-
- private void drop_mode_SelectedIndexChanged(object sender, EventArgs e)
- {
- // Reset
- this.drop_chapterFinish.TextChanged -= new EventHandler(this.SecondsOrFramesChanged);
- this.drop_chapterStart.TextChanged -= new EventHandler(this.SecondsOrFramesChanged);
-
- // Do Work
- switch (drop_mode.SelectedIndex)
- {
- case 0:
- drop_chapterStart.DropDownStyle = ComboBoxStyle.DropDownList;
- drop_chapterFinish.DropDownStyle = ComboBoxStyle.DropDownList;
- if (drop_chapterStart.Items.Count != 0)
- {
- drop_chapterStart.SelectedIndex = 0;
- drop_chapterFinish.SelectedIndex = drop_chapterFinish.Items.Count - 1;
- }
- else
- lbl_duration.Text = "--:--:--";
- return;
- case 1:
- this.drop_chapterStart.TextChanged += new EventHandler(this.SecondsOrFramesChanged);
- this.drop_chapterFinish.TextChanged += new EventHandler(this.SecondsOrFramesChanged);
- drop_chapterStart.DropDownStyle = ComboBoxStyle.Simple;
- drop_chapterFinish.DropDownStyle = ComboBoxStyle.Simple;
- if (selectedTitle != null)
- {
- drop_chapterStart.Text = "0";
- drop_chapterFinish.Text = selectedTitle.Duration.TotalSeconds.ToString();
- }
- return;
- case 2:
- this.drop_chapterStart.TextChanged += new EventHandler(this.SecondsOrFramesChanged);
- this.drop_chapterFinish.TextChanged += new EventHandler(this.SecondsOrFramesChanged);
- drop_chapterStart.DropDownStyle = ComboBoxStyle.Simple;
- drop_chapterFinish.DropDownStyle = ComboBoxStyle.Simple;
- if (selectedTitle != null)
- {
- drop_chapterStart.Text = "0";
- drop_chapterFinish.Text = (selectedTitle.Fps * selectedTitle.Duration.TotalSeconds).ToString();
- }
- return;
- }
- }
-
- // Destination
- private void btn_destBrowse_Click(object sender, EventArgs e)
- {
- // This removes the file extension from the filename box on the save file dialog.
- // It's daft but some users don't realise that typing an extension overrides the dropdown extension selected.
- DVD_Save.FileName = Path.GetFileNameWithoutExtension(text_destination.Text);
-
- if (Path.IsPathRooted(text_destination.Text))
- DVD_Save.InitialDirectory = Path.GetDirectoryName(text_destination.Text);
-
- // Show the dialog and set the main form file path
- if (drop_format.SelectedIndex.Equals(0))
- DVD_Save.FilterIndex = 1;
- else if (drop_format.SelectedIndex.Equals(1))
- DVD_Save.FilterIndex = 2;
-
- if (DVD_Save.ShowDialog() == DialogResult.OK)
- {
- // Add a file extension manually, as FileDialog.AddExtension has issues with dots in filenames
- switch (DVD_Save.FilterIndex)
- {
- case 1:
- if (!Path.GetExtension(DVD_Save.FileName).Equals(".mp4", StringComparison.InvariantCultureIgnoreCase))
- if (this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v) == 2 ||
- this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v) == 0)
- DVD_Save.FileName = DVD_Save.FileName.Replace(".mp4", ".m4v").Replace(".mkv", ".m4v");
- else
- DVD_Save.FileName = DVD_Save.FileName.Replace(".m4v", ".mp4").Replace(".mkv", ".mp4");
- break;
- case 2:
- if (!Path.GetExtension(DVD_Save.FileName).Equals(".mkv", StringComparison.InvariantCultureIgnoreCase))
- DVD_Save.FileName = DVD_Save.FileName.Replace(".mp4", ".mkv").Replace(".m4v", ".mkv");
- break;
- default:
- // do nothing
- break;
- }
- text_destination.Text = DVD_Save.FileName;
-
- // Quicktime requires .m4v file for chapter markers to work. If checked, change the extension to .m4v (mp4 and m4v are the same thing)
- if (Check_ChapterMarkers.Checked && DVD_Save.FilterIndex != 2)
- SetExtension(".m4v");
- }
- }
-
- private void text_destination_TextChanged(object sender, EventArgs e)
- {
- string path = text_destination.Text;
- if (path.EndsWith(".mp4") || path.EndsWith(".m4v"))
- drop_format.SelectedIndex = 0;
- else if (path.EndsWith(".mkv"))
- drop_format.SelectedIndex = 1;
- }
-
- // Output Settings
- private void drop_format_SelectedIndexChanged(object sender, EventArgs e)
- {
- switch (drop_format.SelectedIndex)
- {
- case 0:
- SetExtension(".mp4");
- break;
- case 1:
- SetExtension(".mkv");
- break;
- }
-
- AudioSettings.SetContainer(drop_format.Text);
-
- if (drop_format.Text.Contains("MP4") && drp_videoEncoder.Items.Contains("VP3 (Theora)"))
- {
- drp_videoEncoder.Items.Remove("VP3 (Theora)");
- if (drp_videoEncoder.SelectedItem == null)
- {
- drp_videoEncoder.SelectedIndex = 0;
- }
- }
- else if (drop_format.Text.Contains("MKV") && !drp_videoEncoder.Items.Contains("VP3 (Theora)"))
- {
- drp_videoEncoder.Items.Add("VP3 (Theora)");
- }
- }
-
- public void SetExtension(string newExtension)
- {
- setContainerOpts();
-
- if (newExtension == ".mp4" || newExtension == ".m4v")
- if (Check_ChapterMarkers.Checked || AudioSettings.RequiresM4V() || Subtitles.RequiresM4V() || this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v) == 2)
- newExtension = this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v) == 1 ? ".mp4" : ".m4v";
- else
- newExtension = ".mp4";
-
- if (Path.HasExtension(newExtension))
- text_destination.Text = Path.ChangeExtension(text_destination.Text, newExtension);
-
- this.Subtitles.SetExtension(newExtension);
- }
-
- // Video Tab
- private void drp_videoEncoder_SelectedIndexChanged(object sender, EventArgs e)
- {
- // Turn off some options which are H.264 only when the user selects a non h.264 encoder
- if (drp_videoEncoder.Text.Contains("H.264"))
- {
- if (check_2PassEncode.CheckState == CheckState.Checked)
- check_turbo.Enabled = true;
-
- if ((drop_format.Text.Contains("MP4")) || (drop_format.Text.Contains("M4V")))
- check_iPodAtom.Enabled = true;
- else
- check_iPodAtom.Enabled = false;
- }
- else
- {
- check_turbo.CheckState = CheckState.Unchecked;
- check_turbo.Enabled = false;
- x264Panel.X264Query = string.Empty;
- check_iPodAtom.Enabled = false;
- check_iPodAtom.Checked = false;
- }
-
- // Setup the CQ Slider and Advanced Panel
- switch (drp_videoEncoder.Text)
- {
- case "MPEG-4 (FFmpeg)":
- case "MPEG-2 (FFmpeg)":
- if (slider_videoQuality.Value > 31)
- slider_videoQuality.Value = 20; // Just reset to 70% QP 10 on encode change.
- slider_videoQuality.Minimum = 1;
- slider_videoQuality.Maximum = 31;
- this.x264Panel.Visible = false;
- this.advancedEncoderOpts.Visible = true;
- this.advancedEncoderOpts.IsDisabled = false;
- break;
- case "H.264 (x264)":
- slider_videoQuality.Minimum = 0;
- slider_videoQuality.TickFrequency = 1;
- double cqStep = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- double multiplier = 1.0 / cqStep;
- double value = slider_videoQuality.Value * multiplier;
-
- slider_videoQuality.Maximum = (int)(51 / userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step));
-
- if (value < slider_videoQuality.Maximum)
- slider_videoQuality.Value = slider_videoQuality.Maximum - (int)value;
-
- this.x264Panel.Visible = true;
- this.x264Panel.BringToFront();
- this.advancedEncoderOpts.Visible = false;
- break;
- case "VP3 (Theora)":
- if (slider_videoQuality.Value > 63)
- slider_videoQuality.Value = 45; // Just reset to 70% QP 45 on encode change.
- slider_videoQuality.Minimum = 0;
- slider_videoQuality.Maximum = 63;
-
- this.x264Panel.Visible = false;
- this.advancedEncoderOpts.Visible = true;
- this.advancedEncoderOpts.IsDisabled = true;
- break;
- }
- }
-
- /// <summary>
- /// When the FrameRate is not Same As Source, show the Max/Constant Mode dropdown
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void drp_videoFramerate_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.radio_peakAndVariable.Text = this.drp_videoFramerate.SelectedIndex == 0 ? "Variable Framerate" : "Peak Framerate (VFR)";
- }
-
- /// <summary>
- /// Set the container format options
- /// </summary>
- public void setContainerOpts()
- {
- if ((drop_format.Text.Contains("MP4")) || (drop_format.Text.Contains("M4V")))
- {
- check_largeFile.Enabled = true;
- check_optimiseMP4.Enabled = true;
- check_iPodAtom.Enabled = true;
- }
- else
- {
- check_largeFile.Enabled = false;
- check_optimiseMP4.Enabled = false;
- check_iPodAtom.Enabled = false;
- check_largeFile.Checked = false;
- check_optimiseMP4.Checked = false;
- check_iPodAtom.Checked = false;
- }
- }
-
- private double cachedCqStep;
-
- /// <summary>
- /// Update the CQ slider for x264 for a new CQ step. This is set from option
- /// </summary>
- public void setQualityFromSlider()
- {
- if (cachedCqStep == 0)
- {
- cachedCqStep = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- }
-
- // Work out the current RF value.
- double cqStep = this.cachedCqStep;
- double rfValue = 51.0 - slider_videoQuality.Value * cqStep;
-
- // Change the maximum value for the slider
- slider_videoQuality.Maximum = (int)(51 / userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step));
-
- // Reset the CQ slider to RF0
- slider_videoQuality.Value = slider_videoQuality.Maximum;
-
- // Reset the CQ slider back to the previous value as close as possible
- double cqStepNew = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- double rfValueCurrent = 51.0 - slider_videoQuality.Value * cqStepNew;
- while (rfValueCurrent < rfValue)
- {
- slider_videoQuality.Value--;
- rfValueCurrent = 51.0 - slider_videoQuality.Value * cqStepNew;
- }
-
- // Cache the CQ step for the next calculation
- this.cachedCqStep = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- }
-
- private void slider_videoQuality_Scroll(object sender, EventArgs e)
- {
- double cqStep = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step);
- switch (drp_videoEncoder.Text)
- {
- case "MPEG-4 (FFmpeg)":
- case "MPEG-2 (FFmpeg)":
- lbl_SliderValue.Text = "QP:" + (32 - slider_videoQuality.Value);
- break;
- case "H.264 (x264)":
- double rfValue = 51.0 - slider_videoQuality.Value * cqStep;
- rfValue = Math.Round(rfValue, 2);
- lbl_SliderValue.Text = "RF:" + rfValue.ToString(CultureInfo.InvariantCulture);
-
- if (rfValue == 0)
- {
- lbl_SliderValue.Text += " (Warning: lossless)";
- }
-
- break;
- case "VP3 (Theora)":
- lbl_SliderValue.Text = "QP:" + slider_videoQuality.Value;
- break;
- }
- }
-
- private void radio_avgBitrate_CheckedChanged(object sender, EventArgs e)
- {
- if (radio_avgBitrate.Checked)
- {
- text_bitrate.Enabled = true;
- if (string.IsNullOrEmpty(text_bitrate.Text))
- {
- text_bitrate.Text = "1500";
- }
- slider_videoQuality.Enabled = false;
-
- check_2PassEncode.Enabled = true;
- }
- }
-
- private void radio_cq_CheckedChanged(object sender, EventArgs e)
- {
- text_bitrate.Enabled = false;
- slider_videoQuality.Enabled = true;
-
- check_2PassEncode.Enabled = false;
- check_2PassEncode.CheckState = CheckState.Unchecked;
- }
-
- private void check_2PassEncode_CheckedChanged(object sender, EventArgs e)
- {
- if (check_2PassEncode.CheckState.ToString() == "Checked")
- {
- if (drp_videoEncoder.Text.Contains("H.264"))
- check_turbo.Enabled = true;
- }
- else
- {
- check_turbo.Enabled = false;
- check_turbo.CheckState = CheckState.Unchecked;
- }
- }
-
- // Chapter Marker Tab
- private void Check_ChapterMarkers_CheckedChanged(object sender, EventArgs e)
- {
- if (Check_ChapterMarkers.Checked)
- {
- if (drop_format.SelectedIndex != 1)
- SetExtension(".m4v");
- data_chpt.Enabled = true;
- btn_importChapters.Enabled = true;
- }
- else
- {
- if (drop_format.SelectedIndex != 1)
- SetExtension(".mp4");
- data_chpt.Enabled = false;
- btn_importChapters.Enabled = false;
- }
- }
-
- private void btn_importChapters_Click(object sender, EventArgs e)
- {
- if (File_ChapterImport.ShowDialog() == DialogResult.OK)
- {
- string filename = File_ChapterImport.FileName;
- DataGridView imported = Main.ImportChapterNames(data_chpt, filename);
- if (imported != null)
- data_chpt = imported;
- }
- }
-
- private void btn_export_Click(object sender, EventArgs e)
- {
- SaveFileDialog saveFileDialog = new SaveFileDialog();
- saveFileDialog.Filter = "Csv File|*.csv";
- saveFileDialog.DefaultExt = "csv";
- if (saveFileDialog.ShowDialog() == DialogResult.OK)
- {
- string filename = saveFileDialog.FileName;
-
- Main.SaveChapterMarkersToCsv(this, filename);
- }
- }
-
- private void mnu_resetChapters_Click(object sender, EventArgs e)
- {
- data_chpt.Rows.Clear();
- DataGridView chapterGridView = Main.ChapterNaming(selectedTitle, data_chpt, drop_chapterFinish.Text);
- if (chapterGridView != null)
- {
- data_chpt = chapterGridView;
- }
- }
-
- // Query Editor Tab
- private void btn_generate_Query_Click(object sender, EventArgs e)
- {
- rtf_query.Text = QueryGenerator.GenerateFullQuery(this).Query;
- }
-
- private void btn_clear_Click(object sender, EventArgs e)
- {
- rtf_query.Clear();
- }
-
- #endregion
-
- // MainWindow Components, Actions and Functions ***********************
-
- #region Source Scan
-
- /// <summary>
- /// Start the Scan Process
- /// </summary>
- /// <param name="filename">
- /// The filename.
- /// </param>
- /// <param name="title">
- /// The title.
- /// </param>
- private void StartScan(string filename, int title)
- {
- // Setup the GUI components for the scan.
- sourcePath = filename;
-
- this.DisableGUI();
-
- // Start the Scan
- try
- {
- SourceScan.Scan(sourcePath, title, this.userSettingService.GetUserSetting<int>(ASUserSettingConstants.PreviewScanCount));
- }
- catch (Exception exc)
- {
- MessageBox.Show("frmMain.cs - StartScan " + exc, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- /// <summary>
- /// Update the Status label for the scan
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void SourceScanScanStatusChanged(object sender, ScanProgressEventArgs e)
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new ScanProgessStatus(this.SourceScanScanStatusChanged), new[] { sender, e });
- return;
- }
-
- labelSource.Text = string.Format("Processing Title: {0} of {1}", e.CurrentTitle, e.Titles);
- }
-
- /// <summary>
- /// Update the UI after the scan has completed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void SourceScanScanCompleted(object sender, EventArgs e)
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new ScanCompletedStatus(this.SourceScanScanCompleted), new[] { sender, e });
- return;
- }
-
- try
- {
- currentSource = SourceScan.SouceData;
-
- // Setup some GUI components
- drp_dvdtitle.Items.Clear();
- if (currentSource.Titles.Count != 0)
- drp_dvdtitle.Items.AddRange(currentSource.Titles.ToArray());
-
- foreach (Title title in currentSource.Titles)
- {
- if (title.MainTitle)
- {
- drp_dvdtitle.SelectedItem = title;
- }
- }
-
- if (drp_dvdtitle.SelectedItem == null && drp_dvdtitle.Items.Count > 0)
- {
- drp_dvdtitle.SelectedIndex = 0;
- }
-
- // Enable the creation of chapter markers if the file is an image of a dvd
- if (drop_chapterStart.Items.Count > 0)
- {
- int start, end;
- int.TryParse(drop_chapterStart.Items[0].ToString(), out start);
- int.TryParse(drop_chapterFinish.Items[drop_chapterFinish.Items.Count - 1].ToString(), out end);
- if (end > start) Check_ChapterMarkers.Enabled = true;
- else
- {
- Check_ChapterMarkers.Enabled = false;
- Check_ChapterMarkers.Checked = false;
- data_chpt.Rows.Clear();
- }
- }
-
- // If no titles were found, Display an error message
- if (drp_dvdtitle.Items.Count == 0)
- {
- MessageBox.Show(
- "No Title(s) found. \n\nYour Source may be copy protected, badly mastered or in a format which HandBrake does not support. \nPlease refer to the Documentation and FAQ (see Help Menu).",
- "Error", MessageBoxButtons.OK, MessageBoxIcon.Hand);
- sourcePath = string.Empty;
- }
- UpdateSourceLabel();
-
- // This is a bit of a hack to fix the queue editing.
- // If afte the scan, we find a job sitting in queueEdit, then the user has rescaned the source from the queue by clicking edit.
- // When this occures, we want to repopulate their old settings.
- if (queueEdit != null)
- {
- // Setup UI
- if (queueEdit.Query != null)
- {
- Preset preset = new Preset
- {
- Name = "Loaded Back From Queue",
- Query = queueEdit.Query,
- CropSettings = true,
- };
-
- // Now load the preset
- PresetLoader.LoadPreset(this, preset);
- preset.Task = queueEdit.Task;
- this.AudioSettings.LoadTracks(preset);
-
- // Set the destination path);
- this.text_destination.Text = queueEdit.Task.Destination;
-
- // The x264 widgets will need updated, so do this now:
- x264Panel.StandardizeOptString();
- x264Panel.SetCurrentSettingsInPanel();
-
- // Set the crop label
- PictureSettings.SetPresetCropWarningLabel(null);
- }
-
- queueEdit = null;
- }
-
- // Enable the GUI components and enable any disabled components
- EnableGUI();
- }
- catch (Exception exc)
- {
- MessageBox.Show("frmMain.cs - updateUIafterScan " + exc, "Error", MessageBoxButtons.OK,
- MessageBoxIcon.Error);
- EnableGUI();
- }
- }
-
- /// <summary>
- /// Enable the GUI
- /// </summary>
- private void EnableGUI()
- {
- try
- {
- if (InvokeRequired)
- BeginInvoke(new UpdateWindowHandler(EnableGUI));
- foreach (Control ctrl in Controls)
- ctrl.Enabled = true;
- btn_start.Enabled = true;
- btn_showQueue.Enabled = true;
- btn_add2Queue.Enabled = true;
- tb_preview.Enabled = true;
- btn_source.Enabled = true;
- mnu_killCLI.Visible = false;
- }
- catch (Exception exc)
- {
- MessageBox.Show("frmMain.cs - EnableGUI() " + exc, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- /// <summary>
- /// Disable the GUI
- /// </summary>
- private void DisableGUI()
- {
- foreach (Control ctrl in Controls)
- if (!(ctrl is StatusStrip || ctrl is MenuStrip || ctrl is ToolStrip))
- ctrl.Enabled = false;
-
- labelSource.Enabled = true;
- labelStaticSource.Enabled = true;
- SourceLayoutPanel.Enabled = true;
- btn_source.Enabled = false;
- btn_start.Enabled = false;
- btn_showQueue.Enabled = false;
- btn_add2Queue.Enabled = false;
- tb_preview.Enabled = false;
- mnu_killCLI.Visible = true;
- }
-
- /// <summary>
- /// Kill the Scan
- /// </summary>
- private void KillScan()
- {
- SourceScan.ScanCompleted -= this.SourceScanScanCompleted;
- EnableGUI();
- ResetGUI();
-
- SourceScan.Stop();
-
- labelSource.Text = "Scan Cancelled";
- }
-
- /// <summary>
- /// Reset the GUI
- /// </summary>
- private void ResetGUI()
- {
- drp_dvdtitle.Items.Clear();
- drop_chapterStart.Items.Clear();
- drop_chapterFinish.Items.Clear();
- lbl_duration.Text = "Select a Title";
- PictureSettings.lbl_src_res.Text = "Select a Title";
- sourcePath = String.Empty;
- text_destination.Text = String.Empty;
- selectedTitle = null;
- }
-
- /// <summary>
- /// Update the Source Label
- /// </summary>
- private void UpdateSourceLabel()
- {
- labelSource.Text = string.IsNullOrEmpty(sourcePath) ? "Select \"Source\" to continue." : this.SourceName;
- }
-
- /// <summary>
- /// Take a job from the Queue, rescan it, and reload the GUI for that job.
- /// </summary>
- /// <param name="job">
- /// The job.
- /// </param>
- public void RecievingJob(QueueTask job)
- {
- // Reset
- this.currentlySelectedPreset = null;
- x264Panel.Reset2Defaults();
-
- // Scan
- queueEdit = job; // Nasty but will do for now. TODO
- StartScan(job.Task.Source, job.Task.Title);
- }
-
- #endregion
-
- #region GUI Functions and Actions
-
- /// <summary>
- /// Set the GUI to it's finished encoding state.
- /// </summary>
- private void SetEncodeFinished()
- {
- try
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateWindowHandler(SetEncodeFinished));
- return;
- }
-
- lbl_encode.Text = "Encoding Finished";
- ProgressBarStatus.Visible = false;
- btn_start.Text = "Start";
- btn_start.ToolTipText = "Start the encoding process";
- btn_start.Image = Properties.Resources.Play;
-
- // If the window is minimized, display the notification in a popup.
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.TrayIconAlerts))
- if (FormWindowState.Minimized == this.WindowState)
- {
- notifyIcon.BalloonTipText = lbl_encode.Text;
- notifyIcon.ShowBalloonTip(500);
- }
- }
- catch (Exception exc)
- {
- MessageBox.Show(exc.ToString());
- }
- }
-
- /// <summary>
- /// Set the GUI to it's started encoding state.
- /// </summary>
- private void SetEncodeStarted()
- {
- try
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateWindowHandler(SetEncodeStarted));
- return;
- }
- lbl_encode.Visible = true;
- ProgressBarStatus.Value = 0;
- ProgressBarStatus.Visible = true;
- lbl_encode.Text = "Encoding with " + this.queueProcessor.QueueManager.Count + " encode(s) pending";
- btn_start.Text = "Stop";
- btn_start.ToolTipText = "Stop the encoding process.";
- btn_start.Image = Properties.Resources.stop;
- }
- catch (Exception exc)
- {
- MessageBox.Show(exc.ToString());
- }
- }
-
- /// <summary>
- /// Display the Encode Status
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void EncodeQueue_EncodeStatusChanged(object sender, EncodeProgressEventArgs e)
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new EncodeProgessStatus(EncodeQueue_EncodeStatusChanged), new[] { sender, e });
- return;
- }
-
-
- lbl_encode.Text =
- string.Format(
- "{0:00.00}%, FPS: {1:000.0}, Avg FPS: {2:000.0}, Time Remaining: {3}, Elapsed: {4:hh\\:mm\\:ss}, Pending Jobs {5}",
- e.PercentComplete,
- e.CurrentFrameRate,
- e.AverageFrameRate,
- e.EstimatedTimeLeft,
- e.ElapsedTime,
- this.queueProcessor.QueueManager.Count);
-
- ProgressBarStatus.Value = (int)Math.Round(e.PercentComplete);
- }
-
- /// <summary>
- /// Set the DVD Drive selection in the "Source" Menu
- /// </summary>
- private void SetDriveSelectionMenuItem()
- {
- try
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateWindowHandler(SetDriveSelectionMenuItem));
- return;
- }
-
- drives = GeneralUtilities.GetDrives();
-
- List<ToolStripMenuItem> menuItems = new List<ToolStripMenuItem>();
- foreach (DriveInformation drive in drives)
- {
- ToolStripMenuItem menuItem = new ToolStripMenuItem
- {
- Name = drive.ToString(),
- Text = drive.RootDirectory + " (" + drive.VolumeLabel + ")",
- Image = Resources.disc_small
- };
- menuItem.Click += new EventHandler(MnuDvdDriveClick);
- menuItems.Add(menuItem);
- }
-
- foreach (ToolStripMenuItem item in menuItems)
- btn_source.DropDownItems.Add(item);
- }
- catch (Exception exc)
- {
- MessageBox.Show("Error in SetDriveSelectionMenuItem" + exc);
- }
- }
-
- /// <summary>
- /// Access the preset Handler and setup the preset panel.
- /// </summary>
- private void LoadPresetPanel()
- {
- if (presetHandler.CheckIfPresetsAreOutOfDate())
- if (!this.userSettingService.GetUserSetting<bool>(UserSettingConstants.PresetNotification))
- MessageBox.Show(this,
- "HandBrake has determined your built-in presets are out of date... These presets will now be updated.",
- "Preset Update", MessageBoxButtons.OK, MessageBoxIcon.Information);
-
- // Clear the old presets
- treeView_presets.Nodes.Clear();
-
-
- string category = string.Empty; // The category we are currnetly processing
- TreeNode rootNode = null;
- foreach (Preset preset in this.presetHandler.Presets.Where(p => p.IsBuildIn))
- {
- // If the category of this preset doesn't match the current category we are processing
- // Then we need to create a new root node.
- if (preset.Category != category)
- {
- rootNode = new TreeNode(preset.Category) { ForeColor = Color.DarkBlue };
- treeView_presets.Nodes.Add(rootNode);
- category = preset.Category;
- }
-
- if (preset.Category == category && rootNode != null)
- rootNode.Nodes.Add(new TreeNode(preset.Name) { ToolTipText = preset.Description, ForeColor = Color.DarkBlue, Tag = preset });
- }
-
- rootNode = null;
- category = null;
- foreach (Preset preset in this.presetHandler.Presets.Where(p => !p.IsBuildIn)) // User Presets
- {
- // If the category of this preset doesn't match the current category we are processing
- // Then we need to create a new root node.
- if (preset.Category != category && preset.Category != string.Empty)
- {
- rootNode = new TreeNode(preset.Category) { ForeColor = Color.Black };
- treeView_presets.Nodes.Add(rootNode);
- category = preset.Category;
- }
-
- if (preset.Category == category && rootNode != null)
- rootNode.Nodes.Add(new TreeNode(preset.Name) { ForeColor = Color.Black, ToolTipText = preset.Description, Tag = preset });
- else
- treeView_presets.Nodes.Add(new TreeNode(preset.Name) { ForeColor = Color.Black, ToolTipText = preset.Description, Tag = preset });
- }
-
- treeView_presets.Update();
- }
-
- /// <summary>
- /// Get the title from the selected item in the title dropdown.
- /// </summary>
- /// <returns>
- /// The title.
- /// </returns>
- public int GetTitle()
- {
- int title = 0;
- if (drp_dvdtitle.SelectedItem != null)
- {
- string[] titleInfo = drp_dvdtitle.SelectedItem.ToString().Split(' ');
- int.TryParse(titleInfo[0], out title);
- }
-
- return title;
- }
-
- /// <summary>
- /// Handle the Update Check Finishing.
- /// </summary>
- /// <param name="result">
- /// The result.
- /// </param>
- private void UpdateCheckDoneMenu(IAsyncResult result)
- {
- // Make sure it's running on the calling thread
- if (InvokeRequired)
- {
- Invoke(new MethodInvoker(() => this.UpdateCheckDoneMenu(result)));
- return;
- }
- UpdateCheckInformation info;
- try
- {
- // Get the information about the new build, if any, and close the window
- info = UpdateService.EndCheckForUpdates(result);
-
- if (info.NewVersionAvailable)
- {
- UpdateInfo updateWindow = new UpdateInfo(
- info,
- userSettingService.GetUserSetting<string>(ASUserSettingConstants.HandBrakeVersion),
- userSettingService.GetUserSetting<int>(ASUserSettingConstants.HandBrakeBuild));
- updateWindow.ShowDialog();
- }
- else
- MessageBox.Show("There are no new updates at this time.", "Update Check", MessageBoxButtons.OK,
- MessageBoxIcon.Information);
- lbl_updateCheck.Visible = false;
- return;
- }
- catch (Exception ex)
- {
- if ((bool)result.AsyncState)
- MessageBox.Show(
- "Unable to check for updates, Please try again later.\n\nDetailed Error Information:\n" + ex,
- "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
- }
-
- #endregion
-
- #region Overrides
-
- /// <summary>
- /// Handle GUI shortcuts
- /// </summary>
- /// <param name="msg">Message</param>
- /// <param name="keyData">Keys</param>
- /// <returns>Bool</returns>
- protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
- {
- if (keyData == (Keys.Control | Keys.S))
- {
- btn_start_Click(this, new EventArgs());
- return true;
- }
-
- if (keyData == (Keys.Control | Keys.Shift | Keys.A))
- {
- btn_add2Queue_Click(this, new EventArgs());
- return true;
- }
- return base.ProcessCmdKey(ref msg, keyData);
- }
-
- /// <summary>
- /// If the queue is being processed, prompt the user to confirm application close.
- /// </summary>
- /// <param name="e">FormClosingEventArgs</param>
- protected override void OnFormClosing(FormClosingEventArgs e)
- {
- try
- {
- // If currently encoding, the queue isn't paused, and there are queue items to process, prompt to confirm close.
- if (this.queueProcessor.EncodeService.IsEncoding)
- {
- DialogResult result =
- MessageBox.Show(
- "HandBrake is currently encoding. Closing HandBrake will stop the current encode and will result in an unplayable file.\n\nDo you want to close HandBrake?",
- "Close HandBrake?",
- MessageBoxButtons.YesNo,
- MessageBoxIcon.Question);
-
- if (result == DialogResult.No)
- {
- e.Cancel = true;
- return;
- }
-
- this.queueProcessor.Pause();
- this.queueProcessor.EncodeService.Stop();
- }
-
- if (SourceScan.IsScanning)
- {
- SourceScan.Stop();
- }
-
- SourceScan.ScanCompleted -= this.SourceScanScanCompleted;
- SourceScan.ScanStatusChanged -= this.SourceScanScanStatusChanged;
- }
- catch (Exception exc)
- {
- throw new GeneralApplicationException("HandBrake was not able to shutdown properly.", " You may need to forcefully quit HandBrake CLI from TaskManager if it's still running ", exc);
- }
- finally
- {
- base.OnFormClosing(e);
- }
- }
-
- #endregion
-
-
- // This is the END of the road ****************************************
- }
-} \ No newline at end of file
diff --git a/win/CS/frmMain.resx b/win/CS/frmMain.resx
deleted file mode 100644
index a737bb095..000000000
--- a/win/CS/frmMain.resx
+++ /dev/null
@@ -1,1031 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="notifyIconMenu.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </metadata>
- <metadata name="notifyIconMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>1106, 15</value>
- </metadata>
- <metadata name="DVD_Save.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>556, 15</value>
- </metadata>
- <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>18, 15</value>
- </metadata>
- <data name="slider_videoQuality.ToolTip" xml:space="preserve">
- <value>Set the desired quality factor. The encoder targets a certain quality.
-The scale used by each video encoder is different.
-
-x264's scale is logarithmic and lower values correspond to higher quality.
-So small decreases in value will result in progressively larger increases in the resulting
-file size. A value of 0 means lossless and will result in a file size that is larger than
-the original source, unless the source was also lossless
-
-FFmpeg's and Theora's scale is more linear. These encoders do not have a lossless mode.</value>
- </data>
- <data name="text_bitrate.ToolTip" xml:space="preserve">
- <value>Set the average bitrate. The instantaneous bitrate can be
-much higher or lower at any point in time. But the average over a long
-duration will be the value set here.
-
-If you need to limit instantaneous bitrate look into x264's vbv-bufsize and
-vbv-maxrate settings.</value>
- </data>
- <metadata name="number.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="name.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <metadata name="ChaptersMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>578, 54</value>
- </metadata>
- <data name="data_chpt.ToolTip" xml:space="preserve">
- <value>Here you can name each chapter that the encoded video will contain.
-Make sure you have selected a "Title" from the "Source" box above otherwise
-the list will not be populated with the correct amount of chapters.
-Note: Do not change any of the chapter numbers!</value>
- </data>
- <data name="btn_importChapters.ToolTip" xml:space="preserve">
- <value>Import a comma separated file containing the chapter information.
-The CSV should be formatted as follows:
-
-1,Chapter 1 Name
-2,Chapter 2 Name
-3,Chapter 3 Name
-
-Note: Currently, if you wish to use a , in your chapter name, you must escape it with a \
-Note2: HandBrake can NOT create chapters, only add a name to any chapters your source currently has.</value>
- </data>
- <data name="btn_export.ToolTip" xml:space="preserve">
- <value>Export to a comma separated file containing the chapter information.
-The CSV is formatted as follows:
-
-1,Chapter 1 Name
-2,Chapter 2 Name
-3,Chapter 3 Name
-
-Note: Commas in names are escaped by a \</value>
- </data>
- <data name="drop_mode.ToolTip" xml:space="preserve">
- <value>There are several ranges which can be encoded:
-- Encode a range of Chapters.
-
-The Following options are not 100% accurate:
-- Encode video between a start and end time, measured in seconds
-- Encode video between a start and end frame.</value>
- </data>
- <data name="radio_cq.ToolTip" xml:space="preserve">
- <value>Set the desired quality factor. The encoder targets a certain quality.
-The scale used by each video encoder is different.
-
-x264's scale is logarithmic and lower values correspond to higher quality.
-So small decreases in value will result in progressively larger increases in the resulting
-file size. A value of 0 means lossless and will result in a file size that is larger than
-the original source, unless the source was also lossless
-
-FFmpeg's and Theora's scale is more linear. These encoders do not have a lossless mode.</value>
- </data>
- <data name="radio_avgBitrate.ToolTip" xml:space="preserve">
- <value>Set the average bitrate. The instantaneous bitrate can be
-much higher or lower at any point in time. But the average over a long
-duration will be the value set here.
-
-If you need to limit instantaneous bitrate look into x264's vbv-bufsize and
-vbv-maxrate settings.
-</value>
- </data>
- <data name="check_2PassEncode.ToolTip" xml:space="preserve">
- <value>Perform 2 Pass Encoding. The 'bitrate' option is a
-prerequisite. During the 1st pass, statistics about the video
-are collected. Then in a second pass, those statistics are used
-to make bitrate allocation decisions.</value>
- </data>
- <metadata name="presets_menu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>984, 17</value>
- </metadata>
- <metadata name="DVD_Open.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>232, 15</value>
- </metadata>
- <metadata name="File_Open.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>450, 15</value>
- </metadata>
- <metadata name="ISO_Open.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>343, 15</value>
- </metadata>
- <metadata name="frmMainMenu.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>106, 15</value>
- </metadata>
- <metadata name="AudioMenuRowHeightHack.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 54</value>
- </metadata>
- <data name="label34.Text" xml:space="preserve">
- <value>Here you can alter the query generated by this program. This feature is for one job overriding of the automatic query generation.
-Don't forget to re-generate this query if you change any GUI options.
-Note that this will also override the "Add to Queue" query as well.
-Clear the text box below to return to the internal query generation.</value>
- </data>
- <metadata name="presetsToolStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>565, 54</value>
- </metadata>
- <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>767, 15</value>
- </metadata>
- <metadata name="notifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>871, 15</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="notifyIcon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
- <metadata name="StatusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>1244, 15</value>
- </metadata>
- <metadata name="hbproc.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>220, 54</value>
- </metadata>
- <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>98</value>
- </metadata>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
- <metadata name="File_Save.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>664, 15</value>
- </metadata>
- <metadata name="openPreset.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>310, 54</value>
- </metadata>
- <metadata name="File_ChapterImport.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>423, 54</value>
- </metadata>
-</root> \ No newline at end of file
diff --git a/win/CS/frmOptions.Designer.cs b/win/CS/frmOptions.Designer.cs
deleted file mode 100644
index d24fc8b95..000000000
--- a/win/CS/frmOptions.Designer.cs
+++ /dev/null
@@ -1,2019 +0,0 @@
-/* frmOptions.Designer.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- partial class frmOptions
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmOptions));
- this.btn_close = new System.Windows.Forms.Button();
- this.drp_completeOption = new System.Windows.Forms.ComboBox();
- this.tab_options = new System.Windows.Forms.TabControl();
- this.tab_general = new System.Windows.Forms.TabPage();
- this.label38 = new System.Windows.Forms.Label();
- this.txt_SendFileArgs = new System.Windows.Forms.TextBox();
- this.lbl_sendFileTo = new System.Windows.Forms.Label();
- this.check_sendFileTo = new System.Windows.Forms.CheckBox();
- this.btn_SendFileToPath = new System.Windows.Forms.Button();
- this.check_growlEncode = new System.Windows.Forms.CheckBox();
- this.check_GrowlQueue = new System.Windows.Forms.CheckBox();
- this.label1 = new System.Windows.Forms.Label();
- this.drop_updateCheckDays = new System.Windows.Forms.ComboBox();
- this.check_tooltip = new System.Windows.Forms.CheckBox();
- this.check_updateCheck = new System.Windows.Forms.CheckBox();
- this.label2 = new System.Windows.Forms.Label();
- this.tab_outputFiles = new System.Windows.Forms.TabPage();
- this.txt_autoNameFormat = new System.Windows.Forms.TextBox();
- this.label7 = new System.Windows.Forms.Label();
- this.check_autoNaming = new System.Windows.Forms.CheckBox();
- this.label35 = new System.Windows.Forms.Label();
- this.label5 = new System.Windows.Forms.Label();
- this.label10 = new System.Windows.Forms.Label();
- this.cb_mp4FileMode = new System.Windows.Forms.ComboBox();
- this.check_removeUnderscores = new System.Windows.Forms.CheckBox();
- this.text_an_path = new System.Windows.Forms.TextBox();
- this.btn_browse = new System.Windows.Forms.Button();
- this.label34 = new System.Windows.Forms.Label();
- this.check_TitleCase = new System.Windows.Forms.CheckBox();
- this.label13 = new System.Windows.Forms.Label();
- this.tab_picture = new System.Windows.Forms.TabPage();
- this.btn_vlcPath = new System.Windows.Forms.Button();
- this.label29 = new System.Windows.Forms.Label();
- 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.check_advPassthruOpts = new System.Windows.Forms.CheckBox();
- this.label49 = new System.Windows.Forms.Label();
- this.label48 = new System.Windows.Forms.Label();
- this.drop_preferredLangSubtitles = new System.Windows.Forms.ComboBox();
- this.label39 = new System.Windows.Forms.Label();
- this.audioSelectionPanel = new System.Windows.Forms.Panel();
- this.label46 = new System.Windows.Forms.Label();
- this.listBox_selectedLanguages = new System.Windows.Forms.ListBox();
- this.button_moveLanguageDown = new System.Windows.Forms.Button();
- this.listBox_availableLanguages = new System.Windows.Forms.ListBox();
- this.button_addLanguage = new System.Windows.Forms.Button();
- this.button_moveLanguageUp = new System.Windows.Forms.Button();
- this.label47 = new System.Windows.Forms.Label();
- this.button_removeLanguage = new System.Windows.Forms.Button();
- this.button_clearLanguage = new System.Windows.Forms.Button();
- this.label45 = new System.Windows.Forms.Label();
- this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.label44 = new System.Windows.Forms.Label();
- this.label41 = new System.Windows.Forms.Label();
- this.cb_subtitleMode = new System.Windows.Forms.ComboBox();
- this.cb_audioMode = new System.Windows.Forms.ComboBox();
- this.label42 = new System.Windows.Forms.Label();
- this.check_AddOnlyOneAudioPerLanguage = new System.Windows.Forms.CheckBox();
- this.check_AddCCTracks = new System.Windows.Forms.CheckBox();
- this.label43 = new System.Windows.Forms.Label();
- this.label31 = new System.Windows.Forms.Label();
- this.label15 = new System.Windows.Forms.Label();
- this.drop_preferredLangAudio = new System.Windows.Forms.ComboBox();
- this.tab_cli = new System.Windows.Forms.TabPage();
- this.label11 = new System.Windows.Forms.Label();
- this.check_preventSleep = new System.Windows.Forms.CheckBox();
- this.check_clearOldLogs = new System.Windows.Forms.CheckBox();
- this.label12 = new System.Windows.Forms.Label();
- this.btn_viewLogs = new System.Windows.Forms.Button();
- this.label9 = new System.Windows.Forms.Label();
- this.Label4 = new System.Windows.Forms.Label();
- this.btn_clearLogs = new System.Windows.Forms.Button();
- this.drp_Priority = new System.Windows.Forms.ComboBox();
- this.check_logsInSpecifiedLocation = new System.Windows.Forms.CheckBox();
- this.check_saveLogWithVideo = new System.Windows.Forms.CheckBox();
- this.label3 = new System.Windows.Forms.Label();
- this.btn_saveLog = new System.Windows.Forms.Button();
- this.cb_logVerboseLvl = new System.Windows.Forms.ComboBox();
- this.text_logPath = new System.Windows.Forms.TextBox();
- this.label14 = new System.Windows.Forms.Label();
- this.tab_advanced = new System.Windows.Forms.TabPage();
- this.ud_minTitleLength = new System.Windows.Forms.NumericUpDown();
- this.label40 = new System.Windows.Forms.Label();
- this.check_showCliForInGUIEncode = new System.Windows.Forms.CheckBox();
- this.drop_previewScanCount = new System.Windows.Forms.ComboBox();
- this.label33 = new System.Windows.Forms.Label();
- this.label6 = new System.Windows.Forms.Label();
- this.check_trayStatusAlerts = new System.Windows.Forms.CheckBox();
- this.check_mainMinimize = new System.Windows.Forms.CheckBox();
- this.check_promptOnUnmatchingQueries = new System.Windows.Forms.CheckBox();
- this.check_dvdnav = new System.Windows.Forms.CheckBox();
- this.check_queryEditorTab = new System.Windows.Forms.CheckBox();
- this.label32 = new System.Windows.Forms.Label();
- this.drop_x264step = new System.Windows.Forms.ComboBox();
- this.label30 = new System.Windows.Forms.Label();
- this.check_disablePresetNotification = new System.Windows.Forms.CheckBox();
- this.label28 = new System.Windows.Forms.Label();
- this.label8 = new System.Windows.Forms.Label();
- this.pathFinder = new System.Windows.Forms.FolderBrowserDialog();
- this.ToolTip = new System.Windows.Forms.ToolTip(this.components);
- this.textBox1 = new System.Windows.Forms.TextBox();
- this.textBox2 = new System.Windows.Forms.TextBox();
- this.checkBox1 = new System.Windows.Forms.CheckBox();
- this.checkBox2 = new System.Windows.Forms.CheckBox();
- this.checkBox3 = new System.Windows.Forms.CheckBox();
- this.checkBox4 = new System.Windows.Forms.CheckBox();
- this.comboBox1 = new System.Windows.Forms.ComboBox();
- this.textBox3 = new System.Windows.Forms.TextBox();
- this.textBox4 = new System.Windows.Forms.TextBox();
- this.checkBox5 = new System.Windows.Forms.CheckBox();
- this.checkBox6 = new System.Windows.Forms.CheckBox();
- this.checkBox7 = new System.Windows.Forms.CheckBox();
- this.checkBox8 = new System.Windows.Forms.CheckBox();
- this.comboBox2 = new System.Windows.Forms.ComboBox();
- this.label16 = new System.Windows.Forms.Label();
- this.label17 = new System.Windows.Forms.Label();
- this.button1 = new System.Windows.Forms.Button();
- this.label18 = new System.Windows.Forms.Label();
- this.label19 = new System.Windows.Forms.Label();
- this.label20 = new System.Windows.Forms.Label();
- this.label21 = new System.Windows.Forms.Label();
- this.label22 = new System.Windows.Forms.Label();
- this.label23 = new System.Windows.Forms.Label();
- this.button2 = new System.Windows.Forms.Button();
- this.label24 = new System.Windows.Forms.Label();
- this.label25 = new System.Windows.Forms.Label();
- this.label26 = new System.Windows.Forms.Label();
- this.label27 = new System.Windows.Forms.Label();
- this.openExecutable = new System.Windows.Forms.OpenFileDialog();
- 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.audioSelectionPanel.SuspendLayout();
- this.groupBox2.SuspendLayout();
- this.tab_cli.SuspendLayout();
- this.tab_advanced.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.ud_minTitleLength)).BeginInit();
- this.panel1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
- this.SuspendLayout();
- //
- // btn_close
- //
- this.btn_close.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
- this.btn_close.BackColor = System.Drawing.SystemColors.ControlLight;
- this.btn_close.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_close.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_close.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_close.Location = new System.Drawing.Point(527, 503);
- this.btn_close.Name = "btn_close";
- this.btn_close.Size = new System.Drawing.Size(72, 22);
- this.btn_close.TabIndex = 53;
- this.btn_close.Text = "Close";
- this.btn_close.UseVisualStyleBackColor = true;
- this.btn_close.Click += new System.EventHandler(this.btn_close_Click);
- //
- // drp_completeOption
- //
- this.drp_completeOption.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_completeOption.FormattingEnabled = true;
- this.drp_completeOption.Items.AddRange(new object[] {
- "Do nothing",
- "Shutdown",
- "Suspend",
- "Hibernate",
- "Lock system",
- "Log off",
- "Quit HandBrake"});
- this.drp_completeOption.Location = new System.Drawing.Point(108, 99);
- this.drp_completeOption.Name = "drp_completeOption";
- this.drp_completeOption.Size = new System.Drawing.Size(166, 21);
- this.drp_completeOption.TabIndex = 43;
- this.ToolTip.SetToolTip(this.drp_completeOption, "Performs an action when an encode or queue has completed.");
- this.drp_completeOption.SelectedIndexChanged += new System.EventHandler(this.drp_completeOption_SelectedIndexChanged);
- //
- // tab_options
- //
- this.tab_options.Controls.Add(this.tab_general);
- this.tab_options.Controls.Add(this.tab_outputFiles);
- this.tab_options.Controls.Add(this.tab_picture);
- this.tab_options.Controls.Add(this.tab_audio_sub);
- this.tab_options.Controls.Add(this.tab_cli);
- this.tab_options.Controls.Add(this.tab_advanced);
- this.tab_options.Location = new System.Drawing.Point(12, 74);
- this.tab_options.Name = "tab_options";
- this.tab_options.SelectedIndex = 0;
- this.tab_options.Size = new System.Drawing.Size(588, 423);
- this.tab_options.TabIndex = 58;
- //
- // tab_general
- //
- this.tab_general.Controls.Add(this.label38);
- this.tab_general.Controls.Add(this.txt_SendFileArgs);
- this.tab_general.Controls.Add(this.lbl_sendFileTo);
- this.tab_general.Controls.Add(this.check_sendFileTo);
- this.tab_general.Controls.Add(this.btn_SendFileToPath);
- this.tab_general.Controls.Add(this.check_growlEncode);
- this.tab_general.Controls.Add(this.check_GrowlQueue);
- this.tab_general.Controls.Add(this.label1);
- this.tab_general.Controls.Add(this.drp_completeOption);
- this.tab_general.Controls.Add(this.drop_updateCheckDays);
- this.tab_general.Controls.Add(this.check_tooltip);
- this.tab_general.Controls.Add(this.check_updateCheck);
- this.tab_general.Controls.Add(this.label2);
- this.tab_general.Location = new System.Drawing.Point(4, 22);
- this.tab_general.Name = "tab_general";
- this.tab_general.Padding = new System.Windows.Forms.Padding(10);
- this.tab_general.Size = new System.Drawing.Size(580, 397);
- this.tab_general.TabIndex = 3;
- this.tab_general.Text = "General";
- this.tab_general.UseVisualStyleBackColor = true;
- //
- // label38
- //
- this.label38.AutoSize = true;
- this.label38.Location = new System.Drawing.Point(124, 179);
- this.label38.Name = "label38";
- this.label38.Size = new System.Drawing.Size(63, 13);
- this.label38.TabIndex = 109;
- this.label38.Text = "Arguments:";
- //
- // txt_SendFileArgs
- //
- this.txt_SendFileArgs.Location = new System.Drawing.Point(196, 176);
- this.txt_SendFileArgs.Name = "txt_SendFileArgs";
- 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");
- this.txt_SendFileArgs.TextChanged += new System.EventHandler(this.txt_SendFileArgs_TextChanged);
- //
- // lbl_sendFileTo
- //
- this.lbl_sendFileTo.AutoSize = true;
- this.lbl_sendFileTo.Location = new System.Drawing.Point(193, 152);
- this.lbl_sendFileTo.Name = "lbl_sendFileTo";
- this.lbl_sendFileTo.Size = new System.Drawing.Size(32, 13);
- this.lbl_sendFileTo.TabIndex = 107;
- this.lbl_sendFileTo.Text = "None";
- //
- // check_sendFileTo
- //
- this.check_sendFileTo.AutoSize = true;
- this.check_sendFileTo.Location = new System.Drawing.Point(108, 151);
- this.check_sendFileTo.Name = "check_sendFileTo";
- this.check_sendFileTo.Size = new System.Drawing.Size(86, 17);
- 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.");
- this.check_sendFileTo.UseVisualStyleBackColor = true;
- this.check_sendFileTo.CheckedChanged += new System.EventHandler(this.check_sendFileTo_CheckedChanged);
- //
- // btn_SendFileToPath
- //
- this.btn_SendFileToPath.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_SendFileToPath.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_SendFileToPath.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_SendFileToPath.Location = new System.Drawing.Point(378, 147);
- this.btn_SendFileToPath.Name = "btn_SendFileToPath";
- this.btn_SendFileToPath.Size = new System.Drawing.Size(75, 23);
- this.btn_SendFileToPath.TabIndex = 105;
- this.btn_SendFileToPath.Text = "Browse";
- this.btn_SendFileToPath.UseVisualStyleBackColor = true;
- this.btn_SendFileToPath.Click += new System.EventHandler(this.btn_SendFileToPath_Click);
- //
- // check_growlEncode
- //
- this.check_growlEncode.AutoSize = true;
- this.check_growlEncode.BackColor = System.Drawing.Color.Transparent;
- this.check_growlEncode.Location = new System.Drawing.Point(282, 126);
- this.check_growlEncode.Name = "check_growlEncode";
- this.check_growlEncode.Size = new System.Drawing.Size(171, 17);
- 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.");
- this.check_growlEncode.UseVisualStyleBackColor = false;
- this.check_growlEncode.CheckedChanged += new System.EventHandler(this.check_growlEncode_CheckedChanged);
- //
- // check_GrowlQueue
- //
- this.check_GrowlQueue.AutoSize = true;
- this.check_GrowlQueue.BackColor = System.Drawing.Color.Transparent;
- this.check_GrowlQueue.Location = new System.Drawing.Point(108, 126);
- this.check_GrowlQueue.Name = "check_GrowlQueue";
- this.check_GrowlQueue.Size = new System.Drawing.Size(168, 17);
- 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.");
- this.check_GrowlQueue.UseVisualStyleBackColor = false;
- this.check_GrowlQueue.CheckedChanged += new System.EventHandler(this.check_GrowlQueue_CheckedChanged);
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.BackColor = System.Drawing.Color.Transparent;
- this.label1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(15, 15);
- this.label1.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(66, 13);
- this.label1.TabIndex = 67;
- this.label1.Text = "At Launch:";
- //
- // drop_updateCheckDays
- //
- this.drop_updateCheckDays.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_updateCheckDays.FormattingEnabled = true;
- this.drop_updateCheckDays.Items.AddRange(new object[] {
- "Daily",
- "Weekly",
- "Monthly"});
- this.drop_updateCheckDays.Location = new System.Drawing.Point(127, 35);
- this.drop_updateCheckDays.Name = "drop_updateCheckDays";
- this.drop_updateCheckDays.Size = new System.Drawing.Size(97, 21);
- this.drop_updateCheckDays.TabIndex = 97;
- this.ToolTip.SetToolTip(this.drop_updateCheckDays, "Check for updates: Daily, Weekly or Monthly\r\nDefault: Weekly");
- this.drop_updateCheckDays.SelectedIndexChanged += new System.EventHandler(this.drop_updateCheckDays_SelectedIndexChanged);
- //
- // check_tooltip
- //
- this.check_tooltip.AutoSize = true;
- this.check_tooltip.BackColor = System.Drawing.Color.Transparent;
- this.check_tooltip.Location = new System.Drawing.Point(108, 62);
- this.check_tooltip.Name = "check_tooltip";
- this.check_tooltip.Size = new System.Drawing.Size(117, 17);
- this.check_tooltip.TabIndex = 70;
- this.check_tooltip.Text = "Enable GUI tooltips";
- this.ToolTip.SetToolTip(this.check_tooltip, "Enable the built in tooltips for gui controls. (Requires Restart)");
- this.check_tooltip.UseVisualStyleBackColor = false;
- this.check_tooltip.CheckedChanged += new System.EventHandler(this.check_tooltip_CheckedChanged);
- //
- // check_updateCheck
- //
- this.check_updateCheck.AutoSize = true;
- this.check_updateCheck.BackColor = System.Drawing.Color.Transparent;
- this.check_updateCheck.Location = new System.Drawing.Point(108, 14);
- this.check_updateCheck.Name = "check_updateCheck";
- this.check_updateCheck.Size = new System.Drawing.Size(114, 17);
- 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.");
- this.check_updateCheck.UseVisualStyleBackColor = false;
- this.check_updateCheck.CheckedChanged += new System.EventHandler(this.check_updateCheck_CheckedChanged);
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label2.Location = new System.Drawing.Point(7, 102);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(74, 13);
- this.label2.TabIndex = 54;
- this.label2.Text = "When Done:";
- //
- // tab_outputFiles
- //
- this.tab_outputFiles.Controls.Add(this.txt_autoNameFormat);
- this.tab_outputFiles.Controls.Add(this.label7);
- this.tab_outputFiles.Controls.Add(this.check_autoNaming);
- this.tab_outputFiles.Controls.Add(this.label35);
- this.tab_outputFiles.Controls.Add(this.label5);
- this.tab_outputFiles.Controls.Add(this.label10);
- this.tab_outputFiles.Controls.Add(this.cb_mp4FileMode);
- this.tab_outputFiles.Controls.Add(this.check_removeUnderscores);
- this.tab_outputFiles.Controls.Add(this.text_an_path);
- this.tab_outputFiles.Controls.Add(this.btn_browse);
- this.tab_outputFiles.Controls.Add(this.label34);
- this.tab_outputFiles.Controls.Add(this.check_TitleCase);
- this.tab_outputFiles.Controls.Add(this.label13);
- this.tab_outputFiles.Location = new System.Drawing.Point(4, 22);
- this.tab_outputFiles.Name = "tab_outputFiles";
- this.tab_outputFiles.Padding = new System.Windows.Forms.Padding(3);
- this.tab_outputFiles.Size = new System.Drawing.Size(580, 397);
- this.tab_outputFiles.TabIndex = 7;
- this.tab_outputFiles.Text = "Output Files";
- this.tab_outputFiles.UseVisualStyleBackColor = true;
- //
- // txt_autoNameFormat
- //
- this.txt_autoNameFormat.Location = new System.Drawing.Point(185, 99);
- this.txt_autoNameFormat.Name = "txt_autoNameFormat";
- 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.");
- this.txt_autoNameFormat.TextChanged += new System.EventHandler(this.txt_autoNameFormat_TextChanged);
- //
- // label7
- //
- this.label7.AutoSize = true;
- this.label7.Location = new System.Drawing.Point(182, 126);
- this.label7.Margin = new System.Windows.Forms.Padding(3);
- this.label7.Name = "label7";
- this.label7.Size = new System.Drawing.Size(260, 13);
- this.label7.TabIndex = 81;
- this.label7.Text = "Available Options: {source} {title} {chapters} {date}";
- //
- // check_autoNaming
- //
- this.check_autoNaming.AutoSize = true;
- this.check_autoNaming.Location = new System.Drawing.Point(111, 13);
- this.check_autoNaming.Name = "check_autoNaming";
- this.check_autoNaming.Size = new System.Drawing.Size(176, 17);
- this.check_autoNaming.TabIndex = 72;
- this.check_autoNaming.Text = "Automatically name output files";
- this.ToolTip.SetToolTip(this.check_autoNaming, "Automatically name output files");
- this.check_autoNaming.UseVisualStyleBackColor = true;
- this.check_autoNaming.CheckedChanged += new System.EventHandler(this.check_autoNaming_CheckedChanged);
- //
- // label35
- //
- this.label35.AutoSize = true;
- this.label35.Location = new System.Drawing.Point(108, 182);
- this.label35.Name = "label35";
- this.label35.Size = new System.Drawing.Size(100, 13);
- this.label35.TabIndex = 104;
- this.label35.Text = "MP4 File Extension:";
- //
- // label5
- //
- this.label5.AutoSize = true;
- this.label5.Location = new System.Drawing.Point(108, 102);
- this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(45, 13);
- this.label5.TabIndex = 80;
- this.label5.Text = "Format:";
- //
- // label10
- //
- this.label10.AutoSize = true;
- this.label10.Location = new System.Drawing.Point(108, 48);
- this.label10.Name = "label10";
- this.label10.Size = new System.Drawing.Size(71, 13);
- this.label10.TabIndex = 77;
- this.label10.Text = "Default Path:";
- //
- // cb_mp4FileMode
- //
- this.cb_mp4FileMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_mp4FileMode.FormattingEnabled = true;
- this.cb_mp4FileMode.Items.AddRange(new object[] {
- "Automatic",
- "Always use MP4",
- "Always use M4V"});
- this.cb_mp4FileMode.Location = new System.Drawing.Point(214, 179);
- this.cb_mp4FileMode.Name = "cb_mp4FileMode";
- this.cb_mp4FileMode.Size = new System.Drawing.Size(150, 21);
- this.cb_mp4FileMode.TabIndex = 103;
- this.ToolTip.SetToolTip(this.cb_mp4FileMode, resources.GetString("cb_mp4FileMode.ToolTip"));
- this.cb_mp4FileMode.SelectedIndexChanged += new System.EventHandler(this.cb_mp4FileMode_SelectedIndexChanged);
- //
- // check_removeUnderscores
- //
- this.check_removeUnderscores.AutoSize = true;
- this.check_removeUnderscores.Location = new System.Drawing.Point(111, 154);
- this.check_removeUnderscores.Name = "check_removeUnderscores";
- this.check_removeUnderscores.Size = new System.Drawing.Size(183, 17);
- this.check_removeUnderscores.TabIndex = 100;
- this.check_removeUnderscores.Text = "Remove Underscores from Name";
- this.ToolTip.SetToolTip(this.check_removeUnderscores, "For the {source} option:\r\nRemove any underscores from the source name.\r\n\r\n");
- this.check_removeUnderscores.UseVisualStyleBackColor = true;
- this.check_removeUnderscores.CheckedChanged += new System.EventHandler(this.check_removeUnderscores_CheckedChanged);
- //
- // text_an_path
- //
- this.text_an_path.Location = new System.Drawing.Point(185, 45);
- this.text_an_path.Name = "text_an_path";
- this.text_an_path.Size = new System.Drawing.Size(253, 21);
- this.text_an_path.TabIndex = 76;
- this.ToolTip.SetToolTip(this.text_an_path, resources.GetString("text_an_path.ToolTip"));
- this.text_an_path.TextChanged += new System.EventHandler(this.text_an_path_TextChanged);
- //
- // btn_browse
- //
- this.btn_browse.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_browse.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_browse.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_browse.Location = new System.Drawing.Point(459, 43);
- this.btn_browse.Name = "btn_browse";
- this.btn_browse.Size = new System.Drawing.Size(75, 23);
- this.btn_browse.TabIndex = 78;
- this.btn_browse.Text = "Browse";
- this.btn_browse.UseVisualStyleBackColor = true;
- this.btn_browse.Click += new System.EventHandler(this.btn_browse_Click);
- //
- // label34
- //
- this.label34.AutoSize = true;
- this.label34.Location = new System.Drawing.Point(182, 72);
- this.label34.Margin = new System.Windows.Forms.Padding(3);
- this.label34.Name = "label34";
- this.label34.Size = new System.Drawing.Size(344, 13);
- this.label34.TabIndex = 102;
- this.label34.Text = "Available Options: {source_path} or {source_folder_name} (Not Both)";
- this.ToolTip.SetToolTip(this.label34, resources.GetString("label34.ToolTip"));
- //
- // check_TitleCase
- //
- this.check_TitleCase.AutoSize = true;
- this.check_TitleCase.Location = new System.Drawing.Point(300, 154);
- this.check_TitleCase.Name = "check_TitleCase";
- this.check_TitleCase.Size = new System.Drawing.Size(151, 17);
- 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");
- this.check_TitleCase.UseVisualStyleBackColor = true;
- this.check_TitleCase.CheckedChanged += new System.EventHandler(this.check_TitleCase_CheckedChanged);
- //
- // label13
- //
- this.label13.AutoSize = true;
- this.label13.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label13.Location = new System.Drawing.Point(7, 13);
- this.label13.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label13.Name = "label13";
- this.label13.Size = new System.Drawing.Size(77, 13);
- this.label13.TabIndex = 71;
- this.label13.Text = "Output Files:";
- //
- // tab_picture
- //
- this.tab_picture.Controls.Add(this.btn_vlcPath);
- this.tab_picture.Controls.Add(this.label29);
- this.tab_picture.Controls.Add(this.txt_vlcPath);
- this.tab_picture.Controls.Add(this.label36);
- this.tab_picture.Location = new System.Drawing.Point(4, 22);
- this.tab_picture.Name = "tab_picture";
- this.tab_picture.Padding = new System.Windows.Forms.Padding(10);
- this.tab_picture.Size = new System.Drawing.Size(580, 397);
- this.tab_picture.TabIndex = 5;
- this.tab_picture.Text = "Preview";
- this.tab_picture.UseVisualStyleBackColor = true;
- //
- // btn_vlcPath
- //
- this.btn_vlcPath.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.btn_vlcPath.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_vlcPath.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_vlcPath.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_vlcPath.Location = new System.Drawing.Point(479, 11);
- this.btn_vlcPath.Name = "btn_vlcPath";
- this.btn_vlcPath.Size = new System.Drawing.Size(68, 22);
- this.btn_vlcPath.TabIndex = 83;
- this.btn_vlcPath.Text = "Browse";
- this.btn_vlcPath.UseVisualStyleBackColor = true;
- this.btn_vlcPath.Click += new System.EventHandler(this.btn_vlcPath_Click);
- //
- // label29
- //
- this.label29.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label29.AutoSize = true;
- this.label29.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label29.Location = new System.Drawing.Point(13, 15);
- this.label29.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label29.Name = "label29";
- this.label29.Size = new System.Drawing.Size(59, 13);
- this.label29.TabIndex = 79;
- this.label29.Text = "VLC Path:";
- //
- // txt_vlcPath
- //
- this.txt_vlcPath.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.txt_vlcPath.Location = new System.Drawing.Point(78, 12);
- this.txt_vlcPath.Name = "txt_vlcPath";
- 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.");
- this.txt_vlcPath.TextChanged += new System.EventHandler(this.txt_vlcPath_TextChanged);
- //
- // label36
- //
- this.label36.AutoSize = true;
- this.label36.Location = new System.Drawing.Point(75, 36);
- this.label36.Name = "label36";
- this.label36.Size = new System.Drawing.Size(255, 13);
- this.label36.TabIndex = 85;
- this.label36.Text = "This path is used for the view preview feature only.";
- //
- // tab_audio_sub
- //
- this.tab_audio_sub.Controls.Add(this.check_advPassthruOpts);
- this.tab_audio_sub.Controls.Add(this.label49);
- this.tab_audio_sub.Controls.Add(this.label48);
- this.tab_audio_sub.Controls.Add(this.drop_preferredLangSubtitles);
- this.tab_audio_sub.Controls.Add(this.label39);
- this.tab_audio_sub.Controls.Add(this.audioSelectionPanel);
- this.tab_audio_sub.Controls.Add(this.label45);
- this.tab_audio_sub.Controls.Add(this.groupBox2);
- this.tab_audio_sub.Controls.Add(this.label31);
- this.tab_audio_sub.Controls.Add(this.label15);
- this.tab_audio_sub.Controls.Add(this.drop_preferredLangAudio);
- 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);
- this.tab_audio_sub.Size = new System.Drawing.Size(580, 397);
- this.tab_audio_sub.TabIndex = 6;
- this.tab_audio_sub.Text = "Audio and Subtitles";
- this.tab_audio_sub.UseVisualStyleBackColor = true;
- //
- // check_advPassthruOpts
- //
- this.check_advPassthruOpts.AutoSize = true;
- this.check_advPassthruOpts.Location = new System.Drawing.Point(9, 365);
- this.check_advPassthruOpts.Name = "check_advPassthruOpts";
- this.check_advPassthruOpts.Size = new System.Drawing.Size(310, 17);
- this.check_advPassthruOpts.TabIndex = 110;
- this.check_advPassthruOpts.Text = "Show advanced audio passthru options. (Requires Restart)\r\n";
- this.ToolTip.SetToolTip(this.check_advPassthruOpts, "Show advanced audio passthru options");
- this.check_advPassthruOpts.UseVisualStyleBackColor = true;
- this.check_advPassthruOpts.CheckedChanged += new System.EventHandler(this.check_advPassthruOpts_CheckedChanged);
- //
- // label49
- //
- this.label49.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label49.AutoSize = true;
- this.label49.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label49.Location = new System.Drawing.Point(6, 346);
- this.label49.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label49.Name = "label49";
- this.label49.Size = new System.Drawing.Size(109, 13);
- this.label49.TabIndex = 112;
- this.label49.Text = "Audio Tab Options";
- //
- // label48
- //
- this.label48.AutoSize = true;
- this.label48.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label48.Location = new System.Drawing.Point(127, 37);
- this.label48.Name = "label48";
- this.label48.Size = new System.Drawing.Size(32, 11);
- this.label48.TabIndex = 111;
- this.label48.Text = "Audio:";
- //
- // drop_preferredLangSubtitles
- //
- this.drop_preferredLangSubtitles.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_preferredLangSubtitles.FormattingEnabled = true;
- this.drop_preferredLangSubtitles.Location = new System.Drawing.Point(349, 32);
- this.drop_preferredLangSubtitles.Name = "drop_preferredLangSubtitles";
- this.drop_preferredLangSubtitles.Size = new System.Drawing.Size(118, 21);
- this.drop_preferredLangSubtitles.TabIndex = 110;
- this.ToolTip.SetToolTip(this.drop_preferredLangSubtitles, "The primary selected language. If set to \"Any\" no advance options are available.");
- this.drop_preferredLangSubtitles.SelectedIndexChanged += new System.EventHandler(this.drop_preferredLangSubtitles_SelectedIndexChanged);
- //
- // label39
- //
- this.label39.AutoSize = true;
- this.label39.Location = new System.Drawing.Point(6, 63);
- this.label39.Name = "label39";
- this.label39.Size = new System.Drawing.Size(92, 13);
- this.label39.TabIndex = 109;
- this.label39.Text = "Additional Tracks:";
- //
- // audioSelectionPanel
- //
- this.audioSelectionPanel.Controls.Add(this.label46);
- this.audioSelectionPanel.Controls.Add(this.listBox_selectedLanguages);
- this.audioSelectionPanel.Controls.Add(this.button_moveLanguageDown);
- this.audioSelectionPanel.Controls.Add(this.listBox_availableLanguages);
- this.audioSelectionPanel.Controls.Add(this.button_addLanguage);
- this.audioSelectionPanel.Controls.Add(this.button_moveLanguageUp);
- this.audioSelectionPanel.Controls.Add(this.label47);
- this.audioSelectionPanel.Controls.Add(this.button_removeLanguage);
- this.audioSelectionPanel.Controls.Add(this.button_clearLanguage);
- this.audioSelectionPanel.Location = new System.Drawing.Point(125, 63);
- this.audioSelectionPanel.Name = "audioSelectionPanel";
- this.audioSelectionPanel.Size = new System.Drawing.Size(381, 166);
- this.audioSelectionPanel.TabIndex = 108;
- //
- // label46
- //
- this.label46.AutoSize = true;
- this.label46.Location = new System.Drawing.Point(1, 3);
- this.label46.Name = "label46";
- this.label46.Size = new System.Drawing.Size(105, 13);
- this.label46.TabIndex = 99;
- this.label46.Text = "Available Languages";
- //
- // listBox_selectedLanguages
- //
- this.listBox_selectedLanguages.Location = new System.Drawing.Point(202, 19);
- this.listBox_selectedLanguages.Name = "listBox_selectedLanguages";
- this.listBox_selectedLanguages.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
- this.listBox_selectedLanguages.Size = new System.Drawing.Size(137, 134);
- this.listBox_selectedLanguages.TabIndex = 95;
- this.listBox_selectedLanguages.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listBox_selectedLanguages_MouseDoubleClick);
- //
- // button_moveLanguageDown
- //
- this.button_moveLanguageDown.Image = global::Handbrake.Properties.Resources.arrow_down;
- this.button_moveLanguageDown.Location = new System.Drawing.Point(345, 90);
- 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);
- //
- // listBox_availableLanguages
- //
- this.listBox_availableLanguages.Location = new System.Drawing.Point(4, 19);
- this.listBox_availableLanguages.Name = "listBox_availableLanguages";
- this.listBox_availableLanguages.SelectionMode = System.Windows.Forms.SelectionMode.MultiExtended;
- this.listBox_availableLanguages.Size = new System.Drawing.Size(137, 134);
- this.listBox_availableLanguages.Sorted = true;
- this.listBox_availableLanguages.TabIndex = 94;
- this.listBox_availableLanguages.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.listBox_availableLanguages_MouseDoubleClick);
- //
- // button_addLanguage
- //
- this.button_addLanguage.Image = global::Handbrake.Properties.Resources.arrow_right;
- this.button_addLanguage.Location = new System.Drawing.Point(147, 34);
- 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);
- //
- // button_moveLanguageUp
- //
- this.button_moveLanguageUp.Image = global::Handbrake.Properties.Resources.arrow_up;
- this.button_moveLanguageUp.Location = new System.Drawing.Point(345, 57);
- 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);
- //
- // label47
- //
- this.label47.AutoSize = true;
- this.label47.Location = new System.Drawing.Point(199, 3);
- this.label47.Name = "label47";
- this.label47.Size = new System.Drawing.Size(103, 13);
- this.label47.TabIndex = 100;
- this.label47.Text = "Selected Languages";
- //
- // button_removeLanguage
- //
- this.button_removeLanguage.Image = global::Handbrake.Properties.Resources.arrow_left;
- this.button_removeLanguage.Location = new System.Drawing.Point(147, 68);
- 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_clearLanguage
- //
- this.button_clearLanguage.Location = new System.Drawing.Point(147, 102);
- 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);
- //
- // label45
- //
- this.label45.AutoSize = true;
- this.label45.Font = new System.Drawing.Font("Tahoma", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label45.Location = new System.Drawing.Point(300, 37);
- this.label45.Name = "label45";
- this.label45.Size = new System.Drawing.Size(43, 11);
- this.label45.TabIndex = 107;
- this.label45.Text = "Subtitles:";
- //
- // groupBox2
- //
- this.groupBox2.Controls.Add(this.label44);
- this.groupBox2.Controls.Add(this.label41);
- this.groupBox2.Controls.Add(this.cb_subtitleMode);
- this.groupBox2.Controls.Add(this.cb_audioMode);
- this.groupBox2.Controls.Add(this.label42);
- this.groupBox2.Controls.Add(this.check_AddOnlyOneAudioPerLanguage);
- this.groupBox2.Controls.Add(this.check_AddCCTracks);
- this.groupBox2.Controls.Add(this.label43);
- this.groupBox2.Location = new System.Drawing.Point(19, 232);
- this.groupBox2.Name = "groupBox2";
- this.groupBox2.Size = new System.Drawing.Size(537, 106);
- this.groupBox2.TabIndex = 106;
- this.groupBox2.TabStop = false;
- this.groupBox2.Text = "Add Additional Tracks";
- //
- // label44
- //
- this.label44.AutoSize = true;
- this.label44.Location = new System.Drawing.Point(10, 28);
- this.label44.Name = "label44";
- this.label44.Size = new System.Drawing.Size(38, 13);
- this.label44.TabIndex = 109;
- this.label44.Text = "Audio:";
- //
- // label41
- //
- this.label41.AutoSize = true;
- this.label41.Location = new System.Drawing.Point(10, 55);
- this.label41.Name = "label41";
- this.label41.Size = new System.Drawing.Size(47, 13);
- this.label41.TabIndex = 108;
- this.label41.Text = "Subtitle:";
- //
- // cb_subtitleMode
- //
- this.cb_subtitleMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_subtitleMode.FormattingEnabled = true;
- this.cb_subtitleMode.Items.AddRange(new object[] {
- "None",
- "All",
- "First",
- "Selected Languages Only",
- "Prefered Only (First)",
- "Prefered Only (All)"});
- this.cb_subtitleMode.Location = new System.Drawing.Point(79, 52);
- this.cb_subtitleMode.Name = "cb_subtitleMode";
- this.cb_subtitleMode.Size = new System.Drawing.Size(147, 21);
- this.cb_subtitleMode.TabIndex = 107;
- this.ToolTip.SetToolTip(this.cb_subtitleMode, resources.GetString("cb_subtitleMode.ToolTip"));
- this.cb_subtitleMode.SelectedIndexChanged += new System.EventHandler(this.cb_subtitleMode_SelectedIndexChanged);
- //
- // cb_audioMode
- //
- this.cb_audioMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_audioMode.FormattingEnabled = true;
- this.cb_audioMode.Items.AddRange(new object[] {
- "None",
- "All Remaining Tracks",
- "All for Selected Languages"});
- this.cb_audioMode.Location = new System.Drawing.Point(79, 25);
- this.cb_audioMode.Name = "cb_audioMode";
- this.cb_audioMode.Size = new System.Drawing.Size(147, 21);
- this.cb_audioMode.TabIndex = 106;
- this.ToolTip.SetToolTip(this.cb_audioMode, resources.GetString("cb_audioMode.ToolTip"));
- this.cb_audioMode.SelectedIndexChanged += new System.EventHandler(this.cb_audioMode_SelectedIndexChanged);
- //
- // 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(142, 28);
- this.label42.Name = "label42";
- this.label42.Size = new System.Drawing.Size(34, 13);
- this.label42.TabIndex = 0;
- this.label42.Text = "Audio";
- this.label42.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // check_AddOnlyOneAudioPerLanguage
- //
- this.check_AddOnlyOneAudioPerLanguage.AutoSize = true;
- this.check_AddOnlyOneAudioPerLanguage.Location = new System.Drawing.Point(232, 27);
- 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 for each selected language.");
- this.check_AddOnlyOneAudioPerLanguage.UseVisualStyleBackColor = true;
- this.check_AddOnlyOneAudioPerLanguage.CheckedChanged += new System.EventHandler(this.check_AddOnlyOneAudioPerLanguage_CheckedChanged);
- //
- // check_AddCCTracks
- //
- this.check_AddCCTracks.AutoSize = true;
- this.check_AddCCTracks.Location = new System.Drawing.Point(79, 79);
- this.check_AddCCTracks.Name = "check_AddCCTracks";
- 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 regardless of language settings");
- this.check_AddCCTracks.UseVisualStyleBackColor = true;
- this.check_AddCCTracks.CheckedChanged += new System.EventHandler(this.check_AddCCTracks_CheckedChanged);
- //
- // 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(133, 55);
- this.label43.Name = "label43";
- this.label43.Size = new System.Drawing.Size(43, 13);
- this.label43.TabIndex = 1;
- this.label43.Text = "Subtitle";
- this.label43.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // 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(6, 8);
- this.label31.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label31.Name = "label31";
- this.label31.Size = new System.Drawing.Size(230, 13);
- this.label31.TabIndex = 91;
- this.label31.Text = "Automatic Audio and Subtitle Selection:";
- //
- // label15
- //
- this.label15.AutoSize = true;
- this.label15.Location = new System.Drawing.Point(6, 35);
- this.label15.Name = "label15";
- this.label15.Size = new System.Drawing.Size(107, 13);
- this.label15.TabIndex = 88;
- this.label15.Text = "Preferred Language:";
- //
- // drop_preferredLangAudio
- //
- this.drop_preferredLangAudio.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_preferredLangAudio.FormattingEnabled = true;
- this.drop_preferredLangAudio.Location = new System.Drawing.Point(165, 32);
- this.drop_preferredLangAudio.Name = "drop_preferredLangAudio";
- this.drop_preferredLangAudio.Size = new System.Drawing.Size(118, 21);
- this.drop_preferredLangAudio.TabIndex = 87;
- this.ToolTip.SetToolTip(this.drop_preferredLangAudio, "The primary selected language. If set to \"Any\" no advance options are available.");
- this.drop_preferredLangAudio.SelectedIndexChanged += new System.EventHandler(this.drop_preferredLang_SelectedIndexChanged);
- //
- // tab_cli
- //
- this.tab_cli.Controls.Add(this.label11);
- this.tab_cli.Controls.Add(this.check_preventSleep);
- this.tab_cli.Controls.Add(this.check_clearOldLogs);
- this.tab_cli.Controls.Add(this.label12);
- this.tab_cli.Controls.Add(this.btn_viewLogs);
- this.tab_cli.Controls.Add(this.label9);
- this.tab_cli.Controls.Add(this.Label4);
- this.tab_cli.Controls.Add(this.btn_clearLogs);
- this.tab_cli.Controls.Add(this.drp_Priority);
- this.tab_cli.Controls.Add(this.check_logsInSpecifiedLocation);
- this.tab_cli.Controls.Add(this.check_saveLogWithVideo);
- this.tab_cli.Controls.Add(this.label3);
- this.tab_cli.Controls.Add(this.btn_saveLog);
- this.tab_cli.Controls.Add(this.cb_logVerboseLvl);
- this.tab_cli.Controls.Add(this.text_logPath);
- this.tab_cli.Controls.Add(this.label14);
- this.tab_cli.Location = new System.Drawing.Point(4, 22);
- this.tab_cli.Name = "tab_cli";
- this.tab_cli.Padding = new System.Windows.Forms.Padding(10);
- this.tab_cli.Size = new System.Drawing.Size(580, 397);
- this.tab_cli.TabIndex = 2;
- this.tab_cli.Text = "System and Logging";
- this.tab_cli.UseVisualStyleBackColor = true;
- //
- // label11
- //
- this.label11.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label11.AutoSize = true;
- this.label11.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label11.Location = new System.Drawing.Point(7, 46);
- this.label11.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(53, 13);
- this.label11.TabIndex = 92;
- this.label11.Text = "System:";
- //
- // check_preventSleep
- //
- this.check_preventSleep.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_preventSleep.AutoSize = true;
- this.check_preventSleep.Location = new System.Drawing.Point(73, 45);
- this.check_preventSleep.Name = "check_preventSleep";
- this.check_preventSleep.Size = new System.Drawing.Size(266, 17);
- this.check_preventSleep.TabIndex = 91;
- this.check_preventSleep.Text = "Prevent the system from sleeping when encoding.";
- this.ToolTip.SetToolTip(this.check_preventSleep, "Prevent system from sleeping during encoding.");
- this.check_preventSleep.UseVisualStyleBackColor = true;
- this.check_preventSleep.CheckedChanged += new System.EventHandler(this.check_preventSleep_CheckedChanged);
- //
- // check_clearOldLogs
- //
- this.check_clearOldLogs.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_clearOldLogs.AutoSize = true;
- this.check_clearOldLogs.Location = new System.Drawing.Point(73, 234);
- this.check_clearOldLogs.Name = "check_clearOldLogs";
- this.check_clearOldLogs.Size = new System.Drawing.Size(166, 17);
- 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.");
- this.check_clearOldLogs.UseVisualStyleBackColor = true;
- this.check_clearOldLogs.CheckedChanged += new System.EventHandler(this.check_clearOldLogs_CheckedChanged);
- //
- // label12
- //
- this.label12.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label12.AutoSize = true;
- this.label12.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label12.Location = new System.Drawing.Point(7, 15);
- this.label12.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label12.Name = "label12";
- this.label12.Size = new System.Drawing.Size(28, 13);
- this.label12.TabIndex = 75;
- this.label12.Text = "CLI:";
- //
- // btn_viewLogs
- //
- this.btn_viewLogs.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.btn_viewLogs.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_viewLogs.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_viewLogs.Location = new System.Drawing.Point(129, 196);
- this.btn_viewLogs.Name = "btn_viewLogs";
- this.btn_viewLogs.Size = new System.Drawing.Size(139, 23);
- this.btn_viewLogs.TabIndex = 89;
- this.btn_viewLogs.Text = "View Log Directory";
- this.btn_viewLogs.UseVisualStyleBackColor = true;
- this.btn_viewLogs.Click += new System.EventHandler(this.btn_viewLogs_Click);
- //
- // label9
- //
- this.label9.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label9.AutoSize = true;
- this.label9.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label9.Location = new System.Drawing.Point(7, 92);
- this.label9.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label9.Name = "label9";
- this.label9.Size = new System.Drawing.Size(36, 13);
- this.label9.TabIndex = 77;
- this.label9.Text = "Logs:";
- //
- // Label4
- //
- this.Label4.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.Label4.AutoSize = true;
- this.Label4.BackColor = System.Drawing.Color.Transparent;
- this.Label4.Location = new System.Drawing.Point(70, 15);
- this.Label4.Name = "Label4";
- this.Label4.Size = new System.Drawing.Size(70, 13);
- this.Label4.TabIndex = 42;
- this.Label4.Text = "Priority level:";
- //
- // btn_clearLogs
- //
- this.btn_clearLogs.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.btn_clearLogs.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_clearLogs.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_clearLogs.Location = new System.Drawing.Point(274, 196);
- this.btn_clearLogs.Name = "btn_clearLogs";
- this.btn_clearLogs.Size = new System.Drawing.Size(135, 23);
- this.btn_clearLogs.TabIndex = 88;
- this.btn_clearLogs.Text = "Clear Log History";
- this.btn_clearLogs.UseVisualStyleBackColor = true;
- this.btn_clearLogs.Click += new System.EventHandler(this.btn_clearLogs_Click);
- //
- // drp_Priority
- //
- this.drp_Priority.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.drp_Priority.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_Priority.FormattingEnabled = true;
- this.drp_Priority.Items.AddRange(new object[] {
- "Realtime",
- "High",
- "Above Normal",
- "Normal",
- "Below Normal",
- "Low"});
- this.drp_Priority.Location = new System.Drawing.Point(177, 12);
- this.drp_Priority.Name = "drp_Priority";
- 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");
- this.drp_Priority.SelectedIndexChanged += new System.EventHandler(this.drp_Priority_SelectedIndexChanged);
- //
- // check_logsInSpecifiedLocation
- //
- this.check_logsInSpecifiedLocation.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_logsInSpecifiedLocation.AutoSize = true;
- this.check_logsInSpecifiedLocation.Location = new System.Drawing.Point(73, 139);
- this.check_logsInSpecifiedLocation.Name = "check_logsInSpecifiedLocation";
- this.check_logsInSpecifiedLocation.Size = new System.Drawing.Size(306, 17);
- this.check_logsInSpecifiedLocation.TabIndex = 87;
- this.check_logsInSpecifiedLocation.Text = "Put a copy of individual encode logs in a specified location:";
- this.ToolTip.SetToolTip(this.check_logsInSpecifiedLocation, "Place a copy of the encode log in the same folder as the encoded movie.");
- this.check_logsInSpecifiedLocation.UseVisualStyleBackColor = true;
- this.check_logsInSpecifiedLocation.CheckedChanged += new System.EventHandler(this.check_logsInSpecifiedLocation_CheckedChanged);
- //
- // check_saveLogWithVideo
- //
- this.check_saveLogWithVideo.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_saveLogWithVideo.AutoSize = true;
- this.check_saveLogWithVideo.Location = new System.Drawing.Point(73, 116);
- this.check_saveLogWithVideo.Name = "check_saveLogWithVideo";
- this.check_saveLogWithVideo.Size = new System.Drawing.Size(382, 17);
- this.check_saveLogWithVideo.TabIndex = 83;
- this.check_saveLogWithVideo.Text = "Put a copy of individual encode logs in the same location as encoded video";
- this.ToolTip.SetToolTip(this.check_saveLogWithVideo, "Place a copy of the encode log in the same folder as the encoded movie.");
- this.check_saveLogWithVideo.UseVisualStyleBackColor = true;
- this.check_saveLogWithVideo.CheckedChanged += new System.EventHandler(this.check_saveLogWithVideo_CheckedChanged);
- //
- // label3
- //
- this.label3.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label3.AutoSize = true;
- this.label3.BackColor = System.Drawing.Color.Transparent;
- this.label3.Location = new System.Drawing.Point(70, 92);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(101, 13);
- this.label3.TabIndex = 85;
- this.label3.Text = "Log verbosity level:";
- //
- // btn_saveLog
- //
- this.btn_saveLog.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.btn_saveLog.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.btn_saveLog.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_saveLog.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.btn_saveLog.Location = new System.Drawing.Point(437, 169);
- this.btn_saveLog.Name = "btn_saveLog";
- this.btn_saveLog.Size = new System.Drawing.Size(77, 22);
- this.btn_saveLog.TabIndex = 82;
- this.btn_saveLog.Text = "Browse";
- this.btn_saveLog.UseVisualStyleBackColor = true;
- this.btn_saveLog.Click += new System.EventHandler(this.btn_saveLog_Click);
- //
- // cb_logVerboseLvl
- //
- this.cb_logVerboseLvl.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.cb_logVerboseLvl.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_logVerboseLvl.FormattingEnabled = true;
- this.cb_logVerboseLvl.Items.AddRange(new object[] {
- "0",
- "1",
- "2"});
- this.cb_logVerboseLvl.Location = new System.Drawing.Point(177, 89);
- this.cb_logVerboseLvl.Name = "cb_logVerboseLvl";
- this.cb_logVerboseLvl.Size = new System.Drawing.Size(111, 21);
- this.cb_logVerboseLvl.TabIndex = 86;
- this.ToolTip.SetToolTip(this.cb_logVerboseLvl, "Activity Log Verbosity Level");
- this.cb_logVerboseLvl.SelectedIndexChanged += new System.EventHandler(this.cb_logVerboseLvl_SelectedIndexChanged);
- //
- // text_logPath
- //
- this.text_logPath.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right)));
- this.text_logPath.Location = new System.Drawing.Point(129, 169);
- this.text_logPath.Name = "text_logPath";
- this.text_logPath.Size = new System.Drawing.Size(302, 21);
- this.text_logPath.TabIndex = 80;
- this.ToolTip.SetToolTip(this.text_logPath, "The default location where auto named files are stored.");
- this.text_logPath.TextChanged += new System.EventHandler(this.text_logPath_TextChanged);
- //
- // label14
- //
- this.label14.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label14.AutoSize = true;
- this.label14.Location = new System.Drawing.Point(70, 172);
- this.label14.Name = "label14";
- this.label14.Size = new System.Drawing.Size(53, 13);
- this.label14.TabIndex = 81;
- this.label14.Text = "Log Path:";
- //
- // tab_advanced
- //
- this.tab_advanced.Controls.Add(this.ud_minTitleLength);
- this.tab_advanced.Controls.Add(this.label40);
- this.tab_advanced.Controls.Add(this.check_showCliForInGUIEncode);
- this.tab_advanced.Controls.Add(this.drop_previewScanCount);
- this.tab_advanced.Controls.Add(this.label33);
- this.tab_advanced.Controls.Add(this.label6);
- this.tab_advanced.Controls.Add(this.check_trayStatusAlerts);
- this.tab_advanced.Controls.Add(this.check_mainMinimize);
- this.tab_advanced.Controls.Add(this.check_promptOnUnmatchingQueries);
- this.tab_advanced.Controls.Add(this.check_dvdnav);
- this.tab_advanced.Controls.Add(this.check_queryEditorTab);
- this.tab_advanced.Controls.Add(this.label32);
- this.tab_advanced.Controls.Add(this.drop_x264step);
- this.tab_advanced.Controls.Add(this.label30);
- this.tab_advanced.Controls.Add(this.check_disablePresetNotification);
- this.tab_advanced.Controls.Add(this.label28);
- this.tab_advanced.Location = new System.Drawing.Point(4, 22);
- this.tab_advanced.Name = "tab_advanced";
- this.tab_advanced.Padding = new System.Windows.Forms.Padding(10);
- this.tab_advanced.Size = new System.Drawing.Size(580, 397);
- this.tab_advanced.TabIndex = 4;
- this.tab_advanced.Text = "Advanced";
- this.tab_advanced.UseVisualStyleBackColor = true;
- //
- // ud_minTitleLength
- //
- this.ud_minTitleLength.Location = new System.Drawing.Point(292, 204);
- this.ud_minTitleLength.Maximum = new decimal(new int[] {
- 128000,
- 0,
- 0,
- 0});
- this.ud_minTitleLength.Name = "ud_minTitleLength";
- this.ud_minTitleLength.Size = new System.Drawing.Size(85, 21);
- this.ud_minTitleLength.TabIndex = 99;
- this.ud_minTitleLength.ValueChanged += new System.EventHandler(this.ud_minTitleLength_ValueChanged);
- //
- // label40
- //
- this.label40.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label40.AutoSize = true;
- this.label40.Location = new System.Drawing.Point(79, 206);
- this.label40.Name = "label40";
- this.label40.Size = new System.Drawing.Size(206, 13);
- this.label40.TabIndex = 97;
- this.label40.Text = "Minimum length of title to scan (seconds):";
- //
- // check_showCliForInGUIEncode
- //
- this.check_showCliForInGUIEncode.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_showCliForInGUIEncode.AutoSize = true;
- this.check_showCliForInGUIEncode.BackColor = System.Drawing.Color.Transparent;
- this.check_showCliForInGUIEncode.Location = new System.Drawing.Point(81, 129);
- this.check_showCliForInGUIEncode.Name = "check_showCliForInGUIEncode";
- this.check_showCliForInGUIEncode.Size = new System.Drawing.Size(330, 17);
- this.check_showCliForInGUIEncode.TabIndex = 96;
- this.check_showCliForInGUIEncode.Text = "Show CLI window (Allows you to cleanly exit encode with ctrl-c)";
- this.ToolTip.SetToolTip(this.check_showCliForInGUIEncode, resources.GetString("check_showCliForInGUIEncode.ToolTip"));
- this.check_showCliForInGUIEncode.UseVisualStyleBackColor = false;
- this.check_showCliForInGUIEncode.CheckedChanged += new System.EventHandler(this.check_showCliForInGUIEncode_CheckedChanged);
- //
- // drop_previewScanCount
- //
- this.drop_previewScanCount.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_previewScanCount.FormattingEnabled = true;
- this.drop_previewScanCount.Items.AddRange(new object[] {
- "10",
- "15",
- "20",
- "25",
- "30"});
- this.drop_previewScanCount.Location = new System.Drawing.Point(292, 173);
- this.drop_previewScanCount.Name = "drop_previewScanCount";
- 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.");
- this.drop_previewScanCount.SelectedIndexChanged += new System.EventHandler(this.drop_previewScanCount_SelectedIndexChanged);
- //
- // label33
- //
- this.label33.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label33.AutoSize = true;
- this.label33.Location = new System.Drawing.Point(79, 176);
- this.label33.Name = "label33";
- this.label33.Size = new System.Drawing.Size(181, 13);
- this.label33.TabIndex = 94;
- this.label33.Text = "Number of picture previews to scan:";
- //
- // label6
- //
- this.label6.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.label6.AutoSize = true;
- this.label6.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label6.Location = new System.Drawing.Point(15, 15);
- this.label6.Margin = new System.Windows.Forms.Padding(3, 5, 3, 0);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(31, 13);
- this.label6.TabIndex = 71;
- this.label6.Text = "GUI:";
- //
- // check_trayStatusAlerts
- //
- this.check_trayStatusAlerts.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_trayStatusAlerts.AutoSize = true;
- this.check_trayStatusAlerts.BackColor = System.Drawing.Color.Transparent;
- this.check_trayStatusAlerts.Location = new System.Drawing.Point(81, 37);
- this.check_trayStatusAlerts.Name = "check_trayStatusAlerts";
- this.check_trayStatusAlerts.Size = new System.Drawing.Size(296, 17);
- 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" +
- "");
- this.check_trayStatusAlerts.UseVisualStyleBackColor = false;
- this.check_trayStatusAlerts.CheckedChanged += new System.EventHandler(this.check_trayStatusAlerts_CheckedChanged);
- //
- // check_mainMinimize
- //
- this.check_mainMinimize.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_mainMinimize.AutoSize = true;
- this.check_mainMinimize.BackColor = System.Drawing.Color.Transparent;
- this.check_mainMinimize.Location = new System.Drawing.Point(81, 14);
- this.check_mainMinimize.Name = "check_mainMinimize";
- this.check_mainMinimize.Size = new System.Drawing.Size(230, 17);
- 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" +
- "");
- this.check_mainMinimize.UseVisualStyleBackColor = false;
- this.check_mainMinimize.CheckedChanged += new System.EventHandler(this.check_mainMinimize_CheckedChanged);
- //
- // check_promptOnUnmatchingQueries
- //
- this.check_promptOnUnmatchingQueries.AutoSize = true;
- this.check_promptOnUnmatchingQueries.Location = new System.Drawing.Point(100, 83);
- this.check_promptOnUnmatchingQueries.Name = "check_promptOnUnmatchingQueries";
- this.check_promptOnUnmatchingQueries.Size = new System.Drawing.Size(305, 17);
- this.check_promptOnUnmatchingQueries.TabIndex = 63;
- this.check_promptOnUnmatchingQueries.Text = "Prompt when a manual query does not match GUI settings";
- this.check_promptOnUnmatchingQueries.UseVisualStyleBackColor = true;
- this.check_promptOnUnmatchingQueries.CheckedChanged += new System.EventHandler(this.check_promptOnUnmatchingQueries_CheckedChanged);
- //
- // check_dvdnav
- //
- this.check_dvdnav.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_dvdnav.AutoSize = true;
- this.check_dvdnav.BackColor = System.Drawing.Color.Transparent;
- this.check_dvdnav.Location = new System.Drawing.Point(82, 274);
- this.check_dvdnav.Name = "check_dvdnav";
- this.check_dvdnav.Size = new System.Drawing.Size(276, 17);
- this.check_dvdnav.TabIndex = 90;
- this.check_dvdnav.Text = "Disable LibDVDNav. (libdvdread will be used instead)";
- this.check_dvdnav.UseVisualStyleBackColor = false;
- this.check_dvdnav.CheckedChanged += new System.EventHandler(this.check_dvdnav_CheckedChanged);
- //
- // check_queryEditorTab
- //
- this.check_queryEditorTab.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_queryEditorTab.AutoSize = true;
- this.check_queryEditorTab.BackColor = System.Drawing.Color.Transparent;
- this.check_queryEditorTab.Location = new System.Drawing.Point(81, 60);
- this.check_queryEditorTab.Name = "check_queryEditorTab";
- this.check_queryEditorTab.Size = new System.Drawing.Size(241, 17);
- 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.");
- this.check_queryEditorTab.UseVisualStyleBackColor = false;
- this.check_queryEditorTab.CheckedChanged += new System.EventHandler(this.check_queryEditorTab_CheckedChanged);
- //
- // label32
- //
- this.label32.Anchor = System.Windows.Forms.AnchorStyles.Right;
- this.label32.AutoSize = true;
- this.label32.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label32.Location = new System.Drawing.Point(13, 275);
- this.label32.Name = "label32";
- this.label32.Size = new System.Drawing.Size(33, 13);
- this.label32.TabIndex = 89;
- this.label32.Text = "DVD:";
- //
- // drop_x264step
- //
- this.drop_x264step.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drop_x264step.FormattingEnabled = true;
- this.drop_x264step.Items.AddRange(new object[] {
- "1.0",
- "0.50",
- "0.25",
- "0.20"});
- this.drop_x264step.Location = new System.Drawing.Point(292, 237);
- this.drop_x264step.Name = "drop_x264step";
- this.drop_x264step.Size = new System.Drawing.Size(85, 21);
- this.drop_x264step.TabIndex = 86;
- this.ToolTip.SetToolTip(this.drop_x264step, "Quality Slider Control Granularity for x264 encoding only.");
- this.drop_x264step.SelectedIndexChanged += new System.EventHandler(this.x264step_SelectedIndexChanged);
- //
- // label30
- //
- this.label30.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.label30.AutoSize = true;
- this.label30.Location = new System.Drawing.Point(78, 240);
- this.label30.Name = "label30";
- this.label30.Size = new System.Drawing.Size(189, 13);
- this.label30.TabIndex = 87;
- this.label30.Text = "Constant quality fractional granularity";
- //
- // check_disablePresetNotification
- //
- this.check_disablePresetNotification.Anchor = System.Windows.Forms.AnchorStyles.Left;
- this.check_disablePresetNotification.AutoSize = true;
- this.check_disablePresetNotification.BackColor = System.Drawing.Color.Transparent;
- this.check_disablePresetNotification.Location = new System.Drawing.Point(81, 106);
- this.check_disablePresetNotification.Name = "check_disablePresetNotification";
- this.check_disablePresetNotification.Size = new System.Drawing.Size(222, 17);
- 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.");
- this.check_disablePresetNotification.UseVisualStyleBackColor = false;
- this.check_disablePresetNotification.CheckedChanged += new System.EventHandler(this.check_disablePresetNotification_CheckedChanged);
- //
- // label28
- //
- this.label28.Anchor = System.Windows.Forms.AnchorStyles.Right;
- this.label28.AutoSize = true;
- this.label28.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label28.Location = new System.Drawing.Point(8, 240);
- this.label28.Name = "label28";
- this.label28.Size = new System.Drawing.Size(38, 13);
- this.label28.TabIndex = 85;
- this.label28.Text = "x264:";
- //
- // label8
- //
- this.label8.AutoSize = true;
- this.label8.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label8.Location = new System.Drawing.Point(51, 11);
- this.label8.Name = "label8";
- this.label8.Size = new System.Drawing.Size(50, 13);
- this.label8.TabIndex = 61;
- this.label8.Text = "Options";
- //
- // ToolTip
- //
- this.ToolTip.Active = false;
- this.ToolTip.AutomaticDelay = 1000;
- this.ToolTip.AutoPopDelay = 15000;
- this.ToolTip.InitialDelay = 1000;
- this.ToolTip.ReshowDelay = 200;
- this.ToolTip.ToolTipIcon = System.Windows.Forms.ToolTipIcon.Info;
- this.ToolTip.ToolTipTitle = "Tooltip";
- //
- // textBox1
- //
- this.textBox1.Location = new System.Drawing.Point(199, 198);
- this.textBox1.Name = "textBox1";
- 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.");
- //
- // textBox2
- //
- this.textBox2.Location = new System.Drawing.Point(199, 171);
- this.textBox2.Name = "textBox2";
- this.textBox2.Size = new System.Drawing.Size(181, 20);
- this.textBox2.TabIndex = 76;
- this.ToolTip.SetToolTip(this.textBox2, "The default location where auto named files are stored.");
- //
- // checkBox1
- //
- this.checkBox1.AutoSize = true;
- this.checkBox1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox1.Location = new System.Drawing.Point(114, 148);
- this.checkBox1.Name = "checkBox1";
- this.checkBox1.Size = new System.Drawing.Size(206, 17);
- this.checkBox1.TabIndex = 72;
- this.checkBox1.Text = "Automatically name output files";
- this.ToolTip.SetToolTip(this.checkBox1, "Automatically name output files");
- this.checkBox1.UseVisualStyleBackColor = true;
- //
- // checkBox2
- //
- this.checkBox2.AutoSize = true;
- this.checkBox2.BackColor = System.Drawing.Color.Transparent;
- this.checkBox2.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox2.Location = new System.Drawing.Point(114, 41);
- this.checkBox2.Name = "checkBox2";
- this.checkBox2.Size = new System.Drawing.Size(135, 17);
- this.checkBox2.TabIndex = 70;
- this.checkBox2.Text = "Enable GUI tooltips";
- this.ToolTip.SetToolTip(this.checkBox2, "Enable the built in tooltips for gui controls.");
- this.checkBox2.UseVisualStyleBackColor = false;
- //
- // checkBox3
- //
- this.checkBox3.AutoSize = true;
- this.checkBox3.BackColor = System.Drawing.Color.Transparent;
- this.checkBox3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox3.Location = new System.Drawing.Point(114, 18);
- this.checkBox3.Name = "checkBox3";
- this.checkBox3.Size = new System.Drawing.Size(131, 17);
- 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.");
- this.checkBox3.UseVisualStyleBackColor = false;
- //
- // checkBox4
- //
- this.checkBox4.AutoSize = true;
- this.checkBox4.BackColor = System.Drawing.Color.Transparent;
- this.checkBox4.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox4.Location = new System.Drawing.Point(114, 64);
- this.checkBox4.Name = "checkBox4";
- this.checkBox4.Size = new System.Drawing.Size(166, 17);
- this.checkBox4.TabIndex = 69;
- this.checkBox4.Text = "Load my default settings";
- this.ToolTip.SetToolTip(this.checkBox4, "Loads the users default settings rather than the Normal preset.");
- this.checkBox4.UseVisualStyleBackColor = false;
- //
- // comboBox1
- //
- this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.comboBox1.FormattingEnabled = true;
- this.comboBox1.Items.AddRange(new object[] {
- "Do Nothing",
- "Shutdown",
- "Suspend",
- "Hibernate",
- "Lock System",
- "Log Off",
- "Quit HandBrake"});
- this.comboBox1.Location = new System.Drawing.Point(114, 100);
- this.comboBox1.Name = "comboBox1";
- this.comboBox1.Size = new System.Drawing.Size(166, 21);
- this.comboBox1.TabIndex = 43;
- this.ToolTip.SetToolTip(this.comboBox1, "Performs an action when an encode or queue has completed.");
- //
- // textBox3
- //
- this.textBox3.Location = new System.Drawing.Point(199, 198);
- this.textBox3.Name = "textBox3";
- 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.");
- //
- // textBox4
- //
- this.textBox4.Location = new System.Drawing.Point(199, 171);
- this.textBox4.Name = "textBox4";
- this.textBox4.Size = new System.Drawing.Size(181, 20);
- this.textBox4.TabIndex = 76;
- this.ToolTip.SetToolTip(this.textBox4, "The default location where auto named files are stored.");
- //
- // checkBox5
- //
- this.checkBox5.AutoSize = true;
- this.checkBox5.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox5.Location = new System.Drawing.Point(114, 148);
- this.checkBox5.Name = "checkBox5";
- this.checkBox5.Size = new System.Drawing.Size(206, 17);
- this.checkBox5.TabIndex = 72;
- this.checkBox5.Text = "Automatically name output files";
- this.ToolTip.SetToolTip(this.checkBox5, "Automatically name output files");
- this.checkBox5.UseVisualStyleBackColor = true;
- //
- // checkBox6
- //
- this.checkBox6.AutoSize = true;
- this.checkBox6.BackColor = System.Drawing.Color.Transparent;
- this.checkBox6.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox6.Location = new System.Drawing.Point(114, 41);
- this.checkBox6.Name = "checkBox6";
- this.checkBox6.Size = new System.Drawing.Size(135, 17);
- this.checkBox6.TabIndex = 70;
- this.checkBox6.Text = "Enable GUI tooltips";
- this.ToolTip.SetToolTip(this.checkBox6, "Enable the built in tooltips for gui controls.");
- this.checkBox6.UseVisualStyleBackColor = false;
- //
- // checkBox7
- //
- this.checkBox7.AutoSize = true;
- this.checkBox7.BackColor = System.Drawing.Color.Transparent;
- this.checkBox7.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox7.Location = new System.Drawing.Point(114, 18);
- this.checkBox7.Name = "checkBox7";
- this.checkBox7.Size = new System.Drawing.Size(131, 17);
- 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.");
- this.checkBox7.UseVisualStyleBackColor = false;
- //
- // checkBox8
- //
- this.checkBox8.AutoSize = true;
- this.checkBox8.BackColor = System.Drawing.Color.Transparent;
- this.checkBox8.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.checkBox8.Location = new System.Drawing.Point(114, 64);
- this.checkBox8.Name = "checkBox8";
- this.checkBox8.Size = new System.Drawing.Size(166, 17);
- this.checkBox8.TabIndex = 69;
- this.checkBox8.Text = "Load my default settings";
- this.ToolTip.SetToolTip(this.checkBox8, "Loads the users default settings rather than the Normal preset.");
- this.checkBox8.UseVisualStyleBackColor = false;
- //
- // comboBox2
- //
- this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox2.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.comboBox2.FormattingEnabled = true;
- this.comboBox2.Items.AddRange(new object[] {
- "Do Nothing",
- "Shutdown",
- "Suspend",
- "Hibernate",
- "Lock System",
- "Log Off",
- "Quit HandBrake"});
- this.comboBox2.Location = new System.Drawing.Point(114, 100);
- this.comboBox2.Name = "comboBox2";
- this.comboBox2.Size = new System.Drawing.Size(166, 21);
- this.comboBox2.TabIndex = 43;
- this.ToolTip.SetToolTip(this.comboBox2, "Performs an action when an encode or queue has completed.");
- //
- // label16
- //
- this.label16.AutoSize = true;
- this.label16.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label16.Location = new System.Drawing.Point(197, 222);
- this.label16.Name = "label16";
- this.label16.Size = new System.Drawing.Size(242, 12);
- this.label16.TabIndex = 81;
- this.label16.Text = "Available Options: {source} {title} {chapters}";
- //
- // label17
- //
- this.label17.AutoSize = true;
- this.label17.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label17.Location = new System.Drawing.Point(111, 201);
- this.label17.Name = "label17";
- this.label17.Size = new System.Drawing.Size(52, 13);
- this.label17.TabIndex = 80;
- this.label17.Text = "Format:";
- //
- // button1
- //
- this.button1.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.button1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.button1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.button1.Location = new System.Drawing.Point(386, 171);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(68, 22);
- this.button1.TabIndex = 78;
- this.button1.Text = "Browse";
- this.button1.UseVisualStyleBackColor = true;
- //
- // label18
- //
- this.label18.AutoSize = true;
- this.label18.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label18.Location = new System.Drawing.Point(111, 174);
- this.label18.Name = "label18";
- this.label18.Size = new System.Drawing.Size(82, 13);
- this.label18.TabIndex = 77;
- this.label18.Text = "Default Path:";
- //
- // label19
- //
- this.label19.AutoSize = true;
- this.label19.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label19.Location = new System.Drawing.Point(10, 149);
- this.label19.Name = "label19";
- this.label19.Size = new System.Drawing.Size(86, 13);
- this.label19.TabIndex = 71;
- this.label19.Text = "Output files:";
- //
- // label20
- //
- this.label20.AutoSize = true;
- this.label20.BackColor = System.Drawing.Color.Transparent;
- this.label20.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label20.Location = new System.Drawing.Point(21, 19);
- this.label20.Name = "label20";
- this.label20.Size = new System.Drawing.Size(75, 13);
- this.label20.TabIndex = 67;
- this.label20.Text = "At Launch:";
- //
- // label21
- //
- this.label21.AutoSize = true;
- this.label21.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label21.Location = new System.Drawing.Point(12, 103);
- this.label21.Name = "label21";
- this.label21.Size = new System.Drawing.Size(84, 13);
- this.label21.TabIndex = 54;
- this.label21.Text = "When Done:";
- //
- // label22
- //
- this.label22.AutoSize = true;
- this.label22.Font = new System.Drawing.Font("Verdana", 6.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label22.Location = new System.Drawing.Point(197, 222);
- this.label22.Name = "label22";
- this.label22.Size = new System.Drawing.Size(242, 12);
- this.label22.TabIndex = 81;
- this.label22.Text = "Available Options: {source} {title} {chapters}";
- //
- // label23
- //
- this.label23.AutoSize = true;
- this.label23.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label23.Location = new System.Drawing.Point(111, 201);
- this.label23.Name = "label23";
- this.label23.Size = new System.Drawing.Size(52, 13);
- this.label23.TabIndex = 80;
- this.label23.Text = "Format:";
- //
- // button2
- //
- this.button2.FlatAppearance.BorderColor = System.Drawing.Color.Black;
- this.button2.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.button2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0)))));
- this.button2.Location = new System.Drawing.Point(386, 171);
- this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(68, 22);
- this.button2.TabIndex = 78;
- this.button2.Text = "Browse";
- this.button2.UseVisualStyleBackColor = true;
- //
- // label24
- //
- this.label24.AutoSize = true;
- this.label24.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label24.Location = new System.Drawing.Point(111, 174);
- this.label24.Name = "label24";
- this.label24.Size = new System.Drawing.Size(82, 13);
- this.label24.TabIndex = 77;
- this.label24.Text = "Default Path:";
- //
- // label25
- //
- this.label25.AutoSize = true;
- this.label25.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label25.Location = new System.Drawing.Point(10, 149);
- this.label25.Name = "label25";
- this.label25.Size = new System.Drawing.Size(86, 13);
- this.label25.TabIndex = 71;
- this.label25.Text = "Output files:";
- //
- // label26
- //
- this.label26.AutoSize = true;
- this.label26.BackColor = System.Drawing.Color.Transparent;
- this.label26.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label26.Location = new System.Drawing.Point(21, 19);
- this.label26.Name = "label26";
- this.label26.Size = new System.Drawing.Size(75, 13);
- this.label26.TabIndex = 67;
- this.label26.Text = "At Launch:";
- //
- // label27
- //
- this.label27.AutoSize = true;
- this.label27.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label27.Location = new System.Drawing.Point(12, 103);
- this.label27.Name = "label27";
- this.label27.Size = new System.Drawing.Size(84, 13);
- this.label27.TabIndex = 54;
- this.label27.Text = "When Done:";
- //
- // openExecutable
- //
- this.openExecutable.DefaultExt = "exe";
- this.openExecutable.Filter = "exe|*.exe|bat|*.bat";
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.label37);
- this.panel1.Controls.Add(this.panel2);
- this.panel1.Controls.Add(this.label8);
- this.panel1.Controls.Add(this.pictureBox2);
- this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
- this.panel1.Location = new System.Drawing.Point(0, 0);
- this.panel1.Margin = new System.Windows.Forms.Padding(0);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(614, 65);
- this.panel1.TabIndex = 62;
- //
- // label37
- //
- this.label37.AutoSize = true;
- this.label37.Location = new System.Drawing.Point(51, 27);
- this.label37.Margin = new System.Windows.Forms.Padding(3);
- this.label37.Name = "label37";
- this.label37.Size = new System.Drawing.Size(202, 13);
- this.label37.TabIndex = 105;
- this.label37.Text = "Configure the HandBrake user interface.";
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.SystemColors.Control;
- this.panel2.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.panel2.Location = new System.Drawing.Point(0, 55);
- this.panel2.MaximumSize = new System.Drawing.Size(0, 10);
- this.panel2.MinimumSize = new System.Drawing.Size(0, 10);
- this.panel2.Name = "panel2";
- 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;
- this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
- this.AutoSize = true;
- this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.ClientSize = new System.Drawing.Size(614, 535);
- this.Controls.Add(this.panel1);
- this.Controls.Add(this.btn_close);
- this.Controls.Add(this.tab_options);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "frmOptions";
- this.ShowIcon = false;
- this.ShowInTaskbar = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
- this.Text = "Options";
- this.tab_options.ResumeLayout(false);
- this.tab_general.ResumeLayout(false);
- this.tab_general.PerformLayout();
- this.tab_outputFiles.ResumeLayout(false);
- this.tab_outputFiles.PerformLayout();
- this.tab_picture.ResumeLayout(false);
- this.tab_picture.PerformLayout();
- this.tab_audio_sub.ResumeLayout(false);
- this.tab_audio_sub.PerformLayout();
- this.audioSelectionPanel.ResumeLayout(false);
- this.audioSelectionPanel.PerformLayout();
- this.groupBox2.ResumeLayout(false);
- this.groupBox2.PerformLayout();
- this.tab_cli.ResumeLayout(false);
- this.tab_cli.PerformLayout();
- this.tab_advanced.ResumeLayout(false);
- this.tab_advanced.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.ud_minTitleLength)).EndInit();
- this.panel1.ResumeLayout(false);
- this.panel1.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- internal System.Windows.Forms.Button btn_close;
- internal System.Windows.Forms.ComboBox drp_completeOption;
- private System.Windows.Forms.TabControl tab_options;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.TabPage tab_cli;
- private System.Windows.Forms.Label label8;
- private System.Windows.Forms.PictureBox pictureBox2;
- private System.Windows.Forms.TabPage tab_general;
- private System.Windows.Forms.FolderBrowserDialog pathFinder;
- internal System.Windows.Forms.Label Label4;
- internal System.Windows.Forms.CheckBox check_tooltip;
- internal System.Windows.Forms.CheckBox check_updateCheck;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.TabPage tab_advanced;
- private System.Windows.Forms.Label label6;
- private System.Windows.Forms.Label label13;
- internal System.Windows.Forms.Label label10;
- private System.Windows.Forms.TextBox text_an_path;
- internal System.Windows.Forms.CheckBox check_autoNaming;
- private System.Windows.Forms.Label label12;
- internal System.Windows.Forms.ToolTip ToolTip;
- private System.Windows.Forms.TabPage tab_picture;
- internal System.Windows.Forms.Label label5;
- private System.Windows.Forms.TextBox txt_autoNameFormat;
- private System.Windows.Forms.Label label7;
- private System.Windows.Forms.Label label9;
- internal System.Windows.Forms.Button btn_saveLog;
- internal System.Windows.Forms.Label label14;
- private System.Windows.Forms.TextBox text_logPath;
- internal System.Windows.Forms.CheckBox check_saveLogWithVideo;
- internal System.Windows.Forms.Button btn_vlcPath;
- private System.Windows.Forms.TextBox txt_vlcPath;
- private System.Windows.Forms.Label label29;
- private System.Windows.Forms.Label label16;
- internal System.Windows.Forms.Label label17;
- private System.Windows.Forms.TextBox textBox1;
- internal System.Windows.Forms.Button button1;
- internal System.Windows.Forms.Label label18;
- private System.Windows.Forms.TextBox textBox2;
- internal System.Windows.Forms.CheckBox checkBox1;
- private System.Windows.Forms.Label label19;
- internal System.Windows.Forms.CheckBox checkBox2;
- internal System.Windows.Forms.CheckBox checkBox3;
- internal System.Windows.Forms.CheckBox checkBox4;
- private System.Windows.Forms.Label label20;
- private System.Windows.Forms.Label label21;
- internal System.Windows.Forms.ComboBox comboBox1;
- private System.Windows.Forms.Label label22;
- internal System.Windows.Forms.Label label23;
- private System.Windows.Forms.TextBox textBox3;
- internal System.Windows.Forms.Button button2;
- internal System.Windows.Forms.Label label24;
- private System.Windows.Forms.TextBox textBox4;
- internal System.Windows.Forms.CheckBox checkBox5;
- private System.Windows.Forms.Label label25;
- internal System.Windows.Forms.CheckBox checkBox6;
- internal System.Windows.Forms.CheckBox checkBox7;
- internal System.Windows.Forms.CheckBox checkBox8;
- private System.Windows.Forms.Label label26;
- private System.Windows.Forms.Label label27;
- internal System.Windows.Forms.ComboBox comboBox2;
- private System.Windows.Forms.OpenFileDialog openExecutable;
- internal System.Windows.Forms.CheckBox check_mainMinimize;
- internal System.Windows.Forms.CheckBox check_queryEditorTab;
- private System.Windows.Forms.Label label30;
- internal System.Windows.Forms.ComboBox drop_x264step;
- private System.Windows.Forms.Label label28;
- internal System.Windows.Forms.ComboBox cb_logVerboseLvl;
- internal System.Windows.Forms.Label label3;
- internal System.Windows.Forms.CheckBox check_dvdnav;
- private System.Windows.Forms.Label label32;
- internal System.Windows.Forms.CheckBox check_logsInSpecifiedLocation;
- internal System.Windows.Forms.CheckBox check_disablePresetNotification;
- internal System.Windows.Forms.CheckBox check_trayStatusAlerts;
- private System.Windows.Forms.Button btn_viewLogs;
- private System.Windows.Forms.Button btn_clearLogs;
- internal System.Windows.Forms.ComboBox drop_updateCheckDays;
- internal System.Windows.Forms.ComboBox drp_Priority;
- private System.Windows.Forms.CheckBox check_promptOnUnmatchingQueries;
- private System.Windows.Forms.TabPage tab_audio_sub;
- internal System.Windows.Forms.ComboBox drop_preferredLangAudio;
- private System.Windows.Forms.Label label31;
- private System.Windows.Forms.Label label15;
- internal System.Windows.Forms.Button btn_browse;
- internal System.Windows.Forms.CheckBox check_growlEncode;
- internal System.Windows.Forms.CheckBox check_GrowlQueue;
- internal System.Windows.Forms.ComboBox drop_previewScanCount;
- private System.Windows.Forms.Label label33;
- internal System.Windows.Forms.CheckBox check_clearOldLogs;
- internal System.Windows.Forms.CheckBox check_showCliForInGUIEncode;
- internal System.Windows.Forms.CheckBox check_TitleCase;
- internal System.Windows.Forms.CheckBox check_removeUnderscores;
- internal System.Windows.Forms.CheckBox check_preventSleep;
- private System.Windows.Forms.Label label11;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.Panel panel2;
- private System.Windows.Forms.Label label34;
- internal System.Windows.Forms.Label label35;
- internal System.Windows.Forms.ComboBox cb_mp4FileMode;
- private System.Windows.Forms.Label label36;
- private System.Windows.Forms.Label label37;
- internal System.Windows.Forms.Button btn_SendFileToPath;
- private System.Windows.Forms.Label lbl_sendFileTo;
- internal System.Windows.Forms.CheckBox check_sendFileTo;
- private System.Windows.Forms.TabPage tab_outputFiles;
- private System.Windows.Forms.Label label38;
- private System.Windows.Forms.TextBox txt_SendFileArgs;
- 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.GroupBox groupBox2;
- private System.Windows.Forms.ComboBox cb_subtitleMode;
- private System.Windows.Forms.ComboBox cb_audioMode;
- private System.Windows.Forms.Label label42;
- private System.Windows.Forms.CheckBox check_AddOnlyOneAudioPerLanguage;
- private System.Windows.Forms.CheckBox check_AddCCTracks;
- private System.Windows.Forms.Label label43;
- private System.Windows.Forms.Label label44;
- private System.Windows.Forms.Label label41;
- private System.Windows.Forms.Label label45;
- private System.Windows.Forms.Panel audioSelectionPanel;
- private System.Windows.Forms.Label label46;
- private System.Windows.Forms.Label label47;
- private System.Windows.Forms.ListBox listBox_selectedLanguages;
- private System.Windows.Forms.Button button_moveLanguageDown;
- private System.Windows.Forms.ListBox listBox_availableLanguages;
- private System.Windows.Forms.Button button_moveLanguageUp;
- private System.Windows.Forms.Label label39;
- private System.Windows.Forms.NumericUpDown ud_minTitleLength;
- private System.Windows.Forms.Label label40;
- private System.Windows.Forms.Label label48;
- internal System.Windows.Forms.ComboBox drop_preferredLangSubtitles;
- private System.Windows.Forms.CheckBox check_advPassthruOpts;
- private System.Windows.Forms.Label label49;
- }
-} \ No newline at end of file
diff --git a/win/CS/frmOptions.cs b/win/CS/frmOptions.cs
deleted file mode 100644
index 399e2d594..000000000
--- a/win/CS/frmOptions.cs
+++ /dev/null
@@ -1,735 +0,0 @@
-/* frmOptions.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Collections.Generic;
- using System.Collections.Specialized;
- using System.Diagnostics;
- using System.Globalization;
- using System.IO;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
-
- using Handbrake.Properties;
-
- /// <summary>
- /// The Options Window
- /// </summary>
- public partial class frmOptions : Form
- {
- private readonly frmMain mainWindow;
-
- private readonly IUserSettingService userSettingService = ServiceManager.UserSettingService;
- private bool optionsWindowLoading = true;
-
- public frmOptions(frmMain mw)
- {
- InitializeComponent();
- mainWindow = mw;
-
- IDictionary<string, string> langList = LanguageUtilities.MapLanguages();
-
- foreach (string selectedItem in this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.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_preferredLangAudio.Items.Add(item);
- drop_preferredLangSubtitles.Items.Add(item);
-
- // In the available languages should be no "Any" and no selected language.
- if ((item != "Any") && (!this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages).Contains(item)))
- {
- listBox_availableLanguages.Items.Add(item);
- }
- }
-
- // #############################
- // General
- // #############################
-
- // Enable Tooltips.
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.TooltipEnable))
- {
- check_tooltip.CheckState = CheckState.Checked;
- ToolTip.Active = true;
- }
-
- // Update Check
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.UpdateStatus))
- check_updateCheck.CheckState = CheckState.Checked;
-
- // Days between update checks
- switch (this.userSettingService.GetUserSetting<int>(UserSettingConstants.DaysBetweenUpdateCheck))
- {
- case 1:
- drop_updateCheckDays.SelectedIndex = 0;
- break;
- case 7:
- drop_updateCheckDays.SelectedIndex = 1;
- break;
- case 30:
- drop_updateCheckDays.SelectedIndex = 2;
- break;
- }
-
- // On Encode Completeion Action
- drp_completeOption.Text = userSettingService.GetUserSetting<string>("WhenCompleteAction");
-
- // Growl.
- if (userSettingService.GetUserSetting<bool>(HandBrake.ApplicationServices.ASUserSettingConstants.GrowlEncode))
- check_growlEncode.CheckState = CheckState.Checked;
-
- if (userSettingService.GetUserSetting<bool>(HandBrake.ApplicationServices.ASUserSettingConstants.GrowlQueue))
- check_GrowlQueue.CheckState = CheckState.Checked;
-
- check_sendFileTo.Checked = this.userSettingService.GetUserSetting<bool>(HandBrake.ApplicationServices.ASUserSettingConstants.SendFile);
- lbl_sendFileTo.Text = Path.GetFileNameWithoutExtension(this.userSettingService.GetUserSetting<string>(HandBrake.ApplicationServices.ASUserSettingConstants.SendFileTo));
- txt_SendFileArgs.Text = this.userSettingService.GetUserSetting<string>(HandBrake.ApplicationServices.ASUserSettingConstants.SendFileToArgs);
-
- // #############################
- // Output Settings
- // #############################
-
- // Enable auto naming feature.)
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNaming))
- check_autoNaming.CheckState = CheckState.Checked;
-
- // Store the auto name path
- text_an_path.Text = this.userSettingService.GetUserSetting<string>(UserSettingConstants.AutoNamePath);
- if (text_an_path.Text == string.Empty)
- text_an_path.Text = "Click 'Browse' to set the default location";
-
- // Store auto name format
- txt_autoNameFormat.Text = this.userSettingService.GetUserSetting<string>(UserSettingConstants.AutoNameFormat);
-
- // Use iPod/iTunes friendly .m4v extension for MP4 files.
- cb_mp4FileMode.SelectedIndex = this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v);
-
- // Remove Underscores
- check_removeUnderscores.Checked = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNameRemoveUnderscore);
-
- // Title case
- check_TitleCase.Checked = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNameTitleCase);
-
- // #############################
- // Picture Tab
- // #############################
-
- // VLC Path
- txt_vlcPath.Text = this.userSettingService.GetUserSetting<string>(UserSettingConstants.VLC_Path);
-
- // #############################
- // Audio and Subtitles Tab
- // #############################
-
- drop_preferredLangAudio.SelectedItem = this.userSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguage);
- drop_preferredLangSubtitles.SelectedItem = this.userSettingService.GetUserSetting<string>(UserSettingConstants.NativeLanguageForSubtitles);
-
- //if (this.userSettingService.GetUserSetting<int>(UserSettingConstants.DubMode) != 255)
- //{
- // switch (this.userSettingService.GetUserSetting<int>(UserSettingConstants.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;
- // }
- //}
-
- cb_audioMode.SelectedIndex = this.userSettingService.GetUserSetting<int>(UserSettingConstants.DubModeAudio);
- cb_subtitleMode.SelectedIndex = this.userSettingService.GetUserSetting<int>(UserSettingConstants.DubModeSubtitle);
-
- check_AddOnlyOneAudioPerLanguage.Checked =
- this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AddOnlyOneAudioPerLanguage);
-
- check_AddCCTracks.Checked = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.UseClosedCaption);
-
- check_advPassthruOpts.Checked =
- this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowAdvancedAudioPassthruOpts);
-
- // #############################
- // CLI
- // #############################
-
- // Priority level for encodes
- drp_Priority.Text = userSettingService.GetUserSetting<string>(ASUserSettingConstants.ProcessPriority);
-
- check_preventSleep.Checked = userSettingService.GetUserSetting<bool>(ASUserSettingConstants.PreventSleep);
-
- // Log Verbosity Level
- cb_logVerboseLvl.SelectedIndex = userSettingService.GetUserSetting<int>(ASUserSettingConstants.Verbosity);
-
- // Save logs in the same directory as encoded files
- if (userSettingService.GetUserSetting<bool>(ASUserSettingConstants.SaveLogWithVideo))
- check_saveLogWithVideo.CheckState = CheckState.Checked;
-
- // Save Logs in a specified path
- if (userSettingService.GetUserSetting<bool>(ASUserSettingConstants.SaveLogToCopyDirectory))
- check_logsInSpecifiedLocation.CheckState = CheckState.Checked;
-
- // The saved log path
- text_logPath.Text = userSettingService.GetUserSetting<string>(ASUserSettingConstants.SaveLogCopyDirectory);
-
- check_clearOldLogs.Checked = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ClearOldLogs);
-
- // #############################
- // Advanced
- // #############################
-
- // Minimise to Tray
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.TrayIconAlerts))
- check_trayStatusAlerts.CheckState = CheckState.Checked;
-
- // Tray Balloon popups
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.MainWindowMinimize))
- check_mainMinimize.CheckState = CheckState.Checked;
-
- // Enable / Disable Query editor tab
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.QueryEditorTab))
- check_queryEditorTab.CheckState = CheckState.Checked;
- check_promptOnUnmatchingQueries.Enabled = check_queryEditorTab.Checked;
-
- // Prompt on inconsistant queries
- check_promptOnUnmatchingQueries.Checked = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.PromptOnUnmatchingQueries);
-
- // Preset update notification
- if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.PresetNotification))
- check_disablePresetNotification.CheckState = CheckState.Checked;
-
- // Show CLI Window
- check_showCliForInGUIEncode.Checked = userSettingService.GetUserSetting<bool>(ASUserSettingConstants.ShowCLI);
-
- // Set the preview count
- drop_previewScanCount.SelectedItem = this.userSettingService.GetUserSetting<int>(ASUserSettingConstants.PreviewScanCount).ToString();
-
- // x264 step
- string step = userSettingService.GetUserSetting<double>(ASUserSettingConstants.X264Step).ToString(CultureInfo.InvariantCulture);
- switch (step)
- {
- case "1":
- drop_x264step.SelectedIndex = 0;
- break;
- case "0.5":
- drop_x264step.SelectedIndex = 1;
- break;
- case "0.25":
- drop_x264step.SelectedIndex = 2;
- break;
- case "0.2":
- drop_x264step.SelectedIndex = 3;
- break;
- }
-
- // Min Title Length
- ud_minTitleLength.Value = this.userSettingService.GetUserSetting<int>(ASUserSettingConstants.MinScanDuration);
-
- // Use Experimental dvdnav
- if (userSettingService.GetUserSetting<bool>(ASUserSettingConstants.DisableLibDvdNav))
- check_dvdnav.CheckState = CheckState.Checked;
-
- optionsWindowLoading = false;
- }
-
- #region General
-
- private void check_updateCheck_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.UpdateStatus, check_updateCheck.Checked);
- }
-
- private void drop_updateCheckDays_SelectedIndexChanged(object sender, EventArgs e)
- {
- switch (drop_updateCheckDays.SelectedIndex)
- {
- case 0:
- this.userSettingService.SetUserSetting(UserSettingConstants.DaysBetweenUpdateCheck, 1);
- break;
- case 1:
- this.userSettingService.SetUserSetting(UserSettingConstants.DaysBetweenUpdateCheck, 7);
- break;
- case 2:
- this.userSettingService.SetUserSetting(UserSettingConstants.DaysBetweenUpdateCheck, 30);
- break;
- }
- }
-
- private void check_tooltip_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.TooltipEnable, check_tooltip.Checked);
- }
-
- private void drp_completeOption_SelectedIndexChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.WhenCompleteAction, drp_completeOption.Text);
- }
-
- private void check_GrowlQueue_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.GrowlQueue, check_GrowlQueue.Checked);
- }
-
- private void check_growlEncode_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.GrowlEncode, check_growlEncode.Checked);
- }
-
- private void btn_SendFileToPath_Click(object sender, EventArgs e)
- {
- openExecutable.ShowDialog();
- if (!string.IsNullOrEmpty(openExecutable.FileName))
- {
- this.userSettingService.SetUserSetting(ASUserSettingConstants.SendFileTo, openExecutable.FileName);
- lbl_sendFileTo.Text = Path.GetFileNameWithoutExtension(openExecutable.FileName);
- }
- }
-
- private void check_sendFileTo_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(ASUserSettingConstants.SendFile, check_sendFileTo.Checked);
- }
-
- private void txt_SendFileArgs_TextChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(ASUserSettingConstants.SendFileToArgs, txt_SendFileArgs.Text);
- }
-
- #endregion
-
- #region Output File
- private void check_autoNaming_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNaming, check_autoNaming.Checked);
- }
-
- private void txt_autoNameFormat_TextChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNameFormat, txt_autoNameFormat.Text);
- }
-
- private void btn_browse_Click(object sender, EventArgs e)
- {
- pathFinder.ShowDialog();
- text_an_path.Text = pathFinder.SelectedPath;
- }
-
- private void text_an_path_TextChanged(object sender, EventArgs e)
- {
- if (text_an_path.Text == string.Empty)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNamePath, string.Empty);
- text_an_path.Text = "Click 'Browse' to set the default location";
- }
- else
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNamePath, text_an_path.Text);
-
- if (text_an_path.Text.ToLower() == "{source_path}" && !optionsWindowLoading)
- {
- MessageBox.Show(
- "Be careful with this feature. Make sure you can write to the same folder as the source! \n\n If you are encoding from a DVD, do not use this feature as HandBrake will not be able to write to the DVD!",
- "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- if (text_an_path.Text.ToLower().Contains("{source_path}") && !text_an_path.Text.StartsWith("{source_path}"))
- {
- MessageBox.Show("Note you can not use the {source_path} within a path. {source_path} is the full source file path.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
- }
-
- private void cb_mp4FileMode_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.UseM4v, cb_mp4FileMode.SelectedIndex);
- }
-
- private void check_removeUnderscores_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNameRemoveUnderscore, check_removeUnderscores.Checked);
- }
-
- private void check_TitleCase_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AutoNameTitleCase, check_TitleCase.Checked);
- }
-
- #endregion
-
- #region Picture
-
- private void btn_vlcPath_Click(object sender, EventArgs e)
- {
- openExecutable.ShowDialog();
- if (openExecutable.FileName != string.Empty)
- txt_vlcPath.Text = openExecutable.FileName;
- }
-
- private void txt_vlcPath_TextChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.VLC_Path, txt_vlcPath.Text);
- }
-
- #endregion
-
- #region Audio and Subtitles
-
- private void drop_preferredLang_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.NativeLanguage, drop_preferredLangAudio.SelectedItem.ToString());
- }
-
- private void drop_preferredLangSubtitles_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.NativeLanguageForSubtitles, drop_preferredLangSubtitles.SelectedItem.ToString());
- }
-
- 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);
-
- StringCollection languages = this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages);
- if (languages.Contains(item))
- {
- languages.Remove(item);
- this.userSettingService.SetUserSetting(UserSettingConstants.SelectedLanguages, languages);
- }
- }
- }
- }
-
- 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);
-
- StringCollection languages = this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages);
- languages.AddRange(movedItems);
- this.userSettingService.SetUserSetting(UserSettingConstants.SelectedLanguages, languages);
-
- 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);
-
- StringCollection languages = this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages);
- if (languages.Contains(item))
- {
- languages.Remove(item);
- this.userSettingService.SetUserSetting(UserSettingConstants.SelectedLanguages, languages);
- }
- }
- }
- }
-
- 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.
- StringCollection languages = this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages);
- languages.Remove(lvitem);
- languages.Insert(ilevel - 1, lvitem);
- this.userSettingService.SetUserSetting(UserSettingConstants.SelectedLanguages, languages);
- }
- }
- }
- }
-
- 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.
- StringCollection languages = this.userSettingService.GetUserSetting<StringCollection>(UserSettingConstants.SelectedLanguages);
- languages.Remove(lvitem);
- languages.Insert(ilevel + 1, lvitem);
- this.userSettingService.SetUserSetting(UserSettingConstants.SelectedLanguages, languages);
- }
- }
- }
- }
-
- 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 check_AddOnlyOneAudioPerLanguage_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.AddOnlyOneAudioPerLanguage, check_AddOnlyOneAudioPerLanguage.Checked);
- }
-
- private void check_AddCCTracks_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.UseClosedCaption, check_AddCCTracks.Checked);
- }
-
- private void cb_audioMode_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.DubModeAudio, cb_audioMode.SelectedIndex);
- }
-
- private void cb_subtitleMode_SelectedIndexChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.DubModeSubtitle, cb_subtitleMode.SelectedIndex);
- }
-
- private void check_advPassthruOpts_CheckedChanged(object sender, EventArgs e)
- {
- this.userSettingService.SetUserSetting(UserSettingConstants.ShowAdvancedAudioPassthruOpts, check_advPassthruOpts.Checked);
- }
-
- #endregion
-
- #region CLI
-
- private void drp_Priority_SelectedIndexChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.ProcessPriority, drp_Priority.Text);
- }
-
- private void check_preventSleep_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.PreventSleep, check_preventSleep.Checked);
- }
-
- private void cb_logVerboseLvl_SelectedIndexChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.Verbosity, cb_logVerboseLvl.SelectedIndex);
- }
-
- private void check_saveLogWithVideo_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.SaveLogWithVideo, check_saveLogWithVideo.Checked);
- }
-
- private void check_logsInSpecifiedLocation_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.SaveLogToCopyDirectory, check_logsInSpecifiedLocation.Checked);
- }
-
- private void btn_saveLog_Click(object sender, EventArgs e)
- {
- pathFinder.SelectedPath = String.Empty;
- pathFinder.ShowDialog();
- if (pathFinder.SelectedPath != string.Empty)
- text_logPath.Text = pathFinder.SelectedPath;
- }
-
- private void text_logPath_TextChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.SaveLogCopyDirectory, text_logPath.Text);
- }
-
- private void btn_viewLogs_Click(object sender, EventArgs e)
- {
- string logDir = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\HandBrake\\logs";
- string windir = Environment.GetEnvironmentVariable("WINDIR");
- Process prc = new Process();
- prc.StartInfo.FileName = windir + @"\explorer.exe";
- prc.StartInfo.Arguments = logDir;
- prc.Start();
- }
-
- private void btn_clearLogs_Click(object sender, EventArgs e)
- {
- DialogResult result = MessageBox.Show("Are you sure you wish to clear the log file directory?", "Clear Logs",
- MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
- if (result == DialogResult.Yes)
- {
- GeneralUtilities.ClearLogFiles(0);
- MessageBox.Show(this, "HandBrake's Log file directory has been cleared!", "Notice", MessageBoxButtons.OK,
- MessageBoxIcon.Information);
- }
- }
-
- private void check_clearOldLogs_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.ClearOldLogs, check_clearOldLogs.Checked);
- }
-
- #endregion
-
- #region Advanced
-
- private void check_mainMinimize_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.MainWindowMinimize, check_mainMinimize.Checked);
- check_trayStatusAlerts.Enabled = check_mainMinimize.Checked;
- }
-
- private void check_trayStatusAlerts_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.TrayIconAlerts, check_trayStatusAlerts.Checked);
- }
-
- private void check_queryEditorTab_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.QueryEditorTab, check_queryEditorTab.Checked);
- check_promptOnUnmatchingQueries.Enabled = check_queryEditorTab.Checked;
- }
-
- private void check_promptOnUnmatchingQueries_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.PromptOnUnmatchingQueries, check_promptOnUnmatchingQueries.Checked);
- }
-
- private void check_disablePresetNotification_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(UserSettingConstants.PresetNotification, check_disablePresetNotification.Checked);
- }
-
- private void check_showCliForInGUIEncode_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.ShowCLI, check_showCliForInGUIEncode.Checked);
- }
-
- private void drop_previewScanCount_SelectedIndexChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.PreviewScanCount, int.Parse(drop_previewScanCount.SelectedItem.ToString()));
- }
-
- private void x264step_SelectedIndexChanged(object sender, EventArgs e)
- {
- switch (drop_x264step.SelectedIndex)
- {
- case 0:
- userSettingService.SetUserSetting(ASUserSettingConstants.X264Step, 1.0);
- break;
- case 1:
- userSettingService.SetUserSetting(ASUserSettingConstants.X264Step, 0.5);
- break;
- case 2:
- userSettingService.SetUserSetting(ASUserSettingConstants.X264Step, 0.25);
- break;
- case 3:
- userSettingService.SetUserSetting(ASUserSettingConstants.X264Step, 0.2);
- break;
- }
- mainWindow.setQualityFromSlider();
- }
-
- private void check_dvdnav_CheckedChanged(object sender, EventArgs e)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.DisableLibDvdNav, check_dvdnav.Checked);
- }
-
- private void ud_minTitleLength_ValueChanged(object sender, EventArgs e)
- {
- int value;
- if (int.TryParse(ud_minTitleLength.Value.ToString(), out value))
- {
- this.userSettingService.SetUserSetting(ASUserSettingConstants.MinScanDuration, value);
- }
- }
-
- #endregion
-
- private void btn_close_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/frmOptions.resx b/win/CS/frmOptions.resx
deleted file mode 100644
index 104647c5f..000000000
--- a/win/CS/frmOptions.resx
+++ /dev/null
@@ -1,552 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="ToolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>132, 18</value>
- </metadata>
- <data name="cb_mp4FileMode.ToolTip" xml:space="preserve">
- <value>The default file extension for MP4 Files.
-Automatic - This will use M4v when AC3 Audio, SRT Subtitles or Chapters are present, otherwise MP4.
-Always MP4 - The MP4 extension will always be used.
-Always M4V - The M4V extension will always be used.
-
-Note, the file itself is identical. This simply changes the default extension for MP4 files.</value>
- </data>
- <data name="text_an_path.ToolTip" xml:space="preserve">
- <value>This is the default location where your encoded files will be stored if "Automatically name output files" is enabled.
-
-Hover over the "Available Options" text below for a more detailed description of the available advanced options.</value>
- </data>
- <data name="label34.ToolTip" xml:space="preserve">
- <value>{source_path} = Use the same directory as the source is in.
-This option has to be used on it's own and can not be used as part of a path.
-
-{source_folder_name} = Uses the folder name where the source is stored.
-You can insert this anywhere in your path. e.g. c:\movies\{source_folder_name}
-It will substitute the name of the folder where the source is located.
-Note, this can't be used with the {source_path} option!</value>
- </data>
- <data name="cb_subtitleMode.ToolTip" xml:space="preserve">
- <value>"All" - all languages available in original order;
-"Selected" - The Preferred and the extra selected languages;
-"Only Preferred" - Only the Preferred language;
-"First" - The first available;
-"None" - No language selected;</value>
- </data>
- <data name="cb_audioMode.ToolTip" xml:space="preserve">
- <value>"All" - all languages available in original order;
-"Selected" - The Preferred and the extra selected languages;
-"Only Preferred" - Only the Preferred language;
-"First" - The first available;
-"None" - No language selected;</value>
- </data>
- <data name="check_showCliForInGUIEncode.ToolTip" xml:space="preserve">
- <value>Shows the CLI window when encoding.
-You may wish to enable this as you'll be able to cleanly exit the CLI using ctrl-c
-meaing you'll have playable files if you choose to end the encode early.
-
-When disabled, Presseting "Stop" on the main winow will render the encode unplayable.</value>
- </data>
- <metadata name="pathFinder.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <metadata name="openExecutable.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>224, 18</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/frmPreview.Designer.cs b/win/CS/frmPreview.Designer.cs
deleted file mode 100644
index d566c50b2..000000000
--- a/win/CS/frmPreview.Designer.cs
+++ /dev/null
@@ -1,176 +0,0 @@
-namespace Handbrake
-{
- partial class frmPreview
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing)
- {
- if (components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmPreview));
- this.startPoint = new System.Windows.Forms.ComboBox();
- this.endPoint = new System.Windows.Forms.ComboBox();
- this.label1 = new System.Windows.Forms.Label();
- this.label2 = new System.Windows.Forms.Label();
- this.progressBar = new System.Windows.Forms.ProgressBar();
- this.lbl_progress = new System.Windows.Forms.Label();
- this.btn_play = new System.Windows.Forms.Button();
- this.defaultPlayer = new System.Windows.Forms.CheckBox();
- this.SuspendLayout();
- //
- // startPoint
- //
- this.startPoint.FormattingEnabled = true;
- this.startPoint.Items.AddRange(new object[] {
- "1",
- "2",
- "3",
- "4",
- "5",
- "6",
- "7",
- "8",
- "9",
- "10"});
- this.startPoint.Location = new System.Drawing.Point(107, 6);
- this.startPoint.Name = "startPoint";
- this.startPoint.Size = new System.Drawing.Size(72, 21);
- this.startPoint.TabIndex = 38;
- //
- // endPoint
- //
- this.endPoint.FormattingEnabled = true;
- this.endPoint.Items.AddRange(new object[] {
- "10",
- "30",
- "45",
- "60",
- "75",
- "90",
- "105",
- "120"});
- this.endPoint.Location = new System.Drawing.Point(289, 6);
- this.endPoint.Name = "endPoint";
- this.endPoint.Size = new System.Drawing.Size(70, 21);
- this.endPoint.TabIndex = 39;
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Location = new System.Drawing.Point(12, 9);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(89, 13);
- this.label1.TabIndex = 40;
- this.label1.Text = "Start at Preview:";
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(185, 9);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(98, 13);
- this.label2.TabIndex = 41;
- this.label2.Text = "Duration (seconds)";
- //
- // progressBar
- //
- this.progressBar.Location = new System.Drawing.Point(12, 33);
- this.progressBar.Name = "progressBar";
- this.progressBar.Size = new System.Drawing.Size(301, 18);
- this.progressBar.TabIndex = 42;
- //
- // lbl_progress
- //
- this.lbl_progress.AutoSize = true;
- this.lbl_progress.Location = new System.Drawing.Point(319, 36);
- this.lbl_progress.Name = "lbl_progress";
- this.lbl_progress.Size = new System.Drawing.Size(40, 13);
- this.lbl_progress.TabIndex = 43;
- this.lbl_progress.Text = "0.00%";
- //
- // btn_play
- //
- this.btn_play.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.btn_play.ForeColor = System.Drawing.Color.DarkOrange;
- this.btn_play.Location = new System.Drawing.Point(302, 57);
- this.btn_play.Name = "btn_play";
- this.btn_play.Size = new System.Drawing.Size(57, 24);
- this.btn_play.TabIndex = 44;
- this.btn_play.Text = "Play";
- this.btn_play.UseVisualStyleBackColor = true;
- this.btn_play.Click += new System.EventHandler(this.btn_play_Click);
- //
- // defaultPlayer
- //
- this.defaultPlayer.AutoSize = true;
- this.defaultPlayer.Location = new System.Drawing.Point(12, 62);
- this.defaultPlayer.Name = "defaultPlayer";
- this.defaultPlayer.Size = new System.Drawing.Size(151, 17);
- this.defaultPlayer.TabIndex = 45;
- this.defaultPlayer.Text = "Use system default player";
- this.defaultPlayer.UseVisualStyleBackColor = true;
- this.defaultPlayer.CheckedChanged += new System.EventHandler(this.DefaultPlayerCheckedChanged);
- //
- // frmPreview
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(369, 91);
- this.Controls.Add(this.defaultPlayer);
- this.Controls.Add(this.btn_play);
- this.Controls.Add(this.lbl_progress);
- this.Controls.Add(this.progressBar);
- this.Controls.Add(this.label2);
- this.Controls.Add(this.label1);
- this.Controls.Add(this.endPoint);
- this.Controls.Add(this.startPoint);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "frmPreview";
- this.ShowIcon = false;
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Video Preview";
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.ComboBox startPoint;
- private System.Windows.Forms.ComboBox endPoint;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label label2;
- private System.Windows.Forms.ProgressBar progressBar;
- private System.Windows.Forms.Label lbl_progress;
- private System.Windows.Forms.Button btn_play;
- private System.Windows.Forms.CheckBox defaultPlayer;
-
- }
-} \ No newline at end of file
diff --git a/win/CS/frmPreview.cs b/win/CS/frmPreview.cs
deleted file mode 100644
index 7ebea1acc..000000000
--- a/win/CS/frmPreview.cs
+++ /dev/null
@@ -1,303 +0,0 @@
-/* frmPreview.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Diagnostics;
- using System.IO;
- using System.Threading;
- using System.Windows.Forms;
- using Functions;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Exceptions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Services;
- using HandBrake.ApplicationServices.Services.Interfaces;
-
- using MessageBox = System.Windows.Forms.MessageBox;
-
- /// <summary>
- /// The Preview Window
- /// </summary>
- public partial class frmPreview : Form
- {
- #region Private Variables
-
- /// <summary>
- /// The Main Window
- /// </summary>
- private readonly frmMain mainWindow;
-
- /// <summary>
- /// The encode queue
- /// </summary>
- private readonly IEncode encodeQueue = new Encode();
-
- /// <summary>
- /// What is currently playing
- /// </summary>
- private string currentlyPlaying = string.Empty;
-
- /// <summary>
- /// The User Setting Service.
- /// </summary>
- private static readonly IUserSettingService UserSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Update UI Delegate
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private delegate void UpdateUiHandler(object sender, EventArgs e);
-
- #endregion
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmPreview"/> class.
- /// </summary>
- /// <param name="mw">
- /// The mw.
- /// </param>
- public frmPreview(frmMain mw)
- {
- InitializeComponent();
- this.mainWindow = mw;
-
- startPoint.SelectedIndex = 0;
- endPoint.SelectedIndex = 1;
-
- startPoint.Items.Clear();
- for (int i = 1; i <= UserSettingService.GetUserSetting<int>(ASUserSettingConstants.PreviewScanCount); i++)
- {
- startPoint.Items.Add(i.ToString());
- }
-
- startPoint.SelectedIndex = 0;
-
- encodeQueue.EncodeStarted += this.EncodeQueueEncodeStarted;
- encodeQueue.EncodeCompleted += this.EncodeQueueEncodeEnded;
-
- defaultPlayer.Checked = UserSettingService.GetUserSetting<bool>(UserSettingConstants.DefaultPlayer);
- }
-
- #region Event Handlers
- /// <summary>
- /// The encode has started
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void EncodeQueueEncodeStarted(object sender, EventArgs e)
- {
- encodeQueue.EncodeStatusChanged += this.EncodeQueueEncodeStatusChanged;
- }
-
- /// <summary>
- /// The Enocde has ended
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void EncodeQueueEncodeEnded(object sender, EventArgs e)
- {
- encodeQueue.EncodeStatusChanged -= this.EncodeQueueEncodeStatusChanged;
-
- try
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new UpdateUiHandler(EncodeQueueEncodeEnded), new[] { sender, e });
- return;
- }
-
- btn_play.Enabled = true;
- this.Text = this.Text.Replace(" (Encoding)", string.Empty);
- progressBar.Value = 0;
- lbl_progress.Text = "0.00%";
-
- // Get the sample filename
- if (this.mainWindow.text_destination.Text != string.Empty)
- this.currentlyPlaying =
- this.mainWindow.text_destination.Text.Replace(".mp4", "_sample.mp4").Replace(".m4v", "_sample.m4v").
- Replace(".mkv", "_sample.mkv");
-
- this.Play();
- }
- catch (Exception exc)
- {
- throw new GeneralApplicationException("An Unexpected error has occured", " Your encode may not have completed sucessfully.", exc);
- }
- }
-
- /// <summary>
- /// Encode status has changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void EncodeQueueEncodeStatusChanged(object sender, HandBrake.ApplicationServices.EventArgs.EncodeProgressEventArgs e)
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new EncodeProgessStatus(this.EncodeQueueEncodeStatusChanged), new[] { sender, e });
- return;
- }
-
- lbl_progress.Text = e.PercentComplete + "%";
- progressBar.Value = (int)Math.Round(e.PercentComplete);
- }
-
- private void DefaultPlayerCheckedChanged(object sender, EventArgs e)
- {
- UserSettingService.SetUserSetting(UserSettingConstants.DefaultPlayer, defaultPlayer.Checked);
- }
- #endregion
-
- #region Encode Sample
-
- /// <summary>
- /// Create the Preview.
- /// </summary>
- /// <param name="state">
- /// The state.
- /// </param>
- private void CreatePreview(object state)
- {
- // Make sure we are not already encoding and if we are then display an error.
- if (encodeQueue.IsEncoding)
- {
- MessageBox.Show(
- this,
- "Handbrake is already encoding a video!",
- "Warning",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
-
- return;
- }
-
- encodeQueue.Start((QueueTask)state, false);
- }
-
- #endregion
-
- #region Playback
-
- private void btn_play_Click(object sender, EventArgs e)
- {
- try
- {
- btn_play.Enabled = false;
- if (File.Exists(this.currentlyPlaying))
- File.Delete(this.currentlyPlaying);
- }
- catch (Exception)
- {
- btn_play.Enabled = true;
- MessageBox.Show(this, "Unable to delete previous preview file. You may need to restart the application.",
- "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
-
- this.Text += " (Encoding)";
- int duration;
- int.TryParse(endPoint.Text, out duration);
- string query = QueryGenerator.GeneratePreviewQuery(this.mainWindow, duration, startPoint.Text);
- QueueTask task = new QueueTask(query) { Task = { Destination = this.mainWindow.text_destination.Text } };
- ThreadPool.QueueUserWorkItem(this.CreatePreview, task);
- }
-
- /// <summary>
- /// Play the video back in an external VLC Player
- /// </summary>
- private void Play()
- {
- // Launch VLC and Play video.
- if (this.currentlyPlaying != string.Empty)
- {
- if (File.Exists(this.currentlyPlaying))
- {
- string args = "\"" + this.currentlyPlaying + "\"";
-
- if (defaultPlayer.Checked)
- {
- Process.Start(args);
- }
- else
- {
- if (!File.Exists(UserSettingService.GetUserSetting<string>(UserSettingConstants.VLC_Path)))
- {
- // Attempt to find VLC if it doesn't exist in the default set location.
- string vlcPath;
-
- if (8 == IntPtr.Size || (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))))
- vlcPath = Environment.GetEnvironmentVariable("ProgramFiles(x86)");
- else
- vlcPath = Environment.GetEnvironmentVariable("ProgramFiles");
-
- if (!string.IsNullOrEmpty(vlcPath))
- {
- vlcPath = Path.Combine(vlcPath, "VideoLAN\\VLC\\vlc.exe");
- }
-
- if (File.Exists(vlcPath))
- {
- UserSettingService.SetUserSetting(UserSettingConstants.VLC_Path, vlcPath);
- }
- else
- {
- MessageBox.Show(
- this,
- "Unable to detect VLC Player. \nPlease make sure VLC is installed and the directory specified in HandBrake's options is correct. (See: \"Tools Menu > Options > Picture Tab\") ",
- "VLC",
- MessageBoxButtons.OK,
- MessageBoxIcon.Warning);
- }
- }
-
- if (File.Exists(UserSettingService.GetUserSetting<string>(UserSettingConstants.VLC_Path)))
- {
- ProcessStartInfo vlc = new ProcessStartInfo(UserSettingService.GetUserSetting<string>(UserSettingConstants.VLC_Path), args);
- Process.Start(vlc);
- }
- }
- }
- else
- MessageBox.Show(this,
- "Unable to find the preview file. Either the file was deleted or the encode failed. Check the activity log for details.",
- "VLC", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
- }
-
- #endregion
-
- /// <summary>
- /// Remove any subscribed events then close.
- /// </summary>
- /// <param name="e">
- /// The e.
- /// </param>
- protected override void OnClosing(System.ComponentModel.CancelEventArgs e)
- {
- encodeQueue.EncodeStarted -= this.EncodeQueueEncodeStarted;
- encodeQueue.EncodeCompleted -= this.EncodeQueueEncodeEnded;
- base.OnClosing(e);
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/frmPreview.resx b/win/CS/frmPreview.resx
deleted file mode 100644
index 75cb7c234..000000000
--- a/win/CS/frmPreview.resx
+++ /dev/null
@@ -1,500 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/frmQueue.Designer.cs b/win/CS/frmQueue.Designer.cs
deleted file mode 100644
index 88f982682..000000000
--- a/win/CS/frmQueue.Designer.cs
+++ /dev/null
@@ -1,560 +0,0 @@
-/* frmQueue.Designer.cs
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- partial class frmQueue
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.IContainer components = null;
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmQueue));
- this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
- this.lbl_dest = new System.Windows.Forms.Label();
- this.lbl_source = new System.Windows.Forms.Label();
- this.label1 = new System.Windows.Forms.Label();
- this.label3 = new System.Windows.Forms.Label();
- this.toolStrip1 = new System.Windows.Forms.ToolStrip();
- this.btn_encode = new System.Windows.Forms.ToolStripButton();
- this.btn_pause = new System.Windows.Forms.ToolStripButton();
- this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
- this.drop_button_queue = new System.Windows.Forms.ToolStripDropDownButton();
- this.mnu_batch = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_import = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_export = new System.Windows.Forms.ToolStripMenuItem();
- this.drp_completeOption = new System.Windows.Forms.ToolStripComboBox();
- this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
- this.SaveFile = new System.Windows.Forms.SaveFileDialog();
- this.list_queue = new System.Windows.Forms.ListView();
- this.Status = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.Title = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.Chapters = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.Source = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.Destination = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.EncoderVideo = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.Audio = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
- this.mnu_queue = new System.Windows.Forms.ContextMenuStrip(this.components);
- this.mnu_up = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_Down = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
- this.mnu_edit = new System.Windows.Forms.ToolStripMenuItem();
- this.mnu_Retry = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator4 = new System.Windows.Forms.ToolStripSeparator();
- this.mnuClearAll = new System.Windows.Forms.ToolStripMenuItem();
- this.mnuClearCompleted = new System.Windows.Forms.ToolStripMenuItem();
- this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
- this.mnu_delete = new System.Windows.Forms.ToolStripMenuItem();
- this.statusStrip1 = new System.Windows.Forms.StatusStrip();
- this.lbl_encodesPending = new System.Windows.Forms.ToolStripStatusLabel();
- this.OpenFile = new System.Windows.Forms.OpenFileDialog();
- this.lbl_encodeStatus = new System.Windows.Forms.Label();
- this.splitContainer1 = new System.Windows.Forms.SplitContainer();
- this.lbl_encodeOptions = new System.Windows.Forms.Label();
- this.panel3 = new System.Windows.Forms.Panel();
- this.panel2 = new System.Windows.Forms.Panel();
- this.panel1 = new System.Windows.Forms.Panel();
- this.toolStrip1.SuspendLayout();
- this.mnu_queue.SuspendLayout();
- this.statusStrip1.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
- this.splitContainer1.Panel1.SuspendLayout();
- this.splitContainer1.Panel2.SuspendLayout();
- this.splitContainer1.SuspendLayout();
- this.SuspendLayout();
- //
- // lbl_dest
- //
- this.lbl_dest.AutoEllipsis = true;
- this.lbl_dest.Location = new System.Drawing.Point(117, 60);
- this.lbl_dest.Name = "lbl_dest";
- this.lbl_dest.Size = new System.Drawing.Size(671, 13);
- this.lbl_dest.TabIndex = 65;
- this.lbl_dest.Text = "-";
- this.lbl_dest.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
- //
- // lbl_source
- //
- this.lbl_source.AutoEllipsis = true;
- this.lbl_source.Location = new System.Drawing.Point(117, 47);
- this.lbl_source.Name = "lbl_source";
- this.lbl_source.Size = new System.Drawing.Size(671, 13);
- this.lbl_source.TabIndex = 64;
- this.lbl_source.Text = "-";
- //
- // label1
- //
- this.label1.AutoSize = true;
- this.label1.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label1.Location = new System.Drawing.Point(12, 47);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(85, 39);
- this.label1.TabIndex = 63;
- this.label1.Text = "Source:\r\nDestination:\r\nOptions:";
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.label3.Location = new System.Drawing.Point(12, 9);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(82, 13);
- this.label3.TabIndex = 62;
- this.label3.Text = "Current Job";
- //
- // toolStrip1
- //
- this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;
- this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.btn_encode,
- this.btn_pause,
- this.toolStripSeparator1,
- this.drop_button_queue,
- this.drp_completeOption,
- this.toolStripButton1});
- this.toolStrip1.Location = new System.Drawing.Point(0, 0);
- this.toolStrip1.Name = "toolStrip1";
- this.toolStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.toolStrip1.Size = new System.Drawing.Size(789, 39);
- this.toolStrip1.TabIndex = 71;
- this.toolStrip1.Text = "toolStrip1";
- //
- // btn_encode
- //
- this.btn_encode.Image = global::Handbrake.Properties.Resources.Play;
- this.btn_encode.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_encode.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_encode.Name = "btn_encode";
- this.btn_encode.Size = new System.Drawing.Size(82, 36);
- this.btn_encode.Text = "Encode";
- this.btn_encode.Click += new System.EventHandler(this.BtnEncodeClick);
- //
- // btn_pause
- //
- this.btn_pause.Image = global::Handbrake.Properties.Resources.Pause;
- this.btn_pause.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.btn_pause.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.btn_pause.Name = "btn_pause";
- this.btn_pause.Overflow = System.Windows.Forms.ToolStripItemOverflow.Never;
- this.btn_pause.Size = new System.Drawing.Size(74, 36);
- this.btn_pause.Text = "Pause";
- this.btn_pause.Visible = false;
- this.btn_pause.Click += new System.EventHandler(this.BtnPauseClick);
- //
- // toolStripSeparator1
- //
- this.toolStripSeparator1.Name = "toolStripSeparator1";
- this.toolStripSeparator1.Size = new System.Drawing.Size(6, 39);
- //
- // drop_button_queue
- //
- this.drop_button_queue.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_batch,
- this.mnu_import,
- this.mnu_export});
- this.drop_button_queue.Image = global::Handbrake.Properties.Resources.ActivityWindow;
- this.drop_button_queue.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
- this.drop_button_queue.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.drop_button_queue.Name = "drop_button_queue";
- this.drop_button_queue.Size = new System.Drawing.Size(87, 36);
- this.drop_button_queue.Text = "Queue";
- //
- // mnu_batch
- //
- this.mnu_batch.Image = global::Handbrake.Properties.Resources.Output_Small;
- this.mnu_batch.Name = "mnu_batch";
- this.mnu_batch.Size = new System.Drawing.Size(187, 22);
- this.mnu_batch.Text = "Generate Batch Script";
- this.mnu_batch.Click += new System.EventHandler(this.MnuBatchClick);
- //
- // mnu_import
- //
- this.mnu_import.Image = global::Handbrake.Properties.Resources.folder;
- this.mnu_import.Name = "mnu_import";
- this.mnu_import.Size = new System.Drawing.Size(187, 22);
- this.mnu_import.Text = "Import Queue";
- this.mnu_import.Click += new System.EventHandler(this.MnuImportClick);
- //
- // mnu_export
- //
- this.mnu_export.Image = global::Handbrake.Properties.Resources.save;
- this.mnu_export.Name = "mnu_export";
- this.mnu_export.Size = new System.Drawing.Size(187, 22);
- this.mnu_export.Text = "Export Queue";
- this.mnu_export.Click += new System.EventHandler(this.MnuExportClick);
- //
- // drp_completeOption
- //
- this.drp_completeOption.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
- this.drp_completeOption.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.drp_completeOption.FlatStyle = System.Windows.Forms.FlatStyle.System;
- this.drp_completeOption.Items.AddRange(new object[] {
- "Do nothing",
- "Shutdown",
- "Suspend",
- "Hibernate",
- "Lock system",
- "Log off",
- "Quit HandBrake"});
- this.drp_completeOption.Margin = new System.Windows.Forms.Padding(1, 0, 15, 0);
- this.drp_completeOption.Name = "drp_completeOption";
- this.drp_completeOption.Size = new System.Drawing.Size(155, 39);
- this.drp_completeOption.SelectedIndexChanged += new System.EventHandler(this.CompleteOptionChanged);
- //
- // toolStripButton1
- //
- this.toolStripButton1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
- this.toolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
- this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
- this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
- this.toolStripButton1.Name = "toolStripButton1";
- this.toolStripButton1.Size = new System.Drawing.Size(76, 36);
- this.toolStripButton1.Text = "When Done:";
- //
- // SaveFile
- //
- this.SaveFile.Filter = "Batch|.bat";
- //
- // list_queue
- //
- this.list_queue.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
- this.Status,
- this.Title,
- this.Chapters,
- this.Source,
- this.Destination,
- this.EncoderVideo,
- this.Audio});
- this.list_queue.ContextMenuStrip = this.mnu_queue;
- this.list_queue.Dock = System.Windows.Forms.DockStyle.Fill;
- this.list_queue.Font = new System.Drawing.Font("Verdana", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.list_queue.FullRowSelect = true;
- this.list_queue.GridLines = true;
- this.list_queue.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
- this.list_queue.Location = new System.Drawing.Point(15, 0);
- this.list_queue.Name = "list_queue";
- this.list_queue.Size = new System.Drawing.Size(759, 199);
- this.list_queue.TabIndex = 72;
- this.list_queue.UseCompatibleStateImageBehavior = false;
- this.list_queue.View = System.Windows.Forms.View.Details;
- this.list_queue.KeyUp += new System.Windows.Forms.KeyEventHandler(this.ListQueueDeleteKey);
- //
- // Status
- //
- this.Status.Text = "Job Status";
- this.Status.Width = 80;
- //
- // Title
- //
- this.Title.Text = "Title";
- this.Title.Width = 39;
- //
- // Chapters
- //
- this.Chapters.Text = "Chapters";
- this.Chapters.Width = 71;
- //
- // Source
- //
- this.Source.Text = "Source";
- this.Source.Width = 219;
- //
- // Destination
- //
- this.Destination.Text = "Destination";
- this.Destination.Width = 210;
- //
- // EncoderVideo
- //
- this.EncoderVideo.Text = "Video Encoder";
- this.EncoderVideo.Width = 110;
- //
- // Audio
- //
- this.Audio.Text = "Audio Encoder";
- this.Audio.Width = 94;
- //
- // mnu_queue
- //
- this.mnu_queue.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.mnu_up,
- this.mnu_Down,
- this.toolStripSeparator3,
- this.mnu_edit,
- this.mnu_Retry,
- this.toolStripSeparator4,
- this.mnuClearAll,
- this.mnuClearCompleted,
- this.toolStripSeparator5,
- this.mnu_delete});
- this.mnu_queue.Name = "mnu_queue";
- this.mnu_queue.Size = new System.Drawing.Size(164, 176);
- //
- // mnu_up
- //
- this.mnu_up.Name = "mnu_up";
- this.mnu_up.Size = new System.Drawing.Size(163, 22);
- this.mnu_up.Text = "Move Up";
- this.mnu_up.Click += new System.EventHandler(this.MnuUpClick);
- //
- // mnu_Down
- //
- this.mnu_Down.Name = "mnu_Down";
- this.mnu_Down.Size = new System.Drawing.Size(163, 22);
- this.mnu_Down.Text = "Move Down";
- this.mnu_Down.Click += new System.EventHandler(this.MnuDownClick);
- //
- // toolStripSeparator3
- //
- this.toolStripSeparator3.Name = "toolStripSeparator3";
- this.toolStripSeparator3.Size = new System.Drawing.Size(160, 6);
- //
- // mnu_edit
- //
- this.mnu_edit.Name = "mnu_edit";
- this.mnu_edit.Size = new System.Drawing.Size(163, 22);
- this.mnu_edit.Text = "Edit";
- this.mnu_edit.Click += new System.EventHandler(this.MnuEditClick);
- //
- // mnu_Retry
- //
- this.mnu_Retry.Name = "mnu_Retry";
- this.mnu_Retry.Size = new System.Drawing.Size(163, 22);
- this.mnu_Retry.Text = "Retry Encode";
- this.mnu_Retry.Click += new System.EventHandler(this.mnu_Retry_Click);
- //
- // toolStripSeparator4
- //
- this.toolStripSeparator4.Name = "toolStripSeparator4";
- this.toolStripSeparator4.Size = new System.Drawing.Size(160, 6);
- //
- // mnuClearAll
- //
- this.mnuClearAll.Name = "mnuClearAll";
- this.mnuClearAll.Size = new System.Drawing.Size(163, 22);
- this.mnuClearAll.Text = "Clear All";
- this.mnuClearAll.Click += new System.EventHandler(this.mnuClearAll_Click);
- //
- // mnuClearCompleted
- //
- this.mnuClearCompleted.Name = "mnuClearCompleted";
- this.mnuClearCompleted.Size = new System.Drawing.Size(163, 22);
- this.mnuClearCompleted.Text = "Clear Completed";
- this.mnuClearCompleted.Click += new System.EventHandler(this.mnuClearCompleted_Click);
- //
- // toolStripSeparator5
- //
- this.toolStripSeparator5.Name = "toolStripSeparator5";
- this.toolStripSeparator5.Size = new System.Drawing.Size(160, 6);
- //
- // mnu_delete
- //
- this.mnu_delete.Name = "mnu_delete";
- this.mnu_delete.Size = new System.Drawing.Size(163, 22);
- this.mnu_delete.Text = "Delete";
- this.mnu_delete.Click += new System.EventHandler(this.MnuDeleteClick);
- //
- // statusStrip1
- //
- this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
- this.lbl_encodesPending});
- this.statusStrip1.Location = new System.Drawing.Point(0, 363);
- this.statusStrip1.Name = "statusStrip1";
- this.statusStrip1.Padding = new System.Windows.Forms.Padding(1, 0, 12, 0);
- this.statusStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional;
- this.statusStrip1.Size = new System.Drawing.Size(789, 22);
- this.statusStrip1.TabIndex = 73;
- this.statusStrip1.Text = "statusStrip1";
- //
- // lbl_encodesPending
- //
- this.lbl_encodesPending.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
- this.lbl_encodesPending.Margin = new System.Windows.Forms.Padding(0, 3, 10, 2);
- this.lbl_encodesPending.Name = "lbl_encodesPending";
- this.lbl_encodesPending.Size = new System.Drawing.Size(115, 17);
- this.lbl_encodesPending.Text = "0 encode(s) pending";
- this.lbl_encodesPending.ToolTipText = "- Displays the number of jobs remaining to process.\r\n- Displays the time for the " +
- "current processing session. \r\n (Note, this is reset every time you press encode" +
- ", including after a pause)";
- //
- // OpenFile
- //
- this.OpenFile.Filter = "HandBrake Queue|*.queue";
- //
- // lbl_encodeStatus
- //
- this.lbl_encodeStatus.AutoSize = true;
- this.lbl_encodeStatus.Location = new System.Drawing.Point(12, 30);
- this.lbl_encodeStatus.Name = "lbl_encodeStatus";
- this.lbl_encodeStatus.Size = new System.Drawing.Size(38, 13);
- this.lbl_encodeStatus.TabIndex = 73;
- this.lbl_encodeStatus.Text = "Ready";
- //
- // splitContainer1
- //
- this.splitContainer1.BackColor = System.Drawing.Color.Transparent;
- this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.splitContainer1.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
- this.splitContainer1.Location = new System.Drawing.Point(0, 39);
- this.splitContainer1.Name = "splitContainer1";
- this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
- //
- // splitContainer1.Panel1
- //
- this.splitContainer1.Panel1.BackColor = System.Drawing.Color.Transparent;
- this.splitContainer1.Panel1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
- this.splitContainer1.Panel1.Controls.Add(this.lbl_encodeOptions);
- this.splitContainer1.Panel1.Controls.Add(this.label3);
- this.splitContainer1.Panel1.Controls.Add(this.lbl_dest);
- this.splitContainer1.Panel1.Controls.Add(this.label1);
- this.splitContainer1.Panel1.Controls.Add(this.lbl_encodeStatus);
- this.splitContainer1.Panel1.Controls.Add(this.lbl_source);
- //
- // splitContainer1.Panel2
- //
- this.splitContainer1.Panel2.Controls.Add(this.list_queue);
- this.splitContainer1.Panel2.Controls.Add(this.panel3);
- this.splitContainer1.Panel2.Controls.Add(this.panel2);
- this.splitContainer1.Panel2.Controls.Add(this.panel1);
- this.splitContainer1.Size = new System.Drawing.Size(789, 324);
- this.splitContainer1.SplitterDistance = 106;
- this.splitContainer1.TabIndex = 74;
- //
- // lbl_encodeOptions
- //
- this.lbl_encodeOptions.AutoEllipsis = true;
- this.lbl_encodeOptions.Location = new System.Drawing.Point(117, 73);
- this.lbl_encodeOptions.Name = "lbl_encodeOptions";
- this.lbl_encodeOptions.Size = new System.Drawing.Size(671, 33);
- this.lbl_encodeOptions.TabIndex = 74;
- this.lbl_encodeOptions.Text = "-";
- //
- // panel3
- //
- this.panel3.BackColor = System.Drawing.Color.Transparent;
- this.panel3.Dock = System.Windows.Forms.DockStyle.Bottom;
- this.panel3.Location = new System.Drawing.Point(15, 199);
- this.panel3.Name = "panel3";
- this.panel3.Size = new System.Drawing.Size(759, 15);
- this.panel3.TabIndex = 73;
- //
- // panel2
- //
- this.panel2.BackColor = System.Drawing.Color.Transparent;
- this.panel2.Dock = System.Windows.Forms.DockStyle.Right;
- this.panel2.Location = new System.Drawing.Point(774, 0);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(15, 214);
- this.panel2.TabIndex = 1;
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.Transparent;
- this.panel1.Dock = System.Windows.Forms.DockStyle.Left;
- this.panel1.Location = new System.Drawing.Point(0, 0);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(15, 214);
- this.panel1.TabIndex = 0;
- //
- // frmQueue
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(789, 385);
- this.Controls.Add(this.splitContainer1);
- this.Controls.Add(this.statusStrip1);
- this.Controls.Add(this.toolStrip1);
- this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MinimumSize = new System.Drawing.Size(677, 417);
- this.Name = "frmQueue";
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- this.Text = "Encode Queue";
- this.toolStrip1.ResumeLayout(false);
- this.toolStrip1.PerformLayout();
- this.mnu_queue.ResumeLayout(false);
- this.statusStrip1.ResumeLayout(false);
- this.statusStrip1.PerformLayout();
- this.splitContainer1.Panel1.ResumeLayout(false);
- this.splitContainer1.Panel1.PerformLayout();
- this.splitContainer1.Panel2.ResumeLayout(false);
- ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
- this.splitContainer1.ResumeLayout(false);
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
-
- #endregion
-
- private System.Windows.Forms.ToolTip toolTip1;
- private System.Windows.Forms.Label lbl_dest;
- private System.Windows.Forms.Label lbl_source;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.ToolStrip toolStrip1;
- private System.Windows.Forms.ToolStripButton btn_encode;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
- private System.Windows.Forms.ToolStripButton btn_pause;
- private System.Windows.Forms.SaveFileDialog SaveFile;
- private System.Windows.Forms.ListView list_queue;
- private System.Windows.Forms.ColumnHeader Title;
- private System.Windows.Forms.ColumnHeader Chapters;
- private System.Windows.Forms.ColumnHeader Source;
- private System.Windows.Forms.ColumnHeader Destination;
- private System.Windows.Forms.ColumnHeader EncoderVideo;
- private System.Windows.Forms.ColumnHeader Audio;
- private System.Windows.Forms.StatusStrip statusStrip1;
- private System.Windows.Forms.ToolStripDropDownButton drop_button_queue;
- private System.Windows.Forms.ToolStripMenuItem mnu_batch;
- private System.Windows.Forms.ToolStripMenuItem mnu_import;
- private System.Windows.Forms.ToolStripMenuItem mnu_export;
- private System.Windows.Forms.OpenFileDialog OpenFile;
- private System.Windows.Forms.ToolStripStatusLabel lbl_encodesPending;
- private System.Windows.Forms.ContextMenuStrip mnu_queue;
- private System.Windows.Forms.ToolStripMenuItem mnu_up;
- private System.Windows.Forms.ToolStripMenuItem mnu_Down;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
- private System.Windows.Forms.ToolStripMenuItem mnu_delete;
- private System.Windows.Forms.ToolStripMenuItem mnu_edit;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
- private System.Windows.Forms.Label lbl_encodeStatus;
- private System.Windows.Forms.SplitContainer splitContainer1;
- private System.Windows.Forms.Panel panel2;
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.Label lbl_encodeOptions;
- private System.Windows.Forms.ToolStripComboBox drp_completeOption;
- private System.Windows.Forms.ToolStripButton toolStripButton1;
- private System.Windows.Forms.Panel panel3;
- private System.Windows.Forms.ColumnHeader Status;
- private System.Windows.Forms.ToolStripMenuItem mnuClearCompleted;
- private System.Windows.Forms.ToolStripMenuItem mnu_Retry;
- private System.Windows.Forms.ToolStripMenuItem mnuClearAll;
- private System.Windows.Forms.ToolStripSeparator toolStripSeparator5;
- }
-}
diff --git a/win/CS/frmQueue.cs b/win/CS/frmQueue.cs
deleted file mode 100644
index f5fb75071..000000000
--- a/win/CS/frmQueue.cs
+++ /dev/null
@@ -1,786 +0,0 @@
-/* frmQueue.cs $
- This file is part of the HandBrake source code.
- Homepage: <http://handbrake.fr>.
- It may be used under the terms of the GNU General Public License. */
-
-namespace Handbrake
-{
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.ComponentModel;
- using System.Windows.Forms;
-
- using HandBrake.ApplicationServices;
- using HandBrake.ApplicationServices.Functions;
- using HandBrake.ApplicationServices.Model;
- using HandBrake.ApplicationServices.Model.Encoding;
- using HandBrake.ApplicationServices.Services.Interfaces;
- using HandBrake.ApplicationServices.Utilities;
- using HandBrake.Interop.Model.Encoding;
-
- /// <summary>
- /// The Queue Window
- /// </summary>
- public partial class frmQueue : Form
- {
- /// <summary>
- /// Update Handler Delegate
- /// </summary>
- private delegate void UpdateHandler();
-
- /// <summary>
- /// An instance of the Queue service
- /// </summary>
- private readonly IQueueProcessor queue;
-
- /// <summary>
- /// A reference to the main application window
- /// </summary>
- private readonly frmMain mainWindow;
-
- /// <summary>
- /// The User setting service
- /// </summary>
- private readonly IUserSettingService userSettingService = ServiceManager.UserSettingService;
-
- /// <summary>
- /// Set to true when the window is ready.
- /// </summary>
- private bool isInitialised = false;
-
- /// <summary>
- /// Initializes a new instance of the <see cref="frmQueue"/> class.
- /// </summary>
- /// <param name="q">
- /// An instance of the queue service.
- /// </param>
- /// <param name="mw">
- /// The main window.
- /// </param>
- public frmQueue(IQueueProcessor q, frmMain mw)
- {
- InitializeComponent();
-
- this.mainWindow = mw;
-
- this.queue = q;
- queue.EncodeService.EncodeStarted += this.QueueOnEncodeStart;
- queue.QueueCompleted += this.QueueOnQueueFinished;
- queue.QueuePaused += this.QueueOnPaused;
- queue.QueueManager.QueueChanged += this.queue_QueueListChanged;
-
- queue.EncodeService.EncodeStarted += this.queue_EncodeStarted;
- queue.EncodeService.EncodeCompleted += this.queue_EncodeEnded;
-
- drp_completeOption.Text = userSettingService.GetUserSetting<string>(ASUserSettingConstants.WhenCompleteAction);
- this.isInitialised = true;
- }
-
- /// <summary>
- /// Queue Changed
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void queue_QueueListChanged(object sender, EventArgs e)
- {
- UpdateUiElementsOnQueueChange();
- }
-
- /// <summary>
- /// Encode Ended
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void queue_EncodeEnded(object sender, EventArgs e)
- {
- queue.EncodeService.EncodeStatusChanged -= EncodeQueue_EncodeStatusChanged;
- ResetEncodeText();
- }
-
- /// <summary>
- /// Queue Started
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void queue_EncodeStarted(object sender, EventArgs e)
- {
- this.SetCurrentEncodeInformation();
- queue.EncodeService.EncodeStatusChanged += EncodeQueue_EncodeStatusChanged;
- }
-
- /// <summary>
- /// Display the Encode Status
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void EncodeQueue_EncodeStatusChanged(object sender, HandBrake.ApplicationServices.EventArgs.EncodeProgressEventArgs e)
- {
- if (this.InvokeRequired)
- {
- this.BeginInvoke(new EncodeProgessStatus(EncodeQueue_EncodeStatusChanged), new[] { sender, e });
- return;
- }
-
- lbl_encodeStatus.Text =
- string.Format(
- "Encoding: Pass {0} of {1}, {2:00.00}%, FPS: {3:000.0}, Avg FPS: {4:000.0}, Time Remaining: {5}, Elapsed: {6:hh\\:mm\\:ss}",
- e.Task,
- e.TaskCount,
- e.PercentComplete,
- e.CurrentFrameRate,
- e.AverageFrameRate,
- e.EstimatedTimeLeft,
- e.ElapsedTime);
-
- UpdateStatusLabel();
- }
-
- /// <summary>
- /// Handle the Queue Paused event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void QueueOnPaused(object sender, EventArgs e)
- {
- SetUiEncodeFinished();
- UpdateUiElementsOnQueueChange();
- }
-
- /// <summary>
- /// Handle the Queue Finished event.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void QueueOnQueueFinished(object sender, EventArgs e)
- {
- SetUiEncodeFinished();
- ResetQueue(); // Reset the Queue Window
- }
-
- /// <summary>
- /// Handle the Encode Started event
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void QueueOnEncodeStart(object sender, EventArgs e)
- {
- SetUiEncodeStarted(); // make sure the UI is set correctly
- UpdateUiElementsOnQueueChange(); // Redraw the Queue, a new encode has started.
- }
-
- /// <summary>
- /// Initializes the Queue list with the Arraylist from the Queue class
- /// </summary>
- public void SetQueue()
- {
- UpdateUiElementsOnQueueChange();
- }
-
- /// <summary>
- /// Initializes the Queue list, then shows and activates the window
- /// </summary>
- public new void Show()
- {
- Show(true);
- }
-
- /// <summary>
- /// Initializes the Queue list only if doSetQueue is true, then shows and activates the window
- /// </summary>
- /// <param name="doSetQueue">Indicates whether to call setQueue() before showing the window</param>
- public void Show(bool doSetQueue)
- {
- if (doSetQueue) SetQueue();
- base.Show();
- }
-
- /// <summary>
- /// Handle the Encode button Click event
- /// </summary>
- /// <param name="sender">The sender</param>
- /// <param name="e">the EventArgs</param>
- private void BtnEncodeClick(object sender, EventArgs e)
- {
- if (!queue.IsProcessing)
- {
- SetUiEncodeStarted();
- }
-
- lbl_encodeStatus.Text = "Encoding ...";
- queue.Start();
- }
-
- /// <summary>
- /// Handle the Pause button click event.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void BtnPauseClick(object sender, EventArgs e)
- {
- queue.Pause();
-
- MessageBox.Show(
- "No further items on the queue will start. The current encode process will continue until it is finished. \nClick 'Encode' when you wish to continue encoding the queue.",
- "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
-
- // UI Work
-
- /// <summary>
- /// Setup the UI to show that an encode has started
- /// </summary>
- private void SetUiEncodeStarted()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(SetUiEncodeStarted));
- return;
- }
- btn_encode.Enabled = false;
- btn_pause.Visible = true;
- }
-
- /// <summary>
- /// Setup the UI to indicate that an encode has finished.
- /// </summary>
- private void SetUiEncodeFinished()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(SetUiEncodeFinished));
- return;
- }
- btn_pause.Visible = false;
- btn_encode.Enabled = true;
- }
-
- /// <summary>
- /// Reset the Queue Window display
- /// </summary>
- private void ResetQueue()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(ResetQueue));
- return;
- }
- btn_pause.Visible = false;
- btn_encode.Enabled = true;
-
- this.RedrawQueue();
- ResetEncodeText();
- }
-
- /// <summary>
- /// Reset the current job text
- /// </summary>
- private void ResetEncodeText()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(ResetEncodeText));
- return;
- }
- lbl_encodeStatus.Text = "Ready";
-
- lbl_source.Text = "-";
- lbl_dest.Text = "-";
- lbl_encodeOptions.Text = "-";
-
- UpdateStatusLabel();
- }
-
- /// <summary>
- /// Redraw the Queue window with the latest information about HandBrakes status
- /// </summary>
- private void RedrawQueue()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(RedrawQueue));
- return;
- }
-
- list_queue.Items.Clear();
- ObservableCollection<QueueTask> theQueue = queue.QueueManager.Queue;
- foreach (QueueTask queueItem in theQueue)
- {
- string qItem = queueItem.Query;
- EncodeTask parsed = QueryParserUtility.Parse(qItem);
-
- // Get the DVD Title
- string title = parsed.Title == 0 ? "Auto" : parsed.Title.ToString();
-
- // Get the DVD Chapters
- string chapters;
- if (parsed.StartPoint == 0)
- chapters = "Auto";
- else
- {
- chapters = parsed.StartPoint.ToString();
- if (parsed.EndPoint != 0)
- chapters = chapters + " - " + parsed.EndPoint;
- }
-
- ListViewItem item = new ListViewItem
- { Tag = queueItem, Text = EnumHelper<QueueItemStatus>.GetDescription(queueItem.Status) };
- item.SubItems.Add(title);
- item.SubItems.Add(chapters); // Chapters
- item.SubItems.Add(queueItem.Task.Source); // Source
- item.SubItems.Add(queueItem.Task.Destination); // Destination
- item.SubItems.Add(EnumHelper<VideoEncoder>.GetDisplay(parsed.VideoEncoder));
-
- // Display The Audio Track Information
- string audio = string.Empty;
- foreach (AudioTrack track in parsed.AudioTracks)
- {
- if (audio != string.Empty)
- audio += ", " + EnumHelper<AudioEncoder>.GetDisplay(track.Encoder);
- else
- audio = EnumHelper<AudioEncoder>.GetDisplay(track.Encoder);
- }
- item.SubItems.Add(audio); // Audio
-
- list_queue.Items.Add(item);
- }
- }
-
- /// <summary>
- /// Update the UI elements
- /// </summary>
- private void UpdateUiElementsOnQueueChange()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(UpdateUiElementsOnQueueChange));
- return;
- }
-
- RedrawQueue();
- UpdateStatusLabel();
- }
-
- /// <summary>
- /// Update the Display
- /// </summary>
- private void UpdateStatusLabel()
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(UpdateStatusLabel));
- return;
- }
-
- lbl_encodesPending.Text = string.Format("{0} encodes(s) pending", this.queue.QueueManager.Count);
- }
-
- /// <summary>
- /// Set the window up with the current encode information
- /// </summary>
- private void SetCurrentEncodeInformation()
- {
- try
- {
- if (InvokeRequired)
- {
- BeginInvoke(new UpdateHandler(SetCurrentEncodeInformation));
- }
-
- EncodeTask parsed = QueryParserUtility.Parse(queue.QueueManager.LastProcessedJob.Query);
-
- // Get title and chapters
- string title = parsed.Title == 0 ? "Auto" : parsed.Title.ToString();
- string chapterlbl;
- if (Equals(parsed.StartPoint, 0))
- chapterlbl = "Auto";
- else
- {
- string chapters = parsed.StartPoint.ToString();
- if (parsed.EndPoint != 0)
- chapters = chapters + " - " + parsed.EndPoint;
- chapterlbl = chapters;
- }
-
- // Get audio information
- string audio = string.Empty;
- foreach (AudioTrack track in parsed.AudioTracks)
- {
- if (audio != string.Empty)
- audio += ", " + EnumHelper<AudioEncoder>.GetDisplay(track.Encoder);
- else
- audio = EnumHelper<AudioEncoder>.GetDisplay(track.Encoder);
- }
-
- // found query is a global varible
- lbl_encodeStatus.Text = "Encoding ...";
- lbl_source.Text = queue.QueueManager.LastProcessedJob.Task.Source + "(Title: " + title + " Chapters: " + chapterlbl + ")";
- lbl_dest.Text = queue.QueueManager.LastProcessedJob.Task.Destination;
- lbl_encodeOptions.Text = string.Format("Video: {0}, Audio: {1}\nx264 Options: {2}",
- EnumHelper<VideoEncoder>.GetDisplay(parsed.VideoEncoder),
- audio,
- parsed.AdvancedEncoderOptions);
-
- }
- catch (Exception)
- {
- // Do Nothing
- }
- }
-
- /* Right Click Menu */
-
- /// <summary>
- /// Handle the Move Up Menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuUpClick(object sender, EventArgs e)
- {
- MoveUp();
- }
-
- /// <summary>
- /// Handle the Move down Menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuDownClick(object sender, EventArgs e)
- {
- MoveDown();
- }
-
- /// <summary>
- /// Edit a job
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuEditClick(object sender, EventArgs e)
- {
- if (list_queue.SelectedIndices != null && list_queue.SelectedIndices.Count != 0)
- {
- lock (queue)
- {
- lock (list_queue)
- {
- QueueTask index = list_queue.SelectedItems[0].Tag as QueueTask;
- mainWindow.RecievingJob(index);
- queue.QueueManager.Remove(index);
- RedrawQueue();
- }
- }
- }
- }
-
- /// <summary>
- /// Handle the delete Menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuDeleteClick(object sender, EventArgs e)
- {
- DeleteSelectedItems();
- }
-
- /// <summary>
- /// Clear down the Queue
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void mnuClearAll_Click(object sender, EventArgs e)
- {
- DialogResult result = MessageBox.Show(
- "Are you sure you wish to clear down the queue?",
- "Clear the Queue", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
- if (result == DialogResult.Yes)
- {
- queue.QueueManager.Clear();
- }
- }
-
- /* Keyboard Shortcuts */
-
- /// <summary>
- /// Handle the delete keyboard press
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void ListQueueDeleteKey(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.Delete && e.Modifiers == Keys.None)
- DeleteSelectedItems();
- }
-
- /* Queue Management */
-
- /// <summary>
- /// Move items up in the queue
- /// </summary>
- private void MoveUp()
- {
- // If there are selected items and the first item is not selected
- if (list_queue.SelectedIndices.Count > 0 && !list_queue.SelectedIndices.Contains(0))
- {
- // Copy the selected indices to preserve them during the movement
- List<int> selectedIndices = new List<int>(list_queue.SelectedIndices.Count);
- foreach (int selectedIndex in list_queue.SelectedIndices)
- selectedIndices.Add(selectedIndex);
-
- // Move up each selected item
- foreach (int selectedIndex in selectedIndices)
- queue.QueueManager.MoveUp(selectedIndex);
-
- // Keep the selected item(s) selected, now moved up one index
- foreach (int selectedIndex in selectedIndices)
- if (selectedIndex - 1 > -1) // Defensive programming: ensure index is good
- list_queue.Items[selectedIndex - 1].Selected = true;
- }
-
- list_queue.Select(); // Activate the control to show the selected items
- }
-
- /// <summary>
- /// Move items down in the queue
- /// </summary>
- private void MoveDown()
- {
- // If there are selected items and the last item is not selected
- if (list_queue.SelectedIndices.Count > 0 &&
- !list_queue.SelectedIndices.Contains(list_queue.Items[list_queue.Items.Count - 1].Index))
- {
- // Copy the selected indices to preserve them during the movement
- List<int> selectedIndices = new List<int>(list_queue.SelectedIndices.Count);
- foreach (int selectedIndex in list_queue.SelectedIndices)
- selectedIndices.Add(selectedIndex);
-
- // Reverse the indices to move the items down from last to first (preserves indices)
- selectedIndices.Reverse();
-
- // Move down each selected item
- foreach (int selectedIndex in selectedIndices)
- queue.QueueManager.MoveDown(selectedIndex);
-
- // Keep the selected item(s) selected, now moved down one index
- foreach (int selectedIndex in selectedIndices)
- if (selectedIndex + 1 < list_queue.Items.Count) // Defensive programming: ensure index is good
- list_queue.Items[selectedIndex + 1].Selected = true;
- }
-
- list_queue.Select(); // Activate the control to show the selected items
- }
-
- /// <summary>
- /// Delete the currently selected items on the queue
- /// </summary>
- private void DeleteSelectedItems()
- {
- // If there are selected items
- if (list_queue.SelectedIndices.Count > 0)
- {
- // Remove each selected item
- foreach (ListViewItem selectedIndex in this.list_queue.SelectedItems)
- queue.QueueManager.Remove((QueueTask)selectedIndex.Tag);
-
- // Select the first item after deletion.
- if (list_queue.Items.Count > 0)
- list_queue.Items[0].Selected = true;
- }
-
- list_queue.Select(); // Activate the control to show the selected items
- }
-
- /* Queue Import / Export features */
-
- /// <summary>
- /// Create a batch script
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuBatchClick(object sender, EventArgs e)
- {
- SaveFile.FileName = string.Empty;
- SaveFile.Filter = "Batch|*.bat";
- SaveFile.ShowDialog();
- if (SaveFile.FileName != String.Empty)
- queue.QueueManager.WriteBatchScriptToFile(SaveFile.FileName);
- }
-
- /// <summary>
- /// Export Queue
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuExportClick(object sender, EventArgs e)
- {
- SaveFile.FileName = string.Empty;
- SaveFile.Filter = "HandBrake Queue|*.queue";
- SaveFile.ShowDialog();
- if (SaveFile.FileName != String.Empty)
- queue.QueueManager.BackupQueue(SaveFile.FileName);
- }
-
- /// <summary>
- /// Import Queue
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void MnuImportClick(object sender, EventArgs e)
- {
- OpenFile.FileName = string.Empty;
- OpenFile.ShowDialog();
- if (OpenFile.FileName != String.Empty)
- queue.QueueManager.RestoreQueue(OpenFile.FileName);
- }
-
- /* Overrides */
-
- /// <summary>
- /// Hide's the window when the user tries to "x" out of the window instead of closing it.
- /// </summary>
- /// <param name="e">
- /// The e.
- /// </param>
- protected override void OnClosing(CancelEventArgs e)
- {
- e.Cancel = true;
- this.Hide();
- base.OnClosing(e);
- }
-
- /// <summary>
- /// Change the OnComplete option setting.
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The EventArgs.
- /// </param>
- private void CompleteOptionChanged(object sender, EventArgs e)
- {
- if (this.isInitialised)
- {
- userSettingService.SetUserSetting(ASUserSettingConstants.WhenCompleteAction, drp_completeOption.Text);
- }
- }
-
- /// <summary>
- /// Clear all completed items
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnuClearCompleted_Click(object sender, EventArgs e)
- {
- this.queue.QueueManager.ClearCompleted();
- }
-
- /// <summary>
- /// Retry Job Menu Item
- /// </summary>
- /// <param name="sender">
- /// The sender.
- /// </param>
- /// <param name="e">
- /// The e.
- /// </param>
- private void mnu_Retry_Click(object sender, EventArgs e)
- {
- if (list_queue.SelectedIndices.Count != 0)
- {
- lock (queue)
- {
- lock (list_queue)
- {
- QueueTask index = list_queue.SelectedItems[0].Tag as QueueTask;
-
- try
- {
- queue.QueueManager.ResetJobStatusToWaiting(index);
- }
- catch (Exception)
- {
- MessageBox.Show(
- "Can only retry a job if it is in an Error or Completed state.",
- "Notice",
- MessageBoxButtons.OK,
- MessageBoxIcon.Information);
- }
- RedrawQueue();
- }
- }
- }
- }
- }
-} \ No newline at end of file
diff --git a/win/CS/frmQueue.resx b/win/CS/frmQueue.resx
deleted file mode 100644
index 0922a609b..000000000
--- a/win/CS/frmQueue.resx
+++ /dev/null
@@ -1,536 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 2.0
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">2.0</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>[base64 mime encoded serialized .NET Framework object]</value>
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
- <comment>This is a comment</comment>
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used for serialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="metadata">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" />
- </xsd:sequence>
- <xsd:attribute name="name" use="required" type="xsd:string" />
- <xsd:attribute name="type" type="xsd:string" />
- <xsd:attribute name="mimetype" type="xsd:string" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="assembly">
- <xsd:complexType>
- <xsd:attribute name="alias" type="xsd:string" />
- <xsd:attribute name="name" type="xsd:string" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- <xsd:attribute ref="xml:space" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>2.0</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </metadata>
- <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>114, 17</value>
- </metadata>
- <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <data name="toolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIISURBVDhPpZP7S1NxGMbPPxKaXVUkMEq8IpKUCoY/hGgI
- ymqkDYYXcCjDZOANURSjCNGFQUTsl4GXVMxKk62YU4fXQpaIlygHQxBRH8/zwvyaIAYe+HLgnPN8nue9
- HA3nvDTq63oW/jm13XOwvPTB3DYFY5MH+bXfcN8ygfTSMSSXfESicQDxBqdYHwH29g9w2tnZ3UcguIvN
- rR3417exuBJE5N1n/wfwLgXEOc38Bc6xNRHb+/y4nm49G0Bnit2zf9H6bkliE/jKuYxrd6oVgDWfjB+K
- TWeKMyrGEVfowITvD9re/9ABVQrAhh0HHK+ZselMMaN/mvwtDb+aVqkA7HYIwIj3ysfluPTorJnP6Ezx
- oHsD1s5ZXEktUwCOioB5f1CEPR9+wTG6iuiserTo8dkwng7HT/R+XUPF8xlcTjErAOdMcW6NW8STiwG8
- 7vej8oUPN/PsEv3t8Ao0TZP3T1u8uJRkUgAuSYHtO97oLxmXd5t9Ho8aPTK+GzntqNfrLm2fFoihwYOI
- xGIF4KjoGBLzY1OrF9k6OOFxnwDC4wxIMX1G0pMhgVyMNyoA13PAtS7OrJk1PrC69LUdQWxuF6IybHrX
- LRI7JrtZdoDAo1XmbjMyD+tjSXxGcXRmnYg5ttD9QuxDhN0uUgDOmbvNTpPOJaGAo2K36cyaGZvOFIfd
- KlSA8/zRh9ABIDUG+1JpAAAAAElFTkSuQmCC
-</value>
- </data>
- <metadata name="SaveFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>219, 17</value>
- </metadata>
- <metadata name="mnu_queue.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>530, 17</value>
- </metadata>
- <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>414, 17</value>
- </metadata>
- <metadata name="OpenFile.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>314, 17</value>
- </metadata>
- <metadata name="splitContainer1.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA
- IACoJQAAHh0AACAgAAABACAAqBAAAMZCAAAQEAAAAQAgAGgEAABuUwAAKAAAADAAAABgAAAAAQAIAAAA
- AACACgAAAAAAAAAAAAAAAQAAAAAAAAAAAAD///8A/wAAAAD/AAAAAIAAgICAAICAAAAAgAAAAICAAIAA
- AACAAIAAgP//ACAgIADg4OAAIAAAAAAgAABg4CAAQOBAAGBgYAAgYAAAQKDgAAAAIABAwCAAIEAAAECg
- AABg4AAAIGCAAECAoABgoMAAYECgAGDAAABgICAAoKCgAOAAAAAgIAAAAGAAAEDgAABgAAAAIAAgAEAg
- IAAgQGAAIIDAAADg4ABgAGAAgOD/ACCA/wCgAAAAQGAAACCAAAAAoAAAYCAAAAAgIAAgIEAAYGBAAEBg
- YAAAIIAAAGCAAGCAgABAAKAAAICgAACgoACAoKAAIKDAAECgwAAAAOAAQADgAADA4ABgwOAAIODgAADg
- AADA4AAAAEAgAKDgIAAA4EAAYABAAABAYACAAGAAgCBgAGAggABA4KAAAECgAGBAwADgIOAAIEDgAACA
- 4ADgoOAAYAD/ACBg/wAAoP8A4KD/AGD//wAICAgACAAAAAgIAAAAAJgACAAIAAAACAAACAAACBAQACA4
- SAAgYIgAOHCIADhw+AAIGAAAEBAIACg4QAAwYHgAAACIACA4QAAoQFAAKFh4AHh4eAAwaIAAIGiQADh4
- mAAACAgAEAgIABAYGAAgGBgASEhIABhIYAAoUGAAIFBoAChQaAAoWGgAMFhoAChoiAAweJgAKHioACiA
- sAAIEAAACAgQAAgQGAAQGCAAGCAoABhAUAAoSFgAaGhoABhQcAAgWHAAKFhwADhgcAAYWIAAOGiAAIiI
- iAAoaJAAKHCYACh4oAA4gKAAMICoAKioqAAwmNAAEDgAAChYAAAweAAAMIgQAAgYGAAYGBgACBggABAg
- KAAgKCgAKCgoACAwOAA4ODgAKDhIADBQWABYWFgAGEhoADBYcAAYUHgAGFh4ACBYeAAoYHgAKGCAABhY
- iAAgaJgAKICoACiIuAC4uLgAMJDIADiw6AAQCAAAABgAAAggAAAAOAAAMGgAABgQCAAwgAgAEAgQABgQ
- EAAwmBgAGBggAAgYKAAAICgACCAoABgoMAAgKDAAGDBAABg4QAAYOFAAEEBYACBIWAAwSFgAOEhYACBI
- YAAQSGgAOFhoABhIcAAoUHAAQFhwACBgeABAaIAAIGiIADBwiABAcIgAGGCQADhwkABYeJAACBCgAChw
- oAAweKAAKIC4ACiQwAAwmMgAOKjgADBg6ABAsOgAELD4AAgoAAAIMAAAGDAAABhIAAAYUAAAKHgAAACY
- AAAwmAAAAMgAABAACAAIEAgAEBgIABA4CAAYOAgAMHgIABAYEAAYGBAAIBgQACh4EAAwmBAAEBAYABgg
- GAAoIBgAGCAgAAgIKAAgICgAGAgwAAggMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAn2KfdXV1XAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoo2+QIJCJb28Sd3em
- nQAAAFuKqW0aqsd6Y5/DXAAAAAAAAAAAAAAAAAAAAAAAAAB3kAWQkG8SpqaJb28gsncAbIeSroyii21x
- kczIwwAAAAAAAAAAAAAAAAAAAAAAAABoo4mJkLKylm9vb5BvdwwAcZO/fox7z2NjqsOss2MAWwAAAAAA
- AAAAAAAAAAAAAAAAvaGmo5ANlgUFEiBvo1xjq3p6qMTJroBkxXt9cGzFnAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAL2ylgV3vQAAAGOvxMXXq41uh6yVjxqp1YhknwAAAAAAAAAAAAAAAAAAAAAAAAAAAABvsolbAAAA
- +5KneouS2Kx4pZF9ndywsXuvkocAAAAAAAAAAAAAAAAAAAAAAAAAAAB3sncAAAAAdayHca95bH9+cKmv
- fMVucG2B4MYAAAAAAAAAAAAAAAAAAAAAAAAAAAChsqMAAAAAe3VkyHF5kW59cN3eZc/XyXutyot7AAAA
- AAAAAAAAAAAAAAAAAAAAAACjIKEAAACgfv94gX+PituLDI0/aoBxqxqOY8PgbQAAAAAAAAAAAAAAAAAA
- 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
- OAAABwAA//wYAAADAAD/+BgAAAMAAP/AAAAAAwAA/wAAAAADAAD8AAAAAAMAAPwAAAAAAwAA+AAAAAAD
- AADwAAAAAAMAAPAAAAAAAwAA8AAAAAADAADwAAAAAAcAAOAAAAAABwAA8AAAAAAPAADwAAAQAA8AAPAA
- ABgADwAA+AAAHgAHAAD8AAAfgAMAAP4QAA+ADwAA/gAADgADAAD8AAAfAAMAAPAfxD/ABwAA4B/n/+AB
- AADgB+B/wB8AAOADgB+ADwAA8AOAHhAPAAD4BwB/8kcAAPz/gf/nLwAA+P/5/+8/AADwf/n//z8AAPh/
- /P//vwAA+P////+fAAAoAAAAIAAAAEAAAAABAAgAAAAAAIAEAAAAAAAAAAAAAAABAAAAAAAAAAAAAP//
- /wAAAP8AAP//AAAAgACAgIAAgAAAAACAAAAAgIAAgIAAAECg4ABAgKAAYOAgAEDgQAAAIAAAACAgACAg
- IABgIIAAIAAAACBAAAAAYAAAIIAAAGAgIABAYGAAAACgAGCAoACgoKAA4ODgAGDAAAAAACAAYABgAIAg
- YAAAYMAAICAAACBgAABgYAAAQKAAAKDAAAAA4AAAYOAAAABAIAAgQCAAYAAgACBAQABgYEAAIABgACAg
- YAAgQGAAYGBgACBggABgYIAAgACgAKCAoABgIMAAQKDAAGCgwAAgwMAAAADgAIDA4ACgwOAAAODgAIDg
- 4ACA4AAAgIAgAEDgIACgACAAQABgAIAggAAgYP8AAKD/AAgIAAAICAgACAAAABhAWAAoUGAAaGhoADBg
- eAAoaIgAMICoAChggAAACAgAEAgIABgYGAAoUGgAKFhwAChwkAAIGAgACBAQABAgKAAQKDgAIEhgACBQ
- aAAAAHgAIFh4AChgeAAAeHgAeHh4AChogAAwaIAAIGCIADBoiAA4cIgAIGiQADhwkAAoeKgAKICwAAgQ
- AAAIIAAACAAIABhICAAICBAAMIgQABAYGAAYICgAGCgwAEhISAAwSFgAGFBoAChYaAAICHgAOGiAACh4
- oAAweKAAGAAAAAAIAAAAGAAACBgAABAoAAAYUAAAKGAAAChoAAAAeAAAAAAIAAgQCAAQEAgAGP8IACAY
- EAAIEBgAMJAYABggIAAAACgACBAoACgwMAAAKDgAEDA4ADg4OAAoOEAAGDhIACA4SAAAQEgAMEBIAEhQ
- UAAISFgAIEhYAChIWAAwUFgAIEhoAEhYaAAYUHAAMFhwABhYeAAoWHgAIFiAAEhwgACIiIgAGGCQAAAA
- mAAgcJgAKHCYADB4mACYmJgAACjIAEBw+ACo//8ASAAAAFgAAABoAAAAeAAAABAIAABICAAAGCgAAAA4
- AAAYOAAACEAAAAhIAAAoUAAAAFgAACBYAAAAaAAAIGgAADB4AAAAiAAAMIgAAGiIAACAmAAAGAAIADAI
- CABgCAgAEBgIAAggCAAQIAgAECgIAAgwCAAQMAgAODAIABA4CAAYOAgAEEAIABhACAAgQAgAIFAIAChg
- CAAwgAgAMJAIADCoCAAACBAAGBAQABggEAAoIBAAKGAQAChoEAAgeBAAKHgQAEh4EAAY+BAACAAYAAAI
- GAAICBgAEAgYAAAQGAAQEBgAABgYAAgYGAAYMBgAKHgYADCYGAAwoBgAMKgYAGj/GABgCCAACBAgAAgY
- IAAQGCAAGBggACggIABIcCAACAAoABAAKAAAECgAEBAoAAggKAAACDAASAgwAAgQMAAIKDAAECgwAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAARxBSUlJHAAAAAABYWFlY8kYAAAAAAAAAAAAAAAAAAJFgqqRLSzAwBXMAkKJbW1pdSVmE
- AAAAAAAAAAAAAAAAEJdLqhpgYKQFkf9NmVRanHVJVZRQAAAAAAAAAAAAAAAAUY6RO6qXMHNYW5MxdFpm
- TVtPSpAAAAAAAAAAAAAAAAAAAAAFpIYAAFSeW09PU15KU05MaEkAAAAAAAAAAAAAAAAAAEtgAAAAk55j
- ml5Mp2haXUqpW3IAAAAAAAAAAAAAAAAAS0sAAEpJoE5PpZpMZVWnMZyZVQAAAAAAAAAAAAAAAABLMAAA
- cqCeSnppZGZKWzFNaV2ecAAAAAAAAAAAAAAAAEtLAACLVF6iZHROp2eiW1paeWnxAAAAAAAAAAAAAABI
- GmAAAElJSmh6SWNVSk5hZqJ1VXUAAAAAAAAAAAAAlpmjeJAAk12eZXZ5p3WndnZpaUlbZgAAAAAAAAAA
- m2lFRTw8PDZeWV1OlE0xeWlNeVVdZmmZUAAAAAAAjzYKRaysRUVFRa02SXSnYaFNTUxpTFSoTmKTAAAA
- AI8KOkSrrKysrKxErDullF6fVWhiVakLaVWbVZoAAAAAqK2sRKZEqyCsRKummKBZT0xPTHppZVMLqVN4
- cQAAAAA6O6sYGKYYGKsYphgELjejY09KTTZNaWdMNpkAAAAA+zc6XFxcd3d3XASmXEw6PZZiZ6g2ZUw2
- T2QLnwAAAAAdoTtcLcV3pndfLi2jraMtcmNkT05np0xnaXhUAAAAAAD5NKL87xgYd1+eLZ06+1wAVE6o
- p2cKZ2WjjgAAAAAAAAAQo67EcuZuj5jkACue9gAAkTEKeJfbioptRgAAAAAAAACIr0dLVwBXmEeL5Qg4
- AAAAAOnqwNbVb9O5AAAAAAAAAP38RmDae3tfkDqIX0UAAABq3W9v6+2BtssAAAAAAAD9q6v7AFl1dV9f
- mpgIXwAAAABrtG9v7O2BagAAAACSF52fL/AAAAAAAHUAAAAAAAAAAACC1NS+3s/ZzAAAAJ03MjqjdJ0A
- AAC3FIMUtwAAAAAAzr27goK5awAAAAAAWaNgGho3dAAAyr+/v4ODtQAAAMmAAM+2zxMTawAAAAAAAK6z
- kZ1xAAC1un3HVwAAAAAAAAAAawB/ftAAAAAAAABCNUIAAAAAAAAAAF8AAAAAAAAAAEcAAGpGAAAAAAAA
- AEKsEQAAAAAAAAAAlZUAAAAAAAAAAAAAAEgAAAAAAAAAAC3hAAAAAAAAAAAAAAAAAAAAAAAAAAAARgAA
- AAD///////////4BwH/8AAAf/AAAD/4AAA//xgAP/84AB//MAAf/zAAD/8wAA/+MAAP/BAAD/AAAAfAA
- AAHgAAAB4AAAAeAAAAPAAAADwAAAA+AAIAfgADAD8AA8A/gAOAPwgDwDwPv+AcBwfAfAYDkD8GD/Q+P9
- /s/j/P/v8///7ygAAAAQAAAAIAAAAAEACAAAAAAAQAEAAAAAAAAAAAAAAAEAAAAAAAAAAAAA////AFEl
- swBJDW0ABEMwAAJHSQAFDwIAXl9ZAHJtagBwfYQAQVNqAAFtAAAAZgAAAz0CABQ/AQAXQwAAGkAAAA8g
- AQAhSJQAM1SRABw6fgAFVk0ADE48AAplaQAgWgIAMYcMACl7CwAOJwMAAAMtABwPNwAhIQAABxACAA9S
- UAAnQUgAAISfACRoDAAxmwQAK4MHABMpAAA8P1kATBMbACQSVwAKL1EADS5CADFMVQABIF4AJ3CGADB2
- kAAzdlEAMnY1ABMnEwBARooAVVq5ABgATwAWBn0ABh56AAULaQBOeKYAT3WSACpNZwAucpgAMHifADFx
- nwA1b5YAMF93AEBalgBvjecADCLAAAkPpQAbJr4AFiLGAAAJjgAzbIEANGh8AClhgAAzfKEAMHWWADJz
- kwAsW3MAQ4mvADyY9AAtgf8AIpr/ACuk/wBdk9UAG0tkACladQAqbI4AK3GUAC5vjwArbpEALWJ7ACdl
- aAAOaoQAJJ20ABx0gQAeTF8AJ116ACViggAgZosAJmeJAChvlAAhZIgAH1ZyAHVmYwAaPVMAJ19+ACto
- hgAmaIwAKGB9ACFdfAAgY4YAGU5qAFtgYQAYQVgAIVx7ACtrjgAtZYIAJmKAACNhgQAmX3wAIUpdAHp6
- ewARN0wAH1R0ACdXcgApXnoAJ2B+ACligQAdSmAAKiopAGZlZQCRkZEAbm9vAFFSUwAWO08AJFRuACFP
- agAhUm0AHD9RAAMKDgA3NjUAWlpaADk5OQA3NzcAPDk3AAYSGQAVNUgAFjFAAA8jLwABAgQAVQAAAP//
- /wBWAAAA/f//AFcAAAD8//8AWAAAAPz//wBZAAAA/P//AFoAAAD9//8AWwAAAP7//wBcAAAA////AF4A
- AAABAAAAXwAAAAEAAABgAAAAAQAAAGEAAAABAAAAYgAAAAEAAAB3IFIAbWFuAAAAAAAAAAAAAAAAAAAA
- AAC0VWMAtFVjALwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAEAAAAAADgDAACfAQAAPwAAAAEA
- AABAAAAAAQAAAEEAAAABAAAAQgAAAAEAAABFAAAA////AEYAAAD+//8ARwAAAP3//wBIAAAA/P//AEkA
- AAD8//8ASgAAAPz//wBLAAAA/f//AEwAAAD///8ATQAAAAMAAABOAAAABwAAAE8AAAALAAAAUAAAABAA
- AABRAAAAFQAAAFIAAAAZAAAAUwAAABwAAABUAAAAHgAAAFUAAAAeAAAAVgAAAB0AAABXAAAAGgAAAFgA
- AAAWAAAAWQAAABIAAABaAAAADQAAAFsAAAAIAAAAXAAAAAQAAABeAAAA/v//AF8AAAD8//8AAAAAAAAA
- AAAAAAAAAAAAAAAAAI2Oj5CRkpOUlZYAAAAAAACCg4SFhoeIiYqLjAAAAAAAAAB6AHt8fX5/gIEAAAAA
- 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
-</value>
- </data>
-</root> \ No newline at end of file
diff --git a/win/CS/handbrakepineapple.ico b/win/CS/handbrakepineapple.ico
deleted file mode 100644
index 57a056269..000000000
--- a/win/CS/handbrakepineapple.ico
+++ /dev/null
Binary files differ