OSDN Git Service

add swing gui
authorankys <ankys@users.sourceforge.jp>
Sun, 19 Jun 2011 05:01:59 +0000 (14:01 +0900)
committerankys <ankys@users.sourceforge.jp>
Sun, 19 Jun 2011 05:01:59 +0000 (14:01 +0900)
build.xml
src/jp/sourceforge/posterdivider/MainFrame.java

index 30a6dc4..206a013 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -33,6 +33,7 @@
         <javac destdir="bin" encoding="UTF-8">
             <src path="src"/>
             <classpath refid="PosterDivider.classpath"/>
+            <compilerarg value="-Xlint:deprecation"/>
         </javac>
     </target>
     <target name="build-refprojects"/>
index bbd29a8..ada42b2 100644 (file)
@@ -4,27 +4,10 @@
 //
 package jp.sourceforge.posterdivider;
 
-import java.awt.Button;
-import java.awt.Checkbox;
-import java.awt.Choice;
+import java.awt.BorderLayout;
 import java.awt.Dimension;
-import java.awt.FileDialog;
 import java.awt.FlowLayout;
-import java.awt.Frame;
-import java.awt.Label;
-import java.awt.Menu;
-import java.awt.MenuBar;
-import java.awt.MenuItem;
-import java.awt.MenuShortcut;
-import java.awt.Panel;
-import java.awt.TextField;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.ItemEvent;
-import java.awt.event.ItemListener;
-import java.awt.event.KeyEvent;
-import java.awt.event.WindowEvent;
-import java.awt.event.WindowListener;
+import java.awt.event.*;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.FileOutputStream;
@@ -34,52 +17,53 @@ import java.util.ArrayList;
 import java.util.Date;
 
 import javax.swing.BoxLayout;
+import javax.swing.*;
 
-public class MainFrame extends Frame {
+public class MainFrame extends JFrame {
        private static final long serialVersionUID = 1L;
 
        // Components
-       private Label labelSrcFile;
-       private TextField textFieldSrcFileName;
-       private Label labelSrcFileType;
-       private Button buttonSrcFileChange;
-       private Label labelSrcPageNum;
-       private Choice choiceSrcPageNum;
-       private Label labelSrcImageSize;
+       private JLabel labelSrcFile;
+       private JTextField textFieldSrcFileName;
+       private JLabel labelSrcFileType;
+       private JButton buttonSrcFileChange;
+       private JLabel labelSrcPageNum;
+       private JComboBox comboBoxSrcPageNum;
+       private JLabel labelSrcImageSize;
        private NumberField numberFieldSrcImageWidth;
        private NumberField numberFieldSrcImageHeight;
-       private Choice choiceSrcImageSizeUnit;
-       private Label labelSrcRect;
-       private Checkbox checkboxSrcRectWholeOfPage;
+       private JComboBox comboBoxSrcImageSizeUnit;
+       private JLabel labelSrcRect;
+       private JCheckBox checkBoxSrcRectWholeOfPage;
        private NumberField numberFieldSrcLeft;
        private NumberField numberFieldSrcBottom;
        private NumberField numberFieldSrcRight;
        private NumberField numberFieldSrcTop;
-       private Choice choiceSrcRectUnit;
-       private Label labelPosterSize;
-       private Choice choicePosterSize;
+       private JComboBox comboBoxSrcRectUnit;
+       private JLabel labelPosterSize;
+       private JComboBox comboBoxPosterSize;
        private NumberField numberFieldPosterWidth;
        private NumberField numberFieldPosterHeight;
-       private Choice choicePosterSizeUnit;
-       private Checkbox checkboxPosterSizeKeepAspectRatio;
-       private Label labelPaperSize;
-       private Choice choicePaperSize;
+       private JComboBox comboBoxPosterSizeUnit;
+       private JCheckBox checkBoxPosterSizeKeepAspectRatio;
+       private JLabel labelPaperSize;
+       private JComboBox comboBoxPaperSize;
        private NumberField numberFieldPaperWidth;
        private NumberField numberFieldPaperHeight;
-       private Choice choicePaperSizeUnit;
-       private Label labelPaperMargin;
+       private JComboBox comboBoxPaperSizeUnit;
+       private JLabel labelPaperMargin;
        private NumberField numberFieldPaperMargin;
-       private Choice choicePaperMarginUnit;
-       private Checkbox checkboxPaperRotate;
-       private Button buttonPaperOptimize;
-       private Label labelPreview;
-       private Label labelOutputPaperCount;
+       private JComboBox comboBoxPaperMarginUnit;
+       private JCheckBox checkBoxPaperRotate;
+       private JButton buttonPaperOptimize;
+       private JLabel labelPreview;
+       private JLabel labelOutputPaperCount;
        private NumberField numberFieldOutputPaperCount;
        private CanvasPreview canvasPreview;
-       private Label labelOutputFileName;
-       private TextField textFieldOutputFileName;
-       private Label labelMessage;
-       private Button buttonOutput;
+       private JLabel labelOutputFileName;
+       private JTextField textFieldOutputFileName;
+       private JLabel labelMessage;
+       private JButton buttonOutput;
 
        // Variables
        private File srcFile;
@@ -170,8 +154,8 @@ public class MainFrame extends Frame {
                if (outputPaperCount1 > outputPaperCount2
                                || (outputPaperCount1 == outputPaperCount2 && paperRotated)) {
                        // 最適化
-                       checkboxPaperRotate.setState(!paperRotated);
-                       checkboxPaperRotate_itemStateChanged();
+                       checkBoxPaperRotate.setSelected(!paperRotated);
+                       checkBoxPaperRotate_itemStateChanged();
                }
        }
 
@@ -212,15 +196,15 @@ public class MainFrame extends Frame {
        private void changePageSuccess(ImageContainer ic) {
                this.ic = ic;
 
-               choiceSrcPageNum.select(ic.getPageNum() - 1);
+               comboBoxSrcPageNum.setSelectedIndex(ic.getPageNum() - 1);
 
                srcImageWidth = ic.getImageWidth();
                srcImageHeight = ic.getImageHeight();
                numberFieldSrcImageSize_setValue();
 
-               choiceSrcImageSizeUnit.setEnabled(true);
-               checkboxSrcRectWholeOfPage.setEnabled(true);
-               choiceSrcRectUnit.setEnabled(true);
+               comboBoxSrcImageSizeUnit.setEnabled(true);
+               checkBoxSrcRectWholeOfPage.setEnabled(true);
+               comboBoxSrcRectUnit.setEnabled(true);
                buttonPaperOptimize.setEnabled(true);
 
                canvasPreview.setImageContainer(ic);
@@ -252,23 +236,23 @@ public class MainFrame extends Frame {
 
                labelSrcFileType.setText(Lib.getFileTypeName(fc.getFileType()));
 
-               choiceSrcPageNum.removeAll();
+               comboBoxSrcPageNum.removeAll();
                for (int i = 1; i <= fc.getPageCount(); i++) {
-                       choiceSrcPageNum.add(Integer.toString(i));
+                       comboBoxSrcPageNum.addItem(Integer.toString(i));
                }
-               choiceSrcPageNum.select(0);
-               choiceSrcPageNum.setEnabled(fc.getFileType() == Lib.FT_PDF);
+               comboBoxSrcPageNum.setSelectedIndex(0);
+               comboBoxSrcPageNum.setEnabled(fc.getFileType() == Lib.FT_PDF);
 
-               choiceSrcImageSizeUnit_initialize(fc.getFileType());
-               choiceSrcImageSizeUnit.select(0);
+               comboBoxSrcImageSizeUnit_initialize(fc.getFileType());
+               comboBoxSrcImageSizeUnit.setSelectedIndex(0);
 
-               choiceSrcRectUnit_initialize(fc.getFileType());
-               choiceSrcRectUnit.select(0);
+               comboBoxSrcRectUnit_initialize(fc.getFileType());
+               comboBoxSrcRectUnit.setSelectedIndex(0);
 
-               changePage(choiceSrcPageNum.getSelectedIndex() + 1);
+               changePage(comboBoxSrcPageNum.getSelectedIndex() + 1);
 
-               checkboxSrcRectWholeOfPage.setState(true);
-               checkboxSrcRectWholeOfPage_itemStateChanged();
+               checkBoxSrcRectWholeOfPage.setSelected(true);
+               checkBoxSrcRectWholeOfPage_itemStateChanged();
        }
 
     public void changeFile(File file) {
@@ -293,7 +277,7 @@ public class MainFrame extends Frame {
                // posterSize とする
                posterWidth = preferredPosterWidth;
                posterHeight = preferredPosterHeight;
-               if (checkboxPosterSizeKeepAspectRatio.getState()) {
+               if (checkBoxPosterSizeKeepAspectRatio.isSelected()) {
                        if ((srcRight - srcLeft) * preferredPosterHeight > (srcTop - srcBottom)
                                        * preferredPosterWidth) {
                                // Src が横長
@@ -313,7 +297,7 @@ public class MainFrame extends Frame {
        /*
         * private void revisePosterSize(int direction) { // direction は固定する方向
         * 0->Width, 1->Height boolean changed = false; if
-        * (checkboxPosterSizeKeepAspectRatio.getState()) { switch (direction) {
+        * (checkboxPosterSizeKeepAspectRatio.isSelected()) { switch (direction) {
         * case 0: if (srcRight != srcLeft) { posterHeight = posterWidth * (srcTop -
         * srcBottom) / (srcRight - srcLeft); changed = true; } break; case 1: if
         * (srcTop != srcBottom) { posterWidth = posterHeight * (srcRight - srcLeft) /
@@ -323,13 +307,13 @@ public class MainFrame extends Frame {
 
     private File showFileLoadDialog()
     {
-       FileDialog fd = new FileDialog(this, Lib.getMessage("App.LowerTitle"), FileDialog.LOAD);
-       fd.setVisible(true);
+       JFileChooser fd = new JFileChooser();
+       //JFileChooser fd = new JFileChooser(this, Lib.getMessage("App.LowerTitle"), FileDialog.LOAD);
 
-       if (fd.getFile() == null) {
-           return null;
+       if (fd.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
+           return fd.getSelectedFile();
        } else {
-           return new File(fd.getDirectory(), fd.getFile());
+           return null;
        }
     }
 
@@ -389,37 +373,35 @@ public class MainFrame extends Frame {
        }
     }
 
-       private void choiceSrcPageNum_itemStateChanged() {
-               int pageNum = choiceSrcPageNum.getSelectedIndex() + 1;
+       private void comboBoxSrcPageNum_itemStateChanged() {
+               int pageNum = comboBoxSrcPageNum.getSelectedIndex() + 1;
                if (this.ic.getPageNum() != pageNum) {
                        changePage(pageNum);
                }
        }
 
        private void numberFieldSrcImageSize_setValue() {
-               double rate = listSrcImageSizeUnit.get(choiceSrcImageSizeUnit
+               double rate = listSrcImageSizeUnit.get(comboBoxSrcImageSizeUnit
                                .getSelectedIndex());
                numberFieldSrcImageWidth.setValue(srcImageWidth * rate);
                numberFieldSrcImageHeight.setValue(srcImageHeight * rate);
        }
 
-       private void choiceSrcImageSizeUnit_add(String key, double value) {
-               choiceSrcImageSizeUnit.add(key);
+       private void comboBoxSrcImageSizeUnit_addItem(String key, double value) {
+               comboBoxSrcImageSizeUnit.addItem(key);
                listSrcImageSizeUnit.add(value);
        }
 
-       private void choiceSrcImageSizeUnit_initialize(int fileType) {
-               choiceSrcImageSizeUnit.removeAll();
+       private void comboBoxSrcImageSizeUnit_initialize(int fileType) {
+               comboBoxSrcImageSizeUnit.removeAll();
                listSrcImageSizeUnit.clear();
                switch (fileType) {
                case Lib.FT_PDF:
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.Inch"),
-                                       Lib.UNIT_POINT_INCH);
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.Point"),
-                                       Lib.UNIT_POINT_POINT);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
                        break;
                case Lib.FT_BMP:
                case Lib.FT_GIF:
@@ -430,20 +412,19 @@ public class MainFrame extends Frame {
                case Lib.FT_TIFF:
                case Lib.FT_WMF:
                case Lib.FT_OTHERIMAGE:
-                       choiceSrcImageSizeUnit_add(Lib.getMessage("Str.Pixel"),
-                                       Lib.UNIT_PIXEL_PIXEL);
+                       comboBoxSrcImageSizeUnit_addItem(Lib.getMessage("Str.Pixel"), Lib.UNIT_PIXEL_PIXEL);
                        break;
                default:
                        break;
                }
        }
 
-       private void choiceSrcImageSizeUnit_itemStateChanged() {
+       private void comboBoxSrcImageSizeUnit_itemStateChanged() {
                numberFieldSrcImageSize_setValue();
        }
 
-       private void checkboxSrcRectWholeOfPage_itemStateChanged() {
-               boolean b = checkboxSrcRectWholeOfPage.getState();
+       private void checkBoxSrcRectWholeOfPage_itemStateChanged() {
+               boolean b = checkBoxSrcRectWholeOfPage.isSelected();
                numberFieldSrcLeft.setEnabled(!b);
                numberFieldSrcTop.setEnabled(!b);
                numberFieldSrcRight.setEnabled(!b);
@@ -462,7 +443,7 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldSrcRect_actionPerformed(Object obj) {
-               double rate = listSrcRectUnit.get(choiceSrcRectUnit.getSelectedIndex());
+               double rate = listSrcRectUnit.get(comboBoxSrcRectUnit.getSelectedIndex());
                srcLeft = (float) (numberFieldSrcLeft.getValue() / rate);
                srcTop = (float) (numberFieldSrcTop.getValue() / rate);
                srcRight = (float) (numberFieldSrcRight.getValue() / rate);
@@ -478,28 +459,28 @@ public class MainFrame extends Frame {
                if (listSrcRectUnit.isEmpty()) {
                        return;
                }
-               double rate = listSrcRectUnit.get(choiceSrcRectUnit.getSelectedIndex());
+               double rate = listSrcRectUnit.get(comboBoxSrcRectUnit.getSelectedIndex());
                numberFieldSrcLeft.setValue(srcLeft * rate);
                numberFieldSrcTop.setValue(srcTop * rate);
                numberFieldSrcRight.setValue(srcRight * rate);
                numberFieldSrcBottom.setValue(srcBottom * rate);
        }
 
-       private void choiceSrcRectUnit_add(String key, double value) {
-               choiceSrcRectUnit.add(key);
+       private void comboBoxSrcRectUnit_addItem(String key, double value) {
+               comboBoxSrcRectUnit.addItem(key);
                listSrcRectUnit.add(value);
        }
 
-       private void choiceSrcRectUnit_initialize(int fileType) {
-               choiceSrcRectUnit.removeAll();
+       private void comboBoxSrcRectUnit_initialize(int fileType) {
+               comboBoxSrcRectUnit.removeAll();
                listSrcRectUnit.clear();
                switch (fileType) {
                case Lib.FT_PDF:
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
                        break;
                case Lib.FT_BMP:
                case Lib.FT_GIF:
@@ -510,52 +491,51 @@ public class MainFrame extends Frame {
                case Lib.FT_TIFF:
                case Lib.FT_WMF:
                case Lib.FT_OTHERIMAGE:
-                       choiceSrcRectUnit_add(Lib.getMessage("Str.Pixel"), Lib.UNIT_PIXEL_PIXEL);
+                       comboBoxSrcRectUnit_addItem(Lib.getMessage("Str.Pixel"), Lib.UNIT_PIXEL_PIXEL);
                        break;
                default:
                        break;
                }
        }
 
-       private void choiceSrcRectUnit_itemStateChanged() {
+       private void comboBoxSrcRectUnit_itemStateChanged() {
                numberFieldSrcRect_setValue();
        }
 
-       private void choicePosterSize_add(String key, PaperSize value) {
-               choicePosterSize.add(key);
+       private void comboBoxPosterSize_addItem(String key, PaperSize value) {
+               comboBoxPosterSize.addItem(key);
                listPosterSize.add(value);
        }
 
-       private void choicePosterSize_initialize() {
-               choicePosterSize.removeAll();
+       private void comboBoxPosterSize_initialize() {
+               comboBoxPosterSize.removeAll();
                listPosterSize.clear();
                // TODO:後で減らす
-               choicePosterSize_add(Lib.getMessage("Str.A0"), PaperSize.A0);
-               choicePosterSize_add(Lib.getMessage("Str.A1"), PaperSize.A1);
-               choicePosterSize_add(Lib.getMessage("Str.A2"), PaperSize.A2);
-               choicePosterSize_add(Lib.getMessage("Str.A3"), PaperSize.A3);
-               choicePosterSize_add(Lib.getMessage("Str.A4"), PaperSize.A4);
-               choicePosterSize_add(Lib.getMessage("Str.A5"), PaperSize.A5);
-               choicePosterSize_add(Lib.getMessage("Str.A6"), PaperSize.A6);
-               choicePosterSize_add(Lib.getMessage("Str.B0"), PaperSize.B0);
-               choicePosterSize_add(Lib.getMessage("Str.B1"), PaperSize.B1);
-               choicePosterSize_add(Lib.getMessage("Str.B2"), PaperSize.B2);
-               choicePosterSize_add(Lib.getMessage("Str.B3"), PaperSize.B3);
-               choicePosterSize_add(Lib.getMessage("Str.B4"), PaperSize.B4);
-               choicePosterSize_add(Lib.getMessage("Str.B5"), PaperSize.B5);
-               choicePosterSize_add(Lib.getMessage("Str.B6"), PaperSize.B6);
-               choicePosterSize_add(Lib.getMessage("Str.Custom"), PaperSize.CUSTOM);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A0"), PaperSize.A0);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A1"), PaperSize.A1);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A2"), PaperSize.A2);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A3"), PaperSize.A3);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A4"), PaperSize.A4);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A5"), PaperSize.A5);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.A6"), PaperSize.A6);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B0"), PaperSize.B0);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B1"), PaperSize.B1);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B2"), PaperSize.B2);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B3"), PaperSize.B3);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B4"), PaperSize.B4);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B5"), PaperSize.B5);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.B6"), PaperSize.B6);
+               comboBoxPosterSize_addItem(Lib.getMessage("Str.Custom"), PaperSize.CUSTOM);
        }
 
-       private void choicePosterSize_itemStateChanged() {
-               PaperSize size = listPosterSize
-                               .get(choicePosterSize.getSelectedIndex());
+       private void comboBoxPosterSize_itemStateChanged() {
+               PaperSize size = listPosterSize.get(comboBoxPosterSize.getSelectedIndex());
                boolean custom = size.isCustom();
                numberFieldPosterWidth.setEnabled(custom);
                numberFieldPosterHeight.setEnabled(custom);
-               // checkboxPosterSizeKeepAspectRatio.setEnabled(custom);
+               // checkBoxPosterSizeKeepAspectRatio.setEnabled(custom);
                // if (!custom) {
-               // checkboxPosterSizeKeepAspectRatio.setState(false);
+               // checkBoxPosterSizeKeepAspectRatio.setSelected(false);
                // posterWidth = size.getWidth();
                // posterHeight = size.getHeight();
                // numberFieldPosterSize_setValue();
@@ -571,7 +551,7 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldPosterSize_actionPerformed(Object obj) {
-               double rate = listPosterSizeUnit.get(choicePosterSizeUnit
+               double rate = listPosterSizeUnit.get(comboBoxPosterSizeUnit
                                .getSelectedIndex());
                // posterWidth = (float) (numberFieldPosterWidth.getValue() / rate);
                // posterHeight = (float) (numberFieldPosterHeight.getValue() / rate);
@@ -583,7 +563,7 @@ public class MainFrame extends Frame {
                // }
                preferredPosterWidth = (float) (numberFieldPosterWidth.getValue() / rate);
                preferredPosterHeight = (float) (numberFieldPosterHeight.getValue() / rate);
-               if (checkboxPosterSizeKeepAspectRatio.getState()) {
+               if (checkBoxPosterSizeKeepAspectRatio.isSelected()) {
                        if (obj == numberFieldPosterWidth) {
                                if (srcRight != srcLeft) {
                                        preferredPosterHeight = preferredPosterWidth
@@ -603,55 +583,55 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldPosterSize_setValue() {
-               double rate = listPosterSizeUnit.get(choicePosterSizeUnit
+               double rate = listPosterSizeUnit.get(comboBoxPosterSizeUnit
                                .getSelectedIndex());
                numberFieldPosterWidth.setValue(posterWidth * rate);
                numberFieldPosterHeight.setValue(posterHeight * rate);
        }
 
-       private void choicePosterSizeUnit_add(String key, double value) {
-               choicePosterSizeUnit.add(key);
+       private void comboBoxPosterSizeUnit_addItem(String key, double value) {
+               comboBoxPosterSizeUnit.addItem(key);
                listPosterSizeUnit.add(value);
        }
 
-       private void choicePosterSizeUnit_initialize() {
-               choicePosterSizeUnit.removeAll();
+       private void comboBoxPosterSizeUnit_initialize() {
+               comboBoxPosterSizeUnit.removeAll();
                listPosterSizeUnit.clear();
-               choicePosterSizeUnit_add(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
-               choicePosterSizeUnit_add(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
-               choicePosterSizeUnit_add(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
-               choicePosterSizeUnit_add(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
-               choicePosterSizeUnit_add(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
+               comboBoxPosterSizeUnit_addItem(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
+               comboBoxPosterSizeUnit_addItem(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
+               comboBoxPosterSizeUnit_addItem(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
+               comboBoxPosterSizeUnit_addItem(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
+               comboBoxPosterSizeUnit_addItem(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
        }
 
-       private void choicePosterSizeUnit_itemStateChanged() {
+       private void comboBoxPosterSizeUnit_itemStateChanged() {
                numberFieldPosterSize_setValue();
        }
 
-       private void checkboxPosterSizeKeepAspectRatio_itemStateChanged() {
+       private void checkBoxPosterSizeKeepAspectRatio_itemStateChanged() {
                // revisePosterSize(0);
                updatePosterSize();
                numberFieldPosterSize_setValue();
                simulateOutput();
        }
 
-       private void choicePaperSize_add(String key, PaperSize value) {
-               choicePaperSize.add(key);
+       private void comboBoxPaperSize_addItem(String key, PaperSize value) {
+               comboBoxPaperSize.addItem(key);
                listPaperSize.add(value);
        }
 
-       private void choicePaperSize_initialize() {
-               choicePaperSize.removeAll();
+       private void comboBoxPaperSize_initialize() {
+               comboBoxPaperSize.removeAll();
                listPaperSize.clear();
-               choicePaperSize_add(Lib.getMessage("Str.A4"), PaperSize.A4);
-               choicePaperSize_add(Lib.getMessage("Str.A3"), PaperSize.A3);
-               choicePaperSize_add(Lib.getMessage("Str.B5"), PaperSize.B5);
-               choicePaperSize_add(Lib.getMessage("Str.B4"), PaperSize.B4);
-               choicePaperSize_add(Lib.getMessage("Str.Custom"), PaperSize.CUSTOM);
+               comboBoxPaperSize_addItem(Lib.getMessage("Str.A4"), PaperSize.A4);
+               comboBoxPaperSize_addItem(Lib.getMessage("Str.A3"), PaperSize.A3);
+               comboBoxPaperSize_addItem(Lib.getMessage("Str.B5"), PaperSize.B5);
+               comboBoxPaperSize_addItem(Lib.getMessage("Str.B4"), PaperSize.B4);
+               comboBoxPaperSize_addItem(Lib.getMessage("Str.Custom"), PaperSize.CUSTOM);
        }
 
-       private void choicePaperSize_itemStateChanged() {
-               PaperSize size = listPaperSize.get(choicePaperSize.getSelectedIndex());
+       private void comboBoxPaperSize_itemStateChanged() {
+               PaperSize size = listPaperSize.get(comboBoxPaperSize.getSelectedIndex());
                boolean custom = size.isCustom();
                numberFieldPaperWidth.setEnabled(custom);
                numberFieldPaperHeight.setEnabled(custom);
@@ -669,7 +649,7 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldPaperSize_actionPerformed(Object obj) {
-               double rate = listPaperSizeUnit.get(choicePaperSizeUnit
+               double rate = listPaperSizeUnit.get(comboBoxPaperSizeUnit
                                .getSelectedIndex());
                paperWidth = (float) (numberFieldPaperWidth.getValue() / rate);
                paperHeight = (float) (numberFieldPaperHeight.getValue() / rate);
@@ -678,33 +658,33 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldPaperSize_setValue() {
-               double rate = listPaperSizeUnit.get(choicePaperSizeUnit
+               double rate = listPaperSizeUnit.get(comboBoxPaperSizeUnit
                                .getSelectedIndex());
                numberFieldPaperWidth.setValue(paperWidth * rate);
                numberFieldPaperHeight.setValue(paperHeight * rate);
        }
 
-       private void choicePaperSizeUnit_add(String key, double value) {
-               choicePaperSizeUnit.add(key);
+       private void comboBoxPaperSizeUnit_addItem(String key, double value) {
+               comboBoxPaperSizeUnit.addItem(key);
                listPaperSizeUnit.add(value);
        }
 
-       private void choicePaperSizeUnit_initialize() {
-               choicePaperSizeUnit.removeAll();
+       private void comboBoxPaperSizeUnit_initialize() {
+               comboBoxPaperSizeUnit.removeAll();
                listPaperSizeUnit.clear();
-               choicePaperSizeUnit_add(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
-               choicePaperSizeUnit_add(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
-               choicePaperSizeUnit_add(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
-               choicePaperSizeUnit_add(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
-               choicePaperSizeUnit_add(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
+               comboBoxPaperSizeUnit_addItem(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
+               comboBoxPaperSizeUnit_addItem(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
+               comboBoxPaperSizeUnit_addItem(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
+               comboBoxPaperSizeUnit_addItem(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
+               comboBoxPaperSizeUnit_addItem(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
        }
 
-       private void choicePaperSizeUnit_itemStateChanged() {
+       private void comboBoxPaperSizeUnit_itemStateChanged() {
                numberFieldPaperSize_setValue();
        }
 
        private void numberFieldPaperMargin_actionPerformed(Object obj) {
-               double rate = listPaperMarginUnit.get(choicePaperMarginUnit
+               double rate = listPaperMarginUnit.get(comboBoxPaperMarginUnit
                                .getSelectedIndex());
                paperMargin = (float) (numberFieldPaperMargin.getValue() / rate);
                numberFieldPaperMargin_setValue();
@@ -712,32 +692,32 @@ public class MainFrame extends Frame {
        }
 
        private void numberFieldPaperMargin_setValue() {
-               double rate = listPaperMarginUnit.get(choicePaperMarginUnit
+               double rate = listPaperMarginUnit.get(comboBoxPaperMarginUnit
                                .getSelectedIndex());
                numberFieldPaperMargin.setValue(paperMargin * rate);
        }
 
-       private void choicePaperMarginUnit_add(String key, double value) {
-               choicePaperMarginUnit.add(key);
+       private void comboBoxPaperMarginUnit_addItem(String key, double value) {
+               comboBoxPaperMarginUnit.addItem(key);
                listPaperMarginUnit.add(value);
        }
 
-       private void choicePaperMarginUnit_initialize() {
-               choicePaperMarginUnit.removeAll();
+       private void comboBoxPaperMarginUnit_initialize() {
+               comboBoxPaperMarginUnit.removeAll();
                listPaperMarginUnit.clear();
-               choicePaperMarginUnit_add(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
-               choicePaperMarginUnit_add(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
-               choicePaperMarginUnit_add(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
-               choicePaperMarginUnit_add(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
-               choicePaperMarginUnit_add(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
+               comboBoxPaperMarginUnit_addItem(Lib.getMessage("Str.MM"), Lib.UNIT_POINT_MM);
+               comboBoxPaperMarginUnit_addItem(Lib.getMessage("Str.CM"), Lib.UNIT_POINT_CM);
+               comboBoxPaperMarginUnit_addItem(Lib.getMessage("Str.M"), Lib.UNIT_POINT_M);
+               comboBoxPaperMarginUnit_addItem(Lib.getMessage("Str.Inch"), Lib.UNIT_POINT_INCH);
+               comboBoxPaperMarginUnit_addItem(Lib.getMessage("Str.Point"), Lib.UNIT_POINT_POINT);
        }
 
-       private void choicePaperMarginUnit_itemStateChanged() {
+       private void comboBoxPaperMarginUnit_itemStateChanged() {
                numberFieldPaperMargin_setValue();
        }
 
-       private void checkboxPaperRotate_itemStateChanged() {
-               boolean paperRotated = checkboxPaperRotate.getState();
+       private void checkBoxPaperRotate_itemStateChanged() {
+               boolean paperRotated = checkBoxPaperRotate.isSelected();
                if (this.paperRotated != paperRotated) {
                        float a = this.paperWidth;
                        this.paperWidth = this.paperHeight;
@@ -791,71 +771,71 @@ public class MainFrame extends Frame {
                        }
                });
 
-               MenuBar menuBar = new MenuBar();
-               Menu menuFile = new Menu(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuFile.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuFile.Label.Mac" : "menuFile.Label"));
-               MenuItem menuItemNewWindow = new MenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemNewWindow.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemNewWindow.Label.Mac" : "menuItemNewWindow.Label"));
-               menuItemNewWindow.setShortcut(new MenuShortcut(KeyEvent.VK_N, false));
+               JMenuBar menuBar = new JMenuBar();
+               JMenu menuFile = new JMenu(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuFile.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuFile.Label.Mac" : "menuFile.Label"));
+               JMenuItem menuItemNewWindow = new JMenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemNewWindow.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemNewWindow.Label.Mac" : "menuItemNewWindow.Label"));
+               //menuItemNewWindow.setShortcut(new MenuShortcut(KeyEvent.VK_N, false));
                menuItemNewWindow.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                menuItemNewWindow_actionPerformed();
                        }
                });
-               MenuItem menuItemOpenFile = new MenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemOpenFile.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemOpenFile.Label.Mac" : "menuItemOpenFile.Label") + "...");
-               menuItemOpenFile.setShortcut(new MenuShortcut(KeyEvent.VK_O, false));
+               JMenuItem menuItemOpenFile = new JMenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemOpenFile.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemOpenFile.Label.Mac" : "menuItemOpenFile.Label") + "...");
+               //menuItemOpenFile.setShortcut(new MenuShortcut(KeyEvent.VK_O, false));
                menuItemOpenFile.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                menuItemOpenFile_actionPerformed();
                        }
                });
-               MenuItem menuItemCloseWindow = new MenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemCloseWindow.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemCloseWindow.Label.Mac" : "menuItemCloseWindow.Label"));
-               menuItemCloseWindow.setShortcut(new MenuShortcut(KeyEvent.VK_W, false));
+               JMenuItem menuItemCloseWindow = new JMenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemCloseWindow.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemCloseWindow.Label.Mac" : "menuItemCloseWindow.Label"));
+               //menuItemCloseWindow.setShortcut(new MenuShortcut(KeyEvent.VK_W, false));
                menuItemCloseWindow.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                menuItemCloseWindow_actionPerformed();
                        }
                });
-               MenuItem menuItemOutput = new MenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemOutput.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemOutput.Label.Mac" : "menuItemOutput.Label"));
+               JMenuItem menuItemOutput = new JMenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemOutput.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemOutput.Label.Mac" : "menuItemOutput.Label"));
                menuItemOutput.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                menuItemOutput_actionPerformed();
                        }
                });
-               MenuItem menuItemExit = new MenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemExit.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemExit.Label.Mac" : "menuItemExit.Label"));
+               JMenuItem menuItemExit = new JMenuItem(Lib.getMessage(Lib.getOS() == Lib.OS_WIN ? "menuItemExit.Label.Win" : Lib.getOS() == Lib.OS_MAC ? "menuItemExit.Label.Mac" : "menuItemExit.Label"));
                menuItemExit.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                menuItemExit_actionPerformed();
                        }
                });
 
-               labelSrcFile = new Label();
+               labelSrcFile = new JLabel();
                labelSrcFile.setText(Lib.getMessage("labelSrcFile.Text"));
 
-               textFieldSrcFileName = new TextField();
+               textFieldSrcFileName = new JTextField();
                textFieldSrcFileName.setEditable(false);
                textFieldSrcFileName.setColumns(50);
 
-               labelSrcFileType = new Label();
+               labelSrcFileType = new JLabel();
 
-               buttonSrcFileChange = new Button();
-               buttonSrcFileChange.setLabel(Lib.getMessage("buttonSrcFileChange.Label") + "...");
+               buttonSrcFileChange = new JButton();
+               buttonSrcFileChange.setText(Lib.getMessage("buttonSrcFileChange.Text") + "...");
                buttonSrcFileChange.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                buttonSrcFileChange_actionPerformed();
                        }
                });
 
-               labelSrcPageNum = new Label();
+               labelSrcPageNum = new JLabel();
                labelSrcPageNum.setText(Lib.getMessage("labelSrcPageNum.Text"));
 
-               choiceSrcPageNum = new Choice();
-               choiceSrcPageNum.setEnabled(false);
-               choiceSrcPageNum.addItemListener(new ItemListener() {
+               comboBoxSrcPageNum = new JComboBox();
+               comboBoxSrcPageNum.setEnabled(false);
+               comboBoxSrcPageNum.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choiceSrcPageNum_itemStateChanged();
+                               comboBoxSrcPageNum_itemStateChanged();
                        }
                });
 
-               labelSrcImageSize = new Label();
+               labelSrcImageSize = new JLabel();
                labelSrcImageSize.setText(Lib.getMessage("labelSrcImageSize.Text"));
 
                numberFieldSrcImageWidth = new NumberField();
@@ -866,23 +846,23 @@ public class MainFrame extends Frame {
                numberField_initialize(numberFieldSrcImageHeight);
                numberFieldSrcImageHeight.setEnabled(false);
 
-               choiceSrcImageSizeUnit = new Choice();
-               choiceSrcImageSizeUnit.setEnabled(false);
-               choiceSrcImageSizeUnit.addItemListener(new ItemListener() {
+               comboBoxSrcImageSizeUnit = new JComboBox();
+               comboBoxSrcImageSizeUnit.setEnabled(false);
+               comboBoxSrcImageSizeUnit.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choiceSrcImageSizeUnit_itemStateChanged();
+                               comboBoxSrcImageSizeUnit_itemStateChanged();
                        }
                });
 
-               labelSrcRect = new Label();
+               labelSrcRect = new JLabel();
                labelSrcRect.setText(Lib.getMessage("labelSrcRect.Text"));
 
-               checkboxSrcRectWholeOfPage = new Checkbox();
-               checkboxSrcRectWholeOfPage.setLabel(Lib.getMessage("checkboxSrcRectWholeOfPage.Label"));
-               checkboxSrcRectWholeOfPage.setEnabled(false);
-               checkboxSrcRectWholeOfPage.addItemListener(new ItemListener() {
+               checkBoxSrcRectWholeOfPage = new JCheckBox();
+               checkBoxSrcRectWholeOfPage.setText(Lib.getMessage("checkbBoxSrcRectWholeOfPage.Text"));
+               checkBoxSrcRectWholeOfPage.setEnabled(false);
+               checkBoxSrcRectWholeOfPage.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               checkboxSrcRectWholeOfPage_itemStateChanged();
+                               checkBoxSrcRectWholeOfPage_itemStateChanged();
                        }
                });
 
@@ -922,22 +902,22 @@ public class MainFrame extends Frame {
                        }
                });
 
-               choiceSrcRectUnit = new Choice();
-               choiceSrcRectUnit.setEnabled(false);
-               choiceSrcRectUnit.addItemListener(new ItemListener() {
+               comboBoxSrcRectUnit = new JComboBox();
+               comboBoxSrcRectUnit.setEnabled(false);
+               comboBoxSrcRectUnit.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choiceSrcRectUnit_itemStateChanged();
+                               comboBoxSrcRectUnit_itemStateChanged();
                        }
                });
 
-               labelPosterSize = new Label();
+               labelPosterSize = new JLabel();
                labelPosterSize.setText(Lib.getMessage("labelPosterSize.Text"));
 
-               choicePosterSize = new Choice();
-               choicePosterSize_initialize();
-               choicePosterSize.addItemListener(new ItemListener() {
+               comboBoxPosterSize = new JComboBox();
+               comboBoxPosterSize_initialize();
+               comboBoxPosterSize.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choicePosterSize_itemStateChanged();
+                               comboBoxPosterSize_itemStateChanged();
                        }
                });
 
@@ -957,31 +937,30 @@ public class MainFrame extends Frame {
                        }
                });
 
-               choicePosterSizeUnit = new Choice();
-               choicePosterSizeUnit_initialize();
-               choicePosterSizeUnit.addItemListener(new ItemListener() {
+               comboBoxPosterSizeUnit = new JComboBox();
+               comboBoxPosterSizeUnit_initialize();
+               comboBoxPosterSizeUnit.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choicePosterSizeUnit_itemStateChanged();
+                               comboBoxPosterSizeUnit_itemStateChanged();
                        }
                });
 
-               checkboxPosterSizeKeepAspectRatio = new Checkbox();
-               checkboxPosterSizeKeepAspectRatio.setLabel(Lib
-                               .getMessage("checkboxPosterSizeKeepAspectRatio.Label"));
-               checkboxPosterSizeKeepAspectRatio.addItemListener(new ItemListener() {
+               checkBoxPosterSizeKeepAspectRatio = new JCheckBox();
+               checkBoxPosterSizeKeepAspectRatio.setText(Lib.getMessage("checkBoxPosterSizeKeepAspectRatio.Text"));
+               checkBoxPosterSizeKeepAspectRatio.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               checkboxPosterSizeKeepAspectRatio_itemStateChanged();
+                               checkBoxPosterSizeKeepAspectRatio_itemStateChanged();
                        }
                });
 
-               labelPaperSize = new Label();
+               labelPaperSize = new JLabel();
                labelPaperSize.setText(Lib.getMessage("labelPaperSize.Text"));
 
-               choicePaperSize = new Choice();
-               choicePaperSize_initialize();
-               choicePaperSize.addItemListener(new ItemListener() {
+               comboBoxPaperSize = new JComboBox();
+               comboBoxPaperSize_initialize();
+               comboBoxPaperSize.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choicePaperSize_itemStateChanged();
+                               comboBoxPaperSize_itemStateChanged();
                        }
                });
 
@@ -1001,15 +980,15 @@ public class MainFrame extends Frame {
                        }
                });
 
-               choicePaperSizeUnit = new Choice();
-               choicePaperSizeUnit_initialize();
-               choicePaperSizeUnit.addItemListener(new ItemListener() {
+               comboBoxPaperSizeUnit = new JComboBox();
+               comboBoxPaperSizeUnit_initialize();
+               comboBoxPaperSizeUnit.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choicePaperSizeUnit_itemStateChanged();
+                               comboBoxPaperSizeUnit_itemStateChanged();
                        }
                });
 
-               labelPaperMargin = new Label();
+               labelPaperMargin = new JLabel();
                labelPaperMargin.setText(Lib.getMessage("labelPaperMargin.Text"));
 
                numberFieldPaperMargin = new NumberField();
@@ -1020,24 +999,24 @@ public class MainFrame extends Frame {
                        }
                });
 
-               choicePaperMarginUnit = new Choice();
-               choicePaperMarginUnit_initialize();
-               choicePaperMarginUnit.addItemListener(new ItemListener() {
+               comboBoxPaperMarginUnit = new JComboBox();
+               comboBoxPaperMarginUnit_initialize();
+               comboBoxPaperMarginUnit.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               choicePaperMarginUnit_itemStateChanged();
+                               comboBoxPaperMarginUnit_itemStateChanged();
                        }
                });
 
-               checkboxPaperRotate = new Checkbox();
-               checkboxPaperRotate.setLabel(Lib.getMessage("checkboxPaperRotate.Label"));
-               checkboxPaperRotate.addItemListener(new ItemListener() {
+               checkBoxPaperRotate = new JCheckBox();
+               checkBoxPaperRotate.setText(Lib.getMessage("checkBoxPaperRotate.Text"));
+               checkBoxPaperRotate.addItemListener(new ItemListener() {
                        public void itemStateChanged(ItemEvent e) {
-                               checkboxPaperRotate_itemStateChanged();
+                               checkBoxPaperRotate_itemStateChanged();
                        }
                });
 
-               buttonPaperOptimize = new Button();
-               buttonPaperOptimize.setLabel(Lib.getMessage("buttonPaperOptimize.Label"));
+               buttonPaperOptimize = new JButton();
+               buttonPaperOptimize.setText(Lib.getMessage("buttonPaperOptimize.Text"));
                buttonPaperOptimize.setEnabled(false);
                buttonPaperOptimize.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
@@ -1045,10 +1024,10 @@ public class MainFrame extends Frame {
                        }
                });
 
-               labelPreview = new Label();
+               labelPreview = new JLabel();
                labelPreview.setText(Lib.getMessage("labelPreview.Text"));
 
-               labelOutputPaperCount = new Label();
+               labelOutputPaperCount = new JLabel();
                labelOutputPaperCount.setText(Lib.getMessage("labelOutputPaperCount.Text"));
 
                numberFieldOutputPaperCount = new NumberField();
@@ -1061,16 +1040,16 @@ public class MainFrame extends Frame {
                canvasPreview.setMinimumSize(new Dimension(0, 0));
                canvasPreview.setPreferredSize(new Dimension(500, 200));
 
-               labelOutputFileName = new Label();
+               labelOutputFileName = new JLabel();
                labelOutputFileName.setText(Lib.getMessage("labelOutputFileName.Text"));
 
-               textFieldOutputFileName = new TextField();
+               textFieldOutputFileName = new JTextField();
                textFieldOutputFileName.setColumns(40);
 
-               labelMessage = new Label();
+               labelMessage = new JLabel();
 
-               buttonOutput = new Button();
-               buttonOutput.setLabel(Lib.getMessage("buttonOutput.Label"));
+               buttonOutput = new JButton();
+               buttonOutput.setText(Lib.getMessage("buttonOutput.Text"));
                buttonOutput.addActionListener(new ActionListener() {
                        public void actionPerformed(ActionEvent e) {
                                buttonOutput_actionPerformed();
@@ -1095,66 +1074,66 @@ public class MainFrame extends Frame {
 
                menuBar.add(menuFile);
 
-               Panel panelSrcFile = new Panel();
+               JPanel panelSrcFile = new JPanel();
                panelSrcFile.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelSrcFile.add(labelSrcFile);
                panelSrcFile.add(textFieldSrcFileName);
                panelSrcFile.add(labelSrcFileType);
                panelSrcFile.add(buttonSrcFileChange);
 
-               Panel panelSrc = new Panel();
+               JPanel panelSrc = new JPanel();
                panelSrc.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelSrc.add(labelSrcPageNum);
-               panelSrc.add(choiceSrcPageNum);
+               panelSrc.add(comboBoxSrcPageNum);
                panelSrc.add(labelSrcImageSize);
                panelSrc.add(numberFieldSrcImageWidth);
                panelSrc.add(numberFieldSrcImageHeight);
-               panelSrc.add(choiceSrcImageSizeUnit);
+               panelSrc.add(comboBoxSrcImageSizeUnit);
 
-               Panel panelSrcRect = new Panel();
+               JPanel panelSrcRect = new JPanel();
                panelSrcRect.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelSrcRect.add(labelSrcRect);
-               panelSrcRect.add(checkboxSrcRectWholeOfPage);
+               panelSrcRect.add(checkBoxSrcRectWholeOfPage);
                panelSrcRect.add(numberFieldSrcLeft);
                panelSrcRect.add(numberFieldSrcBottom);
                panelSrcRect.add(numberFieldSrcRight);
                panelSrcRect.add(numberFieldSrcTop);
-               panelSrcRect.add(choiceSrcRectUnit);
+               panelSrcRect.add(comboBoxSrcRectUnit);
 
-               Panel panelPosterSize = new Panel();
+               JPanel panelPosterSize = new JPanel();
                panelPosterSize.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelPosterSize.add(labelPosterSize);
-               panelPosterSize.add(choicePosterSize);
+               panelPosterSize.add(comboBoxPosterSize);
                panelPosterSize.add(numberFieldPosterWidth);
                panelPosterSize.add(numberFieldPosterHeight);
-               panelPosterSize.add(choicePosterSizeUnit);
-               panelPosterSize.add(checkboxPosterSizeKeepAspectRatio);
+               panelPosterSize.add(comboBoxPosterSizeUnit);
+               panelPosterSize.add(checkBoxPosterSizeKeepAspectRatio);
 
-               Panel panelPaperSize = new Panel();
+               JPanel panelPaperSize = new JPanel();
                panelPaperSize.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelPaperSize.add(labelPaperSize);
-               panelPaperSize.add(choicePaperSize);
+               panelPaperSize.add(comboBoxPaperSize);
                panelPaperSize.add(numberFieldPaperWidth);
                panelPaperSize.add(numberFieldPaperHeight);
-               panelPaperSize.add(choicePaperSizeUnit);
+               panelPaperSize.add(comboBoxPaperSizeUnit);
                panelPaperSize.add(labelPaperMargin);
                panelPaperSize.add(numberFieldPaperMargin);
-               panelPaperSize.add(choicePaperMarginUnit);
-               panelPaperSize.add(checkboxPaperRotate);
+               panelPaperSize.add(comboBoxPaperMarginUnit);
+               panelPaperSize.add(checkBoxPaperRotate);
                panelPaperSize.add(buttonPaperOptimize);
 
-               Panel panelPreviewText = new Panel();
+               JPanel panelPreviewText = new JPanel();
                panelPreviewText.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelPreviewText.add(labelPreview);
                panelPreviewText.add(labelOutputPaperCount);
                panelPreviewText.add(numberFieldOutputPaperCount);
 
-               Panel panelOutputFileName = new Panel();
+               JPanel panelOutputFileName = new JPanel();
                panelOutputFileName.setLayout(new FlowLayout(FlowLayout.LEFT));
                panelOutputFileName.add(labelOutputFileName);
                panelOutputFileName.add(textFieldOutputFileName);
 
-               Panel panelOutput = new Panel();
+               JPanel panelOutput = new JPanel();
                switch(Lib.getOS()) {
                case Lib.OS_MAC:
                    panelOutput.setLayout(new FlowLayout(FlowLayout.RIGHT));
@@ -1168,17 +1147,24 @@ public class MainFrame extends Frame {
                    break;
                }
 
-               this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
-               this.setMenuBar(menuBar);
-               this.add(panelSrcFile);
-               this.add(panelSrc);
-               this.add(panelSrcRect);
-               this.add(panelPosterSize);
-               this.add(panelPaperSize);
-               this.add(panelPreviewText);
-               this.add(canvasPreview);
-               this.add(panelOutputFileName);
-               this.add(panelOutput);
+               JPanel panelNorth = new JPanel();
+               panelNorth.setLayout(new BoxLayout(panelNorth, BoxLayout.Y_AXIS));
+               panelNorth.add(panelSrcFile);
+               panelNorth.add(panelSrc);
+               panelNorth.add(panelSrcRect);
+               panelNorth.add(panelPosterSize);
+               panelNorth.add(panelPaperSize);
+               panelNorth.add(panelPreviewText);
+               JPanel panelSouth = new JPanel();
+               panelSouth.setLayout(new BoxLayout(panelSouth, BoxLayout.Y_AXIS));
+               panelSouth.add(panelOutputFileName);
+               panelSouth.add(panelOutput);
+               //this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
+               this.setLayout(new BorderLayout());
+               this.setJMenuBar(menuBar);
+               this.add(panelNorth, BorderLayout.NORTH);
+               this.add(panelSouth, BorderLayout.SOUTH);
+               this.add(canvasPreview, BorderLayout.CENTER);
        }
 
        private void mainFrame_initialize() {
@@ -1187,19 +1173,19 @@ public class MainFrame extends Frame {
                this.preferredPosterHeight = PaperSize.A1.getHeight();
                updatePosterSize();
                numberFieldPosterSize_setValue();
-               choicePosterSize.select(choicePosterSize.getItemCount() - 1);
-               choicePosterSize_itemStateChanged();
-               checkboxPosterSizeKeepAspectRatio.setState(true);
-               checkboxPosterSizeKeepAspectRatio_itemStateChanged();
-
-               choicePaperSize.select(0);
-               choicePaperSize_itemStateChanged();
-               choicePaperSizeUnit.select(0);
-               choicePaperSizeUnit_itemStateChanged();
+               comboBoxPosterSize.setSelectedIndex(comboBoxPosterSize.getItemCount() - 1);
+               comboBoxPosterSize_itemStateChanged();
+               checkBoxPosterSizeKeepAspectRatio.setSelected(true);
+               checkBoxPosterSizeKeepAspectRatio_itemStateChanged();
+
+               comboBoxPaperSize.setSelectedIndex(0);
+               comboBoxPaperSize_itemStateChanged();
+               comboBoxPaperSizeUnit.setSelectedIndex(0);
+               comboBoxPaperSizeUnit_itemStateChanged();
                this.paperMargin = 72;
                numberFieldPaperMargin_setValue();
-               choicePaperMarginUnit.select(0);
-               choicePaperMarginUnit_itemStateChanged();
+               comboBoxPaperMarginUnit.setSelectedIndex(0);
+               comboBoxPaperMarginUnit_itemStateChanged();
 
                textFieldOutputFileName.setText(String.format("{pwd}%s%s_{input}_{date}.pdf", File.separator, Lib.getMessage("App.LowerTitle")));