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

java.lang.Object
  extended by javax.swing.AbstractAction
      extended by net.sf.freecol.client.gui.action.FreeColAction
          extended by net.sf.freecol.client.gui.action.MapboardAction
              extended by net.sf.freecol.client.gui.action.SelectableAction
All Implemented Interfaces:
java.awt.event.ActionListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.swing.Action, Option<FreeColAction>
Direct Known Subclasses:
ChangeWindowedModeAction, DisplayBordersAction, DisplayGridAction, DisplayTileTextAction, MapControlsAction

public abstract class SelectableAction
extends MapboardAction

An action for selecting one of several options.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sf.freecol.client.gui.action.FreeColAction
FreeColAction.InnerMenuKeyListener
 
Field Summary
static java.lang.String id
           
private  java.lang.String optionId
           
protected  boolean selected
           
 
Fields inherited from class net.sf.freecol.client.gui.action.FreeColAction
ACTION_ID, BUTTON_DISABLED_IMAGE, BUTTON_IMAGE, BUTTON_PRESSED_IMAGE, BUTTON_ROLLOVER_IMAGE, freeColClient, gui, NO_MNEMONIC
 
Fields inherited from class javax.swing.AbstractAction
changeSupport, enabled
 
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
 
Constructor Summary
protected SelectableAction(FreeColClient freeColClient, GUI gui, java.lang.String id, java.lang.String optionId)
          Creates this action.
 
Method Summary
 boolean isSelected()
          Returns whether the action is selected.
 void setSelected(boolean b)
          Sets whether the action is selected.
protected  boolean shouldBeSelected()
          Returns true if this action should be selected.
 void update()
          Updates the "enabled" status with the value returned by MapboardAction.shouldBeEnabled() and the "selected" status with the value returned by shouldBeSelected().
protected  void updateOption(boolean value)
           
 
Methods inherited from class net.sf.freecol.client.gui.action.MapboardAction
shouldBeEnabled
 
Methods inherited from class net.sf.freecol.client.gui.action.FreeColAction
addImageIcons, clone, getAccelerator, getFreeColClient, getId, getKeyStrokeText, getMenuKeyListener, getMnemonic, getName, getShortDescription, getValue, getXMLElementTagName, hasOrderButtons, readFromXML, readFromXMLImpl, setAccelerator, setMnemonic, setValue, toString, toXML, toXMLImpl
 
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.event.ActionListener
actionPerformed
 

Field Detail

id

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

optionId

private java.lang.String optionId

selected

protected boolean selected
Constructor Detail

SelectableAction

protected SelectableAction(FreeColClient freeColClient,
                           GUI gui,
                           java.lang.String id,
                           java.lang.String optionId)
Creates this action.

Parameters:
freeColClient - The main controller object for the client
id - a String value
optionId - the id of a boolean client option
Method Detail

update

public void update()
Updates the "enabled" status with the value returned by MapboardAction.shouldBeEnabled() and the "selected" status with the value returned by shouldBeSelected().

Overrides:
update in class FreeColAction

isSelected

public boolean isSelected()
Returns whether the action is selected.

Returns:
true if the map controls is selected.

setSelected

public void setSelected(boolean b)
Sets whether the action is selected.

Parameters:
b - a boolean value

shouldBeSelected

protected boolean shouldBeSelected()
Returns true if this action should be selected.

Returns:
a boolean value

updateOption

protected void updateOption(boolean value)