OSDN Git Service

画面用プロファイル生成
authoryukihane <yukihane.feather@gmail.com>
Thu, 25 Aug 2011 00:31:50 +0000 (09:31 +0900)
committeryukihane <yukihane.feather@gmail.com>
Thu, 25 Aug 2011 00:31:50 +0000 (09:31 +0900)
frontend/src/yukihane/inqubus/gui/MainFrame.java

index d20e3ff..c701682 100644 (file)
@@ -40,11 +40,19 @@ import javax.swing.JScrollPane;
 import javax.swing.JTable;
 import javax.swing.JTextField;
 import javax.swing.KeyStroke;
-import javax.swing.LayoutStyle;
 import javax.swing.LayoutStyle.ComponentPlacement;
 import javax.swing.TransferHandler;
 import javax.swing.WindowConstants;
+import org.apache.commons.lang.StringUtils;
 import saccubus.MainFrame_AboutBox;
+import saccubus.worker.Download;
+import saccubus.worker.profile.CommentProfile;
+import saccubus.worker.profile.DownloadProfile;
+import saccubus.worker.profile.GeneralProfile;
+import saccubus.worker.profile.LoginProfile;
+import saccubus.worker.profile.ProxyProfile;
+import saccubus.worker.profile.VideoProfile;
+import yukihane.Util;
 import yukihane.inqubus.Config;
 import yukihane.inqubus.model.Target;
 import yukihane.inqubus.model.TargetsTableModel;
@@ -61,20 +69,6 @@ public class MainFrame extends JFrame {
 
     /** Creates new form MainFrame */
     public MainFrame() {
-        initComponents();
-        initInputPanel();
-        jPanel1.setTransferHandler(new DownloadListTransferHandler());
-        jTable1.setTransferHandler(new TableTransferHandler());
-    }
-
-    /** This method is called from within the constructor to
-     * initialize the form.
-     * WARNING: Do NOT modify this code. The content of this method is
-     * always regenerated by the Form Editor.
-     */
-    @SuppressWarnings("unchecked")
-    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
-    private void initComponents() {
         final URL url = MainFrame_AboutBox.class.getResource("icon.png");
         final Image icon1 = Toolkit.getDefaultToolkit().createImage(url);
         final URL url32 = MainFrame_AboutBox.class.getResource("icon32.png");
@@ -84,203 +78,203 @@ public class MainFrame extends JFrame {
         images.add(icon2);
         setIconImages(images);
 
-        jPanel1 = new JPanel();
-        jScrollPane1 = new JScrollPane();
-        jTable1 = new JTable();
-        jPanel2 = new JPanel();
-        jButton2 = new JButton();
-        jButton3 = new JButton();
-        jButton4 = new JButton();
-        jPanel3 = new JPanel();
-        idLabel = new JLabel();
-        idField = new JTextField();
-        movieLabel = new JLabel();
-        useMovieLocalCheckBox = new JCheckBox();
-        movieFileField = new JTextField();
-        movieFileSelectButton = new JButton();
-        commentLabel = new JLabel();
-        useCommentLocalCheckBox = new JCheckBox();
-        commentFileField = new JTextField();
-        commentFileSelectButton = new JButton();
-        outputLabel = new JLabel();
-        outputConvertCheckBox = new JCheckBox();
-        outputFileField = new JTextField();
-        applyButton = new JButton();
+        final JPanel pnlMain = new JPanel();
+        final JScrollPane scrDisplay = new JScrollPane();
+        tblDisplay = new JTable();
+        final JPanel pnlButton = new JPanel();
+        btnStart = new JButton();
+        btnStop = new JButton();
+        btnDeselect = new JButton();
+        final JPanel pnlInputMain = new JPanel();
+        final JLabel lblId = new JLabel();
+        fldId = new JTextField();
+        final JLabel lblVideo = new JLabel();
+        cbVideoLocal = new JCheckBox();
+        fldVideo = new JTextField();
+        btnVideo = new JButton();
+        final JLabel lblComment = new JLabel();
+        cbCommentLocal = new JCheckBox();
+        fldComment = new JTextField();
+        btnComment = new JButton();
+        final JLabel lblOutput = new JLabel();
+        cbOutputEnable = new JCheckBox();
+        fldOutput = new JTextField();
 
         setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
 
-        jPanel1.setBorder(BorderFactory.createEtchedBorder());
+        btnApply.addActionListener(new ApplyActionListener());
+
+        pnlMain.setBorder(BorderFactory.createEtchedBorder());
 
-        jTable1.setModel(targetModel);
-        jTable1.setDropMode(DropMode.INSERT_ROWS);
-        jScrollPane1.setViewportView(jTable1);
+        tblDisplay.setModel(targetModel);
+        tblDisplay.setDropMode(DropMode.INSERT_ROWS);
+        scrDisplay.setViewportView(tblDisplay);
 
-        jPanel2.setBorder(BorderFactory.createEtchedBorder());
+        pnlButton.setBorder(BorderFactory.createEtchedBorder());
 
-        jButton2.setText("開始");
+        btnStart.setText("開始");
 
-        jButton3.setText("停止");
+        btnStop.setText("停止");
 
-        jButton4.setText("選択解除");
+        btnDeselect.setText("選択解除");
 
-        GroupLayout jPanel2Layout = new GroupLayout(jPanel2);
-        jPanel2.setLayout(jPanel2Layout);
-        jPanel2Layout.setHorizontalGroup(
-            jPanel2Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(jPanel2Layout.createSequentialGroup()
+        GroupLayout gl_pnlButton = new GroupLayout(pnlButton);
+        pnlButton.setLayout(gl_pnlButton);
+        gl_pnlButton.setHorizontalGroup(
+            gl_pnlButton.createParallelGroup(Alignment.LEADING)
+            .addGroup(gl_pnlButton.createSequentialGroup()
                 .addContainerGap()
-                .addComponent(jButton2)
+                .addComponent(btnStart)
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addComponent(jButton3)
+                .addComponent(btnStop)
                 .addPreferredGap(ComponentPlacement.RELATED, 250, Short.MAX_VALUE)
-                .addComponent(jButton4)
+                .addComponent(btnDeselect)
                 .addContainerGap())
         );
-        jPanel2Layout.setVerticalGroup(
-            jPanel2Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(jPanel2Layout.createSequentialGroup()
+        gl_pnlButton.setVerticalGroup(
+            gl_pnlButton.createParallelGroup(Alignment.LEADING)
+            .addGroup(gl_pnlButton.createSequentialGroup()
                 .addContainerGap()
-                .addGroup(jPanel2Layout.createParallelGroup(Alignment.BASELINE)
-                    .addComponent(jButton2)
-                    .addComponent(jButton3)
-                    .addComponent(jButton4))
+                .addGroup(gl_pnlButton.createParallelGroup(Alignment.BASELINE)
+                    .addComponent(btnStart)
+                    .addComponent(btnStop)
+                    .addComponent(btnDeselect))
                 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
         );
 
-        jPanel3.setBorder(BorderFactory.createEtchedBorder());
+        pnlInputMain.setBorder(BorderFactory.createEtchedBorder());
 
-        idLabel.setText("ID");
+        lblId.setText("ID");
 
-        idField.addFocusListener(new java.awt.event.FocusAdapter() {
+        fldId.addFocusListener(new java.awt.event.FocusAdapter() {
 
             public void focusLost(java.awt.event.FocusEvent evt) {
                 idFieldFocusLost(evt);
             }
         });
 
-        movieLabel.setText("動画");
+        lblVideo.setText("動画");
 
-        useMovieLocalCheckBox.setText("local");
-        useMovieLocalCheckBox.addItemListener(new java.awt.event.ItemListener() {
+        cbVideoLocal.setText("local");
+        cbVideoLocal.addItemListener(new java.awt.event.ItemListener() {
 
             public void itemStateChanged(java.awt.event.ItemEvent evt) {
                 useMovieLocalCheckBoxItemStateChanged(evt);
             }
         });
 
-        movieFileSelectButton.setText("...");
+        btnVideo.setText("...");
 
-        commentLabel.setText("コメント");
+        lblComment.setText("コメント");
 
-        useCommentLocalCheckBox.setText("local");
-        useCommentLocalCheckBox.addItemListener(new java.awt.event.ItemListener() {
+        cbCommentLocal.setText("local");
+        cbCommentLocal.addItemListener(new java.awt.event.ItemListener() {
 
             public void itemStateChanged(java.awt.event.ItemEvent evt) {
                 useMovieLocalCheckBoxItemStateChanged(evt);
             }
         });
 
-        commentFileSelectButton.setText("...");
+        btnComment.setText("...");
 
-        outputLabel.setText("出力");
+        lblOutput.setText("出力");
 
-        outputConvertCheckBox.setText("変換");
-        outputConvertCheckBox.addItemListener(new java.awt.event.ItemListener() {
+        cbOutputEnable.setText("変換");
+        cbOutputEnable.addItemListener(new java.awt.event.ItemListener() {
 
             public void itemStateChanged(java.awt.event.ItemEvent evt) {
                 outputConvertCheckBoxItemStateChanged(evt);
             }
         });
 
-        applyButton.setText("適用");
 
-        GroupLayout jPanel3Layout = new GroupLayout(jPanel3);
-        jPanel3.setLayout(jPanel3Layout);
-        jPanel3Layout.setHorizontalGroup(
-            jPanel3Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(jPanel3Layout.createSequentialGroup()
+        GroupLayout gl_pnlInputMain = new GroupLayout(pnlInputMain);
+        pnlInputMain.setLayout(gl_pnlInputMain);
+        gl_pnlInputMain.setHorizontalGroup(
+            gl_pnlInputMain.createParallelGroup(Alignment.LEADING)
+            .addGroup(gl_pnlInputMain.createSequentialGroup()
                 .addContainerGap()
-                .addGroup(jPanel3Layout.createParallelGroup(Alignment.LEADING)
-                    .addGroup(jPanel3Layout.createSequentialGroup()
-                        .addGroup(jPanel3Layout.createParallelGroup(Alignment.LEADING)
-                            .addComponent(commentLabel)
-                            .addComponent(movieLabel)
-                            .addComponent(idLabel)
-                            .addComponent(outputLabel))
+                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.LEADING)
+                    .addGroup(gl_pnlInputMain.createSequentialGroup()
+                        .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.LEADING)
+                            .addComponent(lblComment)
+                            .addComponent(lblVideo)
+                            .addComponent(lblId)
+                            .addComponent(lblOutput))
                         .addPreferredGap(ComponentPlacement.RELATED)
-                        .addGroup(jPanel3Layout.createParallelGroup(Alignment.LEADING)
-                            .addGroup(jPanel3Layout.createSequentialGroup()
-                                .addComponent(useMovieLocalCheckBox)
+                        .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.LEADING)
+                            .addGroup(gl_pnlInputMain.createSequentialGroup()
+                                .addComponent(cbVideoLocal)
                                 .addPreferredGap(ComponentPlacement.RELATED)
-                                .addComponent(movieFileField, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE)
+                                .addComponent(fldVideo, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE)
                                 .addPreferredGap(ComponentPlacement.RELATED)
-                                .addComponent(movieFileSelectButton))
-                            .addComponent(idField, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
-                            .addGroup(Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
-                                .addGroup(jPanel3Layout.createParallelGroup(Alignment.TRAILING)
-                                    .addGroup(Alignment.LEADING, jPanel3Layout.createSequentialGroup()
-                                        .addComponent(outputConvertCheckBox)
+                                .addComponent(btnVideo))
+                            .addComponent(fldId, GroupLayout.PREFERRED_SIZE, 100, GroupLayout.PREFERRED_SIZE)
+                            .addGroup(Alignment.TRAILING, gl_pnlInputMain.createSequentialGroup()
+                                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.TRAILING)
+                                    .addGroup(Alignment.LEADING, gl_pnlInputMain.createSequentialGroup()
+                                        .addComponent(cbOutputEnable)
                                         .addPreferredGap(ComponentPlacement.RELATED)
-                                        .addComponent(outputFileField, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE))
-                                    .addGroup(jPanel3Layout.createSequentialGroup()
-                                        .addComponent(useCommentLocalCheckBox)
+                                        .addComponent(fldOutput, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE))
+                                    .addGroup(gl_pnlInputMain.createSequentialGroup()
+                                        .addComponent(cbCommentLocal)
                                         .addPreferredGap(ComponentPlacement.RELATED)
-                                        .addComponent(commentFileField, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE)))
+                                        .addComponent(fldComment, GroupLayout.DEFAULT_SIZE, 317, Short.MAX_VALUE)))
                                 .addPreferredGap(ComponentPlacement.RELATED)
-                                .addComponent(commentFileSelectButton))))
-                    .addComponent(applyButton, Alignment.TRAILING))
+                                .addComponent(btnComment))))
+                    .addComponent(btnApply, Alignment.TRAILING))
                 .addContainerGap())
         );
-        jPanel3Layout.setVerticalGroup(
-            jPanel3Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(jPanel3Layout.createSequentialGroup()
+        gl_pnlInputMain.setVerticalGroup(
+            gl_pnlInputMain.createParallelGroup(Alignment.LEADING)
+            .addGroup(gl_pnlInputMain.createSequentialGroup()
                 .addContainerGap()
-                .addGroup(jPanel3Layout.createParallelGroup(Alignment.BASELINE)
-                    .addComponent(idField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
-                    .addComponent(idLabel))
+                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.BASELINE)
+                    .addComponent(fldId, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                    .addComponent(lblId))
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addGroup(jPanel3Layout.createParallelGroup(Alignment.BASELINE)
-                    .addComponent(movieLabel)
-                    .addComponent(movieFileField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
-                    .addComponent(movieFileSelectButton)
-                    .addComponent(useMovieLocalCheckBox))
+                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.BASELINE)
+                    .addComponent(lblVideo)
+                    .addComponent(fldVideo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                    .addComponent(btnVideo)
+                    .addComponent(cbVideoLocal))
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addGroup(jPanel3Layout.createParallelGroup(Alignment.BASELINE)
-                    .addComponent(commentLabel)
-                    .addComponent(commentFileField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
-                    .addComponent(commentFileSelectButton)
-                    .addComponent(useCommentLocalCheckBox))
+                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.BASELINE)
+                    .addComponent(lblComment)
+                    .addComponent(fldComment, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                    .addComponent(btnComment)
+                    .addComponent(cbCommentLocal))
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addGroup(jPanel3Layout.createParallelGroup(Alignment.BASELINE)
-                    .addComponent(outputLabel)
-                    .addComponent(outputFileField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
-                    .addComponent(outputConvertCheckBox))
+                .addGroup(gl_pnlInputMain.createParallelGroup(Alignment.BASELINE)
+                    .addComponent(lblOutput)
+                    .addComponent(fldOutput, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                    .addComponent(cbOutputEnable))
                 .addPreferredGap(ComponentPlacement.UNRELATED)
-                .addComponent(applyButton)
+                .addComponent(btnApply)
                 .addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
         );
 
-        GroupLayout jPanel1Layout = new GroupLayout(jPanel1);
-        jPanel1.setLayout(jPanel1Layout);
-        jPanel1Layout.setHorizontalGroup(
-            jPanel1Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
+        GroupLayout gl_pnlMain = new GroupLayout(pnlMain);
+        pnlMain.setLayout(gl_pnlMain);
+        gl_pnlMain.setHorizontalGroup(
+            gl_pnlMain.createParallelGroup(Alignment.LEADING)
+            .addGroup(Alignment.TRAILING, gl_pnlMain.createSequentialGroup()
                 .addContainerGap()
-                .addGroup(jPanel1Layout.createParallelGroup(Alignment.TRAILING)
-                    .addComponent(jPanel3, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
-                    .addComponent(jScrollPane1, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)
-                    .addComponent(jPanel2, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+                .addGroup(gl_pnlMain.createParallelGroup(Alignment.TRAILING)
+                    .addComponent(pnlInputMain, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                    .addComponent(scrDisplay, Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)
+                    .addComponent(pnlButton, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                 .addContainerGap())
         );
-        jPanel1Layout.setVerticalGroup(
-            jPanel1Layout.createParallelGroup(Alignment.LEADING)
-            .addGroup(Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
+        gl_pnlMain.setVerticalGroup(
+            gl_pnlMain.createParallelGroup(Alignment.LEADING)
+            .addGroup(Alignment.TRAILING, gl_pnlMain.createSequentialGroup()
                 .addContainerGap()
-                .addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE)
+                .addComponent(scrDisplay, GroupLayout.DEFAULT_SIZE, 197, Short.MAX_VALUE)
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addComponent(jPanel2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                .addComponent(pnlButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                 .addPreferredGap(ComponentPlacement.RELATED)
-                .addComponent(jPanel3, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
+                .addComponent(pnlInputMain, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                 .addGap(24, 24, 24))
         );
 
@@ -292,14 +286,37 @@ public class MainFrame extends JFrame {
         getContentPane().setLayout(layout);
         layout.setHorizontalGroup(
             layout.createParallelGroup(Alignment.LEADING)
-            .addComponent(jPanel1, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+            .addComponent(pnlMain, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
         );
         layout.setVerticalGroup(
             layout.createParallelGroup(Alignment.LEADING)
-            .addComponent(jPanel1, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+            .addComponent(pnlMain, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
         );
 
         pack();
+        initInputPanel();
+        pnlMain.setTransferHandler(new DownloadListTransferHandler());
+        tblDisplay.setTransferHandler(new TableTransferHandler());
+    }
+
+    private class ApplyActionListener implements ActionListener {
+
+        @Override
+        public void actionPerformed(ActionEvent e) {
+            final DownloadProfile prof = new InqubusDownloadProfile();
+            final String id = Util.getVideoId(fldId.getText());
+
+            new Download(prof, id).execute();
+        }
+    }
+    /** This method is called from within the constructor to
+     * initialize the form.
+     * WARNING: Do NOT modify this code. The content of this method is
+     * always regenerated by the Form Editor.
+     */
+    @SuppressWarnings("unchecked")
+    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
+    private void initComponents() {
     }// </editor-fold>//GEN-END:initComponents
 
     private File searchFileMatchId(final File dir, final String id) throws UnsupportedOperationException {
@@ -335,13 +352,13 @@ public class MainFrame extends JFrame {
         JButton btn;
         JTextField field;
         File dir;
-        if (source == useMovieLocalCheckBox) {
-            btn = movieFileSelectButton;
-            field = movieFileField;
+        if (source == cbVideoLocal) {
+            btn = btnVideo;
+            field = fldVideo;
             dir = new File(p.getVideoDir());
         } else {
-            btn = commentFileSelectButton;
-            field = commentFileField;
+            btn = btnComment;
+            field = fldComment;
             dir = new File(p.getCommentDir());
         }
 
@@ -350,7 +367,7 @@ public class MainFrame extends JFrame {
 
         String text;
         if (useLocal) {
-            final File f = searchFileMatchId(dir, idField.getText());
+            final File f = searchFileMatchId(dir, fldId.getText());
             if (f != null) {
                 text = f.getPath();
             } else {
@@ -364,81 +381,76 @@ public class MainFrame extends JFrame {
 
     private void outputConvertCheckBoxItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_outputConvertCheckBoxItemStateChanged
         final boolean convert = (evt.getStateChange() == ItemEvent.SELECTED);
-        outputFileField.setEnabled(convert);
+        fldOutput.setEnabled(convert);
     }//GEN-LAST:event_outputConvertCheckBoxItemStateChanged
 
     private void idFieldFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_idFieldFocusLost
         final Config p = Config.INSTANCE;
-        final String id = idField.getText();
+        final String id = fldId.getText();
         if (id.isEmpty()) {
             return;
         }
 
-        if (useMovieLocalCheckBox.isSelected() && movieFileField.getText().isEmpty()) {
+        if (cbVideoLocal.isSelected() && fldVideo.getText().isEmpty()) {
             final File dir = new File(p.getVideoDir());
             final File file = searchFileMatchId(dir, id);
             if (file != null) {
-                movieFileField.setText(file.getPath());
+                fldVideo.setText(file.getPath());
             }
         }
 
-        if (useCommentLocalCheckBox.isSelected() && commentFileField.getText().isEmpty()) {
+        if (cbCommentLocal.isSelected() && fldComment.getText().isEmpty()) {
             final File dir = new File(p.getCommentDir());
             final File file = searchFileMatchId(dir, id);
             if (file != null) {
-                commentFileField.setText(file.getPath());
+                fldComment.setText(file.getPath());
             }
         }
 
     }//GEN-LAST:event_idFieldFocusLost
     // Variables declaration - do not modify//GEN-BEGIN:variables
-    private JButton applyButton;
-    private JTextField commentFileField;
-    private JButton commentFileSelectButton;
-    private JLabel commentLabel;
-    private JTextField idField;
-    private JLabel idLabel;
-    private JButton jButton2;
-    private JButton jButton3;
-    private JButton jButton4;
-    private JPanel jPanel1;
-    private JPanel jPanel2;
-    private JPanel jPanel3;
-    private JScrollPane jScrollPane1;
-    private JTable jTable1;
-    private JTextField movieFileField;
-    private JButton movieFileSelectButton;
-    private JLabel movieLabel;
-    private JCheckBox outputConvertCheckBox;
-    private JTextField outputFileField;
-    private JLabel outputLabel;
-    private JCheckBox useCommentLocalCheckBox;
-    private JCheckBox useMovieLocalCheckBox;
+    private final JTable tblDisplay;
+    // ボタン領域
+    private final JButton btnStart;
+    private final JButton btnStop;
+    private final JButton btnDeselect;
+    //入力領域 - 標準
+    private final JTextField fldId;
+    private final JCheckBox cbVideoLocal;
+    private final JTextField fldVideo;
+    private final JButton btnVideo;
+    private final JCheckBox cbCommentLocal;
+    private final JTextField fldComment;
+    private final JButton btnComment;
+    private final JCheckBox cbOutputEnable;
+    private final JTextField fldOutput;
+    // 適用
+    private final JButton btnApply = new JButton("適用");
     // End of variables declaration//GEN-END:variables
 
     private void initInputPanel() {
-        idField.setText("");
+        fldId.setText("");
 
         final Config p = Config.INSTANCE;
 
         final boolean movieLocal = p.getVideoUseLocal();
-        useMovieLocalCheckBox.setSelected(movieLocal);
-        movieFileSelectButton.setEnabled(movieLocal);
+        cbVideoLocal.setSelected(movieLocal);
+        btnVideo.setEnabled(movieLocal);
         if (!movieLocal) {
-            movieFileField.setText(p.getVideoFileNamePattern());
+            fldVideo.setText(p.getVideoFileNamePattern());
         }
 
         final boolean commentLocal = p.getCommentUseLocal();
-        useCommentLocalCheckBox.setSelected(commentLocal);
-        commentFileSelectButton.setEnabled(commentLocal);
+        cbCommentLocal.setSelected(commentLocal);
+        btnComment.setEnabled(commentLocal);
         if (!commentLocal) {
-            commentFileField.setText(p.getCommentFileNamePattern());
+            fldComment.setText(p.getCommentFileNamePattern());
         }
 
         final boolean convert = p.getOutputEnable();
-        outputConvertCheckBox.setSelected(convert);
-        outputFileField.setEnabled(convert);
-        outputFileField.setText(p.getOutputFileNamePattern());
+        cbOutputEnable.setSelected(convert);
+        fldOutput.setEnabled(convert);
+        fldOutput.setText(p.getOutputFileNamePattern());
 
     }
 
@@ -554,4 +566,91 @@ public class MainFrame extends JFrame {
             return super.importData(support);
         }
     }
+
+
+    private class InqubusDownloadProfile implements DownloadProfile {
+
+        private final LoginProfile loginProfile;
+        private final ProxyProfile proxyProfile;
+
+        private InqubusDownloadProfile() {
+            this.loginProfile = new InqubusLoginProfile();
+            this.proxyProfile = new InqubusProxyProfile();
+        }
+
+        @Override
+        public LoginProfile getLoginInfo() {
+            return this.loginProfile;
+        }
+
+        @Override
+        public ProxyProfile getProxySetting() {
+            return this.proxyProfile;
+        }
+
+        @Override
+        public VideoProfile getVideoSetting() {
+            throw new UnsupportedOperationException("Not supported yet.");
+        }
+
+        @Override
+        public CommentProfile getCommentSetting() {
+            throw new UnsupportedOperationException("Not supported yet.");
+        }
+
+        @Override
+        public GeneralProfile getGeneralSetting() {
+            throw new UnsupportedOperationException("Not supported yet.");
+        }
+    }
+
+    private class InqubusLoginProfile implements LoginProfile {
+        private final String mail;
+        private final String password;
+
+        private InqubusLoginProfile(){
+            final Config p = Config.INSTANCE;
+            this.mail = p.getId();
+            this.password = p.getPassword();
+        }
+
+        @Override
+        public String getMail() {
+            return this.mail;
+        }
+
+        @Override
+        public String getPassword() {
+            return this.password;
+        }
+    }
+
+    private class InqubusProxyProfile implements ProxyProfile {
+        private final boolean use;
+        private final String host;
+        private final int port;
+
+        private InqubusProxyProfile(){
+            final Config p = Config.INSTANCE;
+            this.use = p.getProxyUse();
+            this.host = p.getProxyHost();
+            final String pp = p.getProxyPort();
+            this.port = StringUtils.isBlank(pp) ? -1 : Integer.parseInt(pp);
+        }
+
+        @Override
+        public boolean use() {
+            return this.use;
+        }
+
+        @Override
+        public String getHost() {
+            return this.host;
+        }
+
+        @Override
+        public int getPort() {
+            return this.port;
+        }
+    }
 }