home *** CD-ROM | disk | FTP | other *** search
/ Australian PC Authority 1999 May / may1999.iso / May / JBUILDER / JSAMPLES.Z / transitional.jar / sunw / demo / transitional / OurButton.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-08  |  1.5 KB  |  58 lines

  1. package sunw.demo.transitional;
  2.  
  3. import java.awt.Button;
  4. import java.awt.Event;
  5. import java.util.Vector;
  6. import sunw.io.Serializable;
  7.  
  8. public class OurButton extends Button implements Serializable {
  9.    private boolean dbg;
  10.    private Vector listeners;
  11.  
  12.    public OurButton() {
  13.       this("press");
  14.    }
  15.  
  16.    public OurButton(String var1) {
  17.       super(var1);
  18.       this.listeners = new Vector();
  19.    }
  20.  
  21.    public synchronized void addButtonPushListener(ButtonPushListener var1) {
  22.       this.listeners.addElement(var1);
  23.    }
  24.  
  25.    public synchronized void removeButtonPushListener(ButtonPushListener var1) {
  26.       this.listeners.removeElement(var1);
  27.    }
  28.  
  29.    public boolean handleEvent(Event var1) {
  30.       if (var1.id == 1001) {
  31.          ButtonPushEvent var3 = new ButtonPushEvent(this);
  32.          synchronized(this){}
  33.  
  34.          Vector var2;
  35.          try {
  36.             var2 = (Vector)this.listeners.clone();
  37.          } catch (Throwable var7) {
  38.             throw var7;
  39.          }
  40.  
  41.          for(int var4 = 0; var4 < var2.size(); ++var4) {
  42.             ButtonPushListener var5 = (ButtonPushListener)var2.elementAt(var4);
  43.             var5.push(var3);
  44.          }
  45.       }
  46.  
  47.       return super.handleEvent(var1);
  48.    }
  49.  
  50.    public boolean isDebug() {
  51.       return this.dbg;
  52.    }
  53.  
  54.    public void setDebug(boolean var1) {
  55.       this.dbg = var1;
  56.    }
  57. }
  58.