Class KeySequence
- java.lang.Object
-
- org.eclipse.jface.bindings.TriggerSequence
-
- org.eclipse.jface.bindings.keys.KeySequence
-
- All Implemented Interfaces:
Comparable
public final class KeySequence extends TriggerSequence implements Comparable
A
KeySequenceis defined as a list of zero or moreKeyStrokes, with the stipulation that allKeyStrokeobjects must be complete, save for the last one, whose completeness is optional. AKeySequenceis said to be complete if all of itsKeyStrokeobjects are complete.All
KeySequenceobjects have a formal string representation available via thetoString()method. There are a number of methods to get instances ofKeySequenceobjects, including one which can parse this formal string representation.All
KeySequenceobjects, via theformat()method, provide a version of their formal string representation translated by platform and locale, suitable for display to a user.KeySequenceobjects are immutable. Clients are not permitted to extend this class.- Since:
- 3.1
-
-
Field Summary
Fields Modifier and Type Field Description static StringKEY_STROKE_DELIMITERThe delimiter between multiple key strokes in a single key sequence -- expressed in the formal key stroke grammar.static StringKEY_STROKE_DELIMITERSThe set of delimiters forKeyStrokeobjects allowed during parsing of the formal string representation.-
Fields inherited from class org.eclipse.jface.bindings.TriggerSequence
hashCode, triggers
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedKeySequence(KeyStroke[] keyStrokes)Constructs an instance ofKeySequencegiven a list of key strokes.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(Object object)Stringformat()Formats this key sequence into the current default look.static KeySequencegetInstance()Gets an instance ofKeySequence.static KeySequencegetInstance(String string)Creates an instance ofKeySequenceby parsing a given formal string representation.static KeySequencegetInstance(List<KeyStroke> keyStrokes)Creates an instance ofKeySequencegiven a list of key strokes.static KeySequencegetInstance(KeySequence keySequence, KeyStroke keyStroke)Creates an instance ofKeySequencegiven a key sequence and a key stroke.static KeySequencegetInstance(KeyStroke keyStroke)Creates an instance ofKeySequencegiven a single key stroke.static KeySequencegetInstance(KeyStroke[] keyStrokes)Creates an instance ofKeySequencegiven an array of key strokes.KeyStroke[]getKeyStrokes()Returns the list of key strokes for this key sequence.TriggerSequence[]getPrefixes()Returns a list of prefixes for the current sequence.booleanisComplete()Returns whether or not this key sequence is complete.StringtoString()Returns the formal string representation for this key sequence.-
Methods inherited from class org.eclipse.jface.bindings.TriggerSequence
endsWith, equals, getTriggers, hashCode, isEmpty, startsWith
-
-
-
-
Field Detail
-
KEY_STROKE_DELIMITER
public static final String KEY_STROKE_DELIMITER
The delimiter between multiple key strokes in a single key sequence -- 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:
- Constant Field Values
-
KEY_STROKE_DELIMITERS
public static final String KEY_STROKE_DELIMITERS
The set of delimiters forKeyStrokeobjects allowed during parsing of the formal string representation.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
KeySequence
protected KeySequence(KeyStroke[] keyStrokes)
Constructs an instance ofKeySequencegiven a list of key strokes.- Parameters:
keyStrokes- the list of key strokes. This list may be empty, but it must not benull. If this list is not empty, it must only contain instances ofKeyStroke.
-
-
Method Detail
-
getInstance
public static final KeySequence getInstance()
Gets an instance ofKeySequence.- Returns:
- a key sequence. This key sequence will have no key strokes.
Guaranteed not to be
null.
-
getInstance
public static final KeySequence getInstance(KeySequence keySequence, KeyStroke keyStroke)
Creates an instance ofKeySequencegiven a key sequence and a key stroke.- Parameters:
keySequence- a key sequence. Must not benull.keyStroke- a key stroke. Must not benull.- Returns:
- a key sequence that is equal to the given key sequence with the
given key stroke appended to the end. Guaranteed not to be
null.
-
getInstance
public static final KeySequence getInstance(KeyStroke keyStroke)
Creates an instance ofKeySequencegiven a single key stroke.- Parameters:
keyStroke- a single key stroke. Must not benull.- Returns:
- a key sequence. Guaranteed not to be
null.
-
getInstance
public static final KeySequence getInstance(KeyStroke[] keyStrokes)
Creates an instance ofKeySequencegiven an array of key strokes.- Parameters:
keyStrokes- the array of key strokes. This array may be empty, but it must not benull. This array must not containnullelements.- Returns:
- a key sequence. Guaranteed not to be
null.
-
getInstance
public static final KeySequence getInstance(List<KeyStroke> keyStrokes)
Creates an instance ofKeySequencegiven a list of key strokes.- Parameters:
keyStrokes- the list of key strokes. This list may be empty, but it must not benull. If this list is not empty, it must only contain instances ofKeyStroke.- Returns:
- a key sequence. Guaranteed not to be
null.
-
getInstance
public static final KeySequence getInstance(String string) throws ParseException
Creates an instance ofKeySequenceby parsing a given formal string representation.- Parameters:
string- the formal string representation to parse.- Returns:
- a key sequence. Guaranteed not to be
null. - Throws:
ParseException- if the given formal string representation could not be parsed to a valid key sequence.
-
compareTo
public final int compareTo(Object object)
- Specified by:
compareToin interfaceComparable
-
format
public final String format()
Formats this key sequence into the current default look.- Specified by:
formatin classTriggerSequence- Returns:
- A string representation for this key sequence using the default
look; never
null.
-
getKeyStrokes
public final KeyStroke[] getKeyStrokes()
Returns the list of key strokes for this key sequence.- Returns:
- the list of key strokes keys. This list may be empty, but is
guaranteed not to be
null. If this list is not empty, it is guaranteed to only contain instances ofKeyStroke.
-
getPrefixes
public final TriggerSequence[] getPrefixes()
Description copied from class:TriggerSequenceReturns a list of prefixes for the current sequence. A prefix is any leading subsequence in a
TriggerSequence. A prefix is also an instance ofTriggerSequence.For example, consider a trigger sequence that consists of four triggers: A, B, C and D. The prefixes would be "", "A", "A B", and "A B C". The list of prefixes must always be the same as the size of the trigger list.
- Specified by:
getPrefixesin classTriggerSequence- Returns:
- The array of possible prefixes for this sequence. This array must
not be
null, but may be empty. It must only contains instances ofTriggerSequence.
-
isComplete
public final boolean isComplete()
Returns whether or not this key sequence is complete. Key sequences are complete iff all of their key strokes are complete.- Returns:
true, iff the key sequence is complete.
-
-