01: package org.zilonis.tool.ui;
02:
03: import java.awt.BorderLayout;
04: import java.awt.Component;
05:
06: import javax.swing.JFrame;
07: import javax.swing.JPanel;
08:
09: import org.zilonis.tool.ext.aerith.ui.ContentPanel;
10: import org.zilonis.tool.ext.aerith.ui.Footer;
11: import org.zilonis.tool.ext.aerith.ui.TitlePanel;
12: import org.zilonis.tool.ext.aerith.ui.WaitOverlay;
13: import org.zilonis.tool.ui.effects.DisolverListener;
14:
15: public class MainFrame extends JFrame {
16: private final TransitionPanel panel;
17: private Component originalOverlay;
18:
19: public MainFrame(final TransitionPanel transPanel) {
20: super ("Zilonis Analysis Tool");
21:
22: //setResizable(false);
23: setUndecorated(true);
24: ContentPanel contentPanel = new ContentPanel();
25: contentPanel.setLayout(new BorderLayout());
26: contentPanel.add(transPanel, BorderLayout.CENTER);
27: contentPanel.add(new Footer(), BorderLayout.SOUTH);
28:
29: JPanel panel = new JPanel(new BorderLayout());
30: panel.setBorder(new FrameBorder());
31: setContentPane(panel);
32:
33: TitlePanel titlePanel = new TitlePanel();
34: add(titlePanel, BorderLayout.NORTH);
35: titlePanel.installListeners();
36:
37: add(contentPanel, BorderLayout.CENTER);
38:
39: setSize(780, 614);
40: //setExtendedState(getExtendedState() | MAXIMIZED_BOTH);
41: this .originalOverlay = getGlassPane();
42: this .panel = transPanel;
43: TransitionManager.showMainScreen();
44: addWindowListener(new DisolverListener(this ));
45: }
46:
47: void showTransitionPanel() {
48: this .panel.setContentVisible(true);
49: }
50:
51: void showWaitOverlay() {
52: setGlassPane(new WaitOverlay(panel));
53: getGlassPane().setSize(getSize());
54: getGlassPane().validate();
55: }
56:
57: void hideWaitOverlay() {
58: getGlassPane().setVisible(false);
59: }
60:
61: void killOverlay() {
62: setGlassPane(originalOverlay);
63: }
64: }
|