net.sf.freecol.common.option
Class ListOption<T>

java.lang.Object
  extended by net.sf.freecol.common.model.FreeColObject
      extended by net.sf.freecol.common.option.AbstractOption
          extended by net.sf.freecol.common.option.ListOption<T>
Type Parameters:
T - The type of objects to store in the list.
All Implemented Interfaces:
Option

public class ListOption<T>
extends AbstractOption

An option for a list of something.


Field Summary
 
Fields inherited from class net.sf.freecol.common.option.AbstractOption
NO_ID
 
Fields inherited from class net.sf.freecol.common.model.FreeColObject
ID_ATTRIBUTE_TAG
 
Constructor Summary
ListOption(ListOptionSelector<T> selector, java.lang.String id, OptionGroup optionGroup, T... defaultValues)
          Creates a new ListOption.
ListOption(ListOptionSelector<T> selector, java.lang.String id, T... defaultValues)
          Creates a new ListOption.
ListOption(ListOptionSelector<T> selector, javax.xml.stream.XMLStreamReader in)
          Creates a new ListOption.
 
Method Summary
 ListOptionSelector<T> getListOptionSelector()
          Gets the delegate responsible for getting a list of objects that can be selected by this option.
 java.util.List<T> getValue()
          Gets the current value of this Option.
static java.lang.String getXMLElementTagName()
          Gets the tag name of the root element representing this object.
 void setValue(java.util.List<T> value)
          Sets the current value of this Option.
 
Methods inherited from class net.sf.freecol.common.option.AbstractOption
getGroup, getName, getShortDescription, isPreviewEnabled, setGroup, setPreviewEnabled, toString
 
Methods inherited from class net.sf.freecol.common.model.FreeColObject
addPropertyChangeListener, addPropertyChangeListener, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAttribute, getAttribute, getAttribute, getAttribute, getId, getPropertyChangeListeners, getPropertyChangeListeners, hasAbility, hasAttribute, hasListeners, readFromXML, readFromXMLElement, removePropertyChangeListener, removePropertyChangeListener, toXML, toXML, toXML, toXMLElement, toXMLElement, toXMLElement, toXMLElement, toXMLElementPartial, writeAttribute, writeFreeColGameObject
 
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, getId, readFromXML, readFromXMLElement, removePropertyChangeListener, toXML, toXMLElement
 

Constructor Detail

ListOption

public ListOption(ListOptionSelector<T> selector,
                  javax.xml.stream.XMLStreamReader in)
           throws javax.xml.stream.XMLStreamException
Creates a new ListOption.

Parameters:
in - The XMLStreamReader containing the data.
Throws:
javax.xml.stream.XMLStreamException

ListOption

public ListOption(ListOptionSelector<T> selector,
                  java.lang.String id,
                  T... defaultValues)
Creates a new ListOption.

Parameters:
id - The identifier for this option. This is used when the object should be found in an OptionGroup.
defaultValues - The default values of this option.

ListOption

public ListOption(ListOptionSelector<T> selector,
                  java.lang.String id,
                  OptionGroup optionGroup,
                  T... defaultValues)
Creates a new ListOption.

Parameters:
id - The identifier for this option. This is used when the object should be found in an OptionGroup.
optionGroup - the OptionGroup this option belongs to.
defaultValues - The default values of this option.
Method Detail

getListOptionSelector

public ListOptionSelector<T> getListOptionSelector()
Gets the delegate responsible for getting a list of objects that can be selected by this option.

Returns:
The ListOptionSelector for this option.

getValue

public java.util.List<T> getValue()
Gets the current value of this Option.

Returns:
The value.

setValue

public void setValue(java.util.List<T> value)
Sets the current value of this Option.

Parameters:
value - The value.

getXMLElementTagName

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

Returns:
"listOption".