OSDN Git Service

dae22fe18eb27008bde8cbe193a78c809f793afe
[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         /// <summary>\r
15         /// When the form loads, Initialise all the setting components with their correct values\r
16         /// </summary>\r
17         public frmOptions()\r
18         {\r
19             InitializeComponent();\r
20 \r
21             // #############################\r
22             // General\r
23             // #############################\r
24 \r
25             // Enable Tooltips.\r
26             if (Properties.Settings.Default.tooltipEnable == "Checked")\r
27             {\r
28                 check_tooltip.CheckState = CheckState.Checked;\r
29                 ToolTip.Active = true;\r
30             }\r
31 \r
32             // Setup Widgets to match settings.\r
33             if (Properties.Settings.Default.updateStatus == "Checked")\r
34                 check_updateCheck.CheckState = CheckState.Checked;\r
35 \r
36             // enable loading of default user settings.\r
37             if (Properties.Settings.Default.defaultSettings == "Checked")\r
38                 check_userDefaultSettings.CheckState = CheckState.Checked;\r
39 \r
40             // On Encode Completeion Action\r
41             drp_completeOption.Text = Properties.Settings.Default.CompletionOption;\r
42             \r
43             // Enable auto naming feature.\r
44             if (Properties.Settings.Default.autoNaming == "Checked")\r
45                 check_autoNaming.CheckState = CheckState.Checked;\r
46 \r
47             // Store the auto name path\r
48             text_an_path.Text = Properties.Settings.Default.autoNamePath;\r
49             if (text_an_path.Text == string.Empty)\r
50                 text_an_path.Text = "Click 'Browse' to set the default location";\r
51 \r
52             // Store auto name format\r
53             txt_autoNameFormat.Text = Properties.Settings.Default.autoNameFormat;\r
54 \r
55             // #############################\r
56             // Picture Tab\r
57             // #############################\r
58 \r
59             // Store decomb value string\r
60             txt_decomb.Text = Properties.Settings.Default.decomb;\r
61 \r
62             // VLC Path\r
63             txt_vlcPath.Text = Properties.Settings.Default.VLC_Path;\r
64 \r
65             // #############################\r
66             // CLI\r
67             // #############################\r
68 \r
69             // Enable Start CLI minimized\r
70             if (Properties.Settings.Default.cli_minimized == "Checked")\r
71                 check_cli_minimized.CheckState = CheckState.Checked;\r
72 \r
73             // Number of processor cores\r
74             drp_processors.Text = Properties.Settings.Default.Processors;\r
75 \r
76             // Priority level for encodes\r
77             drp_Priority.Text = Properties.Settings.Default.processPriority;\r
78 \r
79             // Save individual log files\r
80             if (Properties.Settings.Default.saveLog == "Checked")\r
81                 check_keepLogs.CheckState = CheckState.Checked;\r
82 \r
83             // Save logs in the same directory as encoded files\r
84             if (Properties.Settings.Default.saveLogWithVideo == "Checked")\r
85                 check_saveLogWithVideo.CheckState = CheckState.Checked;\r
86 \r
87             // The saved log path\r
88             text_logPath.Text = Properties.Settings.Default.saveLogPath;\r
89 \r
90 \r
91             // #############################\r
92             // Advanced\r
93             // #############################\r
94 \r
95             // Unstable Snapshot checking should only be visible for stable builds.\r
96             if (Properties.Settings.Default.hb_build.ToString().EndsWith("1"))\r
97             {\r
98                 lbl_appcastUnstable.Visible = false;\r
99                 check_snapshot.Visible = false;\r
100             }\r
101 \r
102             // Enable snapshot updating\r
103             if (Properties.Settings.Default.checkSnapshot == "Checked")\r
104                 check_snapshot.CheckState = CheckState.Checked;\r
105 \r
106             // Enable GUI DVD Drive detection code\r
107             if (Properties.Settings.Default.drive_detection == "Checked")\r
108                 btn_drive_detect.CheckState = CheckState.Checked;\r
109 \r
110             if (Properties.Settings.Default.QueryEditorTab == "Checked")\r
111                 check_queryEditorTab.CheckState = CheckState.Checked;\r
112 \r
113             // Enable snapshot updating\r
114             if (Properties.Settings.Default.MainWindowMinimize == "Checked")\r
115                 check_mainMinimize.CheckState = CheckState.Checked;\r
116         }\r
117 \r
118         #region General\r
119         private void check_updateCheck_CheckedChanged(object sender, EventArgs e)\r
120         {\r
121             Properties.Settings.Default.updateStatus = check_updateCheck.CheckState.ToString();\r
122         }\r
123 \r
124         private void check_userDefaultSettings_CheckedChanged(object sender, EventArgs e)\r
125         {\r
126             Properties.Settings.Default.defaultSettings = check_userDefaultSettings.CheckState.ToString();\r
127         }\r
128 \r
129         private void check_tooltip_CheckedChanged(object sender, EventArgs e)\r
130         {\r
131             Properties.Settings.Default.tooltipEnable = check_tooltip.CheckState.ToString();\r
132         }\r
133         private void drp_completeOption_SelectedIndexChanged(object sender, EventArgs e)\r
134         {\r
135             Properties.Settings.Default.CompletionOption = drp_completeOption.Text;\r
136         }\r
137 \r
138         private void check_autoNaming_CheckedChanged(object sender, EventArgs e)\r
139         {\r
140             Properties.Settings.Default.autoNaming = check_autoNaming.CheckState.ToString();\r
141         }\r
142 \r
143         private void txt_autoNameFormat_TextChanged(object sender, EventArgs e)\r
144         {\r
145             Properties.Settings.Default.autoNameFormat = txt_autoNameFormat.Text;\r
146         }\r
147 \r
148         private void btn_browse_Click(object sender, EventArgs e)\r
149         {\r
150             pathFinder.ShowDialog();\r
151             text_an_path.Text = pathFinder.SelectedPath;\r
152         }\r
153 \r
154         private void text_an_path_TextChanged(object sender, EventArgs e)\r
155         {\r
156             if (text_an_path.Text == string.Empty)\r
157             {\r
158                 Properties.Settings.Default.autoNamePath = "";\r
159                 text_an_path.Text = "Click 'Browse' to set the default location";\r
160             }\r
161             else\r
162                 Properties.Settings.Default.autoNamePath = text_an_path.Text;\r
163         }\r
164         #endregion\r
165 \r
166         #region Picture\r
167         private void txt_decomb_TextChanged(object sender, EventArgs e)\r
168         {\r
169             Properties.Settings.Default.decomb = txt_decomb.Text;\r
170         }\r
171 \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 check_keepLogs_CheckedChanged(object sender, EventArgs e)\r
201         {\r
202             Properties.Settings.Default.saveLog = check_keepLogs.CheckState.ToString();\r
203         }\r
204 \r
205         private void check_saveLogWithVideo_CheckedChanged(object sender, EventArgs e)\r
206         {\r
207             Properties.Settings.Default.saveLogWithVideo = check_saveLogWithVideo.CheckState.ToString();\r
208             if (check_saveLogWithVideo.Checked == true)\r
209                 text_logPath.Text = "";\r
210         }\r
211 \r
212         private void btn_saveLog_Click(object sender, EventArgs e)\r
213         {\r
214             pathFinder.SelectedPath = String.Empty;\r
215             pathFinder.ShowDialog();\r
216             if (pathFinder.SelectedPath != string.Empty)\r
217                 text_logPath.Text = pathFinder.SelectedPath;\r
218         }\r
219 \r
220         private void text_logPath_TextChanged(object sender, EventArgs e)\r
221         {\r
222             Properties.Settings.Default.saveLogPath = text_logPath.Text;\r
223             if (text_logPath.Text != String.Empty)\r
224                 check_saveLogWithVideo.Checked = false;\r
225         }\r
226 \r
227         #endregion\r
228 \r
229         #region Advanced\r
230         private void btn_drive_detect_CheckedChanged(object sender, EventArgs e)\r
231         {\r
232             Properties.Settings.Default.drive_detection = btn_drive_detect.CheckState.ToString();\r
233         }\r
234 \r
235         private void check_mainMinimize_CheckedChanged(object sender, EventArgs e)\r
236         {\r
237             Properties.Settings.Default.MainWindowMinimize = check_mainMinimize.CheckState.ToString();\r
238         }\r
239 \r
240         private void check_queryEditorTab_CheckedChanged(object sender, EventArgs e)\r
241         {\r
242             Properties.Settings.Default.QueryEditorTab = check_queryEditorTab.CheckState.ToString();\r
243         }\r
244 \r
245         private void check_snapshot_CheckedChanged(object sender, EventArgs e)\r
246         {\r
247             Properties.Settings.Default.checkSnapshot = check_snapshot.CheckState.ToString();\r
248         }\r
249         #endregion\r
250 \r
251         private void btn_close_Click(object sender, EventArgs e)\r
252         {\r
253             Properties.Settings.Default.Save(); // Small hack for Vista. Seems to work fine on XP without this\r
254             this.Close();\r
255         }\r
256     }\r
257 }