net.sf.freecol.client.gui.action
Class FreeColAction

java.lang.Object
  extended by javax.swing.AbstractAction
      extended by net.sf.freecol.client.gui.action.FreeColAction
All Implemented Interfaces:
java.awt.event.ActionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.swing.Action, Option
Direct Known Subclasses:
AboutAction, ChatAction, ColopediaAction, DebugAction, DetermineHighSeasAction, MapboardAction, NewAction, OpenAction, PreferencesAction, QuitAction, ReconnectAction, ReportCargoAction, ReportColonyAction, ReportContinentalCongressAction, ReportExplorationAction, ReportForeignAction, ReportHighScoresAction, ReportHistoryAction, ReportIndianAction, ReportLabourAction, ReportMilitaryAction, ReportNavalAction, ReportProductionAction, ReportReligionAction, ReportRequirementsAction, ReportTradeAction, ReportTurnAction, RetireAction, SaveAction, SaveAndQuitAction, ScaleMapAction, ShowMainAction, ZoomInAction, ZoomOutAction

public abstract class FreeColAction
extends javax.swing.AbstractAction
implements Option

The super class of all actions in FreeCol. Subclasses of this object is stored in an ActionManager.

See Also:
Serialized Form

Nested Class Summary
 class FreeColAction.InnerMenuKeyListener
          A class used by Actions which have a mnemonic.
 
Field Summary
static java.lang.String ACTION_ID
           
static java.lang.String BUTTON_DISABLED_IMAGE
           
static java.lang.String BUTTON_IMAGE
           
static java.lang.String BUTTON_PRESSED_IMAGE
           
static java.lang.String BUTTON_ROLLOVER_IMAGE
           
static java.lang.Integer NO_MNEMONIC
           
 
Fields inherited from interface net.sf.freecol.common.option.Option
NO_ID
 
Fields inherited from interface javax.swing.Action
ACCELERATOR_KEY, ACTION_COMMAND_KEY, DEFAULT, DISPLAYED_MNEMONIC_INDEX_KEY, LARGE_ICON_KEY, LONG_DESCRIPTION, MNEMONIC_KEY, NAME, SELECTED_KEY, SHORT_DESCRIPTION, SMALL_ICON
 
Method Summary
 javax.swing.KeyStroke getAccelerator()
          Gets the keyboard accelerator for this option.
 java.lang.String getId()
          Returns the id of this Option.
static java.lang.String getKeyStrokeText(javax.swing.KeyStroke keyStroke)
          Creates a String that keeps the attributes given KeyStroke.
 javax.swing.event.MenuKeyListener getMenuKeyListener()
           
 java.lang.Integer getMnemonic()
          Gets the mnemonic to be used for selecting this action
 java.lang.String getName()
          Returns the name of this Option.
 java.lang.String getShortDescription()
          Gives a short description of this Option.
static java.lang.String getXMLElementTagName()
          Gets the tag name of the root element representing this object.
 boolean isPreviewEnabled()
          Should this option be updated directly so that changes may be previewes?
 void readFromXML(javax.xml.stream.XMLStreamReader in)
          Initialize this object from an XML-representation of this object.
 void readFromXMLElement(org.w3c.dom.Element element)
          Initialize this object from an XML-representation of this object.
 void setAccelerator(javax.swing.KeyStroke accelerator)
          Sets a keyboard accelerator.
 void setMnemonic(int mnemonic)
          Describe setMnemonic method here.
 java.lang.String toString()
          Returns a textual representation of this object.
 void toXML(javax.xml.stream.XMLStreamWriter out)
          This method writes an XML-representation of this object to the given stream.
 org.w3c.dom.Element toXMLElement(org.w3c.dom.Document document)
          This method writes an XML-representation of this object to the given stream.
 void update()
          Updates the "enabled"-status with the value returned by shouldBeEnabled().
 
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.sf.freecol.common.option.Option
addPropertyChangeListener, removePropertyChangeListener
 
Methods inherited from interface java.awt.event.ActionListener
actionPerformed
 

Field Detail

ACTION_ID

public static final java.lang.String ACTION_ID
See Also:
Constant Field Values

BUTTON_IMAGE

public static final java.lang.String BUTTON_IMAGE
See Also:
Constant Field Values

BUTTON_ROLLOVER_IMAGE

public static final java.lang.String BUTTON_ROLLOVER_IMAGE
See Also:
Constant Field Values

BUTTON_PRESSED_IMAGE

public static final java.lang.String BUTTON_PRESSED_IMAGE
See Also:
Constant Field Values

BUTTON_DISABLED_IMAGE

public static final java.lang.String BUTTON_DISABLED_IMAGE
See Also:
Constant Field Values

NO_MNEMONIC

public static final java.lang.Integer NO_MNEMONIC
Method Detail

getMnemonic

public java.lang.Integer getMnemonic()
Gets the mnemonic to be used for selecting this action

Returns:
The mnemonic of the action

setMnemonic

public void setMnemonic(int mnemonic)
Describe setMnemonic method here.

Parameters:
mnemonic - an int value

update

public void update()
Updates the "enabled"-status with the value returned by shouldBeEnabled().


setAccelerator

public void setAccelerator(javax.swing.KeyStroke accelerator)
Sets a keyboard accelerator.

Parameters:
accelerator - The KeyStroke. Using null is the same as disabling the keyboard accelerator.

getAccelerator

public javax.swing.KeyStroke getAccelerator()
Gets the keyboard accelerator for this option.

Returns:
The KeyStroke or null if the keyboard accelerator is disabled.

getShortDescription

public java.lang.String getShortDescription()
Gives a short description of this Option. Can for instance be used as a tooltip text.

Specified by:
getShortDescription in interface Option
Returns:
A short description of this action.

toString

public java.lang.String toString()
Returns a textual representation of this object.

Specified by:
toString in interface Option
Overrides:
toString in class java.lang.Object
Returns:
The name of this Option.
See Also:
getName()

getId

public java.lang.String getId()
Returns the id of this Option.

Specified by:
getId in interface Option
Returns:
An unique identifier for this action.

getName

public java.lang.String getName()
Returns the name of this Option.

Specified by:
getName in interface Option
Returns:
The name as provided in the constructor.

getKeyStrokeText

public static java.lang.String getKeyStrokeText(javax.swing.KeyStroke keyStroke)
Creates a String that keeps the attributes given KeyStroke. This String can be used to store the key stroke in an XML-file.

Parameters:
keyStroke - The KeyStroke.
Returns:
A String that produces a key stroke equal to the given KeyStroke if passed as a parameter to getAWTKeyStroke(String).

isPreviewEnabled

public boolean isPreviewEnabled()
Should this option be updated directly so that changes may be previewes?

Specified by:
isPreviewEnabled in interface Option
Returns:
false.

toXML

public void toXML(javax.xml.stream.XMLStreamWriter out)
           throws javax.xml.stream.XMLStreamException
This method writes an XML-representation of this object to the given stream.

Specified by:
toXML in interface Option
Parameters:
out - The target stream.
Throws:
javax.xml.stream.XMLStreamException - if there are any problems writing to the stream.

readFromXML

public void readFromXML(javax.xml.stream.XMLStreamReader in)
                 throws javax.xml.stream.XMLStreamException
Initialize this object from an XML-representation of this object.

Specified by:
readFromXML in interface Option
Parameters:
in - The input stream with the XML.
Throws:
javax.xml.stream.XMLStreamException - if a problem was encountered during parsing.

toXMLElement

public org.w3c.dom.Element toXMLElement(org.w3c.dom.Document document)
This method writes an XML-representation of this object to the given stream.

Specified by:
toXMLElement in interface Option
Parameters:
document - The Document.
Returns:
An XML-representation of this object.

readFromXMLElement

public void readFromXMLElement(org.w3c.dom.Element element)
Initialize this object from an XML-representation of this object.

Specified by:
readFromXMLElement in interface Option
Parameters:
element - The DOM-element ("Document Object Model") made to represent this "Option".

getMenuKeyListener

public javax.swing.event.MenuKeyListener getMenuKeyListener()

getXMLElementTagName

public static java.lang.String getXMLElementTagName()
Gets the tag name of the root element representing this object.

Returns:
"integerOption".