OSDN Git Service

LoginInfoのinterface化
[coroid/inqubus.git] / frontend / src / saccubus / SavePanel.java
1 /*
2  * To change this template, choose Tools | Templates
3  * and open the template in the editor.
4  */
5
6 /*
7  * SavePanel.java
8  *
9  * Created on 2009/12/04, 21:06:09
10  */
11 package saccubus;
12
13 import java.awt.GridLayout;
14 import java.io.File;
15 import javax.swing.JButton;
16 import javax.swing.JCheckBox;
17 import javax.swing.JFileChooser;
18 import javax.swing.JRadioButton;
19 import javax.swing.JTextField;
20
21 /**
22  *
23  * @author yuki
24  */
25 public class SavePanel extends javax.swing.JPanel {
26
27     private final VideoSaveInfoPanel videoSaveInfoPanel = new VideoSaveInfoPanel();
28
29     /** Creates new form SavePanel */
30     public SavePanel() {
31         initComponents();
32         inputVideoTab.setLayout(new GridLayout());
33         inputVideoTab.add(videoSaveInfoPanel);
34     }
35
36     /** This method is called from within the constructor to
37      * initialize the form.
38      * WARNING: Do NOT modify this code. The content of this method is
39      * always regenerated by the Form Editor.
40      */
41     @SuppressWarnings("unchecked")
42     // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
43     private void initComponents() {
44
45         inputCommentSaveGroup = new javax.swing.ButtonGroup();
46         outputVideoSaveGroup = new javax.swing.ButtonGroup();
47         inputTcommentSaveGroup = new javax.swing.ButtonGroup();
48         saveTabbedPane = new javax.swing.JTabbedPane();
49         inputVideoTab = new javax.swing.JPanel();
50         inputCommentTab = new javax.swing.JPanel();
51         commentSaveInfoPanel = new javax.swing.JPanel();
52         savingCommentCheckBox = new javax.swing.JCheckBox();
53         jPanel7 = new javax.swing.JPanel();
54         delCommentCheckBox = new javax.swing.JCheckBox();
55         fixCommentNumCheckBox = new javax.swing.JCheckBox();
56         jLabel1 = new javax.swing.JLabel();
57         commentNumField = new javax.swing.JTextField();
58         commentSaveFolderRadioButton = new javax.swing.JRadioButton();
59         commentSavedFolderField = new javax.swing.JTextField();
60         showSavingCommentFolderDialogButton = new javax.swing.JButton();
61         commentSaveFileRadioButton = new javax.swing.JRadioButton();
62         commentSavedFileField = new javax.swing.JTextField();
63         showSavingCommentFileDialogButton = new javax.swing.JButton();
64         inputTcommentTab = new javax.swing.JPanel();
65         tcommentSaveInfoPanel = new javax.swing.JPanel();
66         needDownloadTcomment = new javax.swing.JCheckBox();
67         jPanel8 = new javax.swing.JPanel();
68         delTcomment = new javax.swing.JCheckBox();
69         tcommentSaveInFolder = new javax.swing.JRadioButton();
70         tcommentFolder = new javax.swing.JTextField();
71         tcoomentFolderChooserButton = new javax.swing.JButton();
72         tcommentSaveToFile = new javax.swing.JRadioButton();
73         tcommentFile = new javax.swing.JTextField();
74         tcommentFileChooserButton = new javax.swing.JButton();
75         outputVideoTab = new javax.swing.JPanel();
76         jPanel3 = new javax.swing.JPanel();
77         savingConvertedVideoCheckBox = new javax.swing.JCheckBox();
78         jPanel5 = new javax.swing.JPanel();
79         addComment = new javax.swing.JCheckBox();
80         addTcomment = new javax.swing.JCheckBox();
81         convSaveFolderRadioButton = new javax.swing.JRadioButton();
82         notAddVideoIdConvVideoCheckBox = new javax.swing.JCheckBox();
83         convertedVideoSavedFolderField = new javax.swing.JTextField();
84         showSavingConvertedVideoFolderDialogButton = new javax.swing.JButton();
85         convSaveFileRadioButton = new javax.swing.JRadioButton();
86         convertedVideoSavedFileField = new javax.swing.JTextField();
87         showSavingConvertedVideoFileDialogButton = new javax.swing.JButton();
88
89         saveTabbedPane.setName("saveTabbedPane"); // NOI18N
90
91         javax.swing.GroupLayout inputVideoTabLayout = new javax.swing.GroupLayout(inputVideoTab);
92         inputVideoTab.setLayout(inputVideoTabLayout);
93         inputVideoTabLayout.setHorizontalGroup(
94             inputVideoTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
95             .addGap(0, 369, Short.MAX_VALUE)
96         );
97         inputVideoTabLayout.setVerticalGroup(
98             inputVideoTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
99             .addGap(0, 270, Short.MAX_VALUE)
100         );
101
102         saveTabbedPane.addTab("入力動画", inputVideoTab);
103
104         commentSaveInfoPanel.setBorder(javax.swing.BorderFactory.createTitledBorder("コメント保存設定"));
105
106         savingCommentCheckBox.setText("コメントをダウンロードする");
107         savingCommentCheckBox.setName("savingCommentCheckBox"); // NOI18N
108
109         delCommentCheckBox.setText("変換後にコメントファイルを削除する");
110         delCommentCheckBox.setName("delCommentCheckBox"); // NOI18N
111
112         fixCommentNumCheckBox.setText("コメント取得数は自動で調整する");
113         fixCommentNumCheckBox.setName("fixCommentNumCheckBox"); // NOI18N
114
115         jLabel1.setText("取得コメント数");
116
117         commentNumField.setName("commentNumField"); // NOI18N
118
119         inputCommentSaveGroup.add(commentSaveFolderRadioButton);
120         commentSaveFolderRadioButton.setText("保存するフォルダを指定し、ファイル名は自動で決定する");
121         commentSaveFolderRadioButton.setName("commentSaveFolderRadioButton"); // NOI18N
122
123         commentSavedFolderField.setName("commentSavedFolderField"); // NOI18N
124
125         showSavingCommentFolderDialogButton.setText("参照...");
126         showSavingCommentFolderDialogButton.setName("showSavingCommentFolderDialogButton"); // NOI18N
127
128         inputCommentSaveGroup.add(commentSaveFileRadioButton);
129         commentSaveFileRadioButton.setText("保存するファイル名を指定する");
130         commentSaveFileRadioButton.setName("commentSaveFileRadioButton"); // NOI18N
131
132         commentSavedFileField.setName("commentSavedFileField"); // NOI18N
133
134         showSavingCommentFileDialogButton.setText("参照...");
135         showSavingCommentFileDialogButton.setName("showSavingCommentFileDialogButton"); // NOI18N
136
137         javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7);
138         jPanel7.setLayout(jPanel7Layout);
139         jPanel7Layout.setHorizontalGroup(
140             jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
141             .addGroup(jPanel7Layout.createSequentialGroup()
142                 .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
143                     .addGroup(jPanel7Layout.createSequentialGroup()
144                         .addGap(21, 21, 21)
145                         .addComponent(jLabel1)
146                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
147                         .addComponent(commentNumField, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE))
148                     .addComponent(delCommentCheckBox)
149                     .addComponent(fixCommentNumCheckBox)
150                     .addComponent(commentSaveFolderRadioButton)
151                     .addComponent(commentSaveFileRadioButton)
152                     .addGroup(jPanel7Layout.createSequentialGroup()
153                         .addGap(21, 21, 21)
154                         .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
155                             .addComponent(commentSavedFileField, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE)
156                             .addComponent(commentSavedFolderField, javax.swing.GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE))
157                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
158                         .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
159                             .addComponent(showSavingCommentFolderDialogButton)
160                             .addComponent(showSavingCommentFileDialogButton))))
161                 .addContainerGap())
162         );
163         jPanel7Layout.setVerticalGroup(
164             jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
165             .addGroup(jPanel7Layout.createSequentialGroup()
166                 .addContainerGap()
167                 .addComponent(delCommentCheckBox)
168                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
169                 .addComponent(fixCommentNumCheckBox)
170                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
171                 .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
172                     .addComponent(jLabel1)
173                     .addComponent(commentNumField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
174                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
175                 .addComponent(commentSaveFolderRadioButton)
176                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
177                 .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
178                     .addComponent(commentSavedFolderField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
179                     .addComponent(showSavingCommentFolderDialogButton))
180                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
181                 .addComponent(commentSaveFileRadioButton)
182                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
183                 .addGroup(jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
184                     .addComponent(commentSavedFileField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
185                     .addComponent(showSavingCommentFileDialogButton))
186                 .addContainerGap())
187         );
188
189         javax.swing.GroupLayout commentSaveInfoPanelLayout = new javax.swing.GroupLayout(commentSaveInfoPanel);
190         commentSaveInfoPanel.setLayout(commentSaveInfoPanelLayout);
191         commentSaveInfoPanelLayout.setHorizontalGroup(
192             commentSaveInfoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
193             .addGroup(commentSaveInfoPanelLayout.createSequentialGroup()
194                 .addComponent(savingCommentCheckBox)
195                 .addGap(79, 79, 79))
196             .addGroup(commentSaveInfoPanelLayout.createSequentialGroup()
197                 .addGap(21, 21, 21)
198                 .addComponent(jPanel7, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
199                 .addContainerGap())
200         );
201         commentSaveInfoPanelLayout.setVerticalGroup(
202             commentSaveInfoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
203             .addGroup(commentSaveInfoPanelLayout.createSequentialGroup()
204                 .addComponent(savingCommentCheckBox)
205                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
206                 .addComponent(jPanel7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
207                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
208         );
209
210         javax.swing.GroupLayout inputCommentTabLayout = new javax.swing.GroupLayout(inputCommentTab);
211         inputCommentTab.setLayout(inputCommentTabLayout);
212         inputCommentTabLayout.setHorizontalGroup(
213             inputCommentTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
214             .addGroup(inputCommentTabLayout.createSequentialGroup()
215                 .addContainerGap()
216                 .addComponent(commentSaveInfoPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
217                 .addContainerGap())
218         );
219         inputCommentTabLayout.setVerticalGroup(
220             inputCommentTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
221             .addGroup(inputCommentTabLayout.createSequentialGroup()
222                 .addContainerGap()
223                 .addComponent(commentSaveInfoPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
224                 .addContainerGap(30, Short.MAX_VALUE))
225         );
226
227         saveTabbedPane.addTab("入力コメント", inputCommentTab);
228
229         tcommentSaveInfoPanel.setBorder(javax.swing.BorderFactory.createTitledBorder("投稿者コメント保存設定"));
230
231         needDownloadTcomment.setText("コメントをダウンロードする");
232         needDownloadTcomment.setName("needDownloadTcomment"); // NOI18N
233
234         delTcomment.setText("変換後にコメントファイルを削除する");
235         delTcomment.setName("delTcomment"); // NOI18N
236
237         inputTcommentSaveGroup.add(tcommentSaveInFolder);
238         tcommentSaveInFolder.setText("保存するフォルダを指定し、ファイル名は自動で決定する");
239         tcommentSaveInFolder.setName("tcommentSaveInFolder"); // NOI18N
240
241         tcommentFolder.setName("tcommentFolder"); // NOI18N
242
243         tcoomentFolderChooserButton.setText("参照...");
244         tcoomentFolderChooserButton.setName("tcoomentFolderChooserButton"); // NOI18N
245         tcoomentFolderChooserButton.addActionListener(new java.awt.event.ActionListener() {
246             public void actionPerformed(java.awt.event.ActionEvent evt) {
247                 tcoomentFolderChooserButtonActionPerformed(evt);
248             }
249         });
250
251         inputTcommentSaveGroup.add(tcommentSaveToFile);
252         tcommentSaveToFile.setText("保存するファイル名を指定する");
253         tcommentSaveToFile.setName("tcommentSaveToFile"); // NOI18N
254
255         tcommentFile.setName("tcommentFile"); // NOI18N
256
257         tcommentFileChooserButton.setText("参照...");
258         tcommentFileChooserButton.setName("tcommentFileChooserButton"); // NOI18N
259         tcommentFileChooserButton.addActionListener(new java.awt.event.ActionListener() {
260             public void actionPerformed(java.awt.event.ActionEvent evt) {
261                 tcommentFileChooserButtonActionPerformed(evt);
262             }
263         });
264
265         javax.swing.GroupLayout jPanel8Layout = new javax.swing.GroupLayout(jPanel8);
266         jPanel8.setLayout(jPanel8Layout);
267         jPanel8Layout.setHorizontalGroup(
268             jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
269             .addGroup(jPanel8Layout.createSequentialGroup()
270                 .addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
271                     .addComponent(delTcomment)
272                     .addComponent(tcommentSaveInFolder)
273                     .addGroup(jPanel8Layout.createSequentialGroup()
274                         .addContainerGap()
275                         .addComponent(tcommentFolder, javax.swing.GroupLayout.DEFAULT_SIZE, 206, Short.MAX_VALUE)
276                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
277                         .addComponent(tcoomentFolderChooserButton))
278                     .addComponent(tcommentSaveToFile)
279                     .addGroup(jPanel8Layout.createSequentialGroup()
280                         .addContainerGap()
281                         .addComponent(tcommentFile, javax.swing.GroupLayout.DEFAULT_SIZE, 206, Short.MAX_VALUE)
282                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
283                         .addComponent(tcommentFileChooserButton)))
284                 .addContainerGap())
285         );
286         jPanel8Layout.setVerticalGroup(
287             jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
288             .addGroup(jPanel8Layout.createSequentialGroup()
289                 .addContainerGap()
290                 .addComponent(delTcomment)
291                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
292                 .addComponent(tcommentSaveInFolder)
293                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
294                 .addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
295                     .addComponent(tcommentFolder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
296                     .addComponent(tcoomentFolderChooserButton))
297                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
298                 .addComponent(tcommentSaveToFile)
299                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
300                 .addGroup(jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
301                     .addComponent(tcommentFile, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
302                     .addComponent(tcommentFileChooserButton))
303                 .addContainerGap())
304         );
305
306         javax.swing.GroupLayout tcommentSaveInfoPanelLayout = new javax.swing.GroupLayout(tcommentSaveInfoPanel);
307         tcommentSaveInfoPanel.setLayout(tcommentSaveInfoPanelLayout);
308         tcommentSaveInfoPanelLayout.setHorizontalGroup(
309             tcommentSaveInfoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
310             .addGroup(tcommentSaveInfoPanelLayout.createSequentialGroup()
311                 .addComponent(needDownloadTcomment)
312                 .addGap(79, 79, 79))
313             .addGroup(tcommentSaveInfoPanelLayout.createSequentialGroup()
314                 .addGap(21, 21, 21)
315                 .addComponent(jPanel8, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
316                 .addContainerGap())
317         );
318         tcommentSaveInfoPanelLayout.setVerticalGroup(
319             tcommentSaveInfoPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
320             .addGroup(tcommentSaveInfoPanelLayout.createSequentialGroup()
321                 .addComponent(needDownloadTcomment)
322                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
323                 .addComponent(jPanel8, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
324                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
325         );
326
327         javax.swing.GroupLayout inputTcommentTabLayout = new javax.swing.GroupLayout(inputTcommentTab);
328         inputTcommentTab.setLayout(inputTcommentTabLayout);
329         inputTcommentTabLayout.setHorizontalGroup(
330             inputTcommentTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
331             .addGroup(inputTcommentTabLayout.createSequentialGroup()
332                 .addContainerGap()
333                 .addComponent(tcommentSaveInfoPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
334                 .addContainerGap())
335         );
336         inputTcommentTabLayout.setVerticalGroup(
337             inputTcommentTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
338             .addGroup(inputTcommentTabLayout.createSequentialGroup()
339                 .addContainerGap()
340                 .addComponent(tcommentSaveInfoPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
341                 .addContainerGap(74, Short.MAX_VALUE))
342         );
343
344         saveTabbedPane.addTab("入力投稿者コメント", inputTcommentTab);
345
346         jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("コメント付き動画保存設定"));
347
348         savingConvertedVideoCheckBox.setText("動画を変換する");
349         savingConvertedVideoCheckBox.setName("savingConvertedVideoCheckBox"); // NOI18N
350
351         addComment.setText("コメントをつける");
352         addComment.setName("addComment"); // NOI18N
353
354         addTcomment.setText("投稿者コメントをつける");
355         addTcomment.setName("addTcomment"); // NOI18N
356
357         outputVideoSaveGroup.add(convSaveFolderRadioButton);
358         convSaveFolderRadioButton.setText("保存するフォルダを指定し、ファイル名は自動で決定する");
359         convSaveFolderRadioButton.setName("convSaveFolderRadioButton"); // NOI18N
360
361         notAddVideoIdConvVideoCheckBox.setText("ファイル名に動画IDを付加しない");
362         notAddVideoIdConvVideoCheckBox.setName("notAddVideoIdConvVideoCheckBox"); // NOI18N
363
364         convertedVideoSavedFolderField.setName("convertedVideoSavedFolderField"); // NOI18N
365
366         showSavingConvertedVideoFolderDialogButton.setText("参照...");
367
368         outputVideoSaveGroup.add(convSaveFileRadioButton);
369         convSaveFileRadioButton.setText("保存するファイル名を指定する");
370         convSaveFileRadioButton.setName("convSaveFileRadioButton"); // NOI18N
371
372         convertedVideoSavedFileField.setName("convertedVideoSavedFileField"); // NOI18N
373
374         showSavingConvertedVideoFileDialogButton.setText("参照...");
375
376         javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
377         jPanel5.setLayout(jPanel5Layout);
378         jPanel5Layout.setHorizontalGroup(
379             jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
380             .addGroup(jPanel5Layout.createSequentialGroup()
381                 .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
382                     .addComponent(addComment)
383                     .addComponent(addTcomment)
384                     .addComponent(convSaveFileRadioButton)
385                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
386                         .addGap(21, 21, 21)
387                         .addComponent(convertedVideoSavedFileField, javax.swing.GroupLayout.DEFAULT_SIZE, 194, Short.MAX_VALUE)
388                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
389                         .addComponent(showSavingConvertedVideoFileDialogButton))
390                     .addGroup(jPanel5Layout.createSequentialGroup()
391                         .addGap(21, 21, 21)
392                         .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
393                             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel5Layout.createSequentialGroup()
394                                 .addComponent(convertedVideoSavedFolderField, javax.swing.GroupLayout.DEFAULT_SIZE, 194, Short.MAX_VALUE)
395                                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
396                                 .addComponent(showSavingConvertedVideoFolderDialogButton))
397                             .addComponent(notAddVideoIdConvVideoCheckBox)))
398                     .addComponent(convSaveFolderRadioButton))
399                 .addContainerGap())
400         );
401         jPanel5Layout.setVerticalGroup(
402             jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
403             .addGroup(jPanel5Layout.createSequentialGroup()
404                 .addComponent(addComment)
405                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
406                 .addComponent(addTcomment)
407                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
408                 .addComponent(convSaveFolderRadioButton)
409                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
410                 .addComponent(notAddVideoIdConvVideoCheckBox)
411                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
412                 .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
413                     .addComponent(convertedVideoSavedFolderField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
414                     .addComponent(showSavingConvertedVideoFolderDialogButton))
415                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
416                 .addComponent(convSaveFileRadioButton)
417                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
418                 .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
419                     .addComponent(convertedVideoSavedFileField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
420                     .addComponent(showSavingConvertedVideoFileDialogButton))
421                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
422         );
423
424         javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
425         jPanel3.setLayout(jPanel3Layout);
426         jPanel3Layout.setHorizontalGroup(
427             jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
428             .addGroup(jPanel3Layout.createSequentialGroup()
429                 .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
430                     .addComponent(savingConvertedVideoCheckBox)
431                     .addGroup(jPanel3Layout.createSequentialGroup()
432                         .addGap(21, 21, 21)
433                         .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
434                 .addContainerGap())
435         );
436         jPanel3Layout.setVerticalGroup(
437             jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
438             .addGroup(jPanel3Layout.createSequentialGroup()
439                 .addComponent(savingConvertedVideoCheckBox)
440                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
441                 .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
442                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
443         );
444
445         javax.swing.GroupLayout outputVideoTabLayout = new javax.swing.GroupLayout(outputVideoTab);
446         outputVideoTab.setLayout(outputVideoTabLayout);
447         outputVideoTabLayout.setHorizontalGroup(
448             outputVideoTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
449             .addGroup(outputVideoTabLayout.createSequentialGroup()
450                 .addContainerGap()
451                 .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
452                 .addContainerGap(15, Short.MAX_VALUE))
453         );
454         outputVideoTabLayout.setVerticalGroup(
455             outputVideoTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
456             .addGroup(outputVideoTabLayout.createSequentialGroup()
457                 .addContainerGap()
458                 .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
459                 .addContainerGap(38, Short.MAX_VALUE))
460         );
461
462         saveTabbedPane.addTab("出力コメント付き動画", outputVideoTab);
463
464         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
465         this.setLayout(layout);
466         layout.setHorizontalGroup(
467             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
468             .addComponent(saveTabbedPane, javax.swing.GroupLayout.DEFAULT_SIZE, 374, Short.MAX_VALUE)
469         );
470         layout.setVerticalGroup(
471             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
472             .addComponent(saveTabbedPane, javax.swing.GroupLayout.DEFAULT_SIZE, 297, Short.MAX_VALUE)
473         );
474     }// </editor-fold>//GEN-END:initComponents
475
476     private void tcoomentFolderChooserButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_tcoomentFolderChooserButtonActionPerformed
477         showSaveDialog("投稿者コメントの保存先(フォルダ)", tcommentFolder, true, true);
478     }//GEN-LAST:event_tcoomentFolderChooserButtonActionPerformed
479
480     private void tcommentFileChooserButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_tcommentFileChooserButtonActionPerformed
481         showSaveDialog("投稿者コメントの保存先(ファイル)", tcommentFile, true, false);
482     }//GEN-LAST:event_tcommentFileChooserButtonActionPerformed
483     // Variables declaration - do not modify//GEN-BEGIN:variables
484     private javax.swing.JCheckBox addComment;
485     private javax.swing.JCheckBox addTcomment;
486     private javax.swing.JTextField commentNumField;
487     private javax.swing.JRadioButton commentSaveFileRadioButton;
488     private javax.swing.JRadioButton commentSaveFolderRadioButton;
489     private javax.swing.JPanel commentSaveInfoPanel;
490     private javax.swing.JTextField commentSavedFileField;
491     private javax.swing.JTextField commentSavedFolderField;
492     private javax.swing.JRadioButton convSaveFileRadioButton;
493     private javax.swing.JRadioButton convSaveFolderRadioButton;
494     private javax.swing.JTextField convertedVideoSavedFileField;
495     private javax.swing.JTextField convertedVideoSavedFolderField;
496     private javax.swing.JCheckBox delCommentCheckBox;
497     private javax.swing.JCheckBox delTcomment;
498     private javax.swing.JCheckBox fixCommentNumCheckBox;
499     private javax.swing.ButtonGroup inputCommentSaveGroup;
500     private javax.swing.JPanel inputCommentTab;
501     private javax.swing.ButtonGroup inputTcommentSaveGroup;
502     private javax.swing.JPanel inputTcommentTab;
503     private javax.swing.JPanel inputVideoTab;
504     private javax.swing.JLabel jLabel1;
505     private javax.swing.JPanel jPanel3;
506     private javax.swing.JPanel jPanel5;
507     private javax.swing.JPanel jPanel7;
508     private javax.swing.JPanel jPanel8;
509     private javax.swing.JCheckBox needDownloadTcomment;
510     private javax.swing.JCheckBox notAddVideoIdConvVideoCheckBox;
511     private javax.swing.ButtonGroup outputVideoSaveGroup;
512     private javax.swing.JPanel outputVideoTab;
513     private javax.swing.JTabbedPane saveTabbedPane;
514     private javax.swing.JCheckBox savingCommentCheckBox;
515     private javax.swing.JCheckBox savingConvertedVideoCheckBox;
516     private javax.swing.JButton showSavingCommentFileDialogButton;
517     private javax.swing.JButton showSavingCommentFolderDialogButton;
518     private javax.swing.JButton showSavingConvertedVideoFileDialogButton;
519     private javax.swing.JButton showSavingConvertedVideoFolderDialogButton;
520     private javax.swing.JTextField tcommentFile;
521     private javax.swing.JButton tcommentFileChooserButton;
522     private javax.swing.JTextField tcommentFolder;
523     private javax.swing.JRadioButton tcommentSaveInFolder;
524     private javax.swing.JPanel tcommentSaveInfoPanel;
525     private javax.swing.JRadioButton tcommentSaveToFile;
526     private javax.swing.JButton tcoomentFolderChooserButton;
527     // End of variables declaration//GEN-END:variables
528
529     /** @return 保存設定-入力コメント「コメントをダウンロードする」チェックボックス. */
530     JCheckBox getSavingCommentCheckBox() {
531         return savingCommentCheckBox;
532     }
533
534     /** @return 保存設定-入力コメント「変換後にコメントファイルを削除する」チェックボックス. */
535     JCheckBox getDelCommentCheckBox() {
536         return delCommentCheckBox;
537     }
538
539     /** @return 保存設定-入力コメント「コメント取得数は自動で調整する」チェックボックス. */
540     JCheckBox getFixCommentNumCheckBox() {
541         return fixCommentNumCheckBox;
542     }
543
544     /** @return 保存設定-入力コメント「取得コメント数」テキストフィールド. */
545     JTextField getCommentNumField() {
546         return commentNumField;
547     }
548
549     /** @return 保存設定-入力コメント「保存するフォルダを指定し、ファイル名は自動で決定する」ラジオボタン. */
550     JRadioButton getCommentSaveFolderRadioButton() {
551         return commentSaveFolderRadioButton;
552     }
553
554     /** @return 保存設定-入力コメント「ファイル名に動画IDを付加しない」チェックボックス. */
555     JCheckBox getNotAddVideoIdConvVideoCheckBox() {
556         return notAddVideoIdConvVideoCheckBox;
557     }
558
559     /** @return 保存設定-入力コメント「保存するフォルダを指定し、ファイル名は自動で決定する」テキストフィールド. */
560     JTextField getCommentSavedFolderField() {
561         return commentSavedFolderField;
562     }
563
564     /** @return 保存設定-入力コメント「保存するフォルダを指定し、ファイル名は自動で決定する」ファイルチューザボタン. */
565     JButton getShowSavingCommentFolderDialogButton() {
566         return showSavingCommentFolderDialogButton;
567     }
568
569     /** @return 保存設定-入力コメント「保存するファイル名を指定する」ラジオボタン. */
570     JRadioButton getCommentSaveFileRadioButton() {
571         return commentSaveFileRadioButton;
572     }
573
574     /** @return 保存設定-入力コメント「保存するファイル名を指定する」テキストフィールド. */
575     JTextField getCommentSavedFileField() {
576         return commentSavedFileField;
577     }
578
579     /** @return 保存設定-入力コメント「保存するファイル名を指定する」ファイルチューザボタン. */
580     JButton getShowSavingCommentFileDialogButton() {
581         return showSavingCommentFileDialogButton;
582     }
583
584     /** @return 保存設定-出力コメント付き動画「動画を変換する」チェックボックス. */
585     JCheckBox getSavingConvertedVideoCheckBox() {
586         return savingConvertedVideoCheckBox;
587     }
588
589     /** @return 保存設定-出力コメント付き動画「コメントをつける」チェックボックス. */
590     JCheckBox getAddCommentCheckBox() {
591         return addComment;
592     }
593
594     /** @return 保存設定-出力コメント付き動画「投稿者コメントをつける」チェックボックス. */
595     JCheckBox getAddTcommentCheckBox() {
596         return addTcomment;
597     }
598
599     /** @return 保存設定-出力コメント付き動画「保存するフォルダを指定し、ファイル名は自動で決定する」ラジオボタン. */
600     JRadioButton getConvSaveFolderRadioButton() {
601         return convSaveFolderRadioButton;
602     }
603
604     /** @return 保存設定-出力コメント付き動画「保存するフォルダを指定し、ファイル名は自動で決定する」テキストフィールド. */
605     JTextField getConvertedVideoSavedFolderField() {
606         return convertedVideoSavedFolderField;
607     }
608
609     /** @return 保存設定-出力コメント付き動画「保存するフォルダを指定し、ファイル名は自動で決定する」ファイルチューザボタン. */
610     JButton getShowSavingConvertedVideoFolderDialogButton() {
611         return showSavingConvertedVideoFolderDialogButton;
612     }
613
614     /** @return 保存設定-出力コメント付き動画「保存するファイル名を指定する」ラジオボタン. */
615     JRadioButton getConvSaveFileRadioButton() {
616         return convSaveFileRadioButton;
617     }
618
619     /** @return 保存設定-出力コメント付き動画「保存するファイル名を指定する」テキストフィールド. */
620     JTextField getConvertedVideoSavedFileField() {
621         return convertedVideoSavedFileField;
622     }
623
624     /** @return 保存設定-出力コメント付き動画「保存するファイル名を指定する」ファイルチューザボタン. */
625     JButton getShowSavingConvertedVideoFileDialogButton() {
626         return showSavingConvertedVideoFileDialogButton;
627     }
628
629     VideoSaveInfoPanel getVideoSaveInfoPanel() {
630         return videoSaveInfoPanel;
631     }
632
633     /** @return 投稿者コメントをダウンロードするのであればtrue. */
634     boolean isTcommentDownload() {
635         return needDownloadTcomment.isSelected();
636     }
637
638     /** 「投稿者コメントをダウンロードする」に設定を行う. */
639     void setTcommentDownload(boolean b) {
640         needDownloadTcomment.setSelected(b);
641     }
642
643     /** @return 変換後に投稿者コメントを削除するのであればtrue. */
644     boolean isTcommentDelete() {
645         return delTcomment.isSelected();
646     }
647
648     /** 「変換後に投稿者コメントを削除する」に設定を行う. */
649     void setTcommentDelete(boolean b) {
650         delTcomment.setSelected(b);
651     }
652
653     /** @return 投稿者コメントのファイル名を自動で設定するのであればtrue, 直接指定するのであればfalse. */
654     boolean isTcommentAutoFileName() {
655         return tcommentSaveInFolder.isSelected();
656     }
657
658     /** @param b 投稿者コメントのファイル名を自動で設定するのであればtrue, 直接指定するのであればfalse. */
659     void setTcommentAutoFileName(boolean b) {
660         tcommentSaveInFolder.setSelected(b);
661         tcommentSaveToFile.setSelected(!b);
662     }
663
664     /** @return 投稿者コメントの「保存するフォルダを指定し、ファイル名は自動で決定する」に設定してある文字列. */
665     String getTcommentDirectoryName() {
666         return tcommentFolder.getText();
667     }
668
669     /** @param t 投稿者コメントの「保存するフォルダを指定し、ファイル名は自動で決定する」に設定してある文字列. */
670     void setTcommentDirectoryName(String t) {
671         tcommentFolder.setText(t);
672     }
673
674     /** @return 投稿者コメントの「保存するファイル名を指定する」に設定してある文字列. */
675     String getTcommentFileName() {
676         return tcommentFile.getText();
677     }
678
679     /** @param b 投稿者コメントの「保存するファイル名を指定する」に設定してある文字列. */
680     void setTcommentFileName(String t) {
681         tcommentFile.setText(t);
682     }
683
684     private void showSaveDialog(String title, JTextField field, boolean isSave,
685             boolean isDir) {
686         File current = new File(field.getText());
687         JFileChooser chooser = new JFileChooser(current);
688         chooser.setDialogTitle(title);
689         int code = 0;
690         if (isDir) {
691             chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
692         }
693         if (isSave) {
694             code = chooser.showSaveDialog(this);
695         } else {
696             code = chooser.showOpenDialog(this);
697         }
698         if (code == JFileChooser.APPROVE_OPTION) {
699             field.setText(chooser.getSelectedFile().getAbsolutePath());
700         }
701     }
702 }