View Javadoc

1   package org.opensync.engine.admin.gui;
2   
3   import java.awt.AWTEvent;
4   import java.awt.BorderLayout;
5   import java.awt.FlowLayout;
6   import java.awt.Frame;
7   import java.awt.GridLayout;
8   import java.awt.event.ActionEvent;
9   import java.awt.event.ActionListener;
10  import java.awt.event.WindowEvent;
11  
12  import javax.swing.BorderFactory;
13  import javax.swing.ImageIcon;
14  import javax.swing.JButton;
15  import javax.swing.JDialog;
16  import javax.swing.JLabel;
17  import javax.swing.JPanel;
18  
19  import org.opensync.engine.util.I18n;
20  
21  /***
22   *
23   * @version	1.0
24   * @author	SOFTMED
25   *
26   */
27  
28  public class AboutBox extends JDialog implements ActionListener {
29  
30    JPanel panel = new JPanel();
31    JPanel pnlInfo = new JPanel();
32    JPanel pnlButtons = new JPanel();
33    JPanel insetsPanel2 = new JPanel();
34    JPanel insetsPanel3 = new JPanel();
35    JButton btOk = new JButton();
36    JLabel imageLabel = new JLabel();
37    JLabel lblName = new JLabel();
38    JLabel lblVersion = new JLabel();
39    JLabel lblCopyright = new JLabel();
40    JLabel lblCorporateName = new JLabel();
41    BorderLayout blPrincipal = new BorderLayout();
42    BorderLayout borderLayout2 = new BorderLayout();
43    FlowLayout layout = new FlowLayout();
44    GridLayout gridLayout = new GridLayout();
45    String product = I18n.getInstance().get("gui.product");
46    String version = I18n.getInstance().get("gui.version");
47    String copyright = I18n.getInstance().get("gui.copyright");
48    String comments = I18n.getInstance().get("gui.comments");
49  
50    /***
51     * @param	parent
52     * @exception	Exception
53     */
54    public AboutBox(Frame parent)throws Exception {
55      super(parent);
56      enableEvents(AWTEvent.WINDOW_EVENT_MASK);
57      jbInit();
58      pack();
59    }
60    /***Component initialization*/
61    private void jbInit() throws Exception  {
62      imageLabel.setIcon(new ImageIcon(AboutBox.class.getResource("/images/about.gif")));
63      this.setTitle(I18n.getInstance().get("gui.about.title"));
64      setResizable(false);
65      panel.setLayout(blPrincipal);
66      pnlInfo.setLayout(borderLayout2);
67      pnlButtons.setLayout(layout);
68      insetsPanel2.setLayout(layout);
69      insetsPanel2.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));
70      gridLayout.setRows(4);
71      gridLayout.setColumns(1);
72      lblName.setText(product);
73      lblVersion.setText(version);
74      lblCopyright.setText(copyright);
75      lblCorporateName.setText(comments);
76      insetsPanel3.setLayout(gridLayout);
77      insetsPanel3.setBorder(BorderFactory.createEmptyBorder(10, 60, 10, 10));
78      btOk.setText(I18n.getInstance().get("common.ok"));
79      btOk.addActionListener(this);
80      insetsPanel2.add(imageLabel, null);
81      pnlInfo.add(insetsPanel2, BorderLayout.WEST);
82      this.getContentPane().add(panel, null);
83      insetsPanel3.add(lblName, null);
84      insetsPanel3.add(lblVersion, null);
85      insetsPanel3.add(lblCopyright, null);
86      insetsPanel3.add(lblCorporateName, null);
87      pnlInfo.add(insetsPanel3, BorderLayout.CENTER);
88      pnlButtons.add(btOk, null);
89      panel.add(pnlButtons, BorderLayout.SOUTH);
90      panel.add(pnlInfo, BorderLayout.NORTH);
91    }
92    /***
93     * Overridden so we can exit when window is closed
94     *
95     * @param	e
96     */
97    protected void processWindowEvent(WindowEvent e) {
98      if (e.getID() == WindowEvent.WINDOW_CLOSING) {
99        cancel();
100     }
101     super.processWindowEvent(e);
102   }
103   /***Close the dialog*/
104   void cancel() {
105     dispose();
106   }
107   /***
108    * Close the dialog on a button event
109    *
110    * @param	e
111    */
112   public void actionPerformed(ActionEvent e) {
113     if (e.getSource() == btOk) {
114       cancel();
115     }
116   }
117 }