Class KeyStroke

java.lang.Object
org.eclipse.jface.bindings.Trigger
org.eclipse.jface.bindings.keys.KeyStroke
All Implemented Interfaces:
Comparable

public final class KeyStroke extends Trigger

A KeyStroke is defined as an optional set of modifier keys followed optionally by a natural key. A KeyStroke is said to be complete if it contains a natural key. A natural key is any Unicode character (e.g., "backspace", etc.), any character belonging to a natural language (e.g., "A", "1", "[", etc.), or any special control character specific to computers (e.g., "F10", "PageUp", etc.).

All KeyStroke objects have a formal string representation available via the toString() method. There are a number of methods to get instances of KeyStroke objects, including one which can parse this formal string representation.

All KeyStroke objects, via the format() method, provide a version of their formal string representation translated by platform and locale, suitable for display to a user.

KeyStroke objects are immutable. Clients are not permitted to extend this class.

Since:
3.1
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    The delimiter between multiple keys in a single key strokes -- expressed in the formal key stroke grammar.
    static final String
    The set of delimiters for Key objects allowed during parsing of the formal string representation.
    static final int
    The representation for no key.
  • Method Summary

    Modifier and Type
    Method
    Description
    final int
    compareTo(Object object)
     
    final boolean
    equals(Object object)
    Tests whether this object is equal to another object.
    final String
    Formats this key stroke into the current default look.
    static final KeyStroke
    getInstance(int naturalKey)
    Creates an instance of KeyStroke given a natural key.
    static final KeyStroke
    getInstance(int modifierKeys, int naturalKey)
    Creates an instance of KeyStroke given a set of modifier keys and a natural key.
    static final KeyStroke
    Creates an instance of KeyStroke by parsing a given a formal string representation.
    final int
    Returns the modifier keys for this key stroke.
    final int
    Returns the natural key for this key stroke.
    final int
    Computes the hash code for this object.
    final boolean
    Returns whether or not this key stroke is complete.
    final String
    Returns the formal string representation for this key stroke.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • KEY_DELIMITER

      public static final String KEY_DELIMITER
      The delimiter between multiple keys in a single key strokes -- expressed in the formal key stroke grammar. This is not to be displayed to the user. It is only intended as an internal representation.
      See Also:
    • KEY_DELIMITERS

      public static final String KEY_DELIMITERS
      The set of delimiters for Key objects allowed during parsing of the formal string representation.
      See Also:
    • NO_KEY

      public static final int NO_KEY
      The representation for no key.
      See Also:
  • Method Details

    • getInstance

      public static final KeyStroke getInstance(int naturalKey)
      Creates an instance of KeyStroke given a natural key.
      Parameters:
      naturalKey - the natural key. The format of this integer is defined by whichever widget toolkit you are using; NO_KEY always means no natural key.
      Returns:
      a key stroke. This key stroke will have no modifier keys. Guaranteed not to be null.
      See Also:
    • getInstance

      public static final KeyStroke getInstance(int modifierKeys, int naturalKey)
      Creates an instance of KeyStroke given a set of modifier keys and a natural key.
      Parameters:
      modifierKeys - the modifier keys. The format of this integer is defined by whichever widget toolkit you are using; NO_KEY always means no modifier keys.
      naturalKey - the natural key. The format of this integer is defined by whichever widget toolkit you are using; NO_KEY always means no natural key.
      Returns:
      a key stroke. Guaranteed not to be null.
      See Also:
    • getInstance

      public static final KeyStroke getInstance(String string) throws ParseException
      Creates an instance of KeyStroke by parsing a given a formal string representation.
      Parameters:
      string - the formal string representation to parse.
      Returns:
      a key stroke. Guaranteed not to be null.
      Throws:
      ParseException - if the given formal string representation could not be parsed to a valid key stroke.
    • compareTo

      public final int compareTo(Object object)
    • equals

      public final boolean equals(Object object)
      Description copied from class: Trigger
      Tests whether this object is equal to another object. A handle object is only equal to another trigger with the same properties.
      Specified by:
      equals in class Trigger
      Parameters:
      object - The object with which to compare; may be null.
      Returns:
      true if the objects are equal; false otherwise.
    • format

      public final String format()
      Formats this key stroke into the current default look.
      Returns:
      A string representation for this key stroke using the default look; never null.
    • getModifierKeys

      public final int getModifierKeys()
      Returns the modifier keys for this key stroke.
      Returns:
      the bit mask of modifier keys; NO_KEY means that there is no modifier key.
    • getNaturalKey

      public final int getNaturalKey()
      Returns the natural key for this key stroke.
      Returns:
      The natural key for this key stroke. This value is NO_KEY if the key stroke is incomplete (i.e., has no natural key).
    • hashCode

      public final int hashCode()
      Description copied from class: Trigger
      Computes the hash code for this object.
      Specified by:
      hashCode in class Trigger
      Returns:
      The hash code for this object.
    • isComplete

      public final boolean isComplete()
      Returns whether or not this key stroke is complete. Key strokes are complete iff they have a natural key which is not NO_KEY.
      Returns:
      true, iff the key stroke is complete.
    • toString

      public final String toString()
      Returns the formal string representation for this key stroke.
      Overrides:
      toString in class Object
      Returns:
      The formal string representation for this key stroke. Guaranteed not to be null.