1 package eu.svjatoslav.instantlauncher;
3 import java.awt.BorderLayout;
4 import java.awt.Dimension;
5 import java.awt.event.WindowEvent;
6 import java.awt.event.WindowListener;
8 import javax.swing.JFrame;
10 import eu.svjatoslav.instantlauncher.menu.MultiLevelMenu;
12 public class MainFrame {
16 private boolean isShowing;
18 public static final Dimension CONTENT_PANEL_SIZE = new Dimension(1100, 850);
20 private final InstantLauncher instantLauncher;
22 public MainFrame(final InstantLauncher instantLauncher) {
23 this.instantLauncher = instantLauncher;
26 private void buildContentPane() {
28 final MultiLevelMenu multiLevelMenu = new MultiLevelMenu(instantLauncher);
29 frame.getContentPane().add(multiLevelMenu.buildContentPanel(), BorderLayout.CENTER);
37 frame = new JFrame("InstantLauncher");
41 // registor window listener
42 final FrameWindowListener windowListener = new FrameWindowListener();
43 frame.addWindowListener(windowListener);
46 frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
47 frame.setVisible(true);
54 public static class FrameWindowListener implements WindowListener {
57 public void windowActivated(final WindowEvent e) {
61 public void windowClosed(final WindowEvent e) {
65 public void windowClosing(final WindowEvent e) {
66 InstantLauncher.exitProgram();
70 public void windowDeactivated(final WindowEvent e) {
74 public void windowDeiconified(final WindowEvent e) {
78 public void windowIconified(final WindowEvent e) {
82 public void windowOpened(final WindowEvent e) {