java.lang.Object
javax.swing.InputMap
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
ComponentInputMap,InputMapUIResource
public class InputMap extends Object implements Serializable
InputMap provides a binding between an input event (currently only
KeyStrokes are used) and an Object. InputMaps are
usually used with an ActionMap, to determine an Action to
perform when a key is pressed. An InputMap can have a parent that
is searched for bindings not defined in the InputMap.
As with ActionMap if you create a cycle, eg:
InputMap am = new InputMap(); InputMap bm = new InputMap(): am.setParent(bm); bm.setParent(am);some of the methods will cause a StackOverflowError to be thrown.
- Since:
- 1.3
-
Constructor Summary
Constructors Constructor Description InputMap()Creates anInputMapwith no parent and no mappings. -
Method Summary
Modifier and Type Method Description KeyStroke[]allKeys()Returns an array of theKeyStrokes defined in thisInputMapand its parent.voidclear()Removes all the mappings from thisInputMap.Objectget(KeyStroke keyStroke)Returns the binding forkeyStroke, messaging the parentInputMapif the binding is not locally defined.InputMapgetParent()Gets thisInputMap's parent.KeyStroke[]keys()Returns theKeyStrokes that are bound in thisInputMap.voidput(KeyStroke keyStroke, Object actionMapKey)Adds a binding forkeyStroketoactionMapKey.voidremove(KeyStroke key)Removes the binding forkeyfrom thisInputMap.voidsetParent(InputMap map)Sets thisInputMap's parent.intsize()Returns the number ofKeyStrokebindings.
-
Constructor Details
-
InputMap
public InputMap()Creates anInputMapwith no parent and no mappings.
-
-
Method Details
-
setParent
Sets thisInputMap's parent.- Parameters:
map- theInputMapthat is the parent of this one
-
getParent
Gets thisInputMap's parent.- Returns:
- map the
InputMapthat is the parent of this one, or null if thisInputMaphas no parent
-
put
Adds a binding forkeyStroketoactionMapKey. IfactionMapKeyis null, this removes the current binding forkeyStroke.- Parameters:
keyStroke- aKeyStrokeactionMapKey- an action map key
-
get
Returns the binding forkeyStroke, messaging the parentInputMapif the binding is not locally defined.- Parameters:
keyStroke- theKeyStrokefor which to get the binding- Returns:
- the binding for
keyStroke
-
remove
Removes the binding forkeyfrom thisInputMap.- Parameters:
key- theKeyStrokefor which to remove the binding
-
clear
public void clear()Removes all the mappings from thisInputMap. -
keys
Returns theKeyStrokes that are bound in thisInputMap.- Returns:
- an array of the
KeyStrokes that are bound in thisInputMap
-
size
public int size()Returns the number ofKeyStrokebindings.- Returns:
- the number of
KeyStrokebindings
-
allKeys
Returns an array of theKeyStrokes defined in thisInputMapand its parent. This differs fromkeys()in that this method includes the keys defined in the parent.- Returns:
- an array of the
KeyStrokes defined in thisInputMapand its parent
-