home *** CD-ROM | disk | FTP | other *** search
- import java.awt.BorderLayout;
- import java.awt.Button;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dialog;
- import java.awt.Event;
- import java.awt.Frame;
- import java.awt.Label;
- import java.awt.Panel;
- import java.awt.TextField;
- import java.awt.Window;
-
- class SJModalPromptBox extends Dialog {
- private Button aOkBut;
- private Button aCancelBut;
- private TextField aEntryField;
- private String aReturnStrg;
- private boolean bBlock;
-
- public SJModalPromptBox(Frame var1, String var2, String var3, String var4) {
- super(var1, var2, true);
- this.aReturnStrg = var4;
- ((Container)this).setLayout(new BorderLayout());
- Panel var5 = new Panel();
- ((Container)var5).setLayout(new BorderLayout());
- ((Container)var5).add("North", new Label(var3));
- ((Container)var5).add("South", this.aEntryField = new TextField(var4));
- ((Container)this).add("Center", var5);
- Panel var6 = new Panel();
- ((Container)var6).setLayout(new BorderLayout());
- ((Container)var6).add("North", this.aOkBut = new Button("Ok"));
- ((Container)var6).add("South", this.aCancelBut = new Button("Cancel"));
- ((Container)this).add("East", var6);
- ((Window)this).pack();
- }
-
- public boolean action(Event var1, Object var2) {
- if (var1.target != this.aOkBut && var1.target != this.aCancelBut) {
- return false;
- } else {
- if (var1.target == this.aOkBut) {
- this.aReturnStrg = this.aEntryField.getText();
- } else {
- this.aReturnStrg = null;
- }
-
- this.UnBlock();
- ((Component)this).hide();
- ((Window)this).dispose();
- return true;
- }
- }
-
- private synchronized void UnBlock() {
- this.bBlock = false;
- this.notifyAll();
- }
-
- public synchronized String ShowIt() {
- ((Component)this).resize(400, 100);
- ((Window)this).show();
- this.bBlock = true;
-
- try {
- while(this.bBlock) {
- this.wait();
- }
- } catch (InterruptedException var1) {
- }
-
- return this.aReturnStrg;
- }
- }
-