VASSAL.build.module.map
Class CounterDetailViewer

java.lang.Object
  |
  +--VASSAL.build.AbstractBuildable
        |
        +--VASSAL.build.AbstractConfigurable
              |
              +--VASSAL.build.module.map.CounterDetailViewer
All Implemented Interfaces:
AutoConfigurable, Buildable, Configurable, Drawable, java.util.EventListener, java.awt.event.KeyListener, java.awt.event.MouseMotionListener, java.lang.Runnable

public class CounterDetailViewer
extends AbstractConfigurable
implements Drawable, java.awt.event.MouseMotionListener, java.lang.Runnable, java.awt.event.KeyListener

This is a Drawable class that draws the counters horizontally when the mouse is held over a stack with the control key down.

Version:
1.0
Author:
David Sullivan

Inner classes inherited from class VASSAL.build.AutoConfigurable
AutoConfigurable.Util
 
Field Summary
static java.lang.String ALWAYS_SHOW_LOC
           
protected  boolean alwaysShowLoc
           
protected  java.awt.event.MouseEvent currentMousePosition
           
protected  GamePiece currentPiece
           
protected  int delay
           
protected  java.lang.Thread delayThread
           
protected  long expirationTime
           
protected  Map map
           
static java.lang.String USE_KEYBOARD
           
protected  boolean visible
           
 
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
CounterDetailViewer()
           
 
Method Summary
 void addTo(Buildable b)
          Adds this component to its parent.
 void draw(java.awt.Graphics g, Map map)
           
 void draw(java.awt.Graphics g, java.awt.Point pt, javax.swing.JComponent comp)
           
protected  GamePiece findPieceAtMousePosition()
           
 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 name)
          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()
           
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void removeFrom(Buildable parent)
          Remove this component from its parent
 void run()
           
 void setAttribute(java.lang.String name, 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.
protected  boolean shouldBeVisible()
           
protected  void showDetails()
           
 
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
 
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

USE_KEYBOARD

public static final java.lang.String USE_KEYBOARD

ALWAYS_SHOW_LOC

public static final java.lang.String ALWAYS_SHOW_LOC

map

protected Map map

delayThread

protected java.lang.Thread delayThread

delay

protected int delay

expirationTime

protected long expirationTime

visible

protected boolean visible

currentMousePosition

protected java.awt.event.MouseEvent currentMousePosition

currentPiece

protected GamePiece currentPiece

alwaysShowLoc

protected boolean alwaysShowLoc
Constructor Detail

CounterDetailViewer

public CounterDetailViewer()
Method Detail

addTo

public void addTo(Buildable b)
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.

draw

public void draw(java.awt.Graphics g,
                 Map map)
Specified by:
draw in interface Drawable

draw

public void draw(java.awt.Graphics g,
                 java.awt.Point pt,
                 javax.swing.JComponent comp)

run

public void run()
Specified by:
run in interface java.lang.Runnable

showDetails

protected void showDetails()

shouldBeVisible

protected boolean shouldBeVisible()

findPieceAtMousePosition

protected GamePiece findPieceAtMousePosition()

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Specified by:
keyTyped in interface java.awt.event.KeyListener

keyPressed

public void keyPressed(java.awt.event.KeyEvent e)
Specified by:
keyPressed in interface java.awt.event.KeyListener

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener

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

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.

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

getAttributeValueString

public java.lang.String getAttributeValueString(java.lang.String name)
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()

getConfigureTypeName

public static java.lang.String getConfigureTypeName()