charvax.swing

Class ActionMap

Implemented Interfaces:
Serializable

public class ActionMap
extends java.lang.Object
implements Serializable

ActionMap provides mappings from Objects (called keys or Action names) to Actions. An ActionMap is usually used with an InputMap to locate a particular action when a key is pressed. As with InputMap, an ActionMap can have a parent that is searched for keys not defined in the ActionMap.

As with InputMap if you create a cycle, eg:

   ActionMap am = new ActionMap();
   ActionMap bm = new ActionMap():
   am.setParent(bm);
   bm.setParent(am);
 
some of the methods will cause a StackOverflowError to be thrown.
Version:
1.14 12/19/03
Author:
Scott Violet
See Also:
javax.swing.InputMap

Constructor Summary

ActionMap()
Creates an ActionMap with no parent and no mappings.

Method Summary

Object[]
allKeys()
Returns an array of the keys defined in this ActionMap and its parent.
void
clear()
Removes all the mappings from this ActionMap.
Action
get(Object key)
Returns the binding for key, messaging the parent ActionMap if the binding is not locally defined.
ActionMap
getParent()
Returns this ActionMap's parent.
Object[]
keys()
Returns the Action names that are bound in this ActionMap.
void
put(Object key, Action action)
Adds a binding for key to action.
void
remove(Object key)
Removes the binding for key from this ActionMap.
void
setParent(ActionMap map)
Sets this ActionMap's parent.
int
size()
Returns the number of KeyStroke bindings.

Constructor Details

ActionMap

public ActionMap()
Creates an ActionMap with no parent and no mappings.

Method Details

allKeys

public Object[] allKeys()
Returns an array of the keys defined in this ActionMap and its parent. This method differs from keys() in that this method includes the keys defined in the parent.

clear

public void clear()
Removes all the mappings from this ActionMap.

get

public Action get(Object key)
Returns the binding for key, messaging the parent ActionMap if the binding is not locally defined.

getParent

public ActionMap getParent()
Returns this ActionMap's parent.
Returns:
the ActionMap that is the parent of this one, or null if this ActionMap has no parent

keys

public Object[] keys()
Returns the Action names that are bound in this ActionMap.

put

public void put(Object key,
                Action action)
Adds a binding for key to action. If action is null, this removes the current binding for key.

In most instances, key will be action.getValue(NAME).


remove

public void remove(Object key)
Removes the binding for key from this ActionMap.

setParent

public void setParent(ActionMap map)
Sets this ActionMap's parent.
Parameters:
map - the ActionMap that is the parent of this one

size

public int size()
Returns the number of KeyStroke bindings.