code: protected void fireAction(ActionListener action) {
          int      modifiers    = 0;
          AWTEvent currentEvent = EventQueue.getCurrentEvent();
  
          if (currentEvent instanceof InputEvent) {
              modifiers = ((InputEvent) currentEvent).getModifiers();
          } else if (currentEvent instanceof ActionEvent) {
              modifiers = ((ActionEvent) currentEvent).getModifiers();
          }
  
          ActionEvent e = new ActionEvent(getComponent(), ActionEvent.ACTION_PERFORMED, getComponent().getText(),
                                          EventQueue.getMostRecentEventTime(), modifiers);
  
          action.actionPerformed(e);
      }
docs: DOCUMENT ME!
  
  @param action DOCUMENT ME!