ComponentInputMap (Java SE 15 & JDK 15)
Description: declaration: module: java.desktop, package: javax.swing, class: ComponentInputMap
Keywords: javax.swing.ComponentInputMap class

Module java.desktop
Package javax.swing

# Class ComponentInputMap

java.lang.Object
javax.swing.InputMap
javax.swing.ComponentInputMap

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ComponentInputMapUIResource`

    public class ComponentInputMap
    extends InputMap

A `ComponentInputMap` is an `InputMap` associated with a particular `JComponent`. The component is automatically notified whenever the `ComponentInputMap` changes. `ComponentInputMap`s are used for `WHEN_IN_FOCUSED_WINDOW` bindings.

Since:
  1.3

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `ComponentInputMap​(JComponent component)` | Creates a `ComponentInputMap` associated with the specified component.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `clear()` | Removes all the mappings from this object.
  `JComponent` | `getComponent()` | Returns the component the `InputMap` was created for.
  `void` | `put​(KeyStroke keyStroke, Object actionMapKey)` | Adds a binding for `keyStroke` to `actionMapKey`.
  `void` | `remove​(KeyStroke key)` | Removes the binding for `key` from this object.
  `void` | `setParent​(InputMap map)` | Sets the parent, which must be a `ComponentInputMap` associated with the same component as this `ComponentInputMap`.

  ### Methods declared in class javax.swing.InputMap

  `allKeys, get, getParent, keys, size`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ComponentInputMap

    public ComponentInputMap​(JComponent component)
    Creates a `ComponentInputMap` associated with the specified component.
    Parameters:
      `component` - a non-null `JComponent`
    Throws:
      `IllegalArgumentException` - if `component` is null

- ## Method Details

  - ### setParent

    public void setParent​(InputMap map)
    Sets the parent, which must be a `ComponentInputMap` associated with the same component as this `ComponentInputMap`.
    Overrides:
      `setParent` in class `InputMap`
    Parameters:
      `map` - a `ComponentInputMap`
    Throws:
      `IllegalArgumentException` - if `map` is not a `ComponentInputMap` or is not associated with the same component

  - ### getComponent

    public JComponent getComponent()
    Returns the component the `InputMap` was created for.
    Returns:
      the component the `InputMap` was created for.

  - ### 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`.
    Overrides:
      `put` in class `InputMap`
    Parameters:
      `keyStroke` - a `KeyStroke`
      `actionMapKey` - an action map key

  - ### remove

    public void remove​(KeyStroke key)
    Removes the binding for `key` from this object.
    Overrides:
      `remove` in class `InputMap`
    Parameters:
      `key` - the `KeyStroke` for which to remove the binding

  - ### clear

    public void clear()
    Removes all the mappings from this object.
    Overrides:
      `clear` in class `InputMap`