# VASSAL Reference Manual

Home > Module > Action Button

## Action Button

The Action Button combines a number of different actions into a single button. When the button is pressed, or receives its Hotkey, it can display a message to the Chat Window, Play a sound, or send a list of Hotkeys to other components.
Description: An identifying name for this button.
Button text: The text of the button to be added to the toolbar.
Button Tooltip text: The tooltip text of the button to be added to the toolbar.
Button Icon: Icon for the toolbar button.
Hotkey: Keyboard shortcut for the toolbar button.
Display Message? Select to display a message to the Chat Window when the button is activated.
Report Format: Message Format to report to the chat line.
Play a sound? Select to play a sound clip when the button is activated.
Sound Clip: The Sound clip file to be played.
Send Hotkeys? Select to send Hotkeys to other components when the button is activated.
Hot Keys: The list of Hotkeys to be sent. Use the New button to add another key, or the Remove buttons to remove existing keys.
Repeat this set of actions (Loop)? Allows you to perform the specified actions multiple times.
Repeat fixed number of times This loop option allows you to repeat the set of actions a specified number of times.
Repeat while condition is true This loop option allows you to repeat the set of actions while a Property Expression remains true.
Repeat until condition is true This loop option allows you to repeat the set of actions until a Property Expression becomes true.
Loop how many times? An Expression that defines how many times to generate the set of actions (for a fixed loop).
Loop while/until condition is true: Enter the Property Expression that controls how long to keep looping (for a while or until loop).
Perform this KeyStroke once before looping starts: For all loop types, enter a HotKey that will be performed once before the looping process commences.
Perform this KeyStroke once after looping complete: For all loop types, enter a HotKey that will be performed once after the looping process finishes.
Create a Loop Index Property? For all loop types, allows you to create a Property whose value will changes as the looping process proceeds.
Index Property Name: The name of the property that will be created. Index Property start value: An Expression that sets the value of the index property prior to looping commencing. The expression must evaluate to a whole number.
Index Property increment value: An Expression that defines how much will be added to the Index Property at the start of each loop. The expression must evaluate to a whole number.