2 * To change this template, choose Tools | Templates
3 * and open the template in the editor.
9 * Created on 2011/08/20, 16:33:03
11 package yukihane.inqubus.gui;
13 import java.util.Arrays;
14 import java.util.List;
15 import javax.swing.DefaultListModel;
16 import javax.swing.GroupLayout;
17 import javax.swing.GroupLayout.Alignment;
18 import javax.swing.JButton;
19 import javax.swing.JFrame;
20 import javax.swing.JPanel;
21 import javax.swing.LayoutStyle.ComponentPlacement;
22 import yukihane.inqubus.Config;
28 public class ConfigDialog extends javax.swing.JDialog {
29 private static final long serialVersionUID = 1L;
31 /** Creates new form Properties */
32 public ConfigDialog() {
36 public ConfigDialog(JFrame owner){
42 /** This method is called from within the constructor to
43 * initialize the form.
44 * WARNING: Do NOT modify this code. The content of this method is
45 * always regenerated by the Form Editor.
47 @SuppressWarnings("unchecked")
48 // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
49 private void initComponents() {
51 buttonGroup1 = new javax.swing.ButtonGroup();
52 jTabbedPane1 = new javax.swing.JTabbedPane();
53 pnlNetwork = new javax.swing.JPanel();
54 pnlAccount = new javax.swing.JPanel();
55 lblMail = new javax.swing.JLabel();
56 fldMail = new javax.swing.JTextField();
57 lblPassword = new javax.swing.JLabel();
58 fldPassword = new javax.swing.JTextField();
59 pnlProxy = new javax.swing.JPanel();
60 cbProxyUse = new javax.swing.JCheckBox();
61 lblProxyHost = new javax.swing.JLabel();
62 lblProxyPort = new javax.swing.JLabel();
63 fldProxyHost = new javax.swing.JTextField();
64 fldProxyPort = new javax.swing.JTextField();
65 pnlFile = new javax.swing.JPanel();
66 pnlFileVideo = new javax.swing.JPanel();
67 lblVideoDir = new javax.swing.JLabel();
68 lblVideoFileNamepattern = new javax.swing.JLabel();
69 fldVideoDir = new javax.swing.JTextField();
70 fldVideoFileNamePattern = new javax.swing.JTextField();
71 btnVideoDir = new javax.swing.JButton();
72 cbVideoLocal = new javax.swing.JCheckBox();
73 pnlFileComment = new javax.swing.JPanel();
74 lblCommentDir = new javax.swing.JLabel();
75 lblCommentFileNamePattern = new javax.swing.JLabel();
76 fldCommentDir = new javax.swing.JTextField();
77 fldCommentFileNamePattern = new javax.swing.JTextField();
78 btnCommentDir = new javax.swing.JButton();
79 cbCommentLocal = new javax.swing.JCheckBox();
80 pnlFileOutput = new javax.swing.JPanel();
81 lblOutputDir = new javax.swing.JLabel();
82 lblOutputFileNamePattern = new javax.swing.JLabel();
83 fldOutputDir = new javax.swing.JTextField();
84 fldOutputFileNamePattern = new javax.swing.JTextField();
85 btnOutputDir = new javax.swing.JButton();
86 cbOutputEnable = new javax.swing.JCheckBox();
87 cbOutputCommentOverlay = new javax.swing.JCheckBox();
88 cbOutputDisplayProgress = new javax.swing.JCheckBox();
89 pnlComment = new javax.swing.JPanel();
90 pnlCommentStandard = new javax.swing.JPanel();
91 lblCommentSize = new javax.swing.JLabel();
92 cbCommentSizeAuto = new javax.swing.JCheckBox();
93 lblCommentSizeManual = new javax.swing.JLabel();
94 fldCommentSizeManual = new javax.swing.JTextField();
95 lblCommentMinSize = new javax.swing.JLabel();
96 cbCommentMinSizeAuto = new javax.swing.JCheckBox();
97 fldCommentMinSizeManual = new javax.swing.JTextField();
98 lblCommentMinSizeManual = new javax.swing.JLabel();
99 lblCommentDisplayMax = new javax.swing.JLabel();
100 cbCommentDisplaySizeDefault = new javax.swing.JCheckBox();
101 lblCommentDisplayMaxManual = new javax.swing.JLabel();
102 fldCommentDisplaySizeManual = new javax.swing.JTextField();
103 pnlCommentAdvanced = new javax.swing.JPanel();
104 lblFontPath = new javax.swing.JLabel();
105 cbFontSizeArrangeDisable = new javax.swing.JCheckBox();
106 cbCommentOpaque = new javax.swing.JCheckBox();
107 fldFontPath = new javax.swing.JTextField();
108 btnFontPath = new javax.swing.JButton();
109 lblFontIndex = new javax.swing.JLabel();
110 lblFontShadow = new javax.swing.JLabel();
111 fldFontIndex = new javax.swing.JTextField();
112 fldFontShadow = new javax.swing.JTextField();
113 pnlFfmpeg = new javax.swing.JPanel();
114 jPanel10 = new javax.swing.JPanel();
115 lblFfmpegPath = new javax.swing.JLabel();
116 lblFfmpegDllPath = new javax.swing.JLabel();
117 fldFfmpegPath = new javax.swing.JTextField();
118 fldFfmpegDllPath = new javax.swing.JTextField();
119 btnFfmpegPath = new javax.swing.JButton();
120 btnFfmpegDllPath = new javax.swing.JButton();
121 pnlFfmpegParam = new javax.swing.JPanel();
122 rbFfmpegOptionFile = new javax.swing.JRadioButton();
123 rbFfmpegOptionDirectInput = new javax.swing.JRadioButton();
124 cmbFfmpegOptionFile = new javax.swing.JComboBox();
125 pnlFfmpegParamOption = new javax.swing.JPanel();
126 lblFfmpegOptionExtension = new javax.swing.JLabel();
127 lblFfmpegOptionMain = new javax.swing.JLabel();
128 lblFfmpegOptionIn = new javax.swing.JLabel();
129 lblFfmpegOptionOut = new javax.swing.JLabel();
130 lblFfmpegOptionAvfilter = new javax.swing.JLabel();
131 cbFfmpegOptionResize = new javax.swing.JCheckBox();
132 lblFfmpegOptionResizeWidth = new javax.swing.JLabel();
133 fldFfmpegOptionResizeWidth = new javax.swing.JTextField();
134 lblFfmpegOptionResizeHeight = new javax.swing.JLabel();
135 fldFfmpegOptionResizeHeight = new javax.swing.JTextField();
136 cbFfmpegOptionKeepAspect = new javax.swing.JCheckBox();
137 fldFfmpegOptionExtension = new javax.swing.JTextField();
138 fldFfmpegOptionMain = new javax.swing.JTextField();
139 fldFfmpegOptionIn = new javax.swing.JTextField();
140 fldFfmpegOptionOut = new javax.swing.JTextField();
141 fldFfmpegOptionAv = new javax.swing.JTextField();
142 pnlNgSetting = new javax.swing.JPanel();
143 pnlNgWord = new javax.swing.JPanel();
144 scrNgWord = new javax.swing.JScrollPane();
145 lstNgWord = new javax.swing.JList<>();
146 fldNgWord = new javax.swing.JTextField();
147 btnNgWordAdd = new javax.swing.JButton();
148 btnNgWordDel = new javax.swing.JButton();
149 pnlNgId = new javax.swing.JPanel();
150 scrNgId = new javax.swing.JScrollPane();
151 lstNgId = new javax.swing.JList<>();
152 fldNgId = new javax.swing.JTextField();
153 btnNgIdAdd = new javax.swing.JButton();
154 btnNgIdDel = new javax.swing.JButton();
155 pnlSearch = new javax.swing.JPanel();
156 pnlSearchVideo = new javax.swing.JPanel();
157 srcSearchVideo = new javax.swing.JScrollPane();
158 lstSearchVideo = new javax.swing.JList();
159 btnSearchVideoAdd = new javax.swing.JButton();
160 btnSearchVideoDel = new javax.swing.JButton();
161 pnlSearchComment = new javax.swing.JPanel();
162 srcSearchComment = new javax.swing.JScrollPane();
163 lstSearchComment = new javax.swing.JList();
164 btnSearchCommentAdd = new javax.swing.JButton();
165 btnSearchCommentDel = new javax.swing.JButton();
166 pnlSearchCache = new javax.swing.JPanel();
167 lblSearchCache = new javax.swing.JLabel();
168 fldSearchCache = new javax.swing.JTextField();
170 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
172 pnlNetwork.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
174 pnlAccount.setBorder(javax.swing.BorderFactory.createTitledBorder("アカウント"));
176 lblMail.setText("ID(メールアドレス)");
178 lblPassword.setText("パスワード");
180 javax.swing.GroupLayout gl_pnlAccount = new javax.swing.GroupLayout(pnlAccount);
181 pnlAccount.setLayout(gl_pnlAccount);
182 gl_pnlAccount.setHorizontalGroup(
183 gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.LEADING)
184 .addGroup(gl_pnlAccount.createSequentialGroup()
186 .addGroup(gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.LEADING)
187 .addComponent(lblMail)
188 .addComponent(lblPassword))
189 .addPreferredGap(ComponentPlacement.RELATED)
190 .addGroup(gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.LEADING)
191 .addComponent(fldPassword, GroupLayout.DEFAULT_SIZE, 306, Short.MAX_VALUE)
192 .addComponent(fldMail, GroupLayout.DEFAULT_SIZE, 306, Short.MAX_VALUE))
195 gl_pnlAccount.setVerticalGroup(
196 gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.LEADING)
197 .addGroup(gl_pnlAccount.createSequentialGroup()
199 .addGroup(gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.BASELINE)
200 .addComponent(lblMail)
201 .addComponent(fldMail, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
202 .addPreferredGap(ComponentPlacement.RELATED)
203 .addGroup(gl_pnlAccount.createParallelGroup(GroupLayout.Alignment.BASELINE)
204 .addComponent(lblPassword)
205 .addComponent(fldPassword, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
206 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
209 pnlProxy.setBorder(javax.swing.BorderFactory.createTitledBorder("プロキシ"));
211 cbProxyUse.setText("プロキシを使用する");
213 lblProxyHost.setText("ホスト名");
215 lblProxyPort.setText("ポート番号");
217 javax.swing.GroupLayout gl_pnlProxy = new javax.swing.GroupLayout(pnlProxy);
218 pnlProxy.setLayout(gl_pnlProxy);
219 gl_pnlProxy.setHorizontalGroup(
220 gl_pnlProxy.createParallelGroup(GroupLayout.Alignment.LEADING)
221 .addGroup(gl_pnlProxy.createSequentialGroup()
223 .addGroup(gl_pnlProxy.createParallelGroup(GroupLayout.Alignment.LEADING)
224 .addComponent(cbProxyUse)
225 .addGroup(gl_pnlProxy.createSequentialGroup()
226 .addComponent(lblProxyHost)
228 .addComponent(fldProxyHost, GroupLayout.PREFERRED_SIZE, 168, GroupLayout.PREFERRED_SIZE))
229 .addGroup(gl_pnlProxy.createSequentialGroup()
230 .addComponent(lblProxyPort)
231 .addPreferredGap(ComponentPlacement.RELATED)
232 .addComponent(fldProxyPort, GroupLayout.PREFERRED_SIZE, 76, GroupLayout.PREFERRED_SIZE)))
233 .addContainerGap(181, Short.MAX_VALUE))
235 gl_pnlProxy.setVerticalGroup(
236 gl_pnlProxy.createParallelGroup(GroupLayout.Alignment.LEADING)
237 .addGroup(gl_pnlProxy.createSequentialGroup()
239 .addComponent(cbProxyUse)
240 .addPreferredGap(ComponentPlacement.RELATED)
241 .addGroup(gl_pnlProxy.createParallelGroup(GroupLayout.Alignment.BASELINE)
242 .addComponent(lblProxyHost)
243 .addComponent(fldProxyHost, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
244 .addPreferredGap(ComponentPlacement.RELATED)
245 .addGroup(gl_pnlProxy.createParallelGroup(GroupLayout.Alignment.BASELINE)
246 .addComponent(lblProxyPort)
247 .addComponent(fldProxyPort, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
248 .addContainerGap(39, Short.MAX_VALUE))
251 javax.swing.GroupLayout gl_pnlNetwork = new javax.swing.GroupLayout(pnlNetwork);
252 pnlNetwork.setLayout(gl_pnlNetwork);
253 gl_pnlNetwork.setHorizontalGroup(
254 gl_pnlNetwork.createParallelGroup(GroupLayout.Alignment.LEADING)
255 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlNetwork.createSequentialGroup()
257 .addGroup(gl_pnlNetwork.createParallelGroup(GroupLayout.Alignment.TRAILING)
258 .addComponent(pnlProxy, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
259 .addComponent(pnlAccount, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
262 gl_pnlNetwork.setVerticalGroup(
263 gl_pnlNetwork.createParallelGroup(GroupLayout.Alignment.LEADING)
264 .addGroup(gl_pnlNetwork.createSequentialGroup()
266 .addComponent(pnlAccount, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
267 .addPreferredGap(ComponentPlacement.RELATED)
268 .addComponent(pnlProxy, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
269 .addContainerGap(178, Short.MAX_VALUE))
272 jTabbedPane1.addTab("ネットワーク", pnlNetwork);
274 pnlFileVideo.setBorder(javax.swing.BorderFactory.createTitledBorder("動画"));
276 lblVideoDir.setText("保存フォルダ");
278 lblVideoFileNamepattern.setText("ファイル名パターン");
280 btnVideoDir.setText("...");
282 cbVideoLocal.setText("local");
284 javax.swing.GroupLayout gl_pnlFileVideo = new javax.swing.GroupLayout(pnlFileVideo);
285 pnlFileVideo.setLayout(gl_pnlFileVideo);
286 gl_pnlFileVideo.setHorizontalGroup(
287 gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
288 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlFileVideo.createSequentialGroup()
290 .addGroup(gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
291 .addComponent(lblVideoFileNamepattern)
292 .addComponent(lblVideoDir))
293 .addPreferredGap(ComponentPlacement.RELATED)
294 .addGroup(gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
295 .addGroup(gl_pnlFileVideo.createSequentialGroup()
296 .addComponent(fldVideoDir, GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE)
297 .addPreferredGap(ComponentPlacement.RELATED)
298 .addComponent(btnVideoDir))
299 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlFileVideo.createSequentialGroup()
300 .addComponent(fldVideoFileNamePattern, GroupLayout.PREFERRED_SIZE, 165, GroupLayout.PREFERRED_SIZE)
301 .addPreferredGap(ComponentPlacement.RELATED, 94, Short.MAX_VALUE)
302 .addComponent(cbVideoLocal)))
305 gl_pnlFileVideo.setVerticalGroup(
306 gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
307 .addGroup(gl_pnlFileVideo.createSequentialGroup()
308 .addGroup(gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.BASELINE)
309 .addComponent(lblVideoDir)
310 .addComponent(fldVideoDir, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
311 .addComponent(btnVideoDir))
312 .addPreferredGap(ComponentPlacement.RELATED)
313 .addGroup(gl_pnlFileVideo.createParallelGroup(GroupLayout.Alignment.BASELINE)
314 .addComponent(lblVideoFileNamepattern)
315 .addComponent(fldVideoFileNamePattern, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
316 .addComponent(cbVideoLocal))
317 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
320 pnlFileComment.setBorder(javax.swing.BorderFactory.createTitledBorder("コメント"));
322 lblCommentDir.setText("保存フォルダ");
324 lblCommentFileNamePattern.setText("ファイル名パターン");
326 btnCommentDir.setText("...");
328 cbCommentLocal.setText("local");
330 javax.swing.GroupLayout gl_pnlFileComment = new javax.swing.GroupLayout(pnlFileComment);
331 pnlFileComment.setLayout(gl_pnlFileComment);
332 gl_pnlFileComment.setHorizontalGroup(
333 gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.LEADING)
334 .addGroup(gl_pnlFileComment.createSequentialGroup()
336 .addGroup(gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.LEADING)
337 .addComponent(lblCommentFileNamePattern)
338 .addComponent(lblCommentDir))
339 .addPreferredGap(ComponentPlacement.RELATED)
340 .addGroup(gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.LEADING)
341 .addGroup(gl_pnlFileComment.createSequentialGroup()
342 .addComponent(fldCommentFileNamePattern, GroupLayout.PREFERRED_SIZE, 166, GroupLayout.PREFERRED_SIZE)
343 .addPreferredGap(ComponentPlacement.RELATED, 93, Short.MAX_VALUE)
344 .addComponent(cbCommentLocal))
345 .addGroup(gl_pnlFileComment.createSequentialGroup()
346 .addComponent(fldCommentDir, GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE)
347 .addPreferredGap(ComponentPlacement.RELATED)
348 .addComponent(btnCommentDir)))
351 gl_pnlFileComment.setVerticalGroup(
352 gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.LEADING)
353 .addGroup(gl_pnlFileComment.createSequentialGroup()
354 .addGroup(gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.BASELINE)
355 .addComponent(lblCommentDir)
356 .addComponent(fldCommentDir, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
357 .addComponent(btnCommentDir))
358 .addPreferredGap(ComponentPlacement.RELATED)
359 .addGroup(gl_pnlFileComment.createParallelGroup(GroupLayout.Alignment.BASELINE)
360 .addComponent(lblCommentFileNamePattern)
361 .addComponent(fldCommentFileNamePattern, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
362 .addComponent(cbCommentLocal))
363 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
366 pnlFileOutput.setBorder(javax.swing.BorderFactory.createTitledBorder("変換動画"));
368 lblOutputDir.setText("保存フォルダ");
370 lblOutputFileNamePattern.setText("ファイル名パターン");
372 btnOutputDir.setText("...");
374 cbOutputEnable.setText("変換");
376 cbOutputCommentOverlay.setText("コメント付与");
378 cbOutputDisplayProgress.setText("変換中動画表示");
380 javax.swing.GroupLayout gl_pnlFileOutput = new javax.swing.GroupLayout(pnlFileOutput);
381 pnlFileOutput.setLayout(gl_pnlFileOutput);
382 gl_pnlFileOutput.setHorizontalGroup(
383 gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.LEADING)
384 .addGroup(gl_pnlFileOutput.createSequentialGroup()
386 .addGroup(gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.LEADING)
387 .addComponent(lblOutputFileNamePattern)
388 .addComponent(lblOutputDir))
389 .addPreferredGap(ComponentPlacement.RELATED)
390 .addGroup(gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.LEADING)
391 .addGroup(gl_pnlFileOutput.createSequentialGroup()
392 .addComponent(fldOutputDir, GroupLayout.DEFAULT_SIZE, 262, Short.MAX_VALUE)
393 .addPreferredGap(ComponentPlacement.RELATED)
394 .addComponent(btnOutputDir)
396 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlFileOutput.createSequentialGroup()
397 .addComponent(fldOutputFileNamePattern, GroupLayout.PREFERRED_SIZE, 167, GroupLayout.PREFERRED_SIZE)
398 .addPreferredGap(ComponentPlacement.RELATED, 23, Short.MAX_VALUE)
399 .addGroup(gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.LEADING)
400 .addComponent(cbOutputDisplayProgress)
401 .addGroup(gl_pnlFileOutput.createSequentialGroup()
402 .addComponent(cbOutputEnable)
403 .addPreferredGap(ComponentPlacement.RELATED)
404 .addComponent(cbOutputCommentOverlay))))))
406 gl_pnlFileOutput.setVerticalGroup(
407 gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.LEADING)
408 .addGroup(gl_pnlFileOutput.createSequentialGroup()
409 .addGroup(gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.BASELINE)
410 .addComponent(lblOutputDir)
411 .addComponent(fldOutputDir, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
412 .addComponent(btnOutputDir))
413 .addPreferredGap(ComponentPlacement.RELATED)
414 .addGroup(gl_pnlFileOutput.createParallelGroup(GroupLayout.Alignment.BASELINE)
415 .addComponent(lblOutputFileNamePattern)
416 .addComponent(fldOutputFileNamePattern, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
417 .addComponent(cbOutputCommentOverlay)
418 .addComponent(cbOutputEnable))
419 .addPreferredGap(ComponentPlacement.RELATED)
420 .addComponent(cbOutputDisplayProgress)
421 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
424 javax.swing.GroupLayout gl_pnlFile = new javax.swing.GroupLayout(pnlFile);
425 pnlFile.setLayout(gl_pnlFile);
426 gl_pnlFile.setHorizontalGroup(
427 gl_pnlFile.createParallelGroup(GroupLayout.Alignment.LEADING)
428 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlFile.createSequentialGroup()
430 .addGroup(gl_pnlFile.createParallelGroup(GroupLayout.Alignment.TRAILING)
431 .addComponent(pnlFileOutput, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
432 .addComponent(pnlFileVideo, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
433 .addComponent(pnlFileComment, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
436 gl_pnlFile.setVerticalGroup(
437 gl_pnlFile.createParallelGroup(GroupLayout.Alignment.LEADING)
438 .addGroup(gl_pnlFile.createSequentialGroup()
440 .addComponent(pnlFileVideo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
441 .addPreferredGap(ComponentPlacement.RELATED)
442 .addComponent(pnlFileComment, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
443 .addPreferredGap(ComponentPlacement.RELATED)
444 .addComponent(pnlFileOutput, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
445 .addContainerGap(137, Short.MAX_VALUE))
448 jTabbedPane1.addTab("ファイル", pnlFile);
450 pnlCommentStandard.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
452 lblCommentSize.setText("再生時間に応じたコメントの取得数");
454 cbCommentSizeAuto.setText("自動調整");
456 lblCommentSizeManual.setText("手動取得");
458 lblCommentMinSize.setText("1分当たりのコメント取得数");
460 cbCommentMinSizeAuto.setText("自動調整");
462 lblCommentMinSizeManual.setText("手動取得");
464 lblCommentDisplayMax.setText("1画面に表示する最大コメント数");
466 cbCommentDisplaySizeDefault.setText("標準(30)");
468 lblCommentDisplayMaxManual.setText("手動設定");
470 javax.swing.GroupLayout gl_pnlCommentStandard = new javax.swing.GroupLayout(pnlCommentStandard);
471 pnlCommentStandard.setLayout(gl_pnlCommentStandard);
472 gl_pnlCommentStandard.setHorizontalGroup(
473 gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING)
474 .addGroup(gl_pnlCommentStandard.createSequentialGroup()
476 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING)
477 .addGroup(gl_pnlCommentStandard.createSequentialGroup()
478 .addComponent(lblCommentSize)
480 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING)
481 .addComponent(cbCommentSizeAuto)
482 .addComponent(cbCommentMinSizeAuto)
483 .addComponent(cbCommentDisplaySizeDefault))
485 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING)
486 .addComponent(lblCommentDisplayMaxManual)
487 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING, false)
488 .addComponent(lblCommentMinSizeManual, GroupLayout.Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
489 .addComponent(lblCommentSizeManual, GroupLayout.Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
490 .addComponent(lblCommentMinSize)
491 .addComponent(lblCommentDisplayMax))
492 .addPreferredGap(ComponentPlacement.RELATED)
493 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING, false)
494 .addComponent(fldCommentDisplaySizeManual, 0, 0, Short.MAX_VALUE)
495 .addComponent(fldCommentMinSizeManual)
496 .addComponent(fldCommentSizeManual, GroupLayout.DEFAULT_SIZE, 62, Short.MAX_VALUE))
497 .addContainerGap(25, Short.MAX_VALUE))
499 gl_pnlCommentStandard.setVerticalGroup(
500 gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.LEADING)
501 .addGroup(gl_pnlCommentStandard.createSequentialGroup()
503 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.BASELINE)
504 .addComponent(lblCommentSizeManual)
505 .addComponent(fldCommentSizeManual, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
506 .addComponent(lblCommentSize)
507 .addComponent(cbCommentSizeAuto))
508 .addPreferredGap(ComponentPlacement.RELATED)
509 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.BASELINE)
510 .addComponent(lblCommentMinSize)
511 .addComponent(cbCommentMinSizeAuto)
512 .addComponent(lblCommentMinSizeManual)
513 .addComponent(fldCommentMinSizeManual, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
514 .addPreferredGap(ComponentPlacement.RELATED)
515 .addGroup(gl_pnlCommentStandard.createParallelGroup(GroupLayout.Alignment.BASELINE)
516 .addComponent(lblCommentDisplayMax)
517 .addComponent(cbCommentDisplaySizeDefault)
518 .addComponent(lblCommentDisplayMaxManual)
519 .addComponent(fldCommentDisplaySizeManual, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
520 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
523 pnlCommentAdvanced.setBorder(javax.swing.BorderFactory.createTitledBorder("高度な設定"));
525 lblFontPath.setText("フォントパス");
527 cbFontSizeArrangeDisable.setText("フォントサイズ調整を行わない");
529 cbCommentOpaque.setText("コメント透明化を行わない");
531 btnFontPath.setText("...");
533 lblFontIndex.setText("フォント番号");
535 lblFontShadow.setText("影の種類");
537 javax.swing.GroupLayout gl_pnlCommentAdvanced = new javax.swing.GroupLayout(pnlCommentAdvanced);
538 pnlCommentAdvanced.setLayout(gl_pnlCommentAdvanced);
539 gl_pnlCommentAdvanced.setHorizontalGroup(
540 gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.LEADING)
541 .addGroup(gl_pnlCommentAdvanced.createSequentialGroup()
543 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.LEADING)
544 .addComponent(cbCommentOpaque)
545 .addGroup(gl_pnlCommentAdvanced.createSequentialGroup()
546 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.LEADING)
547 .addComponent(lblFontPath)
548 .addComponent(lblFontIndex)
549 .addComponent(lblFontShadow))
551 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.LEADING)
552 .addComponent(fldFontPath, GroupLayout.DEFAULT_SIZE, 275, Short.MAX_VALUE)
553 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.TRAILING, false)
554 .addComponent(fldFontShadow, GroupLayout.Alignment.LEADING)
555 .addComponent(fldFontIndex, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 48, Short.MAX_VALUE)))
556 .addPreferredGap(ComponentPlacement.RELATED)
557 .addComponent(btnFontPath))
558 .addComponent(cbFontSizeArrangeDisable))
561 gl_pnlCommentAdvanced.setVerticalGroup(
562 gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.LEADING)
563 .addGroup(gl_pnlCommentAdvanced.createSequentialGroup()
564 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.BASELINE)
565 .addComponent(lblFontPath)
566 .addComponent(fldFontPath, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
567 .addComponent(btnFontPath))
568 .addPreferredGap(ComponentPlacement.RELATED)
569 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.BASELINE)
570 .addComponent(lblFontIndex)
571 .addComponent(fldFontIndex, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
572 .addPreferredGap(ComponentPlacement.RELATED)
573 .addGroup(gl_pnlCommentAdvanced.createParallelGroup(GroupLayout.Alignment.BASELINE)
574 .addComponent(lblFontShadow)
575 .addComponent(fldFontShadow, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
576 .addPreferredGap(ComponentPlacement.RELATED)
577 .addComponent(cbFontSizeArrangeDisable)
578 .addPreferredGap(ComponentPlacement.RELATED)
579 .addComponent(cbCommentOpaque)
580 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
583 javax.swing.GroupLayout gl_pnlComment = new javax.swing.GroupLayout(pnlComment);
584 pnlComment.setLayout(gl_pnlComment);
585 gl_pnlComment.setHorizontalGroup(
586 gl_pnlComment.createParallelGroup(GroupLayout.Alignment.LEADING)
587 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlComment.createSequentialGroup()
589 .addGroup(gl_pnlComment.createParallelGroup(GroupLayout.Alignment.TRAILING)
590 .addComponent(pnlCommentAdvanced, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
591 .addComponent(pnlCommentStandard, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
594 gl_pnlComment.setVerticalGroup(
595 gl_pnlComment.createParallelGroup(GroupLayout.Alignment.LEADING)
596 .addGroup(gl_pnlComment.createSequentialGroup()
598 .addComponent(pnlCommentStandard, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
599 .addPreferredGap(ComponentPlacement.RELATED)
600 .addComponent(pnlCommentAdvanced, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
601 .addContainerGap(168, Short.MAX_VALUE))
604 jTabbedPane1.addTab("コメント", pnlComment);
606 jPanel10.setBorder(javax.swing.BorderFactory.createTitledBorder("ファイルパス"));
608 lblFfmpegPath.setText("ffmpeg");
610 lblFfmpegDllPath.setText("拡張ライブラリ");
612 btnFfmpegPath.setText("...");
614 btnFfmpegDllPath.setText("...");
616 javax.swing.GroupLayout gl_jPanel10 = new javax.swing.GroupLayout(jPanel10);
617 jPanel10.setLayout(gl_jPanel10);
618 gl_jPanel10.setHorizontalGroup(
619 gl_jPanel10.createParallelGroup(GroupLayout.Alignment.LEADING)
620 .addGroup(gl_jPanel10.createSequentialGroup()
622 .addGroup(gl_jPanel10.createParallelGroup(GroupLayout.Alignment.LEADING)
623 .addComponent(lblFfmpegDllPath)
624 .addComponent(lblFfmpegPath))
625 .addPreferredGap(ComponentPlacement.RELATED)
626 .addGroup(gl_jPanel10.createParallelGroup(GroupLayout.Alignment.LEADING)
627 .addComponent(fldFfmpegDllPath, GroupLayout.Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 280, Short.MAX_VALUE)
628 .addComponent(fldFfmpegPath, GroupLayout.Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 280, Short.MAX_VALUE))
629 .addPreferredGap(ComponentPlacement.RELATED)
630 .addGroup(gl_jPanel10.createParallelGroup(GroupLayout.Alignment.LEADING)
631 .addComponent(btnFfmpegPath, GroupLayout.Alignment.TRAILING)
632 .addComponent(btnFfmpegDllPath, GroupLayout.Alignment.TRAILING))
635 gl_jPanel10.setVerticalGroup(
636 gl_jPanel10.createParallelGroup(GroupLayout.Alignment.LEADING)
637 .addGroup(gl_jPanel10.createSequentialGroup()
638 .addGroup(gl_jPanel10.createParallelGroup(GroupLayout.Alignment.BASELINE)
639 .addComponent(lblFfmpegPath)
640 .addComponent(fldFfmpegPath, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
641 .addComponent(btnFfmpegPath))
642 .addPreferredGap(ComponentPlacement.RELATED)
643 .addGroup(gl_jPanel10.createParallelGroup(GroupLayout.Alignment.BASELINE)
644 .addComponent(lblFfmpegDllPath)
645 .addComponent(fldFfmpegDllPath, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
646 .addComponent(btnFfmpegDllPath))
647 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
650 pnlFfmpegParam.setBorder(javax.swing.BorderFactory.createTitledBorder("ffmpegパラメータ"));
652 buttonGroup1.add(rbFfmpegOptionFile);
653 rbFfmpegOptionFile.setText("オプションファイル");
655 buttonGroup1.add(rbFfmpegOptionDirectInput);
656 rbFfmpegOptionDirectInput.setText("直接入力");
658 cmbFfmpegOptionFile.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
660 pnlFfmpegParamOption.setBorder(javax.swing.BorderFactory.createEtchedBorder());
662 lblFfmpegOptionExtension.setText("出力動画の拡張子");
664 lblFfmpegOptionMain.setText("メインオプション");
666 lblFfmpegOptionIn.setText("入力オプション");
668 lblFfmpegOptionOut.setText("出力オプション");
670 lblFfmpegOptionAvfilter.setText("avfilterオプション");
672 cbFfmpegOptionResize.setText("次のサイズに収まるよう縮小(-s)");
674 lblFfmpegOptionResizeWidth.setText("横");
676 lblFfmpegOptionResizeHeight.setText("縦");
678 cbFfmpegOptionKeepAspect.setText("アスペクト比を維持");
680 javax.swing.GroupLayout gl_pnlFfmpegParamOption = new javax.swing.GroupLayout(pnlFfmpegParamOption);
681 pnlFfmpegParamOption.setLayout(gl_pnlFfmpegParamOption);
682 gl_pnlFfmpegParamOption.setHorizontalGroup(
683 gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.LEADING)
684 .addGroup(gl_pnlFfmpegParamOption.createSequentialGroup()
685 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.LEADING)
686 .addGroup(gl_pnlFfmpegParamOption.createSequentialGroup()
688 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.LEADING)
689 .addComponent(lblFfmpegOptionAvfilter)
690 .addComponent(lblFfmpegOptionExtension)
691 .addComponent(lblFfmpegOptionMain)
692 .addComponent(lblFfmpegOptionIn)
693 .addComponent(lblFfmpegOptionOut))
694 .addPreferredGap(ComponentPlacement.RELATED)
695 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.LEADING)
696 .addComponent(fldFfmpegOptionExtension, GroupLayout.PREFERRED_SIZE, 51, GroupLayout.PREFERRED_SIZE)
697 .addComponent(fldFfmpegOptionMain, GroupLayout.DEFAULT_SIZE, 268, Short.MAX_VALUE)
698 .addComponent(fldFfmpegOptionIn, GroupLayout.DEFAULT_SIZE, 268, Short.MAX_VALUE)
699 .addComponent(fldFfmpegOptionOut, GroupLayout.DEFAULT_SIZE, 268, Short.MAX_VALUE)
700 .addComponent(fldFfmpegOptionAv, GroupLayout.DEFAULT_SIZE, 268, Short.MAX_VALUE)))
701 .addGroup(gl_pnlFfmpegParamOption.createSequentialGroup()
703 .addComponent(cbFfmpegOptionResize)
704 .addPreferredGap(ComponentPlacement.UNRELATED)
705 .addComponent(lblFfmpegOptionResizeWidth)
706 .addPreferredGap(ComponentPlacement.RELATED)
707 .addComponent(fldFfmpegOptionResizeWidth, GroupLayout.PREFERRED_SIZE, 48, GroupLayout.PREFERRED_SIZE)
709 .addComponent(lblFfmpegOptionResizeHeight)
710 .addPreferredGap(ComponentPlacement.RELATED)
711 .addComponent(fldFfmpegOptionResizeHeight, GroupLayout.PREFERRED_SIZE, 48, GroupLayout.PREFERRED_SIZE))
712 .addGroup(gl_pnlFfmpegParamOption.createSequentialGroup()
714 .addComponent(cbFfmpegOptionKeepAspect)))
717 gl_pnlFfmpegParamOption.setVerticalGroup(
718 gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.LEADING)
719 .addGroup(gl_pnlFfmpegParamOption.createSequentialGroup()
721 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
722 .addComponent(lblFfmpegOptionExtension)
723 .addComponent(fldFfmpegOptionExtension, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
724 .addPreferredGap(ComponentPlacement.RELATED)
725 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
726 .addComponent(lblFfmpegOptionMain)
727 .addComponent(fldFfmpegOptionMain, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
728 .addPreferredGap(ComponentPlacement.RELATED)
729 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
730 .addComponent(lblFfmpegOptionIn)
731 .addComponent(fldFfmpegOptionIn, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
732 .addPreferredGap(ComponentPlacement.RELATED)
733 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
734 .addComponent(lblFfmpegOptionOut)
735 .addComponent(fldFfmpegOptionOut, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
736 .addPreferredGap(ComponentPlacement.RELATED)
737 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
738 .addComponent(lblFfmpegOptionAvfilter)
739 .addComponent(fldFfmpegOptionAv, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
740 .addPreferredGap(ComponentPlacement.RELATED)
741 .addGroup(gl_pnlFfmpegParamOption.createParallelGroup(GroupLayout.Alignment.BASELINE)
742 .addComponent(cbFfmpegOptionResize)
743 .addComponent(lblFfmpegOptionResizeWidth)
744 .addComponent(fldFfmpegOptionResizeWidth, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
745 .addComponent(lblFfmpegOptionResizeHeight)
746 .addComponent(fldFfmpegOptionResizeHeight, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
747 .addPreferredGap(ComponentPlacement.RELATED)
748 .addComponent(cbFfmpegOptionKeepAspect)
749 // .addContainerGap(43, Short.MAX_VALUE))
752 GroupLayout gl_pnlFfmpegParam = new GroupLayout(pnlFfmpegParam);
753 pnlFfmpegParam.setLayout(gl_pnlFfmpegParam);
754 gl_pnlFfmpegParam.setHorizontalGroup(
755 gl_pnlFfmpegParam.createParallelGroup(Alignment.LEADING)
756 .addGroup(gl_pnlFfmpegParam.createSequentialGroup()
758 .addGroup(gl_pnlFfmpegParam.createParallelGroup(Alignment.LEADING)
759 .addComponent(pnlFfmpegParamOption, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
760 .addGroup(gl_pnlFfmpegParam.createSequentialGroup()
761 .addComponent(rbFfmpegOptionFile)
762 .addPreferredGap(ComponentPlacement.RELATED)
763 .addComponent(cmbFfmpegOptionFile, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
764 .addComponent(rbFfmpegOptionDirectInput))
767 gl_pnlFfmpegParam.setVerticalGroup(
768 gl_pnlFfmpegParam.createParallelGroup(Alignment.LEADING)
769 .addGroup(gl_pnlFfmpegParam.createSequentialGroup()
771 .addGroup(gl_pnlFfmpegParam.createParallelGroup(Alignment.BASELINE)
772 .addComponent(rbFfmpegOptionFile)
773 .addComponent(cmbFfmpegOptionFile, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
774 .addPreferredGap(ComponentPlacement.RELATED)
775 .addComponent(rbFfmpegOptionDirectInput)
776 .addPreferredGap(ComponentPlacement.RELATED)
777 .addComponent(pnlFfmpegParamOption, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
781 javax.swing.GroupLayout gl_pnlFfmpeg = new javax.swing.GroupLayout(pnlFfmpeg);
782 pnlFfmpeg.setLayout(gl_pnlFfmpeg);
783 gl_pnlFfmpeg.setHorizontalGroup(
784 gl_pnlFfmpeg.createParallelGroup(GroupLayout.Alignment.LEADING)
785 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlFfmpeg.createSequentialGroup()
787 .addGroup(gl_pnlFfmpeg.createParallelGroup(GroupLayout.Alignment.TRAILING)
788 .addComponent(pnlFfmpegParam, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
789 .addComponent(jPanel10, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
792 gl_pnlFfmpeg.setVerticalGroup(
793 gl_pnlFfmpeg.createParallelGroup(GroupLayout.Alignment.LEADING)
794 .addGroup(gl_pnlFfmpeg.createSequentialGroup()
796 .addComponent(jPanel10, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
797 .addPreferredGap(ComponentPlacement.RELATED)
798 .addComponent(pnlFfmpegParam, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
802 jTabbedPane1.addTab("ffmpeg", pnlFfmpeg);
804 pnlNgWord.setBorder(javax.swing.BorderFactory.createTitledBorder("NGワード"));
806 lstNgWord.setModel(mdlNgWord);
807 scrNgWord.setViewportView(lstNgWord);
809 btnNgWordAdd.setText("追加");
811 btnNgWordDel.setText("削除");
813 javax.swing.GroupLayout gl_pnlNgWord = new javax.swing.GroupLayout(pnlNgWord);
814 pnlNgWord.setLayout(gl_pnlNgWord);
815 gl_pnlNgWord.setHorizontalGroup(
816 gl_pnlNgWord.createParallelGroup(GroupLayout.Alignment.LEADING)
817 .addGroup(gl_pnlNgWord.createSequentialGroup()
819 .addGroup(gl_pnlNgWord.createParallelGroup(GroupLayout.Alignment.LEADING)
820 .addComponent(scrNgWord, GroupLayout.DEFAULT_SIZE, 395, Short.MAX_VALUE)
821 .addGroup(gl_pnlNgWord.createSequentialGroup()
822 .addComponent(fldNgWord, GroupLayout.DEFAULT_SIZE, 256, Short.MAX_VALUE)
823 .addPreferredGap(ComponentPlacement.RELATED)
824 .addComponent(btnNgWordAdd)
826 .addComponent(btnNgWordDel)))
829 gl_pnlNgWord.setVerticalGroup(
830 gl_pnlNgWord.createParallelGroup(GroupLayout.Alignment.LEADING)
831 .addGroup(gl_pnlNgWord.createSequentialGroup()
832 .addComponent(scrNgWord, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
833 .addPreferredGap(ComponentPlacement.RELATED)
834 .addGroup(gl_pnlNgWord.createParallelGroup(GroupLayout.Alignment.BASELINE)
835 .addComponent(fldNgWord, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
836 .addComponent(btnNgWordDel)
837 .addComponent(btnNgWordAdd))
838 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
841 pnlNgId.setBorder(javax.swing.BorderFactory.createTitledBorder("NGID"));
843 lstNgId.setModel(mdlNgId);
844 scrNgId.setViewportView(lstNgId);
846 btnNgIdAdd.setText("追加");
848 btnNgIdDel.setText("削除");
850 javax.swing.GroupLayout gl_pnlNgId = new javax.swing.GroupLayout(pnlNgId);
851 pnlNgId.setLayout(gl_pnlNgId);
852 gl_pnlNgId.setHorizontalGroup(
853 gl_pnlNgId.createParallelGroup(GroupLayout.Alignment.LEADING)
854 .addGroup(gl_pnlNgId.createSequentialGroup()
856 .addGroup(gl_pnlNgId.createParallelGroup(GroupLayout.Alignment.LEADING)
857 .addComponent(scrNgId, GroupLayout.DEFAULT_SIZE, 395, Short.MAX_VALUE)
858 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlNgId.createSequentialGroup()
859 .addComponent(fldNgId, GroupLayout.DEFAULT_SIZE, 256, Short.MAX_VALUE)
860 .addPreferredGap(ComponentPlacement.RELATED)
861 .addComponent(btnNgIdAdd)
863 .addComponent(btnNgIdDel)))
866 gl_pnlNgId.setVerticalGroup(
867 gl_pnlNgId.createParallelGroup(GroupLayout.Alignment.LEADING)
868 .addGroup(gl_pnlNgId.createSequentialGroup()
869 .addComponent(scrNgId, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
870 .addPreferredGap(ComponentPlacement.RELATED)
871 .addGroup(gl_pnlNgId.createParallelGroup(GroupLayout.Alignment.BASELINE)
872 .addComponent(fldNgId, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
873 .addComponent(btnNgIdDel)
874 .addComponent(btnNgIdAdd))
875 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
878 javax.swing.GroupLayout gl_pnlNgSetting = new javax.swing.GroupLayout(pnlNgSetting);
879 pnlNgSetting.setLayout(gl_pnlNgSetting);
880 gl_pnlNgSetting.setHorizontalGroup(
881 gl_pnlNgSetting.createParallelGroup(GroupLayout.Alignment.LEADING)
882 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlNgSetting.createSequentialGroup()
884 .addGroup(gl_pnlNgSetting.createParallelGroup(GroupLayout.Alignment.TRAILING)
885 .addComponent(pnlNgId, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
886 .addComponent(pnlNgWord, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
889 gl_pnlNgSetting.setVerticalGroup(
890 gl_pnlNgSetting.createParallelGroup(GroupLayout.Alignment.LEADING)
891 .addGroup(gl_pnlNgSetting.createSequentialGroup()
893 .addComponent(pnlNgWord, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
894 .addPreferredGap(ComponentPlacement.RELATED)
895 .addComponent(pnlNgId, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
896 .addContainerGap(82, Short.MAX_VALUE))
899 jTabbedPane1.addTab("NG設定", pnlNgSetting);
901 pnlSearchVideo.setBorder(javax.swing.BorderFactory.createTitledBorder("動画検索対象フォルダ"));
903 lstSearchVideo.setModel(new javax.swing.AbstractListModel() {
904 String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
905 public int getSize() { return strings.length; }
906 public Object getElementAt(int i) { return strings[i]; }
908 srcSearchVideo.setViewportView(lstSearchVideo);
910 btnSearchVideoAdd.setText("追加...");
912 btnSearchVideoDel.setText("削除");
914 javax.swing.GroupLayout gl_pnlSearchVideo = new javax.swing.GroupLayout(pnlSearchVideo);
915 pnlSearchVideo.setLayout(gl_pnlSearchVideo);
916 gl_pnlSearchVideo.setHorizontalGroup(
917 gl_pnlSearchVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
918 .addComponent(srcSearchVideo, GroupLayout.DEFAULT_SIZE, 419, Short.MAX_VALUE)
919 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlSearchVideo.createSequentialGroup()
920 .addContainerGap(269, Short.MAX_VALUE)
921 .addComponent(btnSearchVideoAdd)
923 .addComponent(btnSearchVideoDel)
926 gl_pnlSearchVideo.setVerticalGroup(
927 gl_pnlSearchVideo.createParallelGroup(GroupLayout.Alignment.LEADING)
928 .addGroup(gl_pnlSearchVideo.createSequentialGroup()
929 .addComponent(srcSearchVideo, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
930 .addPreferredGap(ComponentPlacement.RELATED)
931 .addGroup(gl_pnlSearchVideo.createParallelGroup(GroupLayout.Alignment.BASELINE)
932 .addComponent(btnSearchVideoDel)
933 .addComponent(btnSearchVideoAdd))
934 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
937 pnlSearchComment.setBorder(javax.swing.BorderFactory.createTitledBorder("コメント検索対象フォルダ"));
939 lstSearchComment.setModel(new javax.swing.AbstractListModel() {
940 String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
941 public int getSize() { return strings.length; }
942 public Object getElementAt(int i) { return strings[i]; }
944 srcSearchComment.setViewportView(lstSearchComment);
946 btnSearchCommentAdd.setText("追加...");
948 btnSearchCommentDel.setText("削除");
950 javax.swing.GroupLayout gl_pnlSearchComment = new javax.swing.GroupLayout(pnlSearchComment);
951 pnlSearchComment.setLayout(gl_pnlSearchComment);
952 gl_pnlSearchComment.setHorizontalGroup(
953 gl_pnlSearchComment.createParallelGroup(GroupLayout.Alignment.LEADING)
954 .addComponent(srcSearchComment, GroupLayout.DEFAULT_SIZE, 419, Short.MAX_VALUE)
955 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlSearchComment.createSequentialGroup()
956 .addContainerGap(269, Short.MAX_VALUE)
957 .addComponent(btnSearchCommentAdd)
959 .addComponent(btnSearchCommentDel)
962 gl_pnlSearchComment.setVerticalGroup(
963 gl_pnlSearchComment.createParallelGroup(GroupLayout.Alignment.LEADING)
964 .addGroup(gl_pnlSearchComment.createSequentialGroup()
965 .addComponent(srcSearchComment, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
966 .addPreferredGap(ComponentPlacement.RELATED)
967 .addGroup(gl_pnlSearchComment.createParallelGroup(GroupLayout.Alignment.BASELINE)
968 .addComponent(btnSearchCommentDel)
969 .addComponent(btnSearchCommentAdd))
970 .addContainerGap(16, Short.MAX_VALUE))
973 pnlSearchCache.setBorder(javax.swing.BorderFactory.createEtchedBorder());
975 lblSearchCache.setText("キャッシュ更新(秒)");
977 javax.swing.GroupLayout gl_pnlSearchCache = new javax.swing.GroupLayout(pnlSearchCache);
978 pnlSearchCache.setLayout(gl_pnlSearchCache);
979 gl_pnlSearchCache.setHorizontalGroup(
980 gl_pnlSearchCache.createParallelGroup(GroupLayout.Alignment.LEADING)
981 .addGroup(gl_pnlSearchCache.createSequentialGroup()
983 .addComponent(lblSearchCache)
984 .addPreferredGap(ComponentPlacement.RELATED)
985 .addComponent(fldSearchCache, GroupLayout.PREFERRED_SIZE, 55, GroupLayout.PREFERRED_SIZE)
986 .addContainerGap(269, Short.MAX_VALUE))
988 gl_pnlSearchCache.setVerticalGroup(
989 gl_pnlSearchCache.createParallelGroup(GroupLayout.Alignment.LEADING)
990 .addGroup(gl_pnlSearchCache.createSequentialGroup()
992 .addGroup(gl_pnlSearchCache.createParallelGroup(GroupLayout.Alignment.BASELINE)
993 .addComponent(lblSearchCache)
994 .addComponent(fldSearchCache, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
995 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
998 javax.swing.GroupLayout gl_pnlSearch = new javax.swing.GroupLayout(pnlSearch);
999 pnlSearch.setLayout(gl_pnlSearch);
1000 gl_pnlSearch.setHorizontalGroup(
1001 gl_pnlSearch.createParallelGroup(GroupLayout.Alignment.LEADING)
1002 .addGroup(GroupLayout.Alignment.TRAILING, gl_pnlSearch.createSequentialGroup()
1004 .addGroup(gl_pnlSearch.createParallelGroup(GroupLayout.Alignment.TRAILING)
1005 .addComponent(pnlSearchCache, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
1006 .addComponent(pnlSearchComment, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
1007 .addComponent(pnlSearchVideo, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
1010 gl_pnlSearch.setVerticalGroup(
1011 gl_pnlSearch.createParallelGroup(GroupLayout.Alignment.LEADING)
1012 .addGroup(gl_pnlSearch.createSequentialGroup()
1014 .addComponent(pnlSearchVideo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
1015 .addPreferredGap(ComponentPlacement.RELATED)
1016 .addComponent(pnlSearchComment, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
1017 .addPreferredGap(ComponentPlacement.RELATED)
1018 .addComponent(pnlSearchCache, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
1019 .addContainerGap(27, Short.MAX_VALUE))
1022 jTabbedPane1.addTab("検索", pnlSearch);
1024 final JPanel pnlButton = new JPanel();
1025 final JButton btnOk = new JButton("OK");
1026 final JButton btnCancel = new JButton("Cancel");
1027 pnlButton.add(btnOk);
1028 pnlButton.add(btnCancel);
1030 javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
1031 getContentPane().setLayout(layout);
1032 layout.setHorizontalGroup(
1033 layout.createParallelGroup(GroupLayout.Alignment.LEADING)
1034 .addComponent(jTabbedPane1, GroupLayout.DEFAULT_SIZE, 460, Short.MAX_VALUE)
1035 .addComponent(pnlButton)
1037 layout.setVerticalGroup(
1038 // layout.createParallelGroup(GroupLayout.Alignment.LEADING)
1039 // .addGroup(layout.createSequentialGroup()
1040 // .addComponent(jTabbedPane1, GroupLayout.DEFAULT_SIZE, 451, GroupLayout.PREFERRED_SIZE)
1041 // .addContainerGap(23, Short.MAX_VALUE))
1042 layout.createSequentialGroup()
1043 .addComponent(jTabbedPane1,GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE, GroupLayout.PREFERRED_SIZE)
1044 .addComponent(pnlButton)
1048 }// </editor-fold>//GEN-END:initComponents
1051 * @param args the command line arguments
1053 public static void main(String args[]) {
1054 /* Set the Nimbus look and feel */
1055 //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
1056 /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
1057 * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
1060 for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
1061 if ("Nimbus".equals(info.getName())) {
1062 javax.swing.UIManager.setLookAndFeel(info.getClassName());
1066 } catch (ClassNotFoundException ex) {
1067 java.util.logging.Logger.getLogger(ConfigDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
1068 } catch (InstantiationException ex) {
1069 java.util.logging.Logger.getLogger(ConfigDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
1070 } catch (IllegalAccessException ex) {
1071 java.util.logging.Logger.getLogger(ConfigDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
1072 } catch (javax.swing.UnsupportedLookAndFeelException ex) {
1073 java.util.logging.Logger.getLogger(ConfigDialog.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
1077 /* Create and display the form */
1078 java.awt.EventQueue.invokeLater(new Runnable() {
1082 new ConfigDialog().setVisible(true);
1086 // Variables declaration - do not modify//GEN-BEGIN:variables
1087 private javax.swing.ButtonGroup buttonGroup1;
1088 private javax.swing.JButton btnVideoDir;
1089 private javax.swing.JButton btnNgWordDel;
1090 private javax.swing.JButton btnNgIdAdd;
1091 private javax.swing.JButton btnNgIdDel;
1092 private javax.swing.JButton btnSearchCommentAdd;
1093 private javax.swing.JButton btnSearchCommentDel;
1094 private javax.swing.JButton btnCommentDir;
1095 private javax.swing.JButton btnOutputDir;
1096 private javax.swing.JButton btnFfmpegPath;
1097 private javax.swing.JButton btnFfmpegDllPath;
1098 private javax.swing.JButton btnFontPath;
1099 private javax.swing.JButton btnSearchVideoAdd;
1100 private javax.swing.JButton btnSearchVideoDel;
1101 private javax.swing.JButton btnNgWordAdd;
1102 private javax.swing.JCheckBox cbProxyUse;
1103 private javax.swing.JCheckBox cbCommentDisplaySizeDefault;
1104 private javax.swing.JCheckBox cbOutputDisplayProgress;
1105 private javax.swing.JCheckBox cbFontSizeArrangeDisable;
1106 private javax.swing.JCheckBox cbCommentOpaque;
1107 private javax.swing.JCheckBox cbVideoLocal;
1108 private javax.swing.JCheckBox cbCommentLocal;
1109 private javax.swing.JCheckBox cbOutputEnable;
1110 private javax.swing.JCheckBox cbCommentSizeAuto;
1111 private javax.swing.JCheckBox cbCommentMinSizeAuto;
1112 private javax.swing.JCheckBox cbOutputCommentOverlay;
1113 private javax.swing.JCheckBox cbFfmpegOptionResize;
1114 private javax.swing.JCheckBox cbFfmpegOptionKeepAspect;
1115 private javax.swing.JComboBox cmbFfmpegOptionFile;
1116 private javax.swing.JLabel lblMail;
1117 private javax.swing.JLabel lblOutputFileNamePattern;
1118 private javax.swing.JLabel lblCommentSize;
1119 private javax.swing.JLabel lblCommentSizeManual;
1120 private javax.swing.JLabel lblCommentMinSize;
1121 private javax.swing.JLabel lblCommentMinSizeManual;
1122 private javax.swing.JLabel lblFfmpegPath;
1123 private javax.swing.JLabel lblFfmpegDllPath;
1124 private javax.swing.JLabel lblFfmpegOptionExtension;
1125 private javax.swing.JLabel lblFfmpegOptionMain;
1126 private javax.swing.JLabel lblFfmpegOptionIn;
1127 private javax.swing.JLabel lblPassword;
1128 private javax.swing.JLabel lblFfmpegOptionOut;
1129 private javax.swing.JLabel lblFfmpegOptionAvfilter;
1130 private javax.swing.JLabel lblFfmpegOptionResizeWidth;
1131 private javax.swing.JLabel lblFfmpegOptionResizeHeight;
1132 private javax.swing.JLabel lblCommentDisplayMax;
1133 private javax.swing.JLabel lblCommentDisplayMaxManual;
1134 private javax.swing.JLabel lblFontPath;
1135 private javax.swing.JLabel lblFontIndex;
1136 private javax.swing.JLabel lblFontShadow;
1137 private javax.swing.JLabel lblSearchCache;
1138 private javax.swing.JLabel lblProxyHost;
1139 private javax.swing.JLabel lblProxyPort;
1140 private javax.swing.JLabel lblVideoDir;
1141 private javax.swing.JLabel lblVideoFileNamepattern;
1142 private javax.swing.JLabel lblCommentDir;
1143 private javax.swing.JLabel lblCommentFileNamePattern;
1144 private javax.swing.JLabel lblOutputDir;
1145 private javax.swing.JList lstSearchVideo;
1146 private javax.swing.JList lstSearchComment;
1147 private javax.swing.JList<String> lstNgWord;
1148 private final DefaultListModel<String> mdlNgWord = new DefaultListModel<>();
1149 private javax.swing.JList<String> lstNgId;
1150 private final DefaultListModel<String> mdlNgId = new DefaultListModel<>();
1151 private javax.swing.JPanel pnlNetwork;
1152 private javax.swing.JPanel jPanel10;
1153 private javax.swing.JPanel pnlFfmpegParam;
1154 private javax.swing.JPanel pnlFfmpegParamOption;
1155 private javax.swing.JPanel pnlNgSetting;
1156 private javax.swing.JPanel pnlCommentStandard;
1157 private javax.swing.JPanel pnlCommentAdvanced;
1158 private javax.swing.JPanel pnlNgWord;
1159 private javax.swing.JPanel pnlSearch;
1160 private javax.swing.JPanel pnlSearchVideo;
1161 private javax.swing.JPanel pnlSearchComment;
1162 private javax.swing.JPanel pnlAccount;
1163 private javax.swing.JPanel pnlNgId;
1164 private javax.swing.JPanel pnlSearchCache;
1165 private javax.swing.JPanel pnlProxy;
1166 private javax.swing.JPanel pnlFile;
1167 private javax.swing.JPanel pnlFileVideo;
1168 private javax.swing.JPanel pnlFileComment;
1169 private javax.swing.JPanel pnlFileOutput;
1170 private javax.swing.JPanel pnlComment;
1171 private javax.swing.JPanel pnlFfmpeg;
1172 private javax.swing.JRadioButton rbFfmpegOptionFile;
1173 private javax.swing.JRadioButton rbFfmpegOptionDirectInput;
1174 private javax.swing.JScrollPane srcSearchVideo;
1175 private javax.swing.JScrollPane srcSearchComment;
1176 private javax.swing.JScrollPane scrNgWord;
1177 private javax.swing.JScrollPane scrNgId;
1178 private javax.swing.JTabbedPane jTabbedPane1;
1179 private javax.swing.JTextField fldMail;
1180 private javax.swing.JTextField fldOutputFileNamePattern;
1181 private javax.swing.JTextField fldCommentSizeManual;
1182 private javax.swing.JTextField fldCommentMinSizeManual;
1183 private javax.swing.JTextField fldFfmpegPath;
1184 private javax.swing.JTextField fldFfmpegDllPath;
1185 private javax.swing.JTextField fldFfmpegOptionResizeWidth;
1186 private javax.swing.JTextField fldFfmpegOptionResizeHeight;
1187 private javax.swing.JTextField fldFfmpegOptionExtension;
1188 private javax.swing.JTextField fldFfmpegOptionMain;
1189 private javax.swing.JTextField fldFfmpegOptionIn;
1190 private javax.swing.JTextField fldPassword;
1191 private javax.swing.JTextField fldFfmpegOptionOut;
1192 private javax.swing.JTextField fldFfmpegOptionAv;
1193 private javax.swing.JTextField fldCommentDisplaySizeManual;
1194 private javax.swing.JTextField fldFontPath;
1195 private javax.swing.JTextField fldFontIndex;
1196 private javax.swing.JTextField fldFontShadow;
1197 private javax.swing.JTextField fldNgWord;
1198 private javax.swing.JTextField fldNgId;
1199 private javax.swing.JTextField fldSearchCache;
1200 private javax.swing.JTextField fldProxyHost;
1201 private javax.swing.JTextField fldProxyPort;
1202 private javax.swing.JTextField fldVideoDir;
1203 private javax.swing.JTextField fldVideoFileNamePattern;
1204 private javax.swing.JTextField fldCommentDir;
1205 private javax.swing.JTextField fldCommentFileNamePattern;
1206 private javax.swing.JTextField fldOutputDir;
1207 // End of variables declaration//GEN-END:variables
1209 private void loadConfig() {
1210 final Config p = Config.INSTANCE;
1215 fldMail.setText(p.getId());
1216 fldPassword.setText(p.getPassword());
1221 cbProxyUse.setSelected(p.getProxyUse());
1222 fldProxyHost.setText(p.getProxyHost());
1223 fldProxyPort.setText(p.getProxyPort());
1228 fldVideoDir.setText(p.getVideoDir());
1229 fldVideoFileNamePattern.setText(p.getVideoFileNamePattern());
1230 cbVideoLocal.setSelected(p.getVideoUseLocal());
1235 fldCommentDir.setText(p.getCommentDir());
1236 fldCommentFileNamePattern.setText(p.getCommentFileNamePattern());
1237 cbCommentLocal.setSelected(p.getCommentUseLocal());
1242 fldOutputDir.setText(p.getOutputDir());
1243 fldOutputFileNamePattern.setText(p.getOutputFileNamePattern());
1244 cbOutputEnable.setSelected(p.getOutputEnable());
1245 cbOutputCommentOverlay.setSelected(p.getOutputCommentOverlay());
1246 cbOutputDisplayProgress.setSelected(p.getOutputDisplayProgress());
1251 cbCommentSizeAuto.setSelected(p.getCommentSizeAutosize());
1252 fldCommentSizeManual.setText(p.getCommentSizeManual());
1253 cbCommentMinSizeAuto.setSelected(p.getCommentMinSizeAutosize());
1254 fldCommentSizeManual.setText(p.getCommentMinSizeManual());
1255 cbCommentDisplaySizeDefault.setSelected(p.getCommentDisplaySizeDefault());
1256 fldCommentDisplaySizeManual.setText(p.getCommentDisplaySizeManual());
1261 fldFontPath.setText(p.getFontPath());
1262 fldFontIndex.setText(p.getFontIndex());
1263 // TODO 影の種類はコンボボックス
1264 cbFontSizeArrangeDisable.setSelected(p.getFontSizeArrangeDisable());
1265 cbCommentOpaque.setSelected(p.getCommentOpaque());
1270 fldFfmpegPath.setText(p.getFfmpegPath());
1271 fldFfmpegDllPath.setText(p.getFfmpegDllPath());
1274 * ffmpeg - ffmpegパラメータ
1276 rbFfmpegOptionFile.setSelected(!p.getFfmpegParamInputDirect());
1277 rbFfmpegOptionDirectInput.setSelected(p.getFfmpegParamInputDirect());
1278 // TODO cmbFfmpegOptionFile
1279 fldFfmpegOptionExtension.setText(p.getFfmpegExtension());
1280 fldFfmpegOptionMain.setText(p.getFfmpegMainOption());
1281 fldFfmpegOptionIn.setText(p.getFfmpegInOption());
1282 fldFfmpegOptionOut.setText(p.getFfmpegOutOption());
1283 fldFfmpegOptionAv.setText(p.getFfmpegAvOption());
1284 cbFfmpegOptionResize.setSelected(p.getFfmpegResizeEnable());
1285 fldFfmpegOptionResizeWidth.setText(p.getFfmpegResizeWidth());
1286 fldFfmpegOptionResizeHeight.setText(p.getFfmpegResizeHeight());
1287 cbFfmpegOptionKeepAspect.setSelected(p.getFfmpegKeepAspect());
1292 final List<String> ngWords = p.getNgWords();
1293 for (String s : ngWords) {
1294 mdlNgWord.addElement(s);
1296 final List<String> ngIds = p.getNgIds();
1297 for (String s : ngIds) {
1298 mdlNgId.addElement(s);
1301 private void saveConfig() {
1302 final Config p = Config.INSTANCE;
1308 p.setId(fldMail.getText());
1309 p.setPassword(fldPassword.getText());
1314 p.setProxyUse(cbProxyUse.isSelected());
1315 p.setProxyHost(fldProxyHost.getText());
1316 p.setProxyPort(fldProxyPort.getText());
1321 p.setVideoDir(fldVideoDir.getText());
1322 p.setVideoFileNamePattern(fldVideoFileNamePattern.getText());
1323 p.setVideoUseLocal(cbVideoLocal.isSelected());
1328 p.setCommentDir(fldCommentDir.getText());
1329 p.setCommentFileNamePattern(fldCommentFileNamePattern.getText());
1330 p.setCommentUseLocal(cbCommentLocal.isSelected());
1335 p.setOutputDir(fldOutputDir.getText());
1336 p.setOutputFileNamePattern(fldOutputFileNamePattern.getText());
1337 p.setOutputEnable(cbOutputEnable.isSelected());
1338 p.setOutputCommentOverlay(cbOutputCommentOverlay.isSelected());
1339 p.setOutputDisplayProgress(cbOutputDisplayProgress.isSelected());
1344 p.setCommentSizeAutosize(cbCommentSizeAuto.isSelected());
1345 p.setCommentSizeManual(fldCommentSizeManual.getText());
1346 p.setCommentMinSizeAutosize(cbCommentMinSizeAuto.isSelected());
1347 p.setCommentMinSizeManual(fldCommentSizeManual.getText());
1348 p.setCommentDisplaySizeDefault(cbCommentDisplaySizeDefault.isSelected());
1349 p.setCommentDisplaySizeManual(fldCommentDisplaySizeManual.getText());
1354 p.setFontPath(fldFontPath.getText());
1355 p.setFontIndex(fldFontIndex.getText());
1356 // TODO 影の種類はコンボボックス
1357 p.setFontSizeArrangeDisable(cbFontSizeArrangeDisable.isSelected());
1358 p.setCommentOpaque(cbCommentOpaque.isSelected());
1363 p.setFfmpegPath(fldFfmpegPath.getText());
1364 p.setFfmpegDllPath(fldFfmpegDllPath.getText());
1367 * ffmpeg - ffmpegパラメータ
1369 p.setFfmpegParamInputDirect(rbFfmpegOptionDirectInput.isSelected());
1370 // TODO cmbFfmpegOptionFile
1371 p.setFfmpegExtension(fldFfmpegOptionExtension.getText());
1372 p.setFfmpegMainOption(fldFfmpegOptionMain.getText());
1373 p.setFfmpegInOption(fldFfmpegOptionIn.getText());
1374 p.setFfmpegOutOption(fldFfmpegOptionOut.getText());
1375 p.setFfmpegAvOption(fldFfmpegOptionAv.getText());
1376 p.setFfmpegResizeEnable(cbFfmpegOptionResize.isSelected());
1377 p.setFfmpegResizeWidth(fldFfmpegOptionResizeWidth.getText());
1378 p.setFfmpegResizeHeight(fldFfmpegOptionResizeHeight.getText());
1379 p.setFfmpegKeepAspect(cbFfmpegOptionKeepAspect.isSelected());
1384 p.setNgWords(Arrays.asList((String[]) mdlNgWord.toArray()));
1385 p.setNgIds(Arrays.asList((String[])mdlNgId.toArray()));