Package VASSAL.counters
Class ActionButton
java.lang.Object
VASSAL.counters.Decorator
VASSAL.counters.ActionButton
- All Implemented Interfaces:
PropertyNameSource
,PropertySource
,EditablePiece
,GamePiece
,PropertyExporter
,StateMergeable
,PersistentPropertyContainer
,RecursionLimiter.Loopable
public class ActionButton extends Decorator implements EditablePiece, RecursionLimiter.Loopable
A trait that acts like a button on a GamePiece, such that clicking on a
particular area of the piece invokes a keyboard command
- Author:
- rkinney
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
ActionButton.ButtonPusher
Registers mouse listeners with Maps and other components.static class
ActionButton.Ed
-
Field Summary
Fields Modifier and Type Field Description protected Rectangle
bounds
protected String
description
protected static ActionButton.ButtonPusher
globalPusher
static String
ID
protected ActionButton.ButtonPusher
pusher
protected NamedKeyStroke
stroke
Fields inherited from interface VASSAL.counters.PropertyExporter
LOCALIZED_NAME
-
Constructor Summary
Constructors Constructor Description ActionButton()
ActionButton(String type, GamePiece inner)
-
Method Summary
Modifier and Type Method Description Rectangle
boundingBox()
The area which this GamePiece occupies when drawn at the point (0,0)void
draw(Graphics g, int x, int y, Component obs, double zoom)
Draw this GamePieceString
getComponentName()
String
getComponentTypeName()
String
getDescription()
A plain-English description of this type of piecePieceEditor
getEditor()
Get the configurer for this traitHelpFile
getHelpFile()
String
getName()
The plain English name for this pieceShape
getShape()
The shape of the piece from the user's viewpoint.protected KeyCommand[]
myGetKeyCommands()
String
myGetState()
String
myGetType()
Command
myKeyEvent(KeyStroke stroke)
The response of this trait alone to the given KeyStrokevoid
mySetState(String newState)
Set just the state of this traitvoid
mySetType(String type)
Set the type information for this piece.void
setMap(Map m)
Each GamePiece belongs to a singleMap
Methods inherited from class VASSAL.counters.Decorator
getCommandDescription, getDecorator, getI18nData, getI18nData, getI18nData, getId, getInner, getInnermost, getKeyCommands, getLocalizedName, getLocalizedProperty, getMap, getOuter, getOutermost, getParent, getPersistentProperty, getPosition, getProperties, getProperty, getPropertyNames, getState, getTranslation, getType, isSelected, keyEvent, mergeState, putOldProperties, repack, reportDataError, reportDataError, reportDataError, setId, setInner, setOldProperties, setOldProperties, setParent, setPersistentProperty, setPosition, setProperty, setSelected, setState, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface VASSAL.counters.GamePiece
getId, getLocalizedName, getMap, getParent, getPosition, getProperty, getState, getType, keyEvent, setId, setParent, setPosition, setProperty, setState
Methods inherited from interface VASSAL.counters.PropertyExporter
getProperties
Methods inherited from interface VASSAL.build.module.properties.PropertySource
getLocalizedProperty
-
Field Details
-
ID
- See Also:
- Constant Field Values
-
stroke
-
bounds
-
pusher
-
description
-
globalPusher
-
-
Constructor Details
-
ActionButton
public ActionButton() -
ActionButton
-
-
Method Details
-
mySetState
Description copied from class:Decorator
Set just the state of this trait- Specified by:
mySetState
in classDecorator
- See Also:
Decorator.myGetState()
-
myGetState
- Specified by:
myGetState
in classDecorator
- Returns:
- the state of this trait alone
- See Also:
Decorator.getState()
-
myGetType
- Specified by:
myGetType
in classDecorator
- Returns:
- the type of this trait alone
- See Also:
Decorator.getType()
-
myGetKeyCommands
- Specified by:
myGetKeyCommands
in classDecorator
- Returns:
- the commands for this trait alone
- See Also:
Decorator.getKeyCommands()
-
myKeyEvent
Description copied from class:Decorator
The response of this trait alone to the given KeyStroke- Specified by:
myKeyEvent
in classDecorator
- Parameters:
stroke
- Stroke to apply- Returns:
- Generated Command or null if no effect
- See Also:
Decorator.keyEvent(javax.swing.KeyStroke)
-
draw
Description copied from interface:GamePiece
Draw this GamePiece -
boundingBox
Description copied from interface:GamePiece
The area which this GamePiece occupies when drawn at the point (0,0)- Specified by:
boundingBox
in interfaceGamePiece
-
getShape
Description copied from interface:GamePiece
The shape of the piece from the user's viewpoint. This defines the area in which the user must click to select or move the piece, for example. LikeGamePiece.boundingBox()
, it assumes the position is (0,0) and must be translated to the actual location where the piece is being drawn. -
getName
Description copied from interface:GamePiece
The plain English name for this piece -
setMap
Description copied from interface:GamePiece
Each GamePiece belongs to a singleMap
-
getDescription
Description copied from interface:EditablePiece
A plain-English description of this type of piece- Specified by:
getDescription
in interfaceEditablePiece
-
mySetType
Description copied from interface:EditablePiece
Set the type information for this piece. SeeDecorator.myGetType()
- Specified by:
mySetType
in interfaceEditablePiece
-
getHelpFile
- Specified by:
getHelpFile
in interfaceEditablePiece
-
getComponentName
- Specified by:
getComponentName
in interfaceRecursionLimiter.Loopable
-
getComponentTypeName
- Specified by:
getComponentTypeName
in interfaceRecursionLimiter.Loopable
-
getEditor
Description copied from interface:EditablePiece
Get the configurer for this trait- Specified by:
getEditor
in interfaceEditablePiece
- Overrides:
getEditor
in classDecorator
-