Making some GUI :)
[puzzles.git] / src / com / github / puzzles / gui / MainWindow.java
blobecaf3df1e861de19b0bd2112930d0d7a035f220b
1 package com.github.puzzles.gui;
3 import java.awt.BorderLayout;
4 import java.awt.EventQueue;
5 import java.awt.event.MouseAdapter;
6 import java.awt.event.MouseEvent;
8 import javax.swing.JDialog;
9 import javax.swing.JFrame;
10 import javax.swing.JMenu;
11 import javax.swing.JMenuBar;
12 import javax.swing.JMenuItem;
13 import javax.swing.JPanel;
15 public class MainWindow {
17 private JFrame frame;
19 /**
20 * Launch the application.
22 public static void main(String[] args) {
23 EventQueue.invokeLater(new Runnable() {
24 public void run() {
25 try {
26 MainWindow window = new MainWindow();
27 window.frame.setVisible(true);
28 } catch (Exception e) {
29 e.printStackTrace();
32 });
35 /**
36 * Create the application.
38 public MainWindow() {
39 initialize();
42 /**
43 * Initialize the contents of the frame.
45 private void initialize() {
46 frame = new JFrame();
47 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
49 frame.setBounds(0, 0, 800, 600);
51 JMenuBar topMenuBar = new JMenuBar();
52 frame.setJMenuBar(topMenuBar);
54 JMenu menuFile = new JMenu("File");
55 topMenuBar.add(menuFile);
57 JMenu newPuzzleMenu = new JMenu("New puzzle");
58 menuFile.add(newPuzzleMenu);
60 JMenuItem flippingPuzzle = new JMenuItem("Flipping Puzzle");
61 flippingPuzzle.addMouseListener(new MouseAdapter() {
62 @Override
63 public void mouseReleased(MouseEvent e) {
64 System.out.println("Hellow world!");
66 });
67 newPuzzleMenu.add(flippingPuzzle);
69 JMenuItem slidingPuzzle = new JMenuItem("Sliding Puzzle");
70 newPuzzleMenu.add(slidingPuzzle);
72 JMenu helpMenu = new JMenu("Help");
73 topMenuBar.add(helpMenu);
75 JMenuItem aboutMenu = new JMenuItem("About me");
76 aboutMenu.addMouseListener(new MouseAdapter() {
77 @Override
78 public void mouseReleased(MouseEvent e) {
79 //JFrame aboutFrame = new AboutFrame();
80 //aboutFrame.setVisible(true);
81 JDialog aboutMeDialog = new AboutMeDialog();
82 aboutMeDialog.setAlwaysOnTop(true);
83 aboutMeDialog.setModal(true);
84 aboutMeDialog.setVisible(true);
86 });
87 helpMenu.add(aboutMenu);
89 JPanel mainPanel = new JPanel();
90 frame.getContentPane().add(mainPanel, BorderLayout.CENTER);
92 JPanel puzzlePanel = new JPanel();
93 mainPanel.add(puzzlePanel);