- 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 onlyKeyStroke
s are used) and anObject
.InputMap
s are usually used with anActionMap
, to determine anAction
to perform when a key is pressed. AnInputMap
can have a parent that is searched for bindings not defined in theInputMap
.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
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description InputMap()
Creates anInputMap
with no parent and no mappings.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description KeyStroke[]
allKeys()
Returns an array of theKeyStroke
s defined in thisInputMap
and its parent.void
clear()
Removes all the mappings from thisInputMap
.Object
get(KeyStroke keyStroke)
Returns the binding forkeyStroke
, messaging the parentInputMap
if the binding is not locally defined.InputMap
getParent()
Gets thisInputMap
's parent.KeyStroke[]
keys()
Returns theKeyStroke
s that are bound in thisInputMap
.void
put(KeyStroke keyStroke, Object actionMapKey)
Adds a binding forkeyStroke
toactionMapKey
.void
remove(KeyStroke key)
Removes the binding forkey
from thisInputMap
.void
setParent(InputMap map)
Sets thisInputMap
's parent.int
size()
Returns the number ofKeyStroke
bindings.
-
-
-
Method Detail
setParent
public void setParent(InputMap map)
Sets thisInputMap
's parent.- Parameters:
map
- theInputMap
that is the parent of this one
getParent
public InputMap getParent()
Gets thisInputMap
's parent.- Returns:
-
map the
InputMap
that is the parent of this one, or null if thisInputMap
has no parent
put
public void put(KeyStroke keyStroke, Object actionMapKey)
Adds a binding forkeyStroke
toactionMapKey
. IfactionMapKey
is null, this removes the current binding forkeyStroke
.- Parameters:
keyStroke
- aKeyStroke
actionMapKey
- an action map key
get
public Object get(KeyStroke keyStroke)
Returns the binding forkeyStroke
, messaging the parentInputMap
if the binding is not locally defined.- Parameters:
keyStroke
- theKeyStroke
for which to get the binding- Returns:
-
the binding for
keyStroke
remove
public void remove(KeyStroke key)
Removes the binding forkey
from thisInputMap
.- Parameters:
key
- theKeyStroke
for which to remove the binding
clear
public void clear()
Removes all the mappings from thisInputMap
.
keys
public KeyStroke[] keys()
Returns theKeyStroke
s that are bound in thisInputMap
.- Returns:
-
an array of the
KeyStroke
s that are bound in thisInputMap
size
public int size()
Returns the number ofKeyStroke
bindings.- Returns:
-
the number of
KeyStroke
bindings
allKeys
public KeyStroke[] allKeys()
Returns an array of theKeyStroke
s defined in thisInputMap
and its parent. This differs fromkeys()
in that this method includes the keys defined in the parent.- Returns:
-
an array of the
KeyStroke
s defined in thisInputMap
and its parent
-