home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / CheckboxMenuItem.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  4.6 KB  |  180 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. import java.util.EventListener;
  10. import javax.accessibility.Accessible;
  11. import javax.accessibility.AccessibleContext;
  12.  
  13. public class CheckboxMenuItem extends MenuItem implements ItemSelectable, Accessible {
  14.    boolean state;
  15.    transient ItemListener itemListener;
  16.    private static final String base = "chkmenuitem";
  17.    private static int nameCounter;
  18.    private static final long serialVersionUID = 6190621106981774043L;
  19.    private int checkboxMenuItemSerializedDataVersion;
  20.    // $FF: synthetic field
  21.    static Class class$java$awt$event$ItemListener;
  22.  
  23.    public CheckboxMenuItem() {
  24.       this("", false);
  25.    }
  26.  
  27.    public CheckboxMenuItem(String var1) {
  28.       this(var1, false);
  29.    }
  30.  
  31.    public CheckboxMenuItem(String var1, boolean var2) {
  32.       super(var1);
  33.       this.state = false;
  34.       this.checkboxMenuItemSerializedDataVersion = 1;
  35.       this.state = var2;
  36.    }
  37.  
  38.    String constructComponentName() {
  39.       Class var1 = this.getClass();
  40.       synchronized(var1) {
  41.          String var2 = "chkmenuitem" + nameCounter++;
  42.          return var2;
  43.       }
  44.    }
  45.  
  46.    public void addNotify() {
  47.       Object var1 = ((MenuComponent)this).getTreeLock();
  48.       synchronized(var1) {
  49.          if (super.peer == null) {
  50.             super.peer = Toolkit.getDefaultToolkit().createCheckboxMenuItem(this);
  51.          }
  52.  
  53.          super.addNotify();
  54.       }
  55.    }
  56.  
  57.    public boolean getState() {
  58.       return this.state;
  59.    }
  60.  
  61.    public synchronized void setState(boolean var1) {
  62.       this.state = var1;
  63.       CheckboxMenuItemPeer var2 = (CheckboxMenuItemPeer)super.peer;
  64.       if (var2 != null) {
  65.          var2.setState(var1);
  66.       }
  67.  
  68.    }
  69.  
  70.    public synchronized Object[] getSelectedObjects() {
  71.       if (this.state) {
  72.          Object[] var1 = new Object[]{super.label};
  73.          return var1;
  74.       } else {
  75.          return null;
  76.       }
  77.    }
  78.  
  79.    public synchronized void addItemListener(ItemListener var1) {
  80.       if (var1 != null) {
  81.          this.itemListener = AWTEventMulticaster.add(this.itemListener, var1);
  82.          super.newEventsOnly = true;
  83.       }
  84.    }
  85.  
  86.    public synchronized void removeItemListener(ItemListener var1) {
  87.       if (var1 != null) {
  88.          this.itemListener = AWTEventMulticaster.remove(this.itemListener, var1);
  89.       }
  90.    }
  91.  
  92.    public EventListener[] getListeners(Class var1) {
  93.       Object var2 = null;
  94.       if (var1 == (class$java$awt$event$ItemListener == null ? (class$java$awt$event$ItemListener = class$("java.awt.event.ItemListener")) : class$java$awt$event$ItemListener)) {
  95.          ItemListener var3 = this.itemListener;
  96.          return AWTEventMulticaster.getListeners(var3, var1);
  97.       } else {
  98.          return super.getListeners(var1);
  99.       }
  100.    }
  101.  
  102.    boolean eventEnabled(AWTEvent var1) {
  103.       if (var1.id == 701) {
  104.          return (super.eventMask & 512L) != 0L || this.itemListener != null;
  105.       } else {
  106.          return super.eventEnabled(var1);
  107.       }
  108.    }
  109.  
  110.    protected void processEvent(AWTEvent var1) {
  111.       if (var1 instanceof ItemEvent) {
  112.          this.processItemEvent((ItemEvent)var1);
  113.       } else {
  114.          super.processEvent(var1);
  115.       }
  116.    }
  117.  
  118.    protected void processItemEvent(ItemEvent var1) {
  119.       if (this.itemListener != null) {
  120.          this.itemListener.itemStateChanged(var1);
  121.       }
  122.  
  123.    }
  124.  
  125.    void doMenuEvent() {
  126.       this.setState(!this.state);
  127.       Toolkit.getEventQueue().postEvent(new ItemEvent(this, 701, ((MenuItem)this).getLabel(), this.state ? 1 : 2));
  128.    }
  129.  
  130.    public String paramString() {
  131.       return super.paramString() + ",state=" + this.state;
  132.    }
  133.  
  134.    private void writeObject(ObjectOutputStream var1) throws IOException {
  135.       var1.defaultWriteObject();
  136.       AWTEventMulticaster.save(var1, "itemL", this.itemListener);
  137.       var1.writeObject((Object)null);
  138.    }
  139.  
  140.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
  141.       var1.defaultReadObject();
  142.  
  143.       Object var2;
  144.       while(null != (var2 = var1.readObject())) {
  145.          String var3 = ((String)var2).intern();
  146.          if ("itemL" == var3) {
  147.             this.addItemListener((ItemListener)var1.readObject());
  148.          } else {
  149.             var1.readObject();
  150.          }
  151.       }
  152.  
  153.    }
  154.  
  155.    private static native void initIDs();
  156.  
  157.    public AccessibleContext getAccessibleContext() {
  158.       if (super.accessibleContext == null) {
  159.          super.accessibleContext = new AccessibleAWTCheckboxMenuItem(this);
  160.       }
  161.  
  162.       return super.accessibleContext;
  163.    }
  164.  
  165.    // $FF: synthetic method
  166.    static Class class$(String var0) {
  167.       try {
  168.          return Class.forName(var0);
  169.       } catch (ClassNotFoundException var2) {
  170.          throw new NoClassDefFoundError(((Throwable)var2).getMessage());
  171.       }
  172.    }
  173.  
  174.    static {
  175.       Toolkit.loadLibraries();
  176.       initIDs();
  177.       nameCounter = 0;
  178.    }
  179. }
  180.