VASSAL.build.module.map
Class PieceRecenterer

java.lang.Object
  |
  +--VASSAL.build.AbstractBuildable
        |
        +--VASSAL.build.AbstractConfigurable
              |
              +--VASSAL.build.module.map.PieceRecenterer
All Implemented Interfaces:
AutoConfigurable, Buildable, Configurable, DeckVisitor, PieceVisitor, ValidityChecker

public class PieceRecenterer
extends AbstractConfigurable
implements DeckVisitor

Adds a button to a Maps toolbar that adjusts the positions of all pieces so that their centroid is at the center of the map


Inner Class Summary
static class PieceRecenterer.IconConfig
           
 
Inner classes inherited from class VASSAL.build.AutoConfigurable
AutoConfigurable.Util
 
Field Summary
static java.lang.String BUTTON_TEXT
           
static java.lang.String HOTKEY
           
static java.lang.String ICON
           
 
Fields inherited from class VASSAL.build.AbstractConfigurable
changeSupport, config, name
 
Fields inherited from class VASSAL.build.AbstractBuildable
buildComponents, validator
 
Fields inherited from interface VASSAL.build.Configurable
NAME_PROPERTY
 
Constructor Summary
PieceRecenterer()
           
 
Method Summary
 void addTo(Buildable parent)
          Adds this component to its parent.
 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
static java.lang.String getConfigureTypeName()
           
 HelpFile getHelpFile()
           
 Command recenter(Map map)
          Returns a Command that moves all pieces so that their centroid is centered on the map
 void removeFrom(Buildable parent)
          Remove this component from its parent
 void setAttribute(java.lang.String key, java.lang.Object value)
          Called by the AbstractBuildable.build(org.w3c.dom.Element) method, where value is the String value read by the XML attribute.
 java.lang.Object visitDeck(Deck d)
          Implements DeckVisitor.
 java.lang.Object visitDefault(GamePiece p)
          Implements DeckVisitor.
 java.lang.Object visitStack(Stack s)
          Implements DeckVisitor.
 
Methods inherited from class VASSAL.build.AbstractConfigurable
addPropertyChangeListener, getAttributeVisibility, getConfigureComponents, getConfigureName, getConfigurer, remove, setConfigureName
 
Methods inherited from class VASSAL.build.AbstractBuildable
add, build, getBuildComponents, getBuildElement, getComponents, validate
 
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

BUTTON_TEXT

public static final java.lang.String BUTTON_TEXT

ICON

public static final java.lang.String ICON

HOTKEY

public static final java.lang.String HOTKEY
Constructor Detail

PieceRecenterer

public PieceRecenterer()
Method Detail

recenter

public Command recenter(Map map)
Returns a Command that moves all pieces so that their centroid is centered on the map

visitDeck

public java.lang.Object visitDeck(Deck d)
Implements DeckVisitor. Returns Boolean.TRUE if the piece should be moved
Specified by:
visitDeck in interface DeckVisitor

visitDefault

public java.lang.Object visitDefault(GamePiece p)
Implements DeckVisitor. Returns Boolean.TRUE if the piece should be moved
Specified by:
visitDefault in interface PieceVisitor

visitStack

public java.lang.Object visitStack(Stack s)
Implements DeckVisitor. Returns Boolean.TRUE if the piece should be moved
Specified by:
visitStack in interface PieceVisitor

getConfigureTypeName

public static java.lang.String getConfigureTypeName()

addTo

public void addTo(Buildable parent)
Description copied from interface: Buildable
Adds this component to its parent. In order to make Buildable objects extensible, the child is reponsible for adding itself to the parent. That way, Buildable subcomponents can be defined in an extension package without needing to modify the containing class.

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.

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

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

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

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()

getHelpFile

public HelpFile getHelpFile()
Following copied from interface: VASSAL.build.Configurable
Returns:
a HelpFilte describing how to use and configure this component

removeFrom

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

setAttribute

public void setAttribute(java.lang.String key,
                         java.lang.Object value)
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()