]> git.argeo.org Git - gpl/argeo-slc.git/blob - sandbox/argeo.slc.testui/src/main/java/org/argeo/slc/testui/SwingTestUi.java
Ignore MANIFESTs
[gpl/argeo-slc.git] / sandbox / argeo.slc.testui / src / main / java / org / argeo / slc / testui / SwingTestUi.java
1 package org.argeo.slc.testui;
2
3 import java.awt.GridLayout;
4 import java.awt.event.ActionEvent;
5 import java.awt.event.ActionListener;
6
7 import javax.swing.JButton;
8 import javax.swing.JDialog;
9 import javax.swing.JFrame;
10 import javax.swing.JLabel;
11 import javax.swing.JMenu;
12 import javax.swing.JMenuBar;
13 import javax.swing.JMenuItem;
14 import javax.swing.JPanel;
15 import javax.swing.JTextField;
16
17 public class SwingTestUi {
18 private static void createAndShowGUI(boolean exitOnClose) {
19 // Create and set up the window.
20 final JFrame frame = new JFrame("HelloWorldSwing");
21 if (exitOnClose)
22 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
23
24 frame.getContentPane().setLayout(new GridLayout(4, 1));
25 frame.setTitle("Mx");
26
27 // "Hello World" label.
28 final JLabel label = new JLabel("Hello World");
29 frame.getContentPane().add(label);
30
31 {
32 // Add menu
33 JMenuBar menubar = new JMenuBar();
34 JMenu menuSession = new JMenu("Session");
35 menubar.add(menuSession);
36 JMenuItem start = new JMenuItem("Start");
37 menuSession.add(start);
38 start.addActionListener(new ActionListener() {
39
40 public void actionPerformed(ActionEvent e) {
41 JDialog dialog = new JDialog(frame, "New Session");
42 JLabel label = new JLabel("Mx Session");
43 dialog.getContentPane().add(label);
44 dialog.pack();
45 dialog.setVisible(true);
46 }
47 });
48 frame.setJMenuBar(menubar);
49 }
50
51 // Change label button
52 {
53 final JButton button = new JButton("Button");
54 frame.getContentPane().add(button);
55 button.addActionListener(new ActionListener() {
56 public void actionPerformed(ActionEvent e) {
57 if (label.getText().equals("Hello World"))
58 label.setText("Pressed!!");
59 else
60 label.setText("Hello World");
61 }
62 });
63 }
64
65 // Start dialog button
66 {
67 final JButton buttonStart = new JButton("Start");
68 frame.getContentPane().add(buttonStart);
69 buttonStart.addActionListener(new ActionListener() {
70 public void actionPerformed(ActionEvent e) {
71 JDialog dialog = new JDialog(frame, "TestDialog");
72 JLabel label = new JLabel("Dialog open");
73 dialog.getContentPane().add(label);
74 dialog.pack();
75 dialog.setVisible(true);
76 }
77 });
78 }
79
80 // Complex Panel
81 {
82 JPanel complexPanel = new JPanel();
83 complexPanel.setLayout(new GridLayout(1, 2));
84 final JTextField textTime = new JTextField(Long.toString(System
85 .currentTimeMillis()));
86 complexPanel.add(textTime);
87 JButton buttonTime = new JButton("Now!");
88 buttonTime.addActionListener(new ActionListener() {
89 public void actionPerformed(ActionEvent e) {
90 textTime.setText(Long.toString(System.currentTimeMillis()));
91 }
92 });
93 complexPanel.add(buttonTime);
94 frame.getContentPane().add(complexPanel);
95 }
96
97 // Display the window.
98 frame.pack();
99 frame.setVisible(true);
100 }
101
102 public static void main(String[] args) {
103 boolean noExitOnClose = false;
104 for (int i = 0; i < args.length; i++) {
105 if (args[i].equals("noExitOnClose")) {
106 noExitOnClose = true;
107 }
108 }
109
110 final boolean exitOnClose = !noExitOnClose;
111 javax.swing.SwingUtilities.invokeLater(new Runnable() {
112 public void run() {
113 createAndShowGUI(exitOnClose);
114 }
115 });
116 }
117
118 }