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.FlowLayout;
- import java.awt.Frame;
- import java.awt.Label;
- import java.awt.Panel;
- import java.awt.Window;
-
- class SJModalMessageBox extends Dialog {
- private Button aOkBut;
- private Button aCancelBut;
- private boolean bBlock;
- private boolean bResult;
-
- public SJModalMessageBox(Frame var1, String var2, String var3) {
- this(var1, var2, var3, false);
- }
-
- public SJModalMessageBox(Frame var1, String var2, String var3, boolean var4) {
- super(var1, var2, true);
- this.bResult = false;
- ((Container)this).setLayout(new BorderLayout());
- ((Container)this).add("Center", new Label(var3));
- Panel var5 = new Panel();
- ((Container)var5).setLayout(new FlowLayout(1));
- ((Container)var5).add(this.aOkBut = new Button("OK"));
- if (var4) {
- ((Container)var5).add(this.aCancelBut = new Button("CANCEL"));
- }
-
- ((Container)this).add("South", var5);
- ((Window)this).pack();
- }
-
- public boolean action(Event var1, Object var2) {
- if (var1.target == this.aOkBut) {
- this.bResult = true;
- this.UnBlock();
- ((Component)this).hide();
- ((Window)this).dispose();
- return true;
- } else if (var1.target == this.aCancelBut) {
- this.bResult = false;
- this.UnBlock();
- ((Component)this).hide();
- ((Window)this).dispose();
- return true;
- } else {
- return false;
- }
- }
-
- private synchronized void UnBlock() {
- this.bBlock = false;
- this.notifyAll();
- }
-
- public synchronized boolean ShowIt() {
- ((Component)this).resize(400, 150);
- ((Window)this).show();
- this.bBlock = true;
-
- try {
- while(this.bBlock) {
- this.wait();
- }
- } catch (InterruptedException var1) {
- }
-
- return this.bResult;
- }
- }
-