Class InputMap

java.lang.Object
javax.swing.InputMap
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
ComponentInputMap,InputMapUIResource

public classInputMapextendsObjectimplementsSerializable
InputMap provides a binding between an input event (currently onlyKeyStrokes are used) and anObject.InputMaps 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 withActionMap 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 Details

    • InputMap

      public InputMap()
      Creates anInputMap with no parent and no mappings.
  • Method Details

    • 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 theInputMap 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 forkeyStroke
    • 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 theKeyStrokes that are bound in thisInputMap.
      Returns:
      an array of theKeyStrokes that are bound in thisInputMap
    • size

      public int size()
      Returns the number ofKeyStroke bindings.
      Returns:
      the number ofKeyStroke bindings
    • allKeys

      public KeyStroke[] allKeys()
      Returns an array of theKeyStrokes defined in thisInputMap and its parent. This differs fromkeys() in that this method includes the keys defined in the parent.
      Returns:
      an array of theKeyStrokes defined in thisInputMap and its parent