VASSAL.build.module
Class DiceButton

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

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


Inner Class Summary
static class DiceButton.IconConfig
           
static class DiceButton.ReportFormatConfig
           
 
Inner classes inherited from class VASSAL.build.AutoConfigurable
AutoConfigurable.Util
 
Field Summary
static java.lang.String BUTTON_TEXT
           
static java.lang.String DEPRECATED_NAME
           
static java.lang.String HOTKEY
           
static java.lang.String ICON
           
protected  LaunchButton launch
           
static java.lang.String N_DICE
           
static java.lang.String N_SIDES
           
static java.lang.String NAME
           
protected  int nDice
           
protected  int nSides
           
static java.lang.String PLAYER_NAME
          Variable name for reporting format
static java.lang.String PLAYER_SIDE
          Variable name for reporting format
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_FORMAT
           
static java.lang.String REPORT_NAME
           
static java.lang.String REPORT_TOTAL
           
protected  FormattedString reportFormat
           
protected  boolean reportTotal
           
static java.lang.String RESULT
          Variable name for reporting format
 
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.
protected  java.lang.String formatResult(java.lang.String result)
          Use the configured FormattedString to format the result of a roll
 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()
           
 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

reportFormat

protected FormattedString reportFormat

launch

protected LaunchButton launch

DEPRECATED_NAME

public static final java.lang.String DEPRECATED_NAME

BUTTON_TEXT

public static final java.lang.String BUTTON_TEXT

NAME

public static final java.lang.String NAME

ICON

public static final java.lang.String ICON

N_DICE

public static final java.lang.String N_DICE

N_SIDES

public static final java.lang.String N_SIDES

PLUS

public static final java.lang.String PLUS

HOTKEY

public static final java.lang.String HOTKEY

REPORT_TOTAL

public static final java.lang.String REPORT_TOTAL

PROMPT_ALWAYS

public static final java.lang.String PROMPT_ALWAYS

REPORT_FORMAT

public static final java.lang.String REPORT_FORMAT

PLAYER_NAME

public static final java.lang.String PLAYER_NAME
Variable name for reporting format

PLAYER_SIDE

public static final java.lang.String PLAYER_SIDE
Variable name for reporting format

RESULT

public static final java.lang.String RESULT
Variable name for reporting format

REPORT_NAME

public static final java.lang.String REPORT_NAME
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

formatResult

protected java.lang.String formatResult(java.lang.String result)
Use the configured FormattedString to format the result of a roll
Parameters:
result -  
Returns:
 

getAttributeNames

public java.lang.String[] getAttributeNames()
Overrides:
getAttributeNames in class AbstractBuildable
Following copied from interface: VASSAL.build.AutoConfigurable
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()
Overrides:
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()
Overrides:
getAttributeTypes in class AbstractConfigurable

getAttributeVisibility

public VisibilityCondition getAttributeVisibility(java.lang.String name)
Description copied from class: AbstractConfigurable
By default, all attributes are visible
Overrides:
getAttributeVisibility in class AbstractConfigurable
Following copied from class: VASSAL.build.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.
Overrides:
setAttribute in class AbstractBuildable
Following copied from class: VASSAL.build.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
Overrides:
getAttributeValueString in class AbstractBuildable
Following copied from class: VASSAL.build.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()
Following copied from interface: VASSAL.build.Configurable
Returns:
a HelpFilte describing how to use and configure this component