]> git.mxchange.org Git - jaddressbook-lib.git/commitdiff
Introduced updateStatus() + shutdownApplication()
authorRoland Haeder <roland@mxchange.org>
Fri, 24 Jul 2015 09:49:30 +0000 (11:49 +0200)
committerRoland Haeder <roland@mxchange.org>
Fri, 24 Jul 2015 09:49:30 +0000 (11:49 +0200)
Signed-off-by:Roland Häder <roland@mxchange.org>

Addressbook/src/org/mxchange/addressbook/client/gui/AddressbookFrame.java
Addressbook/src/org/mxchange/addressbook/client/gui/ClientFrame.java

index d03358ccff1c21260f8bdb77daa8d08b381974a2..13e02cec19044d4b1fbfcea39c00528cef20b720 100644 (file)
@@ -138,7 +138,7 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
        this.frame.setVisible(true);
 
        // All done here
-       this.statusLabel.setText(this.getBundle().getString("AddressbookFrame.statusLabel.done.text"));
+       this.updateStatus("done");
     }
 
     /**
@@ -176,6 +176,20 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
        return this.isInitialized;
     }
 
+    /**
+     * Shuts down the application.
+     */
+    @Override
+    public void shutdownApplication () {
+       // To do this, the frame must be initialized
+       if (!this.isInitialized()) {
+           // Not initalized, so bad call
+           this.getLogger().fatal("Bad call of shutdownApplication(). Please report this.");
+           return;
+       }
+       this.getClient().getApplication().doShutdown();
+    }
+
     /**
      * Initialize components
      */
@@ -194,7 +208,7 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
            @Override
            public void windowClosed(final WindowEvent e) {
                // Shutdown application cleanly
-               self.getClient().getApplication().doShutdown();
+               self.shutdownApplication();
            }
 
            /**
@@ -204,7 +218,7 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
            @Override
            public void windowClosing(final WindowEvent e) {
                // Also shutdown cleanly here
-               self.getClient().getApplication().doShutdown();
+               self.shutdownApplication();
            }
        });
 
@@ -220,9 +234,6 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
        // Init menu system
        initMenuSystem();
 
-       // Init status label (which needs to be updated
-       this.statusLabel = new JLabel(this.getBundle().getString("AddressbookFrame.statusLabel.initializing.text"));
-
        // Init status panel
        initStatusPanel();
     }
@@ -254,7 +265,7 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
             */
            @Override
            public void actionPerformed (final ActionEvent e) {
-               self.getClient().getApplication().doShutdown();
+               self.shutdownApplication();
            }
        });
 
@@ -319,6 +330,10 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
      * Initializes status panel
      */
     private void initStatusPanel () {
+       // Init status label (which needs to be updated
+       this.statusLabel = new JLabel();
+       this.updateStatus("initializing");
+
        // Init status bar in south
        JPanel panel = new JPanel();
        panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
@@ -328,4 +343,14 @@ public class AddressbookFrame extends BaseFrameworkSystem implements ClientFrame
        // Add panel to frame
        this.frame.add(panel, BorderLayout.SOUTH);
     }
+
+    /**
+     * Updates status to given type
+     * 
+     * @param type Status type
+     */
+    private void updateStatus (final String type) {
+       // Set status message
+       this.statusLabel.setText(this.getBundle().getString("AddressbookFrame.statusLabel." + type + ".text"));
+    }
 }
index 389e744d8a813b84207d41954372d23b7fda6179..24bec9870cb0ac279e49ffbfd955efbad4fe2abd 100644 (file)
@@ -53,4 +53,6 @@ public interface ClientFrame extends FrameworkInterface {
      * @return Field isInitialized
      */
     public boolean isInitialized ();
+
+    public void shutdownApplication ();
 }