Much better bootup process for GUI
- GUI is now centered and 1024x800 by default - SplashScreen stays on top - SplashScreen loads image faster
This commit is contained in:
parent
a0ea08dfbe
commit
5a75df616b
@ -332,7 +332,7 @@ public class Main extends JFrame implements OptimizationStateListener {
|
|||||||
/* Create main frame with GridBagLayout */
|
/* Create main frame with GridBagLayout */
|
||||||
setTitle(EvAInfo.productName);
|
setTitle(EvAInfo.productName);
|
||||||
setLayout(new GridBagLayout());
|
setLayout(new GridBagLayout());
|
||||||
setMinimumSize(new Dimension(800, 600));
|
setMinimumSize(new Dimension(1024, 800));
|
||||||
|
|
||||||
/* Creates the desktopPane for Plot/Text Output */
|
/* Creates the desktopPane for Plot/Text Output */
|
||||||
desktopPane = new JExtDesktopPane();
|
desktopPane = new JExtDesktopPane();
|
||||||
@ -358,13 +358,6 @@ public class Main extends JFrame implements OptimizationStateListener {
|
|||||||
// TODO: use setIconImages (for better support of multiple icons when changing programs etc.)
|
// TODO: use setIconImages (for better support of multiple icons when changing programs etc.)
|
||||||
setIconImage(Toolkit.getDefaultToolkit().createImage(bytes));
|
setIconImage(Toolkit.getDefaultToolkit().createImage(bytes));
|
||||||
|
|
||||||
try {
|
|
||||||
Thread.sleep(200);
|
|
||||||
} catch (Exception e) {
|
|
||||||
System.out.println("Error" + e.getMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
LoggingPanel logPanel = new LoggingPanel();
|
LoggingPanel logPanel = new LoggingPanel();
|
||||||
logPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
|
logPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
|
||||||
|
|
||||||
@ -373,6 +366,8 @@ public class Main extends JFrame implements OptimizationStateListener {
|
|||||||
createActions();
|
createActions();
|
||||||
|
|
||||||
setSize(800, 600);
|
setSize(800, 600);
|
||||||
|
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
|
||||||
|
setLocation((int) ((screenSize.width - this.getWidth()) / 2), (int) ((screenSize.height - this.getHeight()) / 2.5));
|
||||||
|
|
||||||
/* Create a new ConfigurationPanel (left side) */
|
/* Create a new ConfigurationPanel (left side) */
|
||||||
configurationPane = new JPanel(new GridBagLayout());
|
configurationPane = new JPanel(new GridBagLayout());
|
||||||
@ -476,15 +471,6 @@ public class Main extends JFrame implements OptimizationStateListener {
|
|||||||
configurationPane.setVisible(true);
|
configurationPane.setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(this.isVisible())) {
|
|
||||||
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
|
|
||||||
this.setLocation((int) ((screenSize.width - this.getWidth()) / 2), (int) ((screenSize.height - this.getHeight()) / 2.5));
|
|
||||||
this.pack();
|
|
||||||
this.setSize(screenSize);
|
|
||||||
this.setVisible(true);
|
|
||||||
this.setVisible(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
// if this message is omitted, the stupid scroll pane runs to
|
// if this message is omitted, the stupid scroll pane runs to
|
||||||
// the end of the last line which is ugly for a long class path
|
// the end of the last line which is ugly for a long class path
|
||||||
LOGGER.info("EvA2 ready");
|
LOGGER.info("EvA2 ready");
|
||||||
|
@ -7,13 +7,23 @@ import javax.swing.*;
|
|||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
|
||||||
|
|
||||||
class SplashScreen extends Frame {
|
class SplashScreen extends JWindow {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1281793825850423095L;
|
private static final long serialVersionUID = 1281793825850423095L;
|
||||||
private String imgLocation;
|
private String imgLocation;
|
||||||
|
|
||||||
public SplashScreen(String imgLoc) {
|
public SplashScreen(String imgLoc) {
|
||||||
imgLocation = imgLoc;
|
imgLocation = imgLoc;
|
||||||
|
BasicResourceLoader loader = BasicResourceLoader.instance();
|
||||||
|
byte[] bytes = loader.getBytesFromResourceLocation(imgLocation, true);
|
||||||
|
ImageIcon ii = new ImageIcon(Toolkit.getDefaultToolkit().createImage(bytes));
|
||||||
|
JLabel splashLabel = new JLabel(ii);
|
||||||
|
|
||||||
|
this.add(splashLabel);
|
||||||
|
this.pack();
|
||||||
|
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
|
||||||
|
this.setLocation(screenSize.width / 2 - this.getSize().width / 2, screenSize.height / 2 - this.getSize().height / 2);
|
||||||
|
setAlwaysOnTop(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -26,16 +36,7 @@ class SplashScreen extends Frame {
|
|||||||
* dispatch thread.
|
* dispatch thread.
|
||||||
*/
|
*/
|
||||||
public void splash() {
|
public void splash() {
|
||||||
JWindow splashWindow = new JWindow(this);
|
|
||||||
BasicResourceLoader loader = BasicResourceLoader.instance();
|
|
||||||
byte[] bytes = loader.getBytesFromResourceLocation(imgLocation, true);
|
|
||||||
ImageIcon ii = new ImageIcon(Toolkit.getDefaultToolkit().createImage(bytes));
|
|
||||||
JLabel splashLabel = new JLabel(ii);
|
|
||||||
|
|
||||||
splashWindow.add(splashLabel);
|
this.setVisible(true);
|
||||||
splashWindow.pack();
|
|
||||||
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
|
|
||||||
splashWindow.setLocation(screenSize.width / 2 - splashWindow.getSize().width / 2, screenSize.height / 2 - splashWindow.getSize().height / 2);
|
|
||||||
splashWindow.setVisible(true);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user