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 / MenuItem.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  5.8 KB  |  281 lines

  1. package java.awt;
  2.  
  3. import java.awt.event.ActionEvent;
  4. import java.awt.event.ActionListener;
  5. import java.awt.event.InputEvent;
  6. import java.awt.event.KeyEvent;
  7. import java.awt.peer.MenuItemPeer;
  8. import java.io.IOException;
  9. import java.io.ObjectInputStream;
  10. import java.io.ObjectOutputStream;
  11. import java.util.EventListener;
  12. import javax.accessibility.Accessible;
  13. import javax.accessibility.AccessibleContext;
  14.  
  15. public class MenuItem extends MenuComponent implements Accessible {
  16.    boolean enabled;
  17.    String label;
  18.    String actionCommand;
  19.    long eventMask;
  20.    transient ActionListener actionListener;
  21.    private MenuShortcut shortcut;
  22.    private static final String base = "menuitem";
  23.    private static int nameCounter;
  24.    private static final long serialVersionUID = -21757335363267194L;
  25.    private int menuItemSerializedDataVersion;
  26.    // $FF: synthetic field
  27.    static Class class$java$awt$event$ActionListener;
  28.  
  29.    public MenuItem() {
  30.       this("", (MenuShortcut)null);
  31.    }
  32.  
  33.    public MenuItem(String var1) {
  34.       this(var1, (MenuShortcut)null);
  35.    }
  36.  
  37.    public MenuItem(String var1, MenuShortcut var2) {
  38.       this.enabled = true;
  39.       this.shortcut = null;
  40.       this.menuItemSerializedDataVersion = 1;
  41.       this.label = var1;
  42.       this.shortcut = var2;
  43.    }
  44.  
  45.    String constructComponentName() {
  46.       Class var1 = this.getClass();
  47.       synchronized(var1) {
  48.          String var2 = "menuitem" + nameCounter++;
  49.          return var2;
  50.       }
  51.    }
  52.  
  53.    public void addNotify() {
  54.       Object var1 = ((MenuComponent)this).getTreeLock();
  55.       synchronized(var1) {
  56.          if (super.peer == null) {
  57.             super.peer = Toolkit.getDefaultToolkit().createMenuItem(this);
  58.          }
  59.  
  60.       }
  61.    }
  62.  
  63.    public String getLabel() {
  64.       return this.label;
  65.    }
  66.  
  67.    public synchronized void setLabel(String var1) {
  68.       this.label = var1;
  69.       MenuItemPeer var2 = (MenuItemPeer)super.peer;
  70.       if (var2 != null) {
  71.          var2.setLabel(var1);
  72.       }
  73.  
  74.    }
  75.  
  76.    public boolean isEnabled() {
  77.       return this.enabled;
  78.    }
  79.  
  80.    public synchronized void setEnabled(boolean var1) {
  81.       this.enable(var1);
  82.    }
  83.  
  84.    public synchronized void enable() {
  85.       this.enabled = true;
  86.       MenuItemPeer var1 = (MenuItemPeer)super.peer;
  87.       if (var1 != null) {
  88.          var1.enable();
  89.       }
  90.  
  91.    }
  92.  
  93.    public void enable(boolean var1) {
  94.       if (var1) {
  95.          this.enable();
  96.       } else {
  97.          this.disable();
  98.       }
  99.  
  100.    }
  101.  
  102.    public synchronized void disable() {
  103.       this.enabled = false;
  104.       MenuItemPeer var1 = (MenuItemPeer)super.peer;
  105.       if (var1 != null) {
  106.          var1.disable();
  107.       }
  108.  
  109.    }
  110.  
  111.    public MenuShortcut getShortcut() {
  112.       return this.shortcut;
  113.    }
  114.  
  115.    public void setShortcut(MenuShortcut var1) {
  116.       this.shortcut = var1;
  117.       MenuItemPeer var2 = (MenuItemPeer)super.peer;
  118.       if (var2 != null) {
  119.          var2.setLabel(this.label);
  120.       }
  121.  
  122.    }
  123.  
  124.    public void deleteShortcut() {
  125.       this.shortcut = null;
  126.       MenuItemPeer var1 = (MenuItemPeer)super.peer;
  127.       if (var1 != null) {
  128.          var1.setLabel(this.label);
  129.       }
  130.  
  131.    }
  132.  
  133.    void deleteShortcut(MenuShortcut var1) {
  134.       if (var1.equals(this.shortcut)) {
  135.          this.shortcut = null;
  136.          MenuItemPeer var2 = (MenuItemPeer)super.peer;
  137.          if (var2 != null) {
  138.             var2.setLabel(this.label);
  139.          }
  140.       }
  141.  
  142.    }
  143.  
  144.    void doMenuEvent() {
  145.       Toolkit.getEventQueue().postEvent(new ActionEvent(this, 1001, this.getActionCommand()));
  146.    }
  147.  
  148.    boolean handleShortcut(KeyEvent var1) {
  149.       MenuShortcut var2 = new MenuShortcut(var1.getKeyCode(), (((InputEvent)var1).getModifiers() & 1) > 0);
  150.       if (var2.equals(this.shortcut) && this.enabled) {
  151.          if (((AWTEvent)var1).getID() == 401) {
  152.             this.doMenuEvent();
  153.          }
  154.  
  155.          return true;
  156.       } else {
  157.          return false;
  158.       }
  159.    }
  160.  
  161.    MenuItem getShortcutMenuItem(MenuShortcut var1) {
  162.       return var1.equals(this.shortcut) ? this : null;
  163.    }
  164.  
  165.    protected final void enableEvents(long var1) {
  166.       this.eventMask |= var1;
  167.       super.newEventsOnly = true;
  168.    }
  169.  
  170.    protected final void disableEvents(long var1) {
  171.       this.eventMask &= ~var1;
  172.    }
  173.  
  174.    public void setActionCommand(String var1) {
  175.       this.actionCommand = var1;
  176.    }
  177.  
  178.    public String getActionCommand() {
  179.       return this.actionCommand == null ? this.label : this.actionCommand;
  180.    }
  181.  
  182.    public synchronized void addActionListener(ActionListener var1) {
  183.       if (var1 != null) {
  184.          this.actionListener = AWTEventMulticaster.add(this.actionListener, var1);
  185.          super.newEventsOnly = true;
  186.       }
  187.    }
  188.  
  189.    public synchronized void removeActionListener(ActionListener var1) {
  190.       if (var1 != null) {
  191.          this.actionListener = AWTEventMulticaster.remove(this.actionListener, var1);
  192.       }
  193.    }
  194.  
  195.    public EventListener[] getListeners(Class var1) {
  196.       ActionListener var2 = null;
  197.       if (var1 == (class$java$awt$event$ActionListener == null ? (class$java$awt$event$ActionListener = class$("java.awt.event.ActionListener")) : class$java$awt$event$ActionListener)) {
  198.          var2 = this.actionListener;
  199.       }
  200.  
  201.       return AWTEventMulticaster.getListeners(var2, var1);
  202.    }
  203.  
  204.    protected void processEvent(AWTEvent var1) {
  205.       if (var1 instanceof ActionEvent) {
  206.          this.processActionEvent((ActionEvent)var1);
  207.       }
  208.  
  209.    }
  210.  
  211.    boolean eventEnabled(AWTEvent var1) {
  212.       if (var1.id == 1001) {
  213.          return (this.eventMask & 128L) != 0L || this.actionListener != null;
  214.       } else {
  215.          return super.eventEnabled(var1);
  216.       }
  217.    }
  218.  
  219.    protected void processActionEvent(ActionEvent var1) {
  220.       if (this.actionListener != null) {
  221.          this.actionListener.actionPerformed(var1);
  222.       }
  223.  
  224.    }
  225.  
  226.    public String paramString() {
  227.       String var1 = ",label=" + this.label;
  228.       if (this.shortcut != null) {
  229.          var1 = var1 + ",shortcut=" + this.shortcut;
  230.       }
  231.  
  232.       return super.paramString() + var1;
  233.    }
  234.  
  235.    private void writeObject(ObjectOutputStream var1) throws IOException {
  236.       var1.defaultWriteObject();
  237.       AWTEventMulticaster.save(var1, "actionL", this.actionListener);
  238.       var1.writeObject((Object)null);
  239.    }
  240.  
  241.    private void readObject(ObjectInputStream var1) throws ClassNotFoundException, IOException {
  242.       var1.defaultReadObject();
  243.  
  244.       Object var2;
  245.       while(null != (var2 = var1.readObject())) {
  246.          String var3 = ((String)var2).intern();
  247.          if ("actionL" == var3) {
  248.             this.addActionListener((ActionListener)var1.readObject());
  249.          } else {
  250.             var1.readObject();
  251.          }
  252.       }
  253.  
  254.    }
  255.  
  256.    private static native void initIDs();
  257.  
  258.    public AccessibleContext getAccessibleContext() {
  259.       if (super.accessibleContext == null) {
  260.          super.accessibleContext = new AccessibleAWTMenuItem(this);
  261.       }
  262.  
  263.       return super.accessibleContext;
  264.    }
  265.  
  266.    // $FF: synthetic method
  267.    static Class class$(String var0) {
  268.       try {
  269.          return Class.forName(var0);
  270.       } catch (ClassNotFoundException var2) {
  271.          throw new NoClassDefFoundError(((Throwable)var2).getMessage());
  272.       }
  273.    }
  274.  
  275.    static {
  276.       Toolkit.loadLibraries();
  277.       initIDs();
  278.       nameCounter = 0;
  279.    }
  280. }
  281.