diff options
author | pjain <pjain@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-04-07 18:12:58 +0000 |
---|---|---|
committer | pjain <pjain@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1997-04-07 18:12:58 +0000 |
commit | 193064fe76af85d8963bba3f1e91b873d955c6d8 (patch) | |
tree | ba4b0a7a26bf46ea298496a434496695db55bdc1 /java/gjt/MessageDialog.java | |
parent | 40e0a419db16f5c42865615794fdcf5d76329726 (diff) | |
download | ATCD-193064fe76af85d8963bba3f1e91b873d955c6d8.tar.gz |
Added gjt to CVS
Diffstat (limited to 'java/gjt/MessageDialog.java')
-rw-r--r-- | java/gjt/MessageDialog.java | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/java/gjt/MessageDialog.java b/java/gjt/MessageDialog.java new file mode 100644 index 00000000000..4b00bc7033f --- /dev/null +++ b/java/gjt/MessageDialog.java @@ -0,0 +1,77 @@ +package gjt; + +import java.awt.*; + +/** + * A dialog that displays a message and comes equipped with an + * Ok button with which the dialog is dismissed.<p> + * + * Note that there is only one MessageDialog, that gets + * reused. Clients must call getMessageDialog() in order to + * access the one and only MessageDialog.<p> + * + * <em>Note: The 1.0.2 version of the AWT seems to have + * introduced a bug that causes pack() to work incorrectly + * under Win95.</em> + * + * @version 1.0, Apr 1 1996 + * @author David Geary + * @see GJTDialog + * @see gjt.test.MessageDialogTest + * @see gjt.test.DialogTest + */ +public class MessageDialog extends GJTDialog { + static private MessageDialog _theMessageDialog; + + private Button okButton; + private String message; + private ButtonPanel buttonPanel = new ButtonPanel(); + + static public MessageDialog getMessageDialog(Frame frame, + DialogClient client, + String title, + String message) { + if(_theMessageDialog == null) + _theMessageDialog = new MessageDialog(frame, + client, + title, + message); + else { + _theMessageDialog.setClient (client); + _theMessageDialog.setTitle (title); + _theMessageDialog.setMessage(message); + } + return _theMessageDialog; + } + private MessageDialog(Frame frame, DialogClient client, + String title, String message) { + super(frame, title, client, true); + okButton = buttonPanel.add("Ok"); + + setLayout(new BorderLayout()); + add("Center", new MessagePanel(message)); + add("South", buttonPanel); + pack(); + } + public void show() { + okButton.requestFocus(); + super.show(); + } + public boolean action(Event event, Object what) { + hide(); + client.dialogDismissed(this); + return true; + } + private void setMessage(String message) { + this.message = message; + } +} + +class MessagePanel extends Panel { + public MessagePanel(String message) { + add("Center", new Label(message, Label.CENTER)); + } + public Insets insets() { + return new Insets(10,10,10,10); + } +} |