net.ctdp.rfdynhud.properties
Class ArrayProperty<E>

java.lang.Object
  extended by net.ctdp.rfdynhud.properties.Property
      extended by net.ctdp.rfdynhud.properties.ArrayProperty<E>
Type Parameters:
E - the array element type

public class ArrayProperty<E>
extends Property

The ArrayProperty serves for customizing a value from an array.

Author:
Marvin Froehlich (CTDP)

Constructor Summary
ArrayProperty(java.lang.String name, E defaultValue, E[] array)
           
ArrayProperty(java.lang.String name, E defaultValue, E[] array, boolean readonly)
           
ArrayProperty(java.lang.String name, java.lang.String nameForDisplay, E defaultValue, E[] array)
           
ArrayProperty(java.lang.String name, java.lang.String nameForDisplay, E defaultValue, E[] array, boolean readonly)
           
ArrayProperty(java.lang.String name, java.lang.String nameForDisplay, E defaultValue, E[] array, boolean readonly, java.lang.String buttonText)
           
 
Method Summary
 E[] getArray()
          Gets the data array.
 E getSelectedValue()
          Gets the currently selected value.
 E getValue()
          Gets the current value fo this property.
 void loadValue(PropertyLoader loader, java.lang.String value)
          Loads the value from the configuration file.
protected  void onKeeperSet()
          
protected  void onValueChanged(E oldValue, E newValue)
          Invoked when the value has changed.
 boolean setSelectedValue(E value)
          Sets the currently selected value.
protected  boolean setSelectedValue(E value, boolean firstTime)
          Sets the currently selected value.
 void setValue(java.lang.Object value)
          Sets the new value for this property.
 
Methods inherited from class net.ctdp.rfdynhud.properties.Property
getButtonText, getButtonTooltip, getDocumentationSource, getEditorType, getKeeper, getName, getNameForDisplay, getValueForConfigurationFile, isMatchingKey, isReadOnly, onButtonClicked, quoteValueInConfigurationFile, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ArrayProperty

public ArrayProperty(java.lang.String name,
                     java.lang.String nameForDisplay,
                     E defaultValue,
                     E[] array,
                     boolean readonly,
                     java.lang.String buttonText)
Parameters:
name - the technical name used internally. See Property.getName().
nameForDisplay - the name displayed in the editor. See Property.getNameForDisplay(). If null is passed, the value of the name parameter is used.
defaultValue - the default value
array - the data array
readonly - read only property?
buttonText - the button text

ArrayProperty

public ArrayProperty(java.lang.String name,
                     java.lang.String nameForDisplay,
                     E defaultValue,
                     E[] array,
                     boolean readonly)
Parameters:
name - the technical name used internally. See Property.getName().
nameForDisplay - the name displayed in the editor. See Property.getNameForDisplay(). If null is passed, the value of the name parameter is used.
defaultValue - the default value
array - the data array
readonly - read only property?

ArrayProperty

public ArrayProperty(java.lang.String name,
                     java.lang.String nameForDisplay,
                     E defaultValue,
                     E[] array)
Parameters:
name - the technical name used internally. See Property.getName(). 'nameForDisplay' is set to the same value.
nameForDisplay - the name displayed in the editor. See Property.getNameForDisplay(). If null is passed, the value of the name parameter is used.
defaultValue - the default value
array - the data array

ArrayProperty

public ArrayProperty(java.lang.String name,
                     E defaultValue,
                     E[] array,
                     boolean readonly)
Parameters:
name - the technical name used internally. See Property.getName(). 'nameForDisplay' is set to the same value.
defaultValue - the default value
array - the data array
readonly - read only property?

ArrayProperty

public ArrayProperty(java.lang.String name,
                     E defaultValue,
                     E[] array)
Parameters:
name - the technical name used internally. See Property.getName(). 'nameForDisplay' is set to the same value.
defaultValue - the default value
array - the data array
Method Detail

getArray

public final E[] getArray()
Gets the data array.

Returns:
the data array.

onKeeperSet

protected void onKeeperSet()

Overrides:
onKeeperSet in class Property

onValueChanged

protected void onValueChanged(E oldValue,
                              E newValue)
Invoked when the value has changed.

Parameters:
oldValue - the old value
newValue - the new value

setSelectedValue

protected final boolean setSelectedValue(E value,
                                         boolean firstTime)
Sets the currently selected value.

Parameters:
value -
firstTime -
Returns:
changed?

setSelectedValue

public final boolean setSelectedValue(E value)
Sets the currently selected value.

Parameters:
value -
Returns:
changed?

getSelectedValue

public final E getSelectedValue()
Gets the currently selected value.

Returns:
the currently selected value.

setValue

public void setValue(java.lang.Object value)
Sets the new value for this property.

Specified by:
setValue in class Property
Parameters:
value - the new value

getValue

public E getValue()
Gets the current value fo this property.

Specified by:
getValue in class Property
Returns:
the current value fo this property.

loadValue

public void loadValue(PropertyLoader loader,
                      java.lang.String value)
Loads the value from the configuration file.

Specified by:
loadValue in class Property
Parameters:
loader - the loader
value - the value to load