home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 144 / DPCS0200.iso / Internet / Supanet / system / swing.jar / javax / swing / JMenuItem.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-11-05  |  8.4 KB  |  321 lines

  1. package javax.swing;
  2.  
  3. import java.awt.AWTEvent;
  4. import java.awt.Component;
  5. import java.awt.event.ComponentEvent;
  6. import java.awt.event.InputEvent;
  7. import java.awt.event.KeyEvent;
  8. import java.awt.event.MouseEvent;
  9. import java.io.IOException;
  10. import java.io.ObjectInputStream;
  11. import java.io.ObjectOutputStream;
  12. import javax.accessibility.Accessible;
  13. import javax.accessibility.AccessibleContext;
  14. import javax.accessibility.AccessibleState;
  15. import javax.swing.event.MenuDragMouseEvent;
  16. import javax.swing.event.MenuDragMouseListener;
  17. import javax.swing.event.MenuKeyEvent;
  18. import javax.swing.event.MenuKeyListener;
  19. import javax.swing.plaf.MenuItemUI;
  20.  
  21. public class JMenuItem extends AbstractButton implements Accessible, MenuElement {
  22.    private static final String uiClassID = "MenuItemUI";
  23.    private KeyStroke accelerator;
  24.    // $FF: synthetic field
  25.    static Class class$javax$swing$event$MenuDragMouseListener;
  26.    // $FF: synthetic field
  27.    static Class class$javax$swing$event$MenuKeyListener;
  28.  
  29.    public JMenuItem() {
  30.       this((String)null, (Icon)null);
  31.       ((JComponent)this).setRequestFocusEnabled(false);
  32.    }
  33.  
  34.    public JMenuItem(String var1) {
  35.       this(var1, (Icon)null);
  36.    }
  37.  
  38.    public JMenuItem(String var1, int var2) {
  39.       ((AbstractButton)this).setModel(new DefaultButtonModel());
  40.       this.init(var1, (Icon)null);
  41.       ((AbstractButton)this).setBorderPainted(false);
  42.       ((AbstractButton)this).setFocusPainted(false);
  43.       ((AbstractButton)this).setHorizontalTextPosition(2);
  44.       ((AbstractButton)this).setHorizontalAlignment(2);
  45.       ((AbstractButton)this).setMnemonic(var2);
  46.       this.updateUI();
  47.    }
  48.  
  49.    public JMenuItem(String var1, Icon var2) {
  50.       ((AbstractButton)this).setModel(new DefaultButtonModel());
  51.       this.init(var1, var2);
  52.       ((AbstractButton)this).setBorderPainted(false);
  53.       ((AbstractButton)this).setFocusPainted(false);
  54.       ((AbstractButton)this).setHorizontalTextPosition(4);
  55.       ((AbstractButton)this).setHorizontalAlignment(2);
  56.       this.updateUI();
  57.    }
  58.  
  59.    public JMenuItem(Icon var1) {
  60.       this((String)null, var1);
  61.       ((JComponent)this).setRequestFocusEnabled(false);
  62.    }
  63.  
  64.    public void addMenuDragMouseListener(MenuDragMouseListener var1) {
  65.       super.listenerList.add(class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")), var1);
  66.    }
  67.  
  68.    public void addMenuKeyListener(MenuKeyListener var1) {
  69.       super.listenerList.add(class$javax$swing$event$MenuKeyListener != null ? class$javax$swing$event$MenuKeyListener : (class$javax$swing$event$MenuKeyListener = class$("javax.swing.event.MenuKeyListener")), var1);
  70.    }
  71.  
  72.    boolean alwaysOnTop() {
  73.       return true;
  74.    }
  75.  
  76.    // $FF: synthetic method
  77.    static Class class$(String var0) {
  78.       try {
  79.          return Class.forName(var0);
  80.       } catch (ClassNotFoundException var2) {
  81.          throw new NoClassDefFoundError(((Throwable)var2).getMessage());
  82.       }
  83.    }
  84.  
  85.    protected void fireMenuDragMouseDragged(MenuDragMouseEvent var1) {
  86.       Object[] var2 = super.listenerList.getListenerList();
  87.  
  88.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  89.          if (var2[var3] == (class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")))) {
  90.             ((MenuDragMouseListener)var2[var3 + 1]).menuDragMouseDragged(var1);
  91.          }
  92.       }
  93.  
  94.    }
  95.  
  96.    protected void fireMenuDragMouseEntered(MenuDragMouseEvent var1) {
  97.       Object[] var2 = super.listenerList.getListenerList();
  98.  
  99.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  100.          if (var2[var3] == (class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")))) {
  101.             ((MenuDragMouseListener)var2[var3 + 1]).menuDragMouseEntered(var1);
  102.          }
  103.       }
  104.  
  105.    }
  106.  
  107.    protected void fireMenuDragMouseExited(MenuDragMouseEvent var1) {
  108.       Object[] var2 = super.listenerList.getListenerList();
  109.  
  110.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  111.          if (var2[var3] == (class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")))) {
  112.             ((MenuDragMouseListener)var2[var3 + 1]).menuDragMouseExited(var1);
  113.          }
  114.       }
  115.  
  116.    }
  117.  
  118.    protected void fireMenuDragMouseReleased(MenuDragMouseEvent var1) {
  119.       Object[] var2 = super.listenerList.getListenerList();
  120.  
  121.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  122.          if (var2[var3] == (class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")))) {
  123.             ((MenuDragMouseListener)var2[var3 + 1]).menuDragMouseReleased(var1);
  124.          }
  125.       }
  126.  
  127.    }
  128.  
  129.    protected void fireMenuKeyPressed(MenuKeyEvent var1) {
  130.       Object[] var2 = super.listenerList.getListenerList();
  131.  
  132.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  133.          if (var2[var3] == (class$javax$swing$event$MenuKeyListener != null ? class$javax$swing$event$MenuKeyListener : (class$javax$swing$event$MenuKeyListener = class$("javax.swing.event.MenuKeyListener")))) {
  134.             ((MenuKeyListener)var2[var3 + 1]).menuKeyPressed(var1);
  135.          }
  136.       }
  137.  
  138.    }
  139.  
  140.    protected void fireMenuKeyReleased(MenuKeyEvent var1) {
  141.       Object[] var2 = super.listenerList.getListenerList();
  142.  
  143.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  144.          if (var2[var3] == (class$javax$swing$event$MenuKeyListener != null ? class$javax$swing$event$MenuKeyListener : (class$javax$swing$event$MenuKeyListener = class$("javax.swing.event.MenuKeyListener")))) {
  145.             ((MenuKeyListener)var2[var3 + 1]).menuKeyReleased(var1);
  146.          }
  147.       }
  148.  
  149.    }
  150.  
  151.    protected void fireMenuKeyTyped(MenuKeyEvent var1) {
  152.       Object[] var2 = super.listenerList.getListenerList();
  153.  
  154.       for(int var3 = var2.length - 2; var3 >= 0; var3 -= 2) {
  155.          if (var2[var3] == (class$javax$swing$event$MenuKeyListener != null ? class$javax$swing$event$MenuKeyListener : (class$javax$swing$event$MenuKeyListener = class$("javax.swing.event.MenuKeyListener")))) {
  156.             ((MenuKeyListener)var2[var3 + 1]).menuKeyTyped(var1);
  157.          }
  158.       }
  159.  
  160.    }
  161.  
  162.    public KeyStroke getAccelerator() {
  163.       return this.accelerator;
  164.    }
  165.  
  166.    public AccessibleContext getAccessibleContext() {
  167.       if (super.accessibleContext == null) {
  168.          super.accessibleContext = new AccessibleJMenuItem(this);
  169.       }
  170.  
  171.       return super.accessibleContext;
  172.    }
  173.  
  174.    public Component getComponent() {
  175.       return this;
  176.    }
  177.  
  178.    public MenuElement[] getSubElements() {
  179.       return new MenuElement[0];
  180.    }
  181.  
  182.    public String getUIClassID() {
  183.       return "MenuItemUI";
  184.    }
  185.  
  186.    protected void init(String var1, Icon var2) {
  187.       if (var1 != null) {
  188.          ((AbstractButton)this).setText(var1);
  189.       }
  190.  
  191.       if (var2 != null) {
  192.          ((AbstractButton)this).setIcon(var2);
  193.       }
  194.  
  195.       ((Component)this).addFocusListener(new MenuItemFocusListener());
  196.    }
  197.  
  198.    public boolean isArmed() {
  199.       ButtonModel var1 = ((AbstractButton)this).getModel();
  200.       return var1.isArmed();
  201.    }
  202.  
  203.    public void menuSelectionChanged(boolean var1) {
  204.       this.setArmed(var1);
  205.    }
  206.  
  207.    protected String paramString() {
  208.       return super.paramString();
  209.    }
  210.  
  211.    public void processKeyEvent(KeyEvent var1, MenuElement[] var2, MenuSelectionManager var3) {
  212.       this.processMenuKeyEvent(new MenuKeyEvent(((ComponentEvent)var1).getComponent(), ((AWTEvent)var1).getID(), ((InputEvent)var1).getWhen(), ((InputEvent)var1).getModifiers(), var1.getKeyCode(), var1.getKeyChar(), var2, var3));
  213.    }
  214.  
  215.    public void processMenuDragMouseEvent(MenuDragMouseEvent var1) {
  216.       switch (((AWTEvent)var1).getID()) {
  217.          case 502:
  218.             this.fireMenuDragMouseReleased(var1);
  219.          case 503:
  220.          default:
  221.             break;
  222.          case 504:
  223.             this.fireMenuDragMouseEntered(var1);
  224.             break;
  225.          case 505:
  226.             this.fireMenuDragMouseExited(var1);
  227.             break;
  228.          case 506:
  229.             this.fireMenuDragMouseDragged(var1);
  230.       }
  231.  
  232.    }
  233.  
  234.    public void processMenuKeyEvent(MenuKeyEvent var1) {
  235.       switch (((AWTEvent)var1).getID()) {
  236.          case 400:
  237.             this.fireMenuKeyTyped(var1);
  238.             break;
  239.          case 401:
  240.             this.fireMenuKeyPressed(var1);
  241.             break;
  242.          case 402:
  243.             this.fireMenuKeyReleased(var1);
  244.       }
  245.  
  246.    }
  247.  
  248.    public void processMouseEvent(MouseEvent var1, MenuElement[] var2, MenuSelectionManager var3) {
  249.       this.processMenuDragMouseEvent(new MenuDragMouseEvent(((ComponentEvent)var1).getComponent(), ((AWTEvent)var1).getID(), ((InputEvent)var1).getWhen(), ((InputEvent)var1).getModifiers(), var1.getX(), var1.getY(), var1.getClickCount(), var1.isPopupTrigger(), var2, var3));
  250.    }
  251.  
  252.    private void readObject(ObjectInputStream var1) throws IOException, ClassNotFoundException {
  253.       var1.defaultReadObject();
  254.       if (this.getUIClassID().equals("MenuItemUI")) {
  255.          this.updateUI();
  256.       }
  257.  
  258.    }
  259.  
  260.    public void removeMenuDragMouseListener(MenuDragMouseListener var1) {
  261.       super.listenerList.remove(class$javax$swing$event$MenuDragMouseListener != null ? class$javax$swing$event$MenuDragMouseListener : (class$javax$swing$event$MenuDragMouseListener = class$("javax.swing.event.MenuDragMouseListener")), var1);
  262.    }
  263.  
  264.    public void removeMenuKeyListener(MenuKeyListener var1) {
  265.       super.listenerList.remove(class$javax$swing$event$MenuKeyListener != null ? class$javax$swing$event$MenuKeyListener : (class$javax$swing$event$MenuKeyListener = class$("javax.swing.event.MenuKeyListener")), var1);
  266.    }
  267.  
  268.    public void setAccelerator(KeyStroke var1) {
  269.       if (this.accelerator != null) {
  270.          ((JComponent)this).unregisterKeyboardAction(this.accelerator);
  271.       }
  272.  
  273.       if (var1 != null) {
  274.          ((JComponent)this).registerKeyboardAction(new 1(this), var1, 2);
  275.       }
  276.  
  277.       this.accelerator = var1;
  278.    }
  279.  
  280.    public void setArmed(boolean var1) {
  281.       ButtonModel var2 = ((AbstractButton)this).getModel();
  282.       boolean var3 = var2.isArmed();
  283.       if (super.accessibleContext != null && var3 != var1) {
  284.          if (var1) {
  285.             super.accessibleContext.firePropertyChange("AccessibleState", (Object)null, AccessibleState.ARMED);
  286.          } else {
  287.             super.accessibleContext.firePropertyChange("AccessibleState", AccessibleState.ARMED, (Object)null);
  288.          }
  289.       }
  290.  
  291.       if (var2.isArmed() != var1) {
  292.          var2.setArmed(var1);
  293.       }
  294.  
  295.    }
  296.  
  297.    public void setEnabled(boolean var1) {
  298.       if (!var1) {
  299.          this.setArmed(false);
  300.       }
  301.  
  302.       super.setEnabled(var1);
  303.    }
  304.  
  305.    public void setUI(MenuItemUI var1) {
  306.       super.setUI(var1);
  307.    }
  308.  
  309.    public void updateUI() {
  310.       this.setUI((MenuItemUI)UIManager.getUI(this));
  311.    }
  312.  
  313.    private void writeObject(ObjectOutputStream var1) throws IOException {
  314.       var1.defaultWriteObject();
  315.       if (super.ui != null && this.getUIClassID().equals("MenuItemUI")) {
  316.          super.ui.installUI(this);
  317.       }
  318.  
  319.    }
  320. }
  321.