/* Research Project: Graphical Database for Category Theory J. Bradbury, Dr. R. Rosebrugh, I. Rutherford Mount Allison University 2001 File: InputDialog.java (author: Larry Barowski, Auburn University, 5/29/96) Description: A dialog class for user input of a single string. */ //import statements import java.awt.Dialog; import java.awt.Button; import java.awt.Frame; import java.awt.Event; import java.awt.TextField; import java.awt.Component; public class InputDialog extends Dialog { private int event_id; private TextField text; private Component postTo_; /** *@param event_id_in this event will be posted if the user chooses "OK". **/ public InputDialog(Frame frame, String title, Component post_to, int event_id_in) { super(frame, "Input", true); event_id = event_id_in; postTo_ = post_to; LPanel p = new LPanel(); p.addLabel(title, 0, 0, 1.0, 1.0, 1, 0); text = p.addTextField(50, 0, 0, 1.0, 1.0, 1, 0); p.addButtonPanel("OK Cancel", 0); p.finish(); add("Center", p); pack(); show(); } public boolean action(Event event, Object object) { if(event.target instanceof Button) { if("OK".equals(object)) { hide(); dispose(); postTo_.postEvent(new Event((Object)this, event_id, (Object)text.getText())); return true; } else if("Cancel".equals(object)) { hide(); dispose(); return true; } } return super.action(event, object); } }