home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 June / CHIPHEFT062001.ISO / browser / nc32lyc / comm.z / java40.jar / java / awt / CheckboxMenuItem.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-15  |  3.5 KB  |  121 lines

  1. package java.awt;
  2.  
  3. import java.awt.event.ItemEvent;
  4. import java.awt.event.ItemListener;
  5. import java.awt.peer.CheckboxMenuItemPeer;
  6. import java.io.IOException;
  7. import java.io.ObjectInputStream;
  8. import java.io.ObjectOutputStream;
  9.  
  10. public class CheckboxMenuItem extends MenuItem implements ItemSelectable {
  11.    boolean state;
  12.    transient ItemListener itemListener;
  13.    private static final String base = "chkmenuitem";
  14.    private static int nameCounter;
  15.    private static final long serialVersionUID = 6190621106981774043L;
  16.    private int checkboxMenuItemSerializedDataVersion;
  17.  
  18.    public CheckboxMenuItem() {
  19.       this("", false);
  20.    }
  21.  
  22.    public CheckboxMenuItem(String var1) {
  23.       this(var1, false);
  24.    }
  25.  
  26.    public CheckboxMenuItem(String var1, boolean var2) {
  27.       super(var1);
  28.       this.state = false;
  29.       this.checkboxMenuItemSerializedDataVersion = 1;
  30.       super.name = "chkmenuitem" + nameCounter++;
  31.       this.state = var2;
  32.    }
  33.  
  34.    public void addNotify() {
  35.       if (super.peer == null) {
  36.          super.peer = Toolkit.getDefaultToolkit().createCheckboxMenuItem(this);
  37.       }
  38.  
  39.       super.addNotify();
  40.    }
  41.  
  42.    public boolean getState() {
  43.       return this.state;
  44.    }
  45.  
  46.    public synchronized void setState(boolean var1) {
  47.       this.state = var1;
  48.       CheckboxMenuItemPeer var2 = (CheckboxMenuItemPeer)super.peer;
  49.       if (var2 != null) {
  50.          var2.setState(var1);
  51.       }
  52.  
  53.    }
  54.  
  55.    public synchronized Object[] getSelectedObjects() {
  56.       if (this.state) {
  57.          Object[] var1 = new Object[]{super.label};
  58.          return var1;
  59.       } else {
  60.          return null;
  61.       }
  62.    }
  63.  
  64.    public synchronized void addItemListener(ItemListener var1) {
  65.       this.itemListener = AWTEventMulticaster.add(this.itemListener, var1);
  66.       super.newEventsOnly = true;
  67.    }
  68.  
  69.    public synchronized void removeItemListener(ItemListener var1) {
  70.       this.itemListener = AWTEventMulticaster.remove(this.itemListener, var1);
  71.    }
  72.  
  73.    boolean eventEnabled(AWTEvent var1) {
  74.       if (var1.id == 701) {
  75.          return (super.eventMask & 512L) != 0L || this.itemListener != null;
  76.       } else {
  77.          return super.eventEnabled(var1);
  78.       }
  79.    }
  80.  
  81.    protected void processEvent(AWTEvent var1) {
  82.       if (var1 instanceof ItemEvent) {
  83.          this.processItemEvent((ItemEvent)var1);
  84.       } else {
  85.          super.processEvent(var1);
  86.       }
  87.    }
  88.  
  89.    protected void processItemEvent(ItemEvent var1) {
  90.       if (this.itemListener != null) {
  91.          this.itemListener.itemStateChanged(var1);
  92.       }
  93.  
  94.    }
  95.  
  96.    public String paramString() {
  97.       return super.paramString() + ",state=" + this.state;
  98.    }
  99.  
  100.    private void writeObject(ObjectOutputStream var1) throws IOException {
  101.       var1.defaultWriteObject();
  102.       AWTEventMulticaster.save(var1, "itemL", this.itemListener);
  103.       var1.writeObject((Object)null);
  104.    }
  105.  
  106.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
  107.       var1.defaultReadObject();
  108.  
  109.       Object var2;
  110.       while((var2 = var1.readObject()) != null) {
  111.          String var3 = ((String)var2).intern();
  112.          if (var3 == "itemL") {
  113.             this.addItemListener((ItemListener)var1.readObject());
  114.          } else {
  115.             var1.readObject();
  116.          }
  117.       }
  118.  
  119.    }
  120. }
  121.