Module jEdit

Class InputHandler

Direct Known Subclasses:
DefaultInputHandler

public abstract class InputHandler extends AbstractInputHandler<EditAction>
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 Details

    • view

      protected final View view
  • Constructor Details

    • InputHandler

      protected InputHandler(View view)
      Creates a new input handler.
      Parameters:
      view - The view
  • Method Details

    • handleKey

      public final boolean handleKey(KeyEventTranslator.Key keyStroke)
      Handles a keystroke.
      Parameters:
      keyStroke - The key stroke.
      Returns:
      true if the input could be handled.
      Since:
      jEdit 4.2pre5
    • processKeyEvent

      public void processKeyEvent(KeyEvent evt, int from, boolean global)
      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 class AbstractInputHandler<EditAction>
      Parameters:
      evt - the keyboard event
      from - the source, it can be View.VIEW, View.ACTION_BAR or View.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

      public EditAction getLastAction()
      Returns the last executed action.
      Since:
      jEdit 2.5pre5
    • readNextChar

      public void readNextChar(String msg, String code)
      Invokes the specified BeanShell code, replacing __char__ in the code with the next input character.
      Parameters:
      msg - The prompt to display in the status bar
      code - The code
      Since:
      jEdit 3.2pre2
    • invokeAction

      public void invokeAction(String action)
      Invokes the specified action, repeating and recording it as necessary.
      Specified by:
      invokeAction in class AbstractInputHandler<EditAction>
      Parameters:
      action - The action
      Since:
      jEdit 4.2pre1
    • invokeAction

      public void invokeAction(EditAction action)
      Invokes the specified action, repeating and recording it as necessary.
      Specified by:
      invokeAction in class AbstractInputHandler<EditAction>
      Parameters:
      action - The action
    • invokeLastAction

      public void invokeLastAction()
    • userInput

      protected void userInput(char ch)
    • invokeReadNextChar

      protected void invokeReadNextChar(char ch)