OSDN Git Service

34ccef623010cb865444a6debea85c2176b38987
[handbrake-jp/handbrake-jp-git.git] / win / C# / frmOptions.cs
1 /*  frmOptions.cs $\r
2         \r
3            This file is part of the HandBrake source code.\r
4            Homepage: <http://handbrake.fr>.\r
5            It may be used under the terms of the GNU General Public License. */\r
6 \r
7 using System;\r
8 using System.Windows.Forms;\r
9 \r
10 namespace Handbrake\r
11 {\r
12     public partial class frmOptions : Form\r
13     {\r
14         public frmOptions()\r
15         {\r
16             InitializeComponent();\r
17 \r
18             // #############################\r
19             // General\r
20             // #############################\r
21 \r
22             // Enable Tooltips.\r
23             if (Properties.Settings.Default.tooltipEnable == "Checked")\r
24             {\r
25                 check_tooltip.CheckState = CheckState.Checked;\r
26                 ToolTip.Active = true;\r
27             }\r
28 \r
29             // Setup Widgets to match settings.\r
30             if (Properties.Settings.Default.updateStatus == "Checked")\r
31                 check_updateCheck.CheckState = CheckState.Checked;\r
32 \r
33             // enable loading of default user settings.\r
34             if (Properties.Settings.Default.defaultSettings == "Checked")\r
35                 check_userDefaultSettings.CheckState = CheckState.Checked;\r
36 \r
37             // On Encode Completeion Action\r
38             drp_completeOption.Text = Properties.Settings.Default.CompletionOption;\r
39             \r
40             // Enable auto naming feature.\r
41             if (Properties.Settings.Default.autoNaming == "Checked")\r
42                 check_autoNaming.CheckState = CheckState.Checked;\r
43 \r
44             // Store the auto name path\r
45             text_an_path.Text = Properties.Settings.Default.autoNamePath;\r
46             if (text_an_path.Text == string.Empty)\r
47                 text_an_path.Text = "Click 'Browse' to set the default location";\r
48 \r
49             // Store auto name format\r
50             txt_autoNameFormat.Text = Properties.Settings.Default.autoNameFormat;\r
51 \r
52             // #############################\r
53             // Picture Tab\r
54             // #############################\r
55 \r
56             // VLC Path\r
57             txt_vlcPath.Text = Properties.Settings.Default.VLC_Path;\r
58 \r
59             // #############################\r
60             // CLI\r
61             // #############################\r
62 \r
63             // Enable Start CLI minimized\r
64             if (Properties.Settings.Default.cli_minimized == "Checked")\r
65                 check_cli_minimized.CheckState = CheckState.Checked;\r
66 \r
67             // Number of processor cores\r
68             drp_processors.Text = Properties.Settings.Default.Processors;\r
69 \r
70             // Priority level for encodes\r
71             drp_Priority.Text = Properties.Settings.Default.processPriority;\r
72 \r
73             // Log Verbosity Level\r
74             cb_logVerboseLvl.SelectedIndex = Properties.Settings.Default.verboseLevel;\r
75 \r
76             // Save individual log files\r
77             if (Properties.Settings.Default.saveLog == "Checked")\r
78                 check_keepLogs.CheckState = CheckState.Checked;\r
79 \r
80             // Save logs in the same directory as encoded files\r
81             if (Properties.Settings.Default.saveLogWithVideo == "Checked")\r
82                 check_saveLogWithVideo.CheckState = CheckState.Checked;\r
83 \r
84             // The saved log path\r
85             text_logPath.Text = Properties.Settings.Default.saveLogPath;\r
86 \r
87 \r
88             // #############################\r
89             // Advanced\r
90             // #############################\r
91 \r
92             // Unstable Snapshot checking should only be visible for stable builds.\r
93             if (Properties.Settings.Default.hb_build.ToString().EndsWith("1"))\r
94             {\r
95                 lbl_appcastUnstable.Visible = false;\r
96                 check_snapshot.Visible = false;\r
97             }\r
98 \r
99             // Enable snapshot updating\r
100             if (Properties.Settings.Default.checkSnapshot == "Checked")\r
101                 check_snapshot.CheckState = CheckState.Checked;\r
102 \r
103             // Enable GUI DVD Drive detection code\r
104             if (Properties.Settings.Default.drive_detection == "Checked")\r
105                 btn_drive_detect.CheckState = CheckState.Checked;\r
106 \r
107             // Enable / Disable Query editor tab\r
108             if (Properties.Settings.Default.QueryEditorTab == "Checked")\r
109                 check_queryEditorTab.CheckState = CheckState.Checked;\r
110 \r
111             // Enable snapshot updating\r
112             if (Properties.Settings.Default.MainWindowMinimize == "Checked")\r
113                 check_mainMinimize.CheckState = CheckState.Checked;\r
114 \r
115             // x264 step\r
116             drop_x264step.SelectedItem = Properties.Settings.Default.x264cqstep;\r
117 \r
118             // Use Experimental dvdnav\r
119             if (Properties.Settings.Default.dvdnav == "Checked")\r
120                 check_dvdnav.CheckState = CheckState.Checked;\r
121         }\r
122 \r
123         #region General\r
124         private void check_updateCheck_CheckedChanged(object sender, EventArgs e)\r
125         {\r
126             Properties.Settings.Default.updateStatus = check_updateCheck.CheckState.ToString();\r
127         }\r
128 \r
129         private void check_userDefaultSettings_CheckedChanged(object sender, EventArgs e)\r
130         {\r
131             Properties.Settings.Default.defaultSettings = check_userDefaultSettings.CheckState.ToString();\r
132         }\r
133 \r
134         private void check_tooltip_CheckedChanged(object sender, EventArgs e)\r
135         {\r
136             Properties.Settings.Default.tooltipEnable = check_tooltip.CheckState.ToString();\r
137         }\r
138         private void drp_completeOption_SelectedIndexChanged(object sender, EventArgs e)\r
139         {\r
140             Properties.Settings.Default.CompletionOption = drp_completeOption.Text;\r
141         }\r
142 \r
143         private void check_autoNaming_CheckedChanged(object sender, EventArgs e)\r
144         {\r
145             Properties.Settings.Default.autoNaming = check_autoNaming.CheckState.ToString();\r
146         }\r
147 \r
148         private void txt_autoNameFormat_TextChanged(object sender, EventArgs e)\r
149         {\r
150             Properties.Settings.Default.autoNameFormat = txt_autoNameFormat.Text;\r
151         }\r
152 \r
153         private void btn_browse_Click(object sender, EventArgs e)\r
154         {\r
155             pathFinder.ShowDialog();\r
156             text_an_path.Text = pathFinder.SelectedPath;\r
157         }\r
158 \r
159         private void text_an_path_TextChanged(object sender, EventArgs e)\r
160         {\r
161             if (text_an_path.Text == string.Empty)\r
162             {\r
163                 Properties.Settings.Default.autoNamePath = "";\r
164                 text_an_path.Text = "Click 'Browse' to set the default location";\r
165             }\r
166             else\r
167                 Properties.Settings.Default.autoNamePath = text_an_path.Text;\r
168         }\r
169         #endregion\r
170 \r
171         #region Picture\r
172         private void btn_vlcPath_Click(object sender, EventArgs e)\r
173         {\r
174             openFile_vlc.ShowDialog();\r
175             if (openFile_vlc.FileName != string.Empty)\r
176                 txt_vlcPath.Text = openFile_vlc.FileName;\r
177         }\r
178         private void txt_vlcPath_TextChanged(object sender, EventArgs e)\r
179         {\r
180             Properties.Settings.Default.VLC_Path = txt_vlcPath.Text;\r
181         }\r
182         #endregion\r
183 \r
184         #region CLI\r
185         private void check_cli_minimized_CheckedChanged(object sender, EventArgs e)\r
186         {\r
187             Properties.Settings.Default.cli_minimized = check_cli_minimized.CheckState.ToString();\r
188         }\r
189 \r
190         private void drp_processors_SelectedIndexChanged(object sender, EventArgs e)\r
191         {\r
192             Properties.Settings.Default.Processors = drp_processors.Text;\r
193         }\r
194 \r
195         private void drp_Priority_SelectedIndexChanged(object sender, EventArgs e)\r
196         {\r
197             Properties.Settings.Default.processPriority = drp_Priority.Text;\r
198         }\r
199 \r
200         private void cb_logVerboseLvl_SelectedIndexChanged(object sender, EventArgs e)\r
201         {\r
202             Properties.Settings.Default.verboseLevel = cb_logVerboseLvl.SelectedIndex;\r
203         }\r
204 \r
205         private void check_keepLogs_CheckedChanged(object sender, EventArgs e)\r
206         {\r
207             Properties.Settings.Default.saveLog = check_keepLogs.CheckState.ToString();\r
208         }\r
209 \r
210         private void check_saveLogWithVideo_CheckedChanged(object sender, EventArgs e)\r
211         {\r
212             Properties.Settings.Default.saveLogWithVideo = check_saveLogWithVideo.CheckState.ToString();\r
213             if (check_saveLogWithVideo.Checked)\r
214                 text_logPath.Text = "";\r
215         }\r
216 \r
217         private void btn_saveLog_Click(object sender, EventArgs e)\r
218         {\r
219             pathFinder.SelectedPath = String.Empty;\r
220             pathFinder.ShowDialog();\r
221             if (pathFinder.SelectedPath != string.Empty)\r
222                 text_logPath.Text = pathFinder.SelectedPath;\r
223         }\r
224 \r
225         private void text_logPath_TextChanged(object sender, EventArgs e)\r
226         {\r
227             Properties.Settings.Default.saveLogPath = text_logPath.Text;\r
228             if (text_logPath.Text != String.Empty)\r
229                 check_saveLogWithVideo.Checked = false;\r
230         }\r
231 \r
232         #endregion\r
233 \r
234         #region Advanced\r
235         private void btn_drive_detect_CheckedChanged(object sender, EventArgs e)\r
236         {\r
237             Properties.Settings.Default.drive_detection = btn_drive_detect.CheckState.ToString();\r
238         }\r
239 \r
240         private void check_mainMinimize_CheckedChanged(object sender, EventArgs e)\r
241         {\r
242             Properties.Settings.Default.MainWindowMinimize = check_mainMinimize.CheckState.ToString();\r
243         }\r
244 \r
245         private void check_queryEditorTab_CheckedChanged(object sender, EventArgs e)\r
246         {\r
247             Properties.Settings.Default.QueryEditorTab = check_queryEditorTab.CheckState.ToString();\r
248         }\r
249 \r
250         private void check_snapshot_CheckedChanged(object sender, EventArgs e)\r
251         {\r
252             Properties.Settings.Default.checkSnapshot = check_snapshot.CheckState.ToString();\r
253         }\r
254 \r
255         private void x264step_SelectedIndexChanged(object sender, EventArgs e)\r
256         {\r
257             Properties.Settings.Default.x264cqstep = drop_x264step.Text;\r
258         }\r
259 \r
260         private void check_dvdnav_CheckedChanged(object sender, EventArgs e)\r
261         {\r
262             Properties.Settings.Default.dvdnav = check_dvdnav.CheckState.ToString();\r
263         } \r
264         #endregion\r
265 \r
266         private void btn_close_Click(object sender, EventArgs e)\r
267         {\r
268             Properties.Settings.Default.Save(); // Small hack for Vista. Seems to work fine on XP without this\r
269             this.Close();\r
270         }\r
271 \r
272                \r
273     }\r
274 }