Class KeyInfo


  • public class KeyInfo
    extends Object
    Represents a keyboard key or key combination. It is used by MapPaneKeyHandler to store key bindings associated with map pane actions.

    You create instances using values of keyCode and modifiers taken from constants in the KeyEvent class:

    
        KeyInfo left = new KeyInfo(KeyEvent.VK_LEFT, 0, "Left");
        KeyInfo shiftUp = new KeyInfo(KeyEvent.VK_UP, KeyEvent.SHIFT_DOWN_MASK, "Shift+Up");
     
    The String argument can later be retrieved with toString() and can be useful for GUI elements such as menu items.
    Since:
    8.0
    Author:
    Michael Bedward
    • Constructor Detail

      • KeyInfo

        public KeyInfo​(int keyCode,
                       int modifiers,
                       String desc)
        Creates a new instance. If desc is null or empty, the description will be set to "KeyInfo(keyCode, modifiers)".
        Parameters:
        keyCode - key code
        modifiers - modifiers (0 for none)
        desc - short description suitable for GUI labels etc.
      • KeyInfo

        public KeyInfo​(KeyInfo keyInfo)
        Creates a copy of an existing instance.
        Parameters:
        keyInfo - the instance to copy
        Throws:
        IllegalArgumentException - if keyInfo is null
    • Method Detail

      • getKeyCode

        public int getKeyCode()
        Gets the key code.
        Returns:
        the key code
      • getModifiers

        public int getModifiers()
        Gets the modifiers.
        Returns:
        the modifiers
      • toString

        public String toString()
        Gets the short text description for this object. This can be useful for GUI labels, menu items etc.
        Overrides:
        toString in class Object
        Returns:
        the description
      • matchesEvent

        public boolean matchesEvent​(KeyEvent e)
        Tests whether the key code and modifiers of this KeyInfo match that of a given KeyEvent. For convenience, this method will return false if the input event is null.
        Parameters:
        e - the input event
        Returns:
        true if the key code and modifier values match those of the input event
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object