Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.3.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing
Class InputMap

    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 `KeyStroke`s are used) and an `Object`. `InputMap`s 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
See Also:
  Serialized Form

Constructor Summary
`InputMap()` Creates an `InputMap` with no parent and no mappings.

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

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### InputMap

    public InputMap()

  Creates an `InputMap` with no parent and no mappings.

Method Detail

### setParent

    public void setParent(InputMap map)

  Sets this `InputMap`'s parent.
  Parameters:
    `map` - the `InputMap` that is the parent of this one

### getParent

    public InputMap getParent()

  Gets this `InputMap`'s parent.
  Returns:
    map the `InputMap` that is the parent of this one, or null if this `InputMap` has no parent

### put

    public void put(KeyStroke keyStroke,
                    Object actionMapKey)

  Adds a binding for `keyStroke` to `actionMapKey`. If `actionMapKey` is null, this removes the current binding for `keyStroke`.

### get

    public Object get(KeyStroke keyStroke)

  Returns the binding for `keyStroke`, messaging the parent `InputMap` if the binding is not locally defined.

### remove

    public void remove(KeyStroke key)

  Removes the binding for `key` from this `InputMap`.

### clear

    public void clear()

  Removes all the mappings from this `InputMap`.

### keys

    public KeyStroke[] keys()

  Returns the `KeyStroke`s that are bound in this `InputMap`.

### size

    public int size()

  Returns the number of `KeyStroke` bindings.

### allKeys

    public KeyStroke[] allKeys()

  Returns an array of the `KeyStroke`s defined in this `InputMap` and its parent. This differs from `keys()` in that this method includes the keys defined in the parent.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.3.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.