Class GraphicalViewerKeyHandler

java.lang.Object
org.eclipse.gef.KeyHandler
org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler
Direct Known Subclasses:
PaletteViewerKeyHandler

public class GraphicalViewerKeyHandler extends KeyHandler
An extended KeyHandler which processes default keystrokes for common navigation in a GraphicalViewer. This class can be used as a KeyHandler too; Unrecognized keystrokes are sent to the super's implementation. This class will process key events containing the following:
  • Arrow Keys (UP, DOWN, LEFT, RIGHT) with optional SHIFT and CTRL modifiers to navigate between siblings.
  • Arrow Keys (UP, DOWN) same as above, but with ALT modifier to navigate into or out of a container.
  • '\'Backslash and '/' Slash keys with optional SHIFT and CTRL modifiers to traverse connections.

All processed key events will do nothing other than change the selection and/or focus editpart for the viewer.

  • Constructor Details

    • GraphicalViewerKeyHandler

      public GraphicalViewerKeyHandler(GraphicalViewer viewer)
      Constructs a key handler for the given viewer.
      Parameters:
      viewer - the viewer
  • Method Details

    • getFocusEditPart

      protected GraphicalEditPart getFocusEditPart()
      Returns:
      the EditPart that has focus
    • getNavigationSiblings

      protected List<? extends GraphicalEditPart> getNavigationSiblings()
      Returns the list of editparts which are conceptually at the same level of navigation as the currently focused editpart. By default, these are the siblings of the focused part.

      This implementation returns a list that contains the EditPart that has focus.

      Returns:
      a list of navigation editparts
      Since:
      3.4
    • getViewer

      protected GraphicalViewer getViewer()
      Returns the viewer on which this key handler was created.
      Returns:
      the viewer
    • isViewerMirrored

      protected boolean isViewerMirrored()
      Returns:
      true if the viewer is mirrored
      Since:
      3.4
    • keyPressed

      public boolean keyPressed(KeyEvent event)
      Extended to process key events described above.
      Overrides:
      keyPressed in class KeyHandler
      Parameters:
      event - the KeyEvent
      Returns:
      true if KeyEvent was handled in some way
      See Also:
    • processSelect

      protected void processSelect(KeyEvent event)
      This method is invoked when the user presses the space bar. It toggles the selection of the EditPart that currently has focus.
      Parameters:
      event - the key event received