2 using System.Windows.Forms;
\r
4 namespace Handbrake.Controls
\r
6 public partial class Filters : UserControl
\r
8 public event EventHandler FilterSettingsChanged;
\r
12 InitializeComponent();
\r
13 drop_decomb.SelectedIndex = 0;
\r
14 drop_deinterlace.SelectedIndex = 0;
\r
15 drop_denoise.SelectedIndex = 0;
\r
16 drop_detelecine.SelectedIndex = 0;
\r
20 private void drop_detelecine_SelectedIndexChanged(object sender, EventArgs e)
\r
22 text_customDT.Visible = drop_detelecine.Text == "カスタム";
\r
23 // A Filter has changed so raise a FilterSettingsChanged event.
\r
24 if (this.FilterSettingsChanged != null)
\r
25 this.FilterSettingsChanged(this, new EventArgs());
\r
27 private void drop_decomb_SelectedIndexChanged(object sender, EventArgs e)
\r
29 text_customDC.Visible = drop_decomb.Text == "カスタム";
\r
30 if (drop_decomb.SelectedIndex != 0 && drop_deinterlace.SelectedIndex != 0)
\r
31 drop_deinterlace.SelectedIndex = 0;
\r
33 // A Filter has changed so raise a FilterSettingsChanged event.
\r
34 if (this.FilterSettingsChanged != null)
\r
35 this.FilterSettingsChanged(this, new EventArgs());
\r
37 private void drop_deinterlace_SelectedIndexChanged(object sender, EventArgs e)
\r
39 text_customDI.Visible = drop_deinterlace.Text == "カスタム";
\r
40 if (drop_decomb.SelectedIndex != 0 && drop_deinterlace.SelectedIndex != 0)
\r
41 drop_decomb.SelectedIndex = 0;
\r
43 // A Filter has changed so raise a FilterSettingsChanged event.
\r
44 if (this.FilterSettingsChanged != null)
\r
45 this.FilterSettingsChanged(this, new EventArgs());
\r
47 private void drop_denoise_SelectedIndexChanged(object sender, EventArgs e)
\r
49 text_customDN.Visible = drop_denoise.Text == "カスタム";
\r
51 // A Filter has changed so raise a FilterSettingsChanged event.
\r
52 if (this.FilterSettingsChanged != null)
\r
53 this.FilterSettingsChanged(this, new EventArgs());
\r
55 private void slider_deblock_Scroll(object sender, EventArgs e)
\r
57 lbl_deblockVal.Text = slider_deblock.Value == 4 ? "Off" : slider_deblock.Value.ToString();
\r
59 // A Filter has changed so raise a FilterSettingsChanged event.
\r
60 if (this.FilterSettingsChanged != null)
\r
61 this.FilterSettingsChanged(this, new EventArgs());
\r
64 // Returns the CLI query for the query generator.
\r
65 public string getCLIQuery
\r
71 switch (drop_detelecine.Text) // DeTelecine
\r
77 query += " --detelecine";
\r
80 query += " --detelecine=\"" + text_customDT.Text + "\"";
\r
88 switch (drop_decomb.Text) // Decomb
\r
94 query += " --decomb";
\r
97 query += " --decomb=\"" + text_customDC.Text + "\"";
\r
104 switch (drop_deinterlace.Text) // DeInterlace
\r
110 query += " --deinterlace=\"fast\"";
\r
113 query += " --deinterlace=\"slow\"";
\r
116 query += " --deinterlace=\"slower\"";
\r
119 query += " --deinterlace=\"" + text_customDI.Text + "\"";
\r
126 switch (drop_denoise.Text) // Denoise
\r
132 query += " --denoise=\"weak\"";
\r
135 query += " --denoise=\"medium\"";
\r
138 query += " --denoise=\"strong\"";
\r
141 query += " --denoise=\"" + text_customDN.Text + "\"";
\r
148 if (slider_deblock.Value != 4)
\r
149 query += " --deblock=" + slider_deblock.Value;
\r
151 if (check_grayscale.Checked)
\r
158 // Setup for each component for the preset loader.
\r
159 // PresetLoaderから呼び出される。引数には英語が入るので、下記は日本語化不要
\r
160 public void setDeTelecine(string value)
\r
162 text_customDT.Text = "";
\r
163 text_customDT.Visible = false;
\r
167 drop_detelecine.SelectedIndex = 0;
\r
170 drop_detelecine.SelectedIndex = 2;
\r
173 drop_detelecine.SelectedIndex = 1;
\r
174 text_customDT.Text = value;
\r
175 text_customDT.Visible = true;
\r
179 public void setDeNoise(string value)
\r
181 text_customDN.Text = "";
\r
182 text_customDN.Visible = false;
\r
186 drop_denoise.SelectedIndex = 0;
\r
189 drop_denoise.SelectedIndex = 2;
\r
192 drop_denoise.SelectedIndex = 3;
\r
195 drop_denoise.SelectedIndex = 4;
\r
198 drop_denoise.SelectedIndex = 1;
\r
199 text_customDN.Text = value;
\r
200 text_customDN.Visible = true;
\r
204 public void setDeInterlace(string value)
\r
206 text_customDI.Text = "";
\r
207 text_customDI.Visible = false;
\r
212 drop_deinterlace.SelectedIndex = 0;
\r
215 drop_deinterlace.SelectedIndex = 2;
\r
218 drop_deinterlace.SelectedIndex = 3;
\r
221 drop_deinterlace.SelectedIndex = 4;
\r
225 drop_deinterlace.SelectedIndex = 1;
\r
226 text_customDI.Text = value;
\r
227 text_customDI.Visible = true;
\r
231 public void setDecomb(string value)
\r
233 text_customDC.Text = "";
\r
234 text_customDC.Visible = false;
\r
238 drop_decomb.SelectedIndex = 0;
\r
241 drop_decomb.SelectedIndex = 2;
\r
244 drop_decomb.SelectedIndex = 1;
\r
245 text_customDC.Text = value;
\r
246 text_customDC.Visible = true;
\r
250 public void setDeBlock(int value)
\r
254 slider_deblock.Value = value;
\r
255 lbl_deblockVal.Text = value.ToString();
\r
259 slider_deblock.Value = 4;
\r
260 lbl_deblockVal.Text = "Off";
\r
263 public void setGrayScale(bool value)
\r
265 check_grayscale.CheckState = value ? CheckState.Checked : CheckState.Unchecked;
\r