code: private int getComponentState(JComponent c) {
          int state = ENABLED;
  
          if (!c.isEnabled()) {
              state = DISABLED;
          }
  
          if (SeaGlassLookAndFeel.selectedUI == this) {
              return SeaGlassLookAndFeel.selectedUIState | SynthConstants.ENABLED;
          }
  
          AbstractButton button = (AbstractButton) c;
          ButtonModel    model  = button.getModel();
  
          if (model.isPressed()) {
              if (model.isArmed()) {
                  state = PRESSED;
              } else {
                  state = MOUSE_OVER;
              }
          }
  
          if (model.isRollover()) {
              state |= MOUSE_OVER;
          }
  
          if (model.isSelected()) {
              state |= SELECTED;
          }
  
          if (c.isFocusOwner() && button.isFocusPainted()) {
              state |= FOCUSED;
          }
  
          if ((c instanceof JButton) && ((JButton) c).isDefaultButton()) {
              state |= DEFAULT;
          }
          
          return state;
      }
docs: Returns the current state of the passed in <code>AbstractButton</code>.
  
  @param  c the button component.
  
  @return the button's state.