2 using System.Collections.Generic;
\r
4 using System.Windows.Forms;
\r
5 using System.Drawing;
\r
12 /// This function takes in a Query which has been parsed by QueryParser and
\r
13 /// set's all the GUI widgets correctly.
\r
15 /// <param name="mainWindow"></param>
\r
16 /// <param name="presetQuery">The Parsed CLI Query</param>
\r
17 /// <param name="name">Name of the preset</param>
\r
18 public void presetLoader(frmMain mainWindow, Functions.QueryParser presetQuery, string name)
\r
20 // ---------------------------
\r
22 // ---------------------------
\r
26 // Reset some vaules to stock first to prevent errors.
\r
27 mainWindow.check_iPodAtom.CheckState = CheckState.Unchecked;
\r
29 // Now load all the new settings onto the main window
\r
30 mainWindow.drp_dvdtitle.Text = "Automatic";
\r
31 mainWindow.drop_chapterStart.Text = "Auto";
\r
32 mainWindow.drop_chapterFinish.Text = "Auto";
\r
34 if (presetQuery.Format != null)
\r
36 string destination = mainWindow.text_destination.Text;
\r
37 destination = destination.Replace(".mp4", "." + presetQuery.Format);
\r
38 destination = destination.Replace(".m4v", "." + presetQuery.Format);
\r
39 destination = destination.Replace(".avi", "." + presetQuery.Format);
\r
40 destination = destination.Replace(".mkv", "." + presetQuery.Format);
\r
41 destination = destination.Replace(".ogm", "." + presetQuery.Format);
\r
42 mainWindow.text_destination.Text = destination;
\r
50 mainWindow.drp_videoEncoder.Text = presetQuery.VideoEncoder;
\r
52 if (presetQuery.Format != null)
\r
54 if (presetQuery.Format == "mp4")
\r
55 mainWindow.drop_format.SelectedIndex = 0;
\r
56 else if (presetQuery.Format == "m4v")
\r
57 mainWindow.drop_format.SelectedIndex = 1;
\r
58 else if (presetQuery.Format == "mkv")
\r
59 mainWindow.drop_format.SelectedIndex = 2;
\r
60 else if (presetQuery.Format == "avi")
\r
61 mainWindow.drop_format.SelectedIndex = 3;
\r
62 else if (presetQuery.Format == "ogm")
\r
63 mainWindow.drop_format.SelectedIndex = 4;
\r
66 if (presetQuery.IpodAtom == true)
\r
67 mainWindow.check_iPodAtom.CheckState = CheckState.Checked;
\r
69 mainWindow.check_iPodAtom.CheckState = CheckState.Unchecked;
\r
71 if (presetQuery.OptimizeMP4 == true)
\r
72 mainWindow.check_optimiseMP4.CheckState = CheckState.Checked;
\r
74 mainWindow.check_optimiseMP4.CheckState = CheckState.Unchecked;
\r
78 // Picture Settings Tab
\r
80 mainWindow.check_autoCrop.Checked = true;
\r
81 mainWindow.drp_deInterlace_option.Text = presetQuery.DeInterlace;
\r
82 mainWindow.drp_deNoise.Text = presetQuery.DeNoise;
\r
84 if (presetQuery.Decomb == true)
\r
85 mainWindow.check_decomb.CheckState = CheckState.Checked;
\r
87 mainWindow.check_decomb.CheckState = CheckState.Unchecked;
\r
89 if (presetQuery.DeTelecine == true)
\r
90 mainWindow.check_detelecine.CheckState = CheckState.Checked;
\r
92 mainWindow.check_detelecine.CheckState = CheckState.Unchecked;
\r
94 if (presetQuery.DeBlock != 0)
\r
96 mainWindow.slider_deblock.Value = presetQuery.DeBlock;
\r
97 mainWindow.lbl_deblockVal.Text = presetQuery.DeBlock.ToString();
\r
101 mainWindow.slider_deblock.Value = 4;
\r
102 mainWindow.lbl_deblockVal.Text = "Off";
\r
105 if (presetQuery.Anamorphic == true)
\r
106 mainWindow.drp_anamorphic.SelectedIndex = 1;
\r
108 mainWindow.drp_anamorphic.SelectedIndex = 0;
\r
110 if (presetQuery.LooseAnamorphic == true)
\r
111 mainWindow.drp_anamorphic.SelectedIndex = 2;
\r
114 if (presetQuery.Anamorphic != true)
\r
115 mainWindow.drp_anamorphic.SelectedIndex = 0;
\r
118 if (presetQuery.Width != 0)
\r
119 mainWindow.text_width.Text = presetQuery.Width.ToString();
\r
122 mainWindow.text_width.Text = "";
\r
125 if (presetQuery.Height != 0)
\r
126 mainWindow.text_height.Text = presetQuery.Height.ToString();
\r
129 mainWindow.text_height.Text = "";
\r
134 // Video Settings Tab
\r
136 mainWindow.text_bitrate.Text = presetQuery.AverageVideoBitrate;
\r
137 mainWindow.text_filesize.Text = presetQuery.VideoTargetSize;
\r
138 mainWindow.slider_videoQuality.Value = presetQuery.VideoQuality;
\r
139 if (mainWindow.slider_videoQuality.Value != 0)
\r
141 int ql = presetQuery.VideoQuality;
\r
142 mainWindow.SliderValue.Text = ql.ToString() + "%";
\r
145 if (presetQuery.TwoPass == true)
\r
146 mainWindow.check_2PassEncode.CheckState = CheckState.Checked;
\r
148 mainWindow.check_2PassEncode.CheckState = CheckState.Unchecked;
\r
150 if (presetQuery.Grayscale == true)
\r
151 mainWindow.check_grayscale.CheckState = CheckState.Checked;
\r
153 mainWindow.check_grayscale.CheckState = CheckState.Unchecked;
\r
155 mainWindow.drp_videoFramerate.Text = presetQuery.VideoFramerate;
\r
157 if (presetQuery.TurboFirstPass == true)
\r
158 mainWindow.check_turbo.CheckState = CheckState.Checked;
\r
160 mainWindow.check_turbo.CheckState = CheckState.Unchecked;
\r
162 if (presetQuery.LargeMP4 == true)
\r
163 mainWindow.check_largeFile.CheckState = CheckState.Checked;
\r
166 mainWindow.check_largeFile.CheckState = CheckState.Unchecked;
\r
167 mainWindow.check_largeFile.BackColor = Color.Transparent;
\r
171 // Chapter Markers Tab
\r
172 #region Chapter Markers
\r
174 if (presetQuery.ChapterMarkers == true)
\r
175 mainWindow.Check_ChapterMarkers.CheckState = CheckState.Checked;
\r
177 mainWindow.Check_ChapterMarkers.CheckState = CheckState.Unchecked;
\r
181 // Audio Settings Tab
\r
185 mainWindow.drp_track1Audio.Text = "Automatic";
\r
188 if (presetQuery.AudioEncoder2 != null) // Fix for loading in built in presets. Where 2 encoders but no tracks in the preset.
\r
190 mainWindow.drp_track2Audio.Enabled = true;
\r
191 mainWindow.drp_audsr_2.Enabled = true;
\r
192 mainWindow.drp_audmix_2.Enabled = true;
\r
193 mainWindow.drp_audenc_2.Enabled = true;
\r
194 mainWindow.drp_audbit_2.Enabled = true;
\r
195 mainWindow.drp_audsr_2.Text = "48";
\r
196 mainWindow.drp_track2Audio.Text = "Automatic";
\r
198 else if (presetQuery.AudioTrack2 == "None")
\r
200 mainWindow.drp_track2Audio.Text = "None";
\r
201 mainWindow.drp_track2Audio.SelectedIndex = 0;
\r
202 mainWindow.drp_audsr_2.Enabled = false;
\r
203 mainWindow.drp_audmix_2.Enabled = false;
\r
204 mainWindow.drp_audenc_2.Enabled = false;
\r
205 mainWindow.drp_audbit_2.Enabled = false;
\r
209 mainWindow.drp_track2Audio.Text = presetQuery.AudioTrack2;
\r
210 mainWindow.drp_audsr_2.Enabled = true;
\r
211 mainWindow.drp_audmix_2.Enabled = true;
\r
212 mainWindow.drp_audenc_2.Enabled = true;
\r
213 mainWindow.drp_audbit_2.Enabled = true;
\r
217 if (presetQuery.AudioTrack3 == "None")
\r
219 mainWindow.drp_track3Audio.SelectedIndex = 0;
\r
220 mainWindow.drp_audsr_3.Enabled = false;
\r
221 mainWindow.drp_audmix_3.Enabled = false;
\r
222 mainWindow.drp_audenc_3.Enabled = false;
\r
223 mainWindow.drp_audbit_3.Enabled = false;
\r
224 mainWindow.trackBar3.Enabled = false;
\r
226 mainWindow.drp_track3Audio.Text = "None";
\r
227 mainWindow.drp_audsr_3.Text = "";
\r
228 mainWindow.drp_audmix_3.Text = "Automatic";
\r
229 mainWindow.drp_audenc_3.Text = "";
\r
230 mainWindow.drp_audbit_3.Text = "";
\r
231 mainWindow.trackBar3.Value = 0;
\r
236 mainWindow.drp_track3Audio.Text = presetQuery.AudioTrack3;
\r
237 mainWindow.drp_audsr_3.Enabled = true;
\r
238 mainWindow.drp_audmix_3.Enabled = true;
\r
239 mainWindow.drp_audenc_3.Enabled = true;
\r
240 mainWindow.drp_audbit_3.Enabled = true;
\r
241 mainWindow.trackBar3.Enabled = true;
\r
245 if (presetQuery.AudioTrack4 == "None")
\r
247 mainWindow.drp_track4Audio.SelectedIndex = 0;
\r
248 mainWindow.drp_audsr_4.Enabled = false;
\r
249 mainWindow.drp_audmix_4.Enabled = false;
\r
250 mainWindow.drp_audenc_4.Enabled = false;
\r
251 mainWindow.drp_audbit_4.Enabled = false;
\r
252 mainWindow.trackBar4.Enabled = false;
\r
254 mainWindow.drp_track4Audio.Text = "None";
\r
255 mainWindow.drp_audsr_4.Text = "";
\r
256 mainWindow.drp_audmix_4.Text = "Automatic";
\r
257 mainWindow.drp_audenc_4.Text = "";
\r
258 mainWindow.drp_audbit_4.Text = "";
\r
259 mainWindow.trackBar4.Value = 0;
\r
263 mainWindow.drp_track4Audio.Text = presetQuery.AudioTrack4;
\r
264 mainWindow.drp_audsr_4.Enabled = true;
\r
265 mainWindow.drp_audmix_4.Enabled = true;
\r
266 mainWindow.drp_audenc_4.Enabled = true;
\r
267 mainWindow.drp_audbit_4.Enabled = true;
\r
268 mainWindow.trackBar4.Enabled = true;
\r
271 // Now lets start setting stuff
\r
272 if (presetQuery.AudioEncoder1 != null)
\r
273 mainWindow.drp_audenc_1.Text = presetQuery.AudioEncoder1;
\r
274 mainWindow.drp_audenc_2.Text = presetQuery.AudioEncoder2;
\r
275 mainWindow.drp_audenc_3.Text = presetQuery.AudioEncoder3;
\r
276 mainWindow.drp_audenc_4.Text = presetQuery.AudioEncoder4;
\r
278 mainWindow.drp_audmix_1.Text = presetQuery.AudioTrackMix1;
\r
279 mainWindow.drp_audmix_2.Text = presetQuery.AudioTrackMix2;
\r
280 mainWindow.drp_audmix_3.Text = presetQuery.AudioTrackMix3;
\r
281 mainWindow.drp_audmix_4.Text = presetQuery.AudioTrackMix4;
\r
283 if (presetQuery.AudioBitrate1 != null)
\r
284 mainWindow.drp_audbit_1.Text = presetQuery.AudioBitrate1;
\r
285 mainWindow.drp_audbit_2.Text = presetQuery.AudioBitrate2;
\r
286 mainWindow.drp_audbit_3.Text = presetQuery.AudioBitrate4;
\r
287 mainWindow.drp_audbit_3.Text = presetQuery.AudioBitrate4;
\r
289 if (presetQuery.AudioSamplerate1 != null)
\r
290 mainWindow.drp_audsr_1.Text = presetQuery.AudioSamplerate1;
\r
291 mainWindow.drp_audsr_2.Text = presetQuery.AudioSamplerate2;
\r
292 mainWindow.drp_audsr_3.Text = presetQuery.AudioSamplerate3;
\r
293 mainWindow.drp_audsr_4.Text = presetQuery.AudioSamplerate4;
\r
295 // Dynamic Range Compression (Should be a float but we use double for ease)
\r
297 double actualValue = 0;
\r
299 value = presetQuery.DRC1;
\r
301 value = value - 10;
\r
302 mainWindow.trackBar1.Value = int.Parse(value.ToString());
\r
303 actualValue = presetQuery.DRC1 / 10;
\r
304 mainWindow.lbl_drc1.Text = actualValue.ToString();
\r
306 value = presetQuery.DRC2;
\r
308 value = value - 10;
\r
309 mainWindow.trackBar2.Value = int.Parse(value.ToString());
\r
310 actualValue = presetQuery.DRC2 / 10;
\r
311 mainWindow.lbl_drc2.Text = actualValue.ToString();
\r
313 value = presetQuery.DRC3;
\r
315 value = value - 10;
\r
316 mainWindow.trackBar3.Value = int.Parse(value.ToString());
\r
317 actualValue = presetQuery.DRC3 / 10;
\r
318 mainWindow.lbl_drc3.Text = actualValue.ToString();
\r
320 value = presetQuery.DRC4;
\r
322 value = value - 10;
\r
323 mainWindow.trackBar4.Value = int.Parse(value.ToString());
\r
324 actualValue = presetQuery.DRC4 / 10;
\r
325 mainWindow.lbl_drc4.Text = actualValue.ToString();
\r
329 mainWindow.drp_subtitle.Text = presetQuery.Subtitles;
\r
331 if (presetQuery.ForcedSubtitles == true)
\r
333 mainWindow.check_forced.CheckState = CheckState.Checked;
\r
334 mainWindow.check_forced.Enabled = true;
\r
337 mainWindow.check_forced.CheckState = CheckState.Unchecked;
\r
342 // H264 Tab & Preset Name
\r
344 mainWindow.rtf_x264Query.Text = presetQuery.H264Query;
\r
346 // Set the preset name
\r
347 mainWindow.groupBox_output.Text = "Output Settings (Preset: " + name + ")";
\r