KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jimm > datavision > gui > StatusDialog


1 package jimm.datavision.gui;
2 import jimm.util.I18N;
3 import java.awt.Frame JavaDoc;
4 import java.awt.Dimension JavaDoc;
5 import java.awt.BorderLayout JavaDoc;
6 import java.awt.event.ActionListener JavaDoc;
7 import java.awt.event.ActionEvent JavaDoc;
8 import javax.swing.*;
9
10 /**
11  * An extremely simple status display dialog.
12  *
13  * @author Jim Menard, <a HREF="mailto:jimm@io.com">jimm@io.com</a>
14  */

15 public class StatusDialog extends JDialog {
16
17 protected JLabel label;
18 protected boolean cancelled;
19
20 /**
21  * Constructor.
22  *
23  * @param parent parent frame; may be <code>null</code>
24  * @param title title string; may be <code>null</code>
25  * @param initialString initial string to display; may be <code>null</code>
26  */

27 public StatusDialog(Frame JavaDoc parent, String JavaDoc title, boolean displayCancelButton,
28             String JavaDoc initialString)
29 {
30     super(parent, title, false);
31
32     JPanel panel = new JPanel();
33     panel.setLayout(new BorderLayout JavaDoc());
34     panel.add(label = new JLabel(), BorderLayout.CENTER);
35     label.setHorizontalAlignment(SwingConstants.CENTER);
36
37     if (displayCancelButton) {
38     JPanel buttonPanel = new JPanel();
39     JButton button = new JButton(I18N.get("GUI.cancel"));
40     buttonPanel.add(button);
41     button.addActionListener(new ActionListener JavaDoc() {
42         public void actionPerformed(ActionEvent JavaDoc e) {
43         cancelled = true;
44         update(I18N.get("StatusDialog.cancelling"));
45         }
46         });
47     panel.add(buttonPanel, BorderLayout.SOUTH);
48     }
49
50     if (initialString != null)
51     label.setText(initialString);
52
53     panel.setPreferredSize(new Dimension JavaDoc(300, 100));
54     getContentPane().add(panel);
55
56     pack();
57     setVisible(true);
58 }
59
60 public boolean isCancelled() { return cancelled; }
61
62 public void update(String JavaDoc message) {
63     label.setText(message);
64 }
65
66 }
67
Popular Tags