- Direct Known Subclasses:
DefaultInputHandler
An input handler converts the user's key strokes into concrete actions.
It also takes care of macro recording and action repetition.
This class provides all the necessary support code for an input handler, but doesn't actually do any key binding logic. It is up to the implementations of this class to do so.
- Version:
- $Id: InputHandler.java 24411 2016-06-19 11:02:53Z kerik-sf $
- Author:
- Slava Pestov
- See Also:
-
Field Summary
Fields inherited from class org.gjt.sp.jedit.input.AbstractInputHandler
bindings, currentBindings, keyEventInterceptor, lastAction, lastActionCount, PREFIX_STR, readNextChar, REPEAT_COUNT_THRESHOLD, repeatCount, shortcutOn
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns the last executed action.int
Returns the number of times the next action will be repeated.final boolean
handleKey
(KeyEventTranslator.Key keyStroke) Handles a keystroke.void
invokeAction
(String action) Invokes the specified action, repeating and recording it as necessary.void
invokeAction
(EditAction action) Invokes the specified action, repeating and recording it as necessary.void
protected void
invokeReadNextChar
(char ch) void
processKeyEvent
(KeyEvent evt, int from, boolean global) Forwards key events directly to the input handler.void
readNextChar
(String msg, String code) Invokes the specified BeanShell code, replacing __char__ in the code with the next input character.void
setRepeatCount
(int repeatCount) Sets the number of times the next action will be repeated.protected void
userInput
(char ch) Methods inherited from class org.gjt.sp.jedit.input.AbstractInputHandler
addKeyBinding, addKeyBinding, addKeyBinding, getKeyBinding, getKeyEventInterceptor, getLastActionCount, handleKey, isPrefixActive, processKeyEventKeyStrokeHandling, removeAllKeyBindings, removeKeyBinding, resetLastActionCount, sendShortcutPrefixOff, setBindings, setCurrentBindings, setKeyEventInterceptor, toString
-
Field Details
-
view
-
-
Constructor Details
-
InputHandler
Creates a new input handler.- Parameters:
view
- The view
-
-
Method Details
-
handleKey
Handles a keystroke.- Parameters:
keyStroke
- The key stroke.- Returns:
- true if the input could be handled.
- Since:
- jEdit 4.2pre5
-
processKeyEvent
Forwards key events directly to the input handler. This is slightly faster than using a KeyListener because some Swing overhead is avoided.- Specified by:
processKeyEvent
in classAbstractInputHandler<EditAction>
- Parameters:
evt
- the keyboard eventfrom
- the source, it can beView.VIEW
,View.ACTION_BAR
orView.TEXT_AREA
global
- tell if the event comes from the DefaultKeyboardFocusManager or not- Since:
- 4.3pre7
-
getRepeatCount
public int getRepeatCount()Returns the number of times the next action will be repeated. -
setRepeatCount
public void setRepeatCount(int repeatCount) Sets the number of times the next action will be repeated.- Parameters:
repeatCount
- The repeat count
-
getLastAction
Returns the last executed action.- Since:
- jEdit 2.5pre5
-
readNextChar
Invokes the specified BeanShell code, replacing __char__ in the code with the next input character.- Parameters:
msg
- The prompt to display in the status barcode
- The code- Since:
- jEdit 3.2pre2
-
invokeAction
Invokes the specified action, repeating and recording it as necessary.- Specified by:
invokeAction
in classAbstractInputHandler<EditAction>
- Parameters:
action
- The action- Since:
- jEdit 4.2pre1
-
invokeAction
Invokes the specified action, repeating and recording it as necessary.- Specified by:
invokeAction
in classAbstractInputHandler<EditAction>
- Parameters:
action
- The action
-
invokeLastAction
public void invokeLastAction() -
userInput
protected void userInput(char ch) -
invokeReadNextChar
protected void invokeReadNextChar(char ch)
-