Skip to main content
Jump to: navigation, search

Scout/Concepts/KeyStroke

< Scout‎ | Concepts
Revision as of 05:30, 19 November 2013 by Matthias.Nick.bsiag.com (Talk | contribs) (KeyStroke on StringField)


Scout
Wiki Home
Website
DownloadGit
Community
ForumsBlogTwitterG+
Bugzilla
Bugzilla


Special type of Action for key actions.

  • implements: I obj.pngIKeyStroke
  • extends: C obj.pngAbstractKeyStroke

Description

In Eclipse Scout you can set KeyStrokes to components (such as Menus, Buttons, StringFields, GroupBoxes...). A KeyStroke represents a certain key sequence on the keyboard and can be associated with an action if the key sequence is pressed. For example one can associate a KeyStroke (F5) on a table in order to refresh it.

A KeyStroke in Scout is defined as a String and set via

            @Override
            protected String getConfiguredKeyStroke() {
              return "<keyStrokeDefinition>";
            }

Below you will see some examples of keyStrokes:

  • Alt+F4 --> alternate-f4
  • Ctrl+Alt+1 --> control-alternate-1
  • F1 --> f1
  • F10 --> f10
  • Ctrl+Shift+1 --> control-shift-1
  • Ctrl+Shift+a --> control-shift-a

Scout defines predefined Strings which will be mapped to keyStrokes:

  • alternate --> Alt
  • control --> Ctrl
  • f1 - f12 --> F1 - F12
  • shift --> Shift

Examples

KeyStroke on StringField

The following snippet shows a StringField with a keyStroke "F5", which will open a MessageBox if pressed:

public class StringField extends AbstractStringField {
 
        @Override
        protected String getConfiguredLabel() {
          return "StringField";
        }
 
        public class KeyStroke extends AbstractKeyStroke {
 
          @Override
          protected String getConfiguredKeyStroke() {
            return "f5";
          }
 
          @Override
          protected void execAction() throws ProcessingException {
            MessageBox.showOkMessage("KeyStroke", "F5 pressed on TextField", "");
          }
        }
      }

KeyStroke on ContextMenu

The following snippet shows a SmartField with a context menu and a keyStroke "F5", which will open a MessageBox if pressed:

public class SmartField extends AbstractSmartField<Long> {
 
          @Override
          protected String getConfiguredLabel() {
            return "SmartField";
          }
 
          @Order(10.0)
          public class SmartFieldMenu extends AbstractExtensibleMenu {
 
            @Override
            protected void execAction() throws ProcessingException {
              MessageBox.showOkMessage("KeyStroke", "Alt+2 pressed on SmartField", "");
            }
 
            @Override
            protected String getConfiguredKeyStroke() {
              return "alt-2";
            }
 
            @Override
            protected String getConfiguredText() {
              return "ContextMenu with KeyStroke");
            }
          }
        }

Will result in Keystroke menu.png

Screenshot

Note.png
TODO
Add a screenshot (or remove this section, if there is no screenshot to make)


Properties

Defined with getConfiguredXxxxxx() methods.

Note.png
TODO
Add a description of important properties. The idea is not to recreate the JavaDoc of the getConfiguredXxxxxx() methods but to provide explanations, best practice, example... Group the properties by domain.


Events

Defined with execXxxxxx() methods.

Note.png
TODO
Add a description of important events. The idea is not to recreate the JavaDoc of the execXxxxxx() methods but to provide explanations, best practice, example... Group the events by domain.


See Also

Copyright © Eclipse Foundation, Inc. All Rights Reserved.