summaryrefslogtreecommitdiffstats
path: root/win/C#/Controls/Deinterlace.cs
diff options
context:
space:
mode:
authorsr55 <[email protected]>2009-02-05 21:52:07 +0000
committersr55 <[email protected]>2009-02-05 21:52:07 +0000
commitadaec0754c7c57be772c4deb070d337c12b2454d (patch)
tree583a122fe31acd0f818fb617fec893423e184b8f /win/C#/Controls/Deinterlace.cs
parentb10c9cec2dd0426e6df05894d7888c0cea874a89 (diff)
WinGui:
- Picture filters now have their own tab. - Deinterlace, Decomb, Denoise and Detelecine are now custom controls with optional passthru string values - Preset system updated to handle new controls and custom string values for filters. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2121 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'win/C#/Controls/Deinterlace.cs')
-rw-r--r--win/C#/Controls/Deinterlace.cs105
1 files changed, 105 insertions, 0 deletions
diff --git a/win/C#/Controls/Deinterlace.cs b/win/C#/Controls/Deinterlace.cs
new file mode 100644
index 000000000..7acfed826
--- /dev/null
+++ b/win/C#/Controls/Deinterlace.cs
@@ -0,0 +1,105 @@
+/* Deinterlace.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
+{
+ public partial class Deinterlace : UserControl
+ {
+ public Deinterlace()
+ {
+ InitializeComponent();
+ drop_deinterlace.SelectedIndex = 0;
+ }
+
+ private void drop_detelecine_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ if (drop_deinterlace.Text == "Custom")
+ text_custom.Visible = true;
+ else
+ text_custom.Visible = false;
+
+ valueChanged(null);
+ }
+
+ public string getDropValue
+ {
+ get { return drop_deinterlace.Text; }
+ }
+
+ public string getCustomValue
+ {
+ get { return text_custom.Text; }
+ }
+
+ public string getCLIQuery
+ {
+ get
+ {
+ string query;
+ switch (drop_deinterlace.Text)
+ {
+ case "None":
+ query = "";
+ break;
+ case "Fast":
+ query = " --deinterlace=\"fast\"";
+ break;
+ case "Slow":
+ query = " --deinterlace=\"slow\"";
+ break;
+ case "Slower":
+ query = " --deinterlace=\"slower\"";
+ break;
+ case "Custom":
+ query = " --deinterlace=\"" + text_custom.Text + "\"";
+ break;
+ default:
+ query = "";
+ break;
+ }
+ return query;
+ }
+ }
+
+ public void setOption(string value)
+ {
+ text_custom.Text = "";
+ text_custom.Visible = false;
+ switch (value)
+ {
+
+ case "None":
+ drop_deinterlace.SelectedIndex = 0;
+ break;
+ case "Fast":
+ drop_deinterlace.SelectedIndex = 1;
+ break;
+ case "Slow":
+ drop_deinterlace.SelectedIndex = 2;
+ break;
+ case "Slower":
+ drop_deinterlace.SelectedIndex = 3;
+
+ break;
+ default:
+ drop_deinterlace.SelectedIndex = 4;
+ text_custom.Text = value;
+ text_custom.Visible = true;
+ break;
+ }
+ }
+
+ public event EventHandler onChange;
+ protected virtual void valueChanged(EventArgs e)
+ {
+ if (onChange != null)
+ onChange(this, e);
+ }
+
+ }
+}