52184f3c98c1eaaaaaedc42579a0fb365667fd20
[debian/openrocket] / src / net / sf / openrocket / gui / main / AboutDialog.java
1 package net.sf.openrocket.gui.main;
2
3 import java.awt.event.ActionEvent;
4 import java.awt.event.ActionListener;
5
6 import javax.swing.JButton;
7 import javax.swing.JDialog;
8 import javax.swing.JFrame;
9 import javax.swing.JPanel;
10
11 import net.miginfocom.swing.MigLayout;
12 import net.sf.openrocket.gui.components.ResizeLabel;
13 import net.sf.openrocket.gui.components.URLLabel;
14 import net.sf.openrocket.util.GUIUtil;
15 import net.sf.openrocket.util.Prefs;
16
17 public class AboutDialog extends JDialog {
18         
19         public static final String OPENROCKET_URL = "http://openrocket.sourceforge.net/";
20         
21
22         public AboutDialog(JFrame parent) {
23                 super(parent, true);
24                 
25                 final String version = Prefs.getVersion();
26                 
27                 JPanel panel = new JPanel(new MigLayout("fill"));
28                 
29                 panel.add(new ResizeLabel("OpenRocket", 20), "ax 50%, wrap para");
30                 panel.add(new ResizeLabel("Version " + version, 3), "ax 50%, wrap 30lp");
31                 
32                 panel.add(new ResizeLabel("Copyright \u00A9 2007-2009 Sampo Niskanen"), "ax 50%, wrap para");
33                 
34                 panel.add(new URLLabel(OPENROCKET_URL), "ax 50%, wrap para");
35                 
36
37                 JButton close = new JButton("Close");
38                 close.addActionListener(new ActionListener() {
39                         @Override
40                         public void actionPerformed(ActionEvent e) {
41                                 AboutDialog.this.dispose();
42                         }
43                 });
44                 panel.add(close, "right");
45                 
46                 this.add(panel);
47                 this.setTitle("OpenRocket " + version);
48                 this.pack();
49                 this.setResizable(false);
50                 this.setLocationRelativeTo(null);
51                 GUIUtil.setDefaultButton(close);
52                 GUIUtil.installEscapeCloseOperation(this);
53         }
54         
55         
56 }