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 / javax / swing / AbstractButton.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  15.7 KB  |  771 lines

  1. package javax.swing;
  2.  
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Dimension;
  6. import java.awt.Graphics;
  7. import java.awt.Image;
  8. import java.awt.Insets;
  9. import java.awt.ItemSelectable;
  10. import java.awt.Rectangle;
  11. import java.awt.event.ActionEvent;
  12. import java.awt.event.ActionListener;
  13. import java.awt.event.ItemEvent;
  14. import java.awt.event.ItemListener;
  15. import java.beans.PropertyChangeListener;
  16. import javax.accessibility.Accessible;
  17. import javax.accessibility.AccessibleContext;
  18. import javax.accessibility.AccessibleIcon;
  19. import javax.accessibility.AccessibleState;
  20. import javax.swing.event.ChangeEvent;
  21. import javax.swing.event.ChangeListener;
  22. import javax.swing.plaf.ButtonUI;
  23. import javax.swing.plaf.UIResource;
  24.  
  25. public abstract class AbstractButton extends JComponent implements ItemSelectable, SwingConstants {
  26.    public static final String MODEL_CHANGED_PROPERTY = "model";
  27.    public static final String TEXT_CHANGED_PROPERTY = "text";
  28.    public static final String MNEMONIC_CHANGED_PROPERTY = "mnemonic";
  29.    public static final String MARGIN_CHANGED_PROPERTY = "margin";
  30.    public static final String VERTICAL_ALIGNMENT_CHANGED_PROPERTY = "verticalAlignment";
  31.    public static final String HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY = "horizontalAlignment";
  32.    public static final String VERTICAL_TEXT_POSITION_CHANGED_PROPERTY = "verticalTextPosition";
  33.    public static final String HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY = "horizontalTextPosition";
  34.    public static final String BORDER_PAINTED_CHANGED_PROPERTY = "borderPainted";
  35.    public static final String FOCUS_PAINTED_CHANGED_PROPERTY = "focusPainted";
  36.    public static final String ROLLOVER_ENABLED_CHANGED_PROPERTY = "rolloverEnabled";
  37.    public static final String CONTENT_AREA_FILLED_CHANGED_PROPERTY = "contentAreaFilled";
  38.    public static final String ICON_CHANGED_PROPERTY = "icon";
  39.    public static final String PRESSED_ICON_CHANGED_PROPERTY = "pressedIcon";
  40.    public static final String SELECTED_ICON_CHANGED_PROPERTY = "selectedIcon";
  41.    public static final String ROLLOVER_ICON_CHANGED_PROPERTY = "rolloverIcon";
  42.    public static final String ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY = "rolloverSelectedIcon";
  43.    public static final String DISABLED_ICON_CHANGED_PROPERTY = "disabledIcon";
  44.    public static final String DISABLED_SELECTED_ICON_CHANGED_PROPERTY = "disabledSelectedIcon";
  45.    protected ButtonModel model = null;
  46.    private String text = "";
  47.    private Insets margin = null;
  48.    private Insets defaultMargin = null;
  49.    private Icon defaultIcon = null;
  50.    private Icon pressedIcon = null;
  51.    private Icon disabledIcon = null;
  52.    private Icon selectedIcon = null;
  53.    private Icon disabledSelectedIcon = null;
  54.    private Icon rolloverIcon = null;
  55.    private Icon rolloverSelectedIcon = null;
  56.    private boolean paintBorder = true;
  57.    private boolean paintFocus = true;
  58.    private boolean rolloverEnabled = false;
  59.    private boolean contentAreaFilled = true;
  60.    private int verticalAlignment = 0;
  61.    private int horizontalAlignment = 0;
  62.    private int verticalTextPosition = 0;
  63.    private int horizontalTextPosition = 11;
  64.    private AccessibleIcon accessibleIcon = null;
  65.    protected ChangeListener changeListener = null;
  66.    protected ActionListener actionListener = null;
  67.    protected ItemListener itemListener = null;
  68.    protected transient ChangeEvent changeEvent;
  69.    private Action action;
  70.    private PropertyChangeListener actionPropertyChangeListener;
  71.    // $FF: synthetic field
  72.    static Class class$java$awt$event$ActionListener;
  73.    // $FF: synthetic field
  74.    static Class class$javax$swing$event$ChangeListener;
  75.    // $FF: synthetic field
  76.    static Class class$java$awt$event$ItemListener;
  77.  
  78.    public String getText() {
  79.       return this.text;
  80.    }
  81.  
  82.    public void setText(String var1) {
  83.       String var2 = this.text;
  84.       this.text = var1;
  85.       ((JComponent)this).firePropertyChange("text", var2, var1);
  86.       if (super.accessibleContext != null) {
  87.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  88.       }
  89.  
  90.       if (var1 == null || var2 == null || !var1.equals(var2)) {
  91.          ((JComponent)this).revalidate();
  92.          ((Component)this).repaint();
  93.       }
  94.  
  95.    }
  96.  
  97.    public boolean isSelected() {
  98.       return this.model.isSelected();
  99.    }
  100.  
  101.    public void setSelected(boolean var1) {
  102.       boolean var2 = this.isSelected();
  103.       if (super.accessibleContext != null && var2 != var1) {
  104.          if (var1) {
  105.             super.accessibleContext.firePropertyChange("AccessibleState", (Object)null, AccessibleState.SELECTED);
  106.          } else {
  107.             super.accessibleContext.firePropertyChange("AccessibleState", AccessibleState.SELECTED, (Object)null);
  108.          }
  109.       }
  110.  
  111.       this.model.setSelected(var1);
  112.    }
  113.  
  114.    public void doClick() {
  115.       this.doClick(68);
  116.    }
  117.  
  118.    public void doClick(int var1) {
  119.       Dimension var2 = ((Component)this).getSize();
  120.       this.model.setArmed(true);
  121.       this.model.setPressed(true);
  122.       ((JComponent)this).paintImmediately(new Rectangle(0, 0, var2.width, var2.height));
  123.  
  124.       try {
  125.          Thread.currentThread();
  126.          Thread.sleep((long)var1);
  127.       } catch (InterruptedException var4) {
  128.       }
  129.  
  130.       this.model.setPressed(false);
  131.       this.model.setArmed(false);
  132.    }
  133.  
  134.    public void setMargin(Insets var1) {
  135.       if (var1 instanceof UIResource) {
  136.          this.defaultMargin = var1;
  137.       } else if (this.margin instanceof UIResource) {
  138.          this.defaultMargin = this.margin;
  139.       }
  140.  
  141.       if (var1 == null && this.defaultMargin != null) {
  142.          var1 = this.defaultMargin;
  143.       }
  144.  
  145.       Insets var2 = this.margin;
  146.       this.margin = var1;
  147.       ((JComponent)this).firePropertyChange("margin", var2, var1);
  148.       if (var2 == null || !var1.equals(var2)) {
  149.          ((JComponent)this).revalidate();
  150.          ((Component)this).repaint();
  151.       }
  152.  
  153.    }
  154.  
  155.    public Insets getMargin() {
  156.       return this.margin == null ? null : (Insets)this.margin.clone();
  157.    }
  158.  
  159.    public Icon getIcon() {
  160.       return this.defaultIcon;
  161.    }
  162.  
  163.    public void setIcon(Icon var1) {
  164.       Icon var2 = this.defaultIcon;
  165.       this.defaultIcon = var1;
  166.       ((JComponent)this).firePropertyChange("icon", var2, var1);
  167.       if (super.accessibleContext != null) {
  168.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, this.pressedIcon);
  169.       }
  170.  
  171.       if (var1 != var2) {
  172.          if (var1 == null || var2 == null || var1.getIconWidth() != var2.getIconWidth() || var1.getIconHeight() != var2.getIconHeight()) {
  173.             ((JComponent)this).revalidate();
  174.          }
  175.  
  176.          ((Component)this).repaint();
  177.       }
  178.  
  179.       this.accessibleIcon = null;
  180.       if (var1 instanceof Accessible) {
  181.          AccessibleContext var3 = ((Accessible)var1).getAccessibleContext();
  182.          if (var3 != null && var3 instanceof AccessibleIcon) {
  183.             this.accessibleIcon = (AccessibleIcon)var3;
  184.          }
  185.       }
  186.  
  187.    }
  188.  
  189.    public Icon getPressedIcon() {
  190.       return this.pressedIcon;
  191.    }
  192.  
  193.    public void setPressedIcon(Icon var1) {
  194.       Icon var2 = this.pressedIcon;
  195.       this.pressedIcon = var1;
  196.       ((JComponent)this).firePropertyChange("pressedIcon", var2, var1);
  197.       if (super.accessibleContext != null) {
  198.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, this.defaultIcon);
  199.       }
  200.  
  201.       if (var1 != var2 && this.getModel().isPressed()) {
  202.          ((Component)this).repaint();
  203.       }
  204.  
  205.    }
  206.  
  207.    public Icon getSelectedIcon() {
  208.       return this.selectedIcon;
  209.    }
  210.  
  211.    public void setSelectedIcon(Icon var1) {
  212.       Icon var2 = this.selectedIcon;
  213.       this.selectedIcon = var1;
  214.       ((JComponent)this).firePropertyChange("selectedIcon", var2, var1);
  215.       if (super.accessibleContext != null) {
  216.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  217.       }
  218.  
  219.       if (var1 != var2 && this.isSelected()) {
  220.          ((Component)this).repaint();
  221.       }
  222.  
  223.    }
  224.  
  225.    public Icon getRolloverIcon() {
  226.       return this.rolloverIcon;
  227.    }
  228.  
  229.    public void setRolloverIcon(Icon var1) {
  230.       Icon var2 = this.rolloverIcon;
  231.       this.rolloverIcon = var1;
  232.       ((JComponent)this).firePropertyChange("rolloverIcon", var2, var1);
  233.       if (super.accessibleContext != null) {
  234.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  235.       }
  236.  
  237.       this.setRolloverEnabled(true);
  238.       if (var1 != var2) {
  239.          ((Component)this).repaint();
  240.       }
  241.  
  242.    }
  243.  
  244.    public Icon getRolloverSelectedIcon() {
  245.       return this.rolloverSelectedIcon;
  246.    }
  247.  
  248.    public void setRolloverSelectedIcon(Icon var1) {
  249.       Icon var2 = this.rolloverSelectedIcon;
  250.       this.rolloverSelectedIcon = var1;
  251.       ((JComponent)this).firePropertyChange("rolloverSelectedIcon", var2, var1);
  252.       if (super.accessibleContext != null) {
  253.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  254.       }
  255.  
  256.       if (var1 != var2 && this.isSelected()) {
  257.          ((Component)this).repaint();
  258.       }
  259.  
  260.    }
  261.  
  262.    public Icon getDisabledIcon() {
  263.       if (this.disabledIcon == null && this.defaultIcon != null && this.defaultIcon instanceof ImageIcon) {
  264.          this.disabledIcon = new ImageIcon(GrayFilter.createDisabledImage(((ImageIcon)this.defaultIcon).getImage()));
  265.       }
  266.  
  267.       return this.disabledIcon;
  268.    }
  269.  
  270.    public void setDisabledIcon(Icon var1) {
  271.       Icon var2 = this.disabledIcon;
  272.       this.disabledIcon = var1;
  273.       ((JComponent)this).firePropertyChange("disabledIcon", var2, var1);
  274.       if (super.accessibleContext != null) {
  275.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  276.       }
  277.  
  278.       if (var1 != var2 && !((Component)this).isEnabled()) {
  279.          ((Component)this).repaint();
  280.       }
  281.  
  282.    }
  283.  
  284.    public Icon getDisabledSelectedIcon() {
  285.       if (this.disabledSelectedIcon == null) {
  286.          if (this.selectedIcon == null || !(this.selectedIcon instanceof ImageIcon)) {
  287.             return this.disabledIcon;
  288.          }
  289.  
  290.          this.disabledSelectedIcon = new ImageIcon(GrayFilter.createDisabledImage(((ImageIcon)this.selectedIcon).getImage()));
  291.       }
  292.  
  293.       return this.disabledSelectedIcon;
  294.    }
  295.  
  296.    public void setDisabledSelectedIcon(Icon var1) {
  297.       Icon var2 = this.disabledSelectedIcon;
  298.       this.disabledSelectedIcon = var1;
  299.       ((JComponent)this).firePropertyChange("disabledSelectedIcon", var2, var1);
  300.       if (super.accessibleContext != null) {
  301.          super.accessibleContext.firePropertyChange("AccessibleVisibleData", var2, var1);
  302.       }
  303.  
  304.       if (var1 != var2) {
  305.          if (var1 == null || var2 == null || var1.getIconWidth() != var2.getIconWidth() || var1.getIconHeight() != var2.getIconHeight()) {
  306.             ((JComponent)this).revalidate();
  307.          }
  308.  
  309.          if (!((Component)this).isEnabled() && this.isSelected()) {
  310.             ((Component)this).repaint();
  311.          }
  312.       }
  313.  
  314.    }
  315.  
  316.    public int getVerticalAlignment() {
  317.       return this.verticalAlignment;
  318.    }
  319.  
  320.    public void setVerticalAlignment(int var1) {
  321.       if (var1 != this.verticalAlignment) {
  322.          int var2 = this.verticalAlignment;
  323.          this.verticalAlignment = this.checkVerticalKey(var1, "verticalAlignment");
  324.          ((JComponent)this).firePropertyChange("verticalAlignment", var2, this.verticalAlignment);
  325.          ((Component)this).repaint();
  326.       }
  327.    }
  328.  
  329.    public int getHorizontalAlignment() {
  330.       return this.horizontalAlignment;
  331.    }
  332.  
  333.    public void setHorizontalAlignment(int var1) {
  334.       if (var1 != this.horizontalAlignment) {
  335.          int var2 = this.horizontalAlignment;
  336.          this.horizontalAlignment = this.checkHorizontalKey(var1, "horizontalAlignment");
  337.          ((JComponent)this).firePropertyChange("horizontalAlignment", var2, this.horizontalAlignment);
  338.          ((Component)this).repaint();
  339.       }
  340.    }
  341.  
  342.    public int getVerticalTextPosition() {
  343.       return this.verticalTextPosition;
  344.    }
  345.  
  346.    public void setVerticalTextPosition(int var1) {
  347.       if (var1 != this.verticalTextPosition) {
  348.          int var2 = this.verticalTextPosition;
  349.          this.verticalTextPosition = this.checkVerticalKey(var1, "verticalTextPosition");
  350.          ((JComponent)this).firePropertyChange("verticalTextPosition", var2, this.verticalTextPosition);
  351.          ((Component)this).repaint();
  352.       }
  353.    }
  354.  
  355.    public int getHorizontalTextPosition() {
  356.       return this.horizontalTextPosition;
  357.    }
  358.  
  359.    public void setHorizontalTextPosition(int var1) {
  360.       if (var1 != this.horizontalTextPosition) {
  361.          int var2 = this.horizontalTextPosition;
  362.          this.horizontalTextPosition = this.checkHorizontalKey(var1, "horizontalTextPosition");
  363.          ((JComponent)this).firePropertyChange("horizontalTextPosition", var2, this.horizontalTextPosition);
  364.          ((Component)this).repaint();
  365.       }
  366.    }
  367.  
  368.    protected int checkHorizontalKey(int var1, String var2) {
  369.       if (var1 != 2 && var1 != 0 && var1 != 4 && var1 != 10 && var1 != 11) {
  370.          throw new IllegalArgumentException(var2);
  371.       } else {
  372.          return var1;
  373.       }
  374.    }
  375.  
  376.    protected int checkVerticalKey(int var1, String var2) {
  377.       if (var1 != 1 && var1 != 0 && var1 != 3) {
  378.          throw new IllegalArgumentException(var2);
  379.       } else {
  380.          return var1;
  381.       }
  382.    }
  383.  
  384.    public void setActionCommand(String var1) {
  385.       this.getModel().setActionCommand(var1);
  386.    }
  387.  
  388.    public String getActionCommand() {
  389.       String var1 = this.getModel().getActionCommand();
  390.       if (var1 == null) {
  391.          var1 = this.getText();
  392.       }
  393.  
  394.       return var1;
  395.    }
  396.  
  397.    public void setAction(Action var1) {
  398.       Action var2 = this.getAction();
  399.       if (this.action == null || !this.action.equals(var1)) {
  400.          this.action = var1;
  401.          if (var2 != null) {
  402.             this.removeActionListener(var2);
  403.             var2.removePropertyChangeListener(this.actionPropertyChangeListener);
  404.             this.actionPropertyChangeListener = null;
  405.          }
  406.  
  407.          this.configurePropertiesFromAction(this.action);
  408.          if (this.action != null) {
  409.             if (!this.isListener(class$java$awt$event$ActionListener == null ? (class$java$awt$event$ActionListener = class$("java.awt.event.ActionListener")) : class$java$awt$event$ActionListener, this.action)) {
  410.                this.addActionListener(this.action);
  411.             }
  412.  
  413.             this.actionPropertyChangeListener = this.createActionPropertyChangeListener(this.action);
  414.             this.action.addPropertyChangeListener(this.actionPropertyChangeListener);
  415.          }
  416.  
  417.          ((JComponent)this).firePropertyChange("action", var2, this.action);
  418.          ((JComponent)this).revalidate();
  419.          ((Component)this).repaint();
  420.       }
  421.  
  422.    }
  423.  
  424.    private boolean isListener(Class var1, ActionListener var2) {
  425.       boolean var3 = false;
  426.       Object[] var4 = super.listenerList.getListenerList();
  427.  
  428.       for(int var5 = var4.length - 2; var5 >= 0; var5 -= 2) {
  429.          if (var4[var5] == var1 && var4[var5 + 1] == var2) {
  430.             var3 = true;
  431.          }
  432.       }
  433.  
  434.       return var3;
  435.    }
  436.  
  437.    public Action getAction() {
  438.       return this.action;
  439.    }
  440.  
  441.    protected void configurePropertiesFromAction(Action var1) {
  442.       this.setText(var1 != null ? (String)var1.getValue("Name") : null);
  443.       this.setIcon(var1 != null ? (Icon)var1.getValue("SmallIcon") : null);
  444.       this.setEnabled(var1 != null ? var1.isEnabled() : true);
  445.       ((JComponent)this).setToolTipText(var1 != null ? (String)var1.getValue("ShortDescription") : null);
  446.       if (var1 != null) {
  447.          Integer var2 = (Integer)var1.getValue("MnemonicKey");
  448.          if (var2 != null) {
  449.             this.setMnemonic(var2);
  450.          }
  451.       }
  452.  
  453.    }
  454.  
  455.    protected PropertyChangeListener createActionPropertyChangeListener(Action var1) {
  456.       return new ButtonActionPropertyChangeListener(this, var1);
  457.    }
  458.  
  459.    public boolean isBorderPainted() {
  460.       return this.paintBorder;
  461.    }
  462.  
  463.    public void setBorderPainted(boolean var1) {
  464.       boolean var2 = this.paintBorder;
  465.       this.paintBorder = var1;
  466.       ((JComponent)this).firePropertyChange("borderPainted", var2, this.paintBorder);
  467.       if (var1 != var2) {
  468.          ((JComponent)this).revalidate();
  469.          ((Component)this).repaint();
  470.       }
  471.  
  472.    }
  473.  
  474.    protected void paintBorder(Graphics var1) {
  475.       if (this.isBorderPainted()) {
  476.          super.paintBorder(var1);
  477.       }
  478.  
  479.    }
  480.  
  481.    public boolean isFocusPainted() {
  482.       return this.paintFocus;
  483.    }
  484.  
  485.    public void setFocusPainted(boolean var1) {
  486.       boolean var2 = this.paintFocus;
  487.       this.paintFocus = var1;
  488.       ((JComponent)this).firePropertyChange("focusPainted", var2, this.paintFocus);
  489.       if (var1 != var2 && ((JComponent)this).hasFocus()) {
  490.          ((JComponent)this).revalidate();
  491.          ((Component)this).repaint();
  492.       }
  493.  
  494.    }
  495.  
  496.    public boolean isContentAreaFilled() {
  497.       return this.contentAreaFilled;
  498.    }
  499.  
  500.    public void setContentAreaFilled(boolean var1) {
  501.       boolean var2 = this.contentAreaFilled;
  502.       this.contentAreaFilled = var1;
  503.       ((JComponent)this).firePropertyChange("contentAreaFilled", var2, this.contentAreaFilled);
  504.       if (var1 != var2) {
  505.          ((Component)this).repaint();
  506.       }
  507.  
  508.    }
  509.  
  510.    public boolean isRolloverEnabled() {
  511.       return this.rolloverEnabled;
  512.    }
  513.  
  514.    public void setRolloverEnabled(boolean var1) {
  515.       boolean var2 = this.rolloverEnabled;
  516.       this.rolloverEnabled = var1;
  517.       ((JComponent)this).firePropertyChange("rolloverEnabled", var2, this.rolloverEnabled);
  518.       if (var1 != var2) {
  519.          ((Component)this).repaint();
  520.       }
  521.  
  522.    }
  523.  
  524.    public int getMnemonic() {
  525.       return this.model.getMnemonic();
  526.    }
  527.  
  528.    public void setMnemonic(int var1) {
  529.       int var2 = this.getMnemonic();
  530.       this.model.setMnemonic(var1);
  531.       ((JComponent)this).firePropertyChange("mnemonic", var2, var1);
  532.       if (var1 != var2) {
  533.          ((JComponent)this).revalidate();
  534.          ((Component)this).repaint();
  535.       }
  536.  
  537.    }
  538.  
  539.    public void setMnemonic(char var1) {
  540.       int var2 = var1;
  541.       if (var1 >= 'a' && var1 <= 'z') {
  542.          var2 = var1 - 32;
  543.       }
  544.  
  545.       this.setMnemonic(var2);
  546.    }
  547.  
  548.    public boolean isFocusTraversable() {
  549.       return ((Component)this).isEnabled();
  550.    }
  551.  
  552.    public ButtonModel getModel() {
  553.       return this.model;
  554.    }
  555.  
  556.    public void setModel(ButtonModel var1) {
  557.       ButtonModel var2 = this.getModel();
  558.       if (var2 != null) {
  559.          var2.removeChangeListener(this.changeListener);
  560.          var2.removeActionListener(this.actionListener);
  561.          this.changeListener = null;
  562.          this.actionListener = null;
  563.       }
  564.  
  565.       this.model = var1;
  566.       if (var1 != null) {
  567.          this.changeListener = this.createChangeListener();
  568.          this.actionListener = this.createActionListener();
  569.          this.itemListener = this.createItemListener();
  570.          var1.addChangeListener(this.changeListener);
  571.          var1.addActionListener(this.actionListener);
  572.          var1.addItemListener(this.itemListener);
  573.       }
  574.  
  575.       ((JComponent)this).firePropertyChange("model", var2, var1);
  576.       if (var1 != var2) {
  577.          ((JComponent)this).revalidate();
  578.          ((Component)this).repaint();
  579.       }
  580.  
  581.    }
  582.  
  583.    public ButtonUI getUI() {
  584.       return (ButtonUI)super.ui;
  585.    }
  586.  
  587.    public void setUI(ButtonUI var1) {
  588.       super.setUI(var1);
  589.    }
  590.  
  591.    public void updateUI() {
  592.    }
  593.  
  594.    public void addChangeListener(ChangeListener var1) {
  595.       super.listenerList.add(class$javax$swing$event$ChangeListener == null ? (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")) : class$javax$swing$event$ChangeListener, var1);
  596.    }
  597.  
  598.    public void removeChangeListener(ChangeListener var1) {
  599.       super.listenerList.remove(class$javax$swing$event$ChangeListener == null ? (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")) : class$javax$swing$event$ChangeListener, var1);
  600.    }
  601.  
  602.    protected void fireStateChanged() {
  603.       Object[] var1 = super.listenerList.getListenerList();
  604.  
  605.       for(int var2 = var1.length - 2; var2 >= 0; var2 -= 2) {
  606.          if (var1[var2] == (class$javax$swing$event$ChangeListener == null ? (class$javax$swing$event$ChangeListener = class$("javax.swing.event.ChangeListener")) : class$javax$swing$event$ChangeListener)) {
  607.             if (this.changeEvent == null) {
  608.                this.changeEvent = new ChangeEvent(this);
  609.             }
  610.  
  611.             ((ChangeListener)var1[var2 + 1]).stateChanged(this.changeEvent);
  612.          }
  613.       }
  614.  
  615.    }
  616.  
  617.    public void addActionListener(ActionListener var1) {
  618.       super.listenerList.add(class$java$awt$event$ActionListener == null ? (class$java$awt$event$ActionListener = class$("java.awt.event.ActionListener")) : class$java$awt$event$ActionListener, var1);
  619.    }
  620.  
  621.    public void removeActionListener(ActionListener var1) {
  622.       if (var1 != null && this.getAction() == var1) {
  623.          this.setAction((Action)null);
  624.       } else {
  625.          super.listenerList.remove(class$java$awt$event$ActionListener == null ? (class$java$awt$event$ActionListener = class$("java.awt.event.ActionListener")) : class$java$awt$event$ActionListener, var1);
  626.       }
  627.  
  628.    }
  629.  
  630.    protected ChangeListener createChangeListener() {
  631.       return new ButtonChangeListener(this);
  632.    }
  633.  
  634.    protected void fireActionPerformed(ActionEvent var1) {
  635.       Object[] var2 = super.listenerList.getListenerList();
  636.       ActionEvent var3 = null;
  637.  
  638.       for(int var4 = var2.length - 2; var4 >= 0; var4 -= 2) {
  639.          if (var2[var4] == (class$java$awt$event$ActionListener == null ? (class$java$awt$event$ActionListener = class$("java.awt.event.ActionListener")) : class$java$awt$event$ActionListener)) {
  640.             if (var3 == null) {
  641.                String var5 = var1.getActionCommand();
  642.                if (var5 == null) {
  643.                   var5 = this.getActionCommand();
  644.                }
  645.  
  646.                var3 = new ActionEvent(this, 1001, var5, var1.getModifiers());
  647.             }
  648.  
  649.             ((ActionListener)var2[var4 + 1]).actionPerformed(var3);
  650.          }
  651.       }
  652.  
  653.    }
  654.  
  655.    protected void fireItemStateChanged(ItemEvent var1) {
  656.       Object[] var2 = super.listenerList.getListenerList();
  657.       ItemEvent var3 = null;
  658.  
  659.       for(int var4 = var2.length - 2; var4 >= 0; var4 -= 2) {
  660.          if (var2[var4] == (class$java$awt$event$ItemListener == null ? (class$java$awt$event$ItemListener = class$("java.awt.event.ItemListener")) : class$java$awt$event$ItemListener)) {
  661.             if (var3 == null) {
  662.                var3 = new ItemEvent(this, 701, this, var1.getStateChange());
  663.             }
  664.  
  665.             ((ItemListener)var2[var4 + 1]).itemStateChanged(var3);
  666.          }
  667.       }
  668.  
  669.       if (super.accessibleContext != null) {
  670.          if (var1.getStateChange() == 1) {
  671.             super.accessibleContext.firePropertyChange("AccessibleState", (Object)null, AccessibleState.SELECTED);
  672.             super.accessibleContext.firePropertyChange("AccessibleValue", new Integer(0), new Integer(1));
  673.          } else {
  674.             super.accessibleContext.firePropertyChange("AccessibleState", AccessibleState.SELECTED, (Object)null);
  675.             super.accessibleContext.firePropertyChange("AccessibleValue", new Integer(1), new Integer(0));
  676.          }
  677.       }
  678.  
  679.    }
  680.  
  681.    protected ActionListener createActionListener() {
  682.       return new ForwardActionEvents(this, (1)null);
  683.    }
  684.  
  685.    protected ItemListener createItemListener() {
  686.       return new ForwardItemEvents(this, (1)null);
  687.    }
  688.  
  689.    public void setEnabled(boolean var1) {
  690.       if (!var1 && this.model.isRollover()) {
  691.          this.model.setRollover(false);
  692.       }
  693.  
  694.       super.setEnabled(var1);
  695.       this.model.setEnabled(var1);
  696.    }
  697.  
  698.    public String getLabel() {
  699.       return this.getText();
  700.    }
  701.  
  702.    public void setLabel(String var1) {
  703.       this.setText(var1);
  704.    }
  705.  
  706.    public void addItemListener(ItemListener var1) {
  707.       super.listenerList.add(class$java$awt$event$ItemListener == null ? (class$java$awt$event$ItemListener = class$("java.awt.event.ItemListener")) : class$java$awt$event$ItemListener, var1);
  708.    }
  709.  
  710.    public void removeItemListener(ItemListener var1) {
  711.       super.listenerList.remove(class$java$awt$event$ItemListener == null ? (class$java$awt$event$ItemListener = class$("java.awt.event.ItemListener")) : class$java$awt$event$ItemListener, var1);
  712.    }
  713.  
  714.    public Object[] getSelectedObjects() {
  715.       if (!this.isSelected()) {
  716.          return null;
  717.       } else {
  718.          Object[] var1 = new Object[]{this.getText()};
  719.          return var1;
  720.       }
  721.    }
  722.  
  723.    protected void init(String var1, Icon var2) {
  724.       ((Container)this).setLayout(new OverlayLayout(this));
  725.       if (var1 != null) {
  726.          this.setText(var1);
  727.       }
  728.  
  729.       if (var2 != null) {
  730.          this.setIcon(var2);
  731.       }
  732.  
  733.       this.updateUI();
  734.       ((Component)this).addFocusListener(new 1(this));
  735.       ((JComponent)this).setAlignmentX(0.0F);
  736.       ((JComponent)this).setAlignmentY(0.5F);
  737.    }
  738.  
  739.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  740.       return !SwingUtilities.doesIconReferenceImage(this.getIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getPressedIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getDisabledIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getSelectedIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getDisabledSelectedIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getRolloverIcon(), var1) && !SwingUtilities.doesIconReferenceImage(this.getRolloverSelectedIcon(), var1) ? false : super.imageUpdate(var1, var2, var3, var4, var5, var6);
  741.    }
  742.  
  743.    protected String paramString() {
  744.       String var1 = this.defaultIcon != null && this.defaultIcon != this ? this.defaultIcon.toString() : "";
  745.       String var2 = this.pressedIcon != null && this.pressedIcon != this ? this.pressedIcon.toString() : "";
  746.       String var3 = this.disabledIcon != null && this.disabledIcon != this ? this.disabledIcon.toString() : "";
  747.       String var4 = this.selectedIcon != null && this.selectedIcon != this ? this.selectedIcon.toString() : "";
  748.       String var5 = this.disabledSelectedIcon != null && this.disabledSelectedIcon != this ? this.disabledSelectedIcon.toString() : "";
  749.       String var6 = this.rolloverIcon != null && this.rolloverIcon != this ? this.rolloverIcon.toString() : "";
  750.       String var7 = this.rolloverSelectedIcon != null && this.rolloverSelectedIcon != this ? this.rolloverSelectedIcon.toString() : "";
  751.       String var8 = this.paintBorder ? "true" : "false";
  752.       String var9 = this.paintFocus ? "true" : "false";
  753.       String var10 = this.rolloverEnabled ? "true" : "false";
  754.       return super.paramString() + ",defaultIcon=" + var1 + ",disabledIcon=" + var3 + ",disabledSelectedIcon=" + var5 + ",margin=" + this.margin + ",paintBorder=" + var8 + ",paintFocus=" + var9 + ",pressedIcon=" + var2 + ",rolloverEnabled=" + var10 + ",rolloverIcon=" + var6 + ",rolloverSelectedIcon=" + var7 + ",selectedIcon=" + var4 + ",text=" + this.text;
  755.    }
  756.  
  757.    // $FF: synthetic method
  758.    static Class class$(String var0) {
  759.       try {
  760.          return Class.forName(var0);
  761.       } catch (ClassNotFoundException var2) {
  762.          throw new NoClassDefFoundError(((Throwable)var2).getMessage());
  763.       }
  764.    }
  765.  
  766.    // $FF: synthetic method
  767.    static AccessibleIcon access$200(AbstractButton var0) {
  768.       return var0.accessibleIcon;
  769.    }
  770. }
  771.