Author: jflesch
Date: 2007-01-02 22:24:00 +0000 (Tue, 02 Jan 2007)
New Revision: 11545

Added:
   trunk/apps/Thaw/images/mainWindow.png
Modified:
   trunk/apps/Thaw/src/thaw/core/Core.java
   trunk/apps/Thaw/src/thaw/core/IconBox.java
   trunk/apps/Thaw/src/thaw/core/SplashScreen.java
Log:
Improve splashscreen

Added: trunk/apps/Thaw/images/mainWindow.png
===================================================================
(Binary files differ)


Property changes on: trunk/apps/Thaw/images/mainWindow.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: trunk/apps/Thaw/src/thaw/core/Core.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/Core.java     2007-01-02 21:44:33 UTC (rev 
11544)
+++ trunk/apps/Thaw/src/thaw/core/Core.java     2007-01-02 22:24:00 UTC (rev 
11545)
@@ -98,15 +98,19 @@
         * @return true is success, false if not
         */
        public boolean initAll() {
+               IconBox.loadIcons();
+
                splashScreen = new SplashScreen();

                splashScreen.display();

                splashScreen.setProgressionAndStatus(0, "Loading configuration 
...");
+               splashScreen.addIcon(IconBox.settings);
                if(!initConfig())
                        return false;

                splashScreen.setProgressionAndStatus(10, "Connecting ...");
+               splashScreen.addIcon(IconBox.connectAction);
                if(!initNodeConnection())
                        new WarningWindow(this, 
I18n.getMessage("thaw.warning.unableToConnectTo")+
                                          " "+ config.getValue("nodeAddress")+
@@ -114,10 +118,12 @@


                splashScreen.setProgressionAndStatus(30, "Preparing the main 
window ...");
+               splashScreen.addIcon(IconBox.mainWindow);
                if(!initGraphics())
                        return false;

                splashScreen.setProgressionAndStatus(40, "Loading plugins ...");
+               splashScreen.addIcon(IconBox.add);
                if(!initPluginManager())
                        return false;

@@ -307,8 +313,6 @@
        public boolean initGraphics() {
                initializeLookAndFeel();

-               IconBox.loadIcons();
-
                mainWindow = new MainWindow(this);

                configWindow = new ConfigWindow(this);

Modified: trunk/apps/Thaw/src/thaw/core/IconBox.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/IconBox.java  2007-01-02 21:44:33 UTC (rev 
11544)
+++ trunk/apps/Thaw/src/thaw/core/IconBox.java  2007-01-02 22:24:00 UTC (rev 
11545)
@@ -63,7 +63,10 @@

        public static ImageIcon folderNew;

+       public static ImageIcon mainWindow;

+       public static ImageIcon add;
+
        /**
         * Not really used
         */
@@ -120,6 +123,7 @@
                IconBox.indexBrowser = IconBox.loadIcon("indexBrowser.png");
                IconBox.minIndexBrowser = 
IconBox.loadIcon("min-indexBrowser.png");
                IconBox.addToIndexAction = IconBox.loadIcon("add.png");
+               IconBox.add = IconBox.loadIcon("add.png");
                IconBox.insertAndAddToIndexAction = 
IconBox.loadIcon("index.png");
                IconBox.makeALinkAction = IconBox.loadIcon("makeLink.png");
                IconBox.reconnectAction = IconBox.loadIcon("refresh.png");
@@ -132,6 +136,7 @@
                IconBox.folderNew = IconBox.loadIcon("folder-new.png");
                IconBox.help = IconBox.loadIcon("help.png");
                IconBox.minHelp = IconBox.loadIcon("min-help.png");
+               IconBox.mainWindow = IconBox.loadIcon("mainWindow.png");
        }

 }

Modified: trunk/apps/Thaw/src/thaw/core/SplashScreen.java
===================================================================
--- trunk/apps/Thaw/src/thaw/core/SplashScreen.java     2007-01-02 21:44:33 UTC 
(rev 11544)
+++ trunk/apps/Thaw/src/thaw/core/SplashScreen.java     2007-01-02 22:24:00 UTC 
(rev 11545)
@@ -1,6 +1,7 @@
 package thaw.core;

 import java.awt.BorderLayout;
+import java.awt.GridLayout;
 import java.awt.Dimension;
 import java.awt.Font;
 import java.awt.Toolkit;
@@ -9,37 +10,59 @@
 import javax.swing.JLabel;
 import javax.swing.JPanel;
 import javax.swing.JProgressBar;
+import javax.swing.ImageIcon;
+import java.util.Vector;

-
 public class SplashScreen {
        public final static int SIZE_X = 500;
-       public final static int SIZE_Y = 100;
+       public final static int SIZE_Y = 150;

+       public final static int NMB_ICONS = 4;

        public JDialog splashScreen;
        public JProgressBar progressBar;
+       public JPanel iconPanel;

+       public int nmbIcon = 0;

+       public Vector emptyLabels;
+
        public SplashScreen() {

        }

        public void display() {
                final JPanel panel = new JPanel();
+               JPanel subPanel = new JPanel();
+               iconPanel = new JPanel();
+
                splashScreen = new JDialog();

                splashScreen.setUndecorated(true);
                splashScreen.setResizable(false);

                panel.setLayout(new BorderLayout(10, 10));
+               subPanel.setLayout(new GridLayout(2, 1));
+               iconPanel.setLayout(new GridLayout(1, NMB_ICONS));

+               emptyLabels = new Vector();

+               /* it's a dirty method to keep the NMB_ICONS parts of the panel 
at the same size */
+               for (int i = 0 ; i < NMB_ICONS ; i++) {
+                       JLabel lb = new JLabel();
+                       emptyLabels.add(lb);
+                       iconPanel.add(lb, i);
+               }
+
                final JLabel thawLabel = new JLabel("   Thaw");

-               thawLabel.setFont(new Font("Dialog", Font.BOLD, 30));
+               thawLabel.setFont(new Font("Dialog", Font.BOLD, 42));

-               panel.add(thawLabel, BorderLayout.CENTER);
+               subPanel.add(thawLabel);
+               subPanel.add(iconPanel);

+               panel.add(subPanel, BorderLayout.CENTER);
+
                progressBar = new JProgressBar(0, 100);
                progressBar.setStringPainted(true);
                progressBar.setString("Wake up Neo ...");
@@ -71,8 +94,28 @@
        public void setProgression(final int progress) {
                if(progressBar != null)
                        progressBar.setValue(progress);
+
+               splashScreen.getContentPane().validate();
        }

+
+       public void addIcon(ImageIcon icon) {
+               JLabel lb = new JLabel(icon);
+
+               lb.setHorizontalAlignment(JLabel.CENTER);
+               lb.setVerticalAlignment(JLabel.CENTER);
+
+               iconPanel.remove((java.awt.Component)emptyLabels.get(0));
+
+               iconPanel.add(lb, nmbIcon);
+
+               emptyLabels.removeElementAt(0);
+
+               nmbIcon++;
+
+               splashScreen.getContentPane().validate();
+       }
+
        public int getProgression() {
                if(progressBar != null)
                        return progressBar.getValue();
@@ -84,6 +127,8 @@
        public void setStatus(final String status) {
                if(progressBar != null)
                        progressBar.setString(status);
+
+               splashScreen.getContentPane().validate();
        }

        public void setProgressionAndStatus(final int progress, final String 
status) {


Reply via email to