home *** CD-ROM | disk | FTP | other *** search
Java Source | 1997-07-13 | 3.0 KB | 107 lines |
- /*
- * Copyright (c) 1995-1997 Sun Microsystems, Inc. All Rights Reserved.
- *
- * Permission to use, copy, modify, and distribute this software
- * and its documentation for NON-COMMERCIAL purposes and without
- * fee is hereby granted provided that this copyright notice
- * appears in all copies. Please refer to the file "copyright.html"
- * for further important copyright and licensing information.
- *
- * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
- * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
- * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
- * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
- * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
- * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
- */
- import java.awt.*;
-
- public class DialogWindow extends Frame {
- private boolean inAnApplet = true;
- private SimpleDialog dialog;
- private TextArea textArea;
-
- public DialogWindow() {
- textArea = new TextArea(5, 40);
- textArea.setEditable(false);
- add("Center", textArea);
- Button button = new Button("Click to bring up dialog");
- Panel panel = new Panel();
- panel.add(button);
- add("South", panel);
- }
-
- public boolean handleEvent(Event event) {
- if (event.id == Event.WINDOW_DESTROY) {
- if (inAnApplet) {
- dispose();
- } else {
- System.exit(0);
- }
- }
- return super.handleEvent(event);
- }
-
- public boolean action(Event event, Object arg) {
- if (dialog == null) {
- dialog = new SimpleDialog(this, "A Simple Dialog");
- }
- dialog.show();
- return true;
- }
-
- public void setText(String text) {
- textArea.appendText(text + "\n");
- }
-
- public static void main(String args[]) {
- DialogWindow window = new DialogWindow();
- window.inAnApplet = false;
-
- window.setTitle("DialogWindow Application");
- window.pack();
- window.show();
- }
- }
-
- class SimpleDialog extends Dialog {
- TextField field;
- DialogWindow parent;
- Button setButton;
-
- SimpleDialog(Frame dw, String title) {
- super(dw, title, false);
- parent = (DialogWindow)dw;
-
- //Create middle section.
- Panel p1 = new Panel();
- Label label = new Label("Enter random text here:");
- p1.add(label);
- field = new TextField(40);
- p1.add(field);
- add("Center", p1);
-
- //Create bottom row.
- Panel p2 = new Panel();
- p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
- Button b = new Button("Cancel");
- setButton = new Button("Set");
- p2.add(b);
- p2.add(setButton);
- add("South", p2);
-
- //Initialize this dialog to its preferred size.
- pack();
- }
-
- public boolean action(Event event, Object arg) {
- if ( (event.target == setButton)
- | (event.target == field)) {
- parent.setText(field.getText());
- }
- field.selectAll();
- hide();
- return true;
- }
- }
-