]> git.mxchange.org Git - addressbook-lib.git/blobdiff - Addressbook/src/org/mxchange/addressbook/client/gui/AddressbookFrame.java
set visibility for debugging purposes here
[addressbook-lib.git] / Addressbook / src / org / mxchange / addressbook / client / gui / AddressbookFrame.java
index b3bcab4c964c6d34e98535990ca827405e37308e..0f8aee83700616680624f3565a19e64550f83dff 100644 (file)
@@ -262,18 +262,21 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
                this.addContact = new JDialog();
                this.addContact.setTitle(this.generateFrameTitle("dialog.addContact"));
                this.addContact.setLayout(new GridLayout(4, 1));
-               
+
                // Only hide it on close and make it appear in middle of screen
                this.addContact.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
                this.addContact.setLocationRelativeTo(null);
-               
+
                // Set always on top and auto-focus
                this.addContact.setAlwaysOnTop(true);
                this.addContact.setAutoRequestFocus(true);
-               
+
                // Initial dimension
-               this.addContact.setSize(400, 300);
-               
+               this.addContact.setSize(500, 400);
+
+               // Only for developing:
+               /* DEBUG: */ this.addContact.setVisible(true);
+
                /*
                 * Add listener which asks for confirmation, if data has been entered
                 * but not saved yet. The user may appriciate this ... ;-)
@@ -282,58 +285,8 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
                 */
                
                // Init 3 panels:
-               // 1) Panel "name" input boxes
-               JPanel namePanel = new JPanel();
-               namePanel.setLayout(new BoxLayout(namePanel, BoxLayout.Y_AXIS));
-               
-               // Set border to titled version
-               namePanel.setBorder(new TitledBorder(this.generateBorderTitle("name")));
-
-               // Add some input boxes for "name" panel
-               JComboBox<Gender> gender = new JComboBox<>(new DefaultComboBoxModel<Gender>());
-
-               // Panel for gender
-               JPanel gPanel = new JPanel();
-               gPanel.setLayout(new GridLayout(1, 2));
-
-               // Set tooltip text
-               gPanel.setToolTipText(this.getBundle().getString("AddressbookFrame.gender.tooltipText"));
-
-               // Gender text field
-               JLabel gLabel = new JLabel(this.getBundle().getString("AddressbookFrame.gender.text"));
-
-               // Add both to gender panel
-               gPanel.add(gLabel);
-               gPanel.add(gender);
-
-               // Add panel to north of "name" panel
-               namePanel.add(gPanel, BorderLayout.NORTH);
-
-               // Panel for surname
-               JPanel sPanel = new JPanel();
-               sPanel.setLayout(new GridLayout(1, 2));
-
-               // Set too tip text
-               sPanel.setToolTipText(this.getBundle().getString("AddressbookFrame.surname.tooltipText"));
-
-               // New label for surname is not needed
-               JLabel sLabel = new JLabel(this.getBundle().getString("AddressbookFrame.surname.text"));
-
-               // And input box
-               JTextField surname = new JTextField(20);
-
-               // Add both to surname panel
-               sPanel.add(sLabel);
-               sPanel.add(surname);
-
-               // Add surname panel to "name" panel
-               namePanel.add(sPanel, BorderLayout.CENTER);
-
-               // Finally add panel to dialog
-               this.addContact.add(namePanel);
-               
-               // Only for developing:
-               /* DEBUG: */ this.addContact.setVisible(true);
+               // 1) "Name" panel
+               initNamePanel();
        }
 
        /**
@@ -478,6 +431,84 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
                this.frame.add(menuBar, BorderLayout.NORTH);
        }
 
+       /**
+        * Initializes name panel
+        */
+       private void initNamePanel () {
+               // 1) Panel "name" input boxes
+               JPanel namePanel = new JPanel();
+               namePanel.setLayout(new BoxLayout(namePanel, BoxLayout.Y_AXIS));
+               
+               // Set border to titled version
+               namePanel.setBorder(new TitledBorder(this.generateBorderTitle("name")));
+               
+               // Get all genders
+               Gender[] genders = Gender.values();
+               
+               // Init gender combo box
+               JComboBox<Gender> gender = new JComboBox<>(new DefaultComboBoxModel<>(genders));
+               
+               // Panel for gender
+               JPanel gPanel = new JPanel();
+               gPanel.setLayout(new GridLayout(1, 2));
+               
+               // Set tooltip text
+               gPanel.setToolTipText(this.getBundle().getString("AddressbookFrame.gender.tooltipText"));
+               
+               // Gender text field
+               JLabel gLabel = new JLabel(this.getBundle().getString("AddressbookFrame.gender.text"));
+               
+               // Add both to gender panel
+               gPanel.add(gLabel);
+               gPanel.add(gender);
+               
+               // Add gender panel to "name" panel
+               namePanel.add(gPanel);
+               
+               // Panel for surname
+               JPanel sPanel = new JPanel();
+               sPanel.setLayout(new GridLayout(1, 2));
+               
+               // Set too tip text
+               sPanel.setToolTipText(this.getBundle().getString("AddressbookFrame.surname.tooltipText"));
+               
+               // New label for surname is not needed
+               JLabel sLabel = new JLabel(this.getBundle().getString("AddressbookFrame.surname.text"));
+               
+               // And input box
+               JTextField surname = new JTextField(20);
+               
+               // Add both to surname panel
+               sPanel.add(sLabel);
+               sPanel.add(surname);
+               
+               // Add surname panel to "name" panel
+               namePanel.add(sPanel);
+               
+               // Panel for surname
+               JPanel fPanel = new JPanel();
+               fPanel.setLayout(new GridLayout(1, 2));
+               
+               // Set too tip text
+               fPanel.setToolTipText(this.getBundle().getString("AddressbookFrame.familyName.tooltipText"));
+               
+               // New label for surname is not needed
+               JLabel fLabel = new JLabel(this.getBundle().getString("AddressbookFrame.familyName.text"));
+               
+               // And input box
+               JTextField familyName = new JTextField(20);
+               
+               // Add both to surname panel
+               fPanel.add(fLabel);
+               fPanel.add(familyName);
+               
+               // Add family namepanel to "name" panel
+               namePanel.add(fPanel);
+               
+               // Finally add panel to dialog
+               this.addContact.add(namePanel);
+       }
+
        /**
         * Initialize other dialogs (e.g. "Add contact")
         */