VASSAL.build.module
Class DiceButton

java.lang.Object
  |
  +--VASSAL.build.AbstractBuildable
        |
        +--VASSAL.build.AbstractConfigurable
              |
              +--VASSAL.build.module.DiceButton
All Implemented Interfaces:
AutoConfigurable, Buildable, Configurable

public class DiceButton
extends AbstractConfigurable

This component places a button into the controls window toolbar. Pressing the button generates random numbers and displays the result in the Chatter


Nested Class Summary
 
Nested classes inherited from class VASSAL.build.AutoConfigurable
AutoConfigurable.Util
 
Field Summary
static java.lang.String HOTKEY
           
static java.lang.String LABEL
           
protected  LaunchButton launch
           
static java.lang.String N_DICE
           
static java.lang.String N_SIDES
           
protected  int nDice
           
protected  int nSides
           
protected  int plus
           
static java.lang.String PLUS
           
static java.lang.String PROMPT_ALWAYS
           
protected  boolean promptAlways
           
protected  java.util.Random ran
           
static java.lang.String REPORT_TOTAL
           
protected  boolean reportTotal
           
 
Fields inherited from class VASSAL.build.AbstractConfigurable
changeSupport, config, name
 
Fields inherited from class VASSAL.build.AbstractBuildable
buildComponents
 
Fields inherited from interface VASSAL.build.Configurable
NAME_PROPERTY
 
Constructor Summary
DiceButton()
           
 
Method Summary
 void addTo(Buildable parent)
          Expects to be added to a GameModule.
protected  void DR()
          Forwards the result of the roll to the Chatter.send(java.lang.String) method of the Chatter of the GameModule.
 java.lang.Class[] getAllowableConfigureComponents()
          Return a list of valid sub-component Classes.
 java.lang.String[] getAttributeDescriptions()
          Return an array of Strings describing the attributes of this object.
 java.lang.String[] getAttributeNames()
          The Attributes of a DiceButton are: LABEL the label of the button in the toolbar HOTKEY the hotkey equivalent of the button N_DICE the number of dice to roll on each button press N_SIDES the number of sides of each die REPORT_TOTALL If true, add the results of the dice together and report the total.
 java.lang.Class[] getAttributeTypes()
          Return the Class for the attributes of this object.
 java.lang.String getAttributeValueString(java.lang.String key)
          Called by the AbstractBuildable.getBuildElement(org.w3c.dom.Document) method to write the attributes into an XML element
 VisibilityCondition getAttributeVisibility(java.lang.String name)
          By default, all attributes are visible
protected  java.awt.Component getComponent()
          The component to be added to the control window toolbar
static java.lang.String getConfigureTypeName()
           
 HelpFile getHelpFile()
           
protected  java.lang.String getReportPrefix()
          The text reported before the results of the roll
protected  java.lang.String getReportSuffix()
          The text reported after the results of the roll;
 void removeFrom(Buildable b)
          Remove this component from its parent
 void setAttribute(java.lang.String key, java.lang.Object o)
          Called by the AbstractBuildable.build(org.w3c.dom.Element) method, where value is the String value read by the XML attribute.
 
Methods inherited from class VASSAL.build.AbstractConfigurable
addPropertyChangeListener, getConfigureComponents, getConfigureName, getConfigurer, remove, setConfigureName
 
Methods inherited from class VASSAL.build.AbstractBuildable
add, build, getBuildComponents, getBuildElement, getComponents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface VASSAL.build.Buildable
add, build, getBuildElement
 

Field Detail

ran

protected java.util.Random ran

nSides

protected int nSides

nDice

protected int nDice

plus

protected int plus

reportTotal

protected boolean reportTotal

promptAlways

protected boolean promptAlways

launch

protected LaunchButton launch

LABEL

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

N_DICE

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

N_SIDES

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

PLUS

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

HOTKEY

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

REPORT_TOTAL

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

PROMPT_ALWAYS

public static final java.lang.String PROMPT_ALWAYS
See Also:
Constant Field Values
Constructor Detail

DiceButton

public DiceButton()
Method Detail

getConfigureTypeName

public static java.lang.String getConfigureTypeName()

getReportPrefix

protected java.lang.String getReportPrefix()
The text reported before the results of the roll


getReportSuffix

protected java.lang.String getReportSuffix()
The text reported after the results of the roll;


DR

protected void DR()
Forwards the result of the roll to the Chatter.send(java.lang.String) method of the Chatter of the GameModule. Format is prefix+[comma-separated roll list]+suffix


getAttributeNames

public java.lang.String[] getAttributeNames()
The Attributes of a DiceButton are: LABEL the label of the button in the toolbar HOTKEY the hotkey equivalent of the button N_DICE the number of dice to roll on each button press N_SIDES the number of sides of each die REPORT_TOTALL If true, add the results of the dice together and report the total. Otherwise, report the individual results

Specified by:
getAttributeNames in interface AutoConfigurable
Specified by:
getAttributeNames in class AbstractBuildable
Returns:
an array of Strings giving all attributes of this Buildable component that will be written to/read from an XML element

getAttributeDescriptions

public java.lang.String[] getAttributeDescriptions()
Description copied from class: AbstractConfigurable
Return an array of Strings describing the attributes of this object. These strings are used as prompts in the Properties window for this object. The order of descriptions should be the same as the order of names in AbstractBuildable.getAttributeNames()

Specified by:
getAttributeDescriptions in interface AutoConfigurable
Specified by:
getAttributeDescriptions in class AbstractConfigurable

getAttributeTypes

public java.lang.Class[] getAttributeTypes()
Description copied from class: AbstractConfigurable
Return the Class for the attributes of this object. Valid classes are: String, Integer, Double, Boolean, Image, Color, and KeyStroke The order of classes should be the same as the order of names in AbstractBuildable.getAttributeNames()

Specified by:
getAttributeTypes in interface AutoConfigurable
Specified by:
getAttributeTypes in class AbstractConfigurable

getAttributeVisibility

public VisibilityCondition getAttributeVisibility(java.lang.String name)
Description copied from class: AbstractConfigurable
By default, all attributes are visible

Specified by:
getAttributeVisibility in interface AutoConfigurable
Overrides:
getAttributeVisibility in class AbstractConfigurable
Parameters:
name -
Returns:

addTo

public void addTo(Buildable parent)
Expects to be added to a GameModule. Adds the button to the control window's toolbar and registers itself as a KeyStrokeListener


getComponent

protected java.awt.Component getComponent()
The component to be added to the control window toolbar


setAttribute

public void setAttribute(java.lang.String key,
                         java.lang.Object o)
Description copied from interface: AutoConfigurable
Called by the Buildable.build(org.w3c.dom.Element) method, where value is the String value read by the XML attribute. Can also be called with Object value to set the attribute.

Specified by:
setAttribute in interface AutoConfigurable
Specified by:
setAttribute in class AbstractBuildable
Parameters:
key - the name of the attribute. Will be one of those listed in AbstractBuildable.getAttributeNames()

getAttributeValueString

public java.lang.String getAttributeValueString(java.lang.String key)
Description copied from interface: AutoConfigurable
Called by the Buildable.getBuildElement(org.w3c.dom.Document) method to write the attributes into an XML element

Specified by:
getAttributeValueString in interface AutoConfigurable
Specified by:
getAttributeValueString in class AbstractBuildable
Parameters:
key - the name of the attribute. Will be one of those listed in AbstractBuildable.getAttributeNames()

getAllowableConfigureComponents

public java.lang.Class[] getAllowableConfigureComponents()
Description copied from interface: Configurable
Return a list of valid sub-component Classes. If a Class appears in this list, then instances of that class may be added to this component from the Configuration Window.


removeFrom

public void removeFrom(Buildable b)
Description copied from interface: Configurable
Remove this component from its parent


getHelpFile

public HelpFile getHelpFile()
Returns:
a HelpFilte describing how to use and configure this component