Opened 7 years ago
Closed 6 years ago
#103 closed todo (fixed)
Add shortcuts for common debugging operations
Reported by: | Jan Vrany | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 8.0.0 |
Component: | default | Keywords: | |
Cc: | Also affects CVS HEAD (eXept version): | no |
Description
...such as continue, step-over, step-in.
Make sure shortcuts are customizable and provide a documentation how to change them. Open question is what should be the default. Like in Eclipse?
Change History (3)
comment:1 Changed 7 years ago by
comment:2 Changed 6 years ago by
Milestone: | → 8.0.0 |
---|
comment:3 Changed 6 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Doing this took quite some time as I decided to clean up and refactor to allow applications to define their own shortcuts (so far shortcut definition was sort-of-global). As a side effect, shortcut definition has been cleaned up and support for national languages in X11 has been significantly improved (not it works for most languages out of the box. no need to customize keymapping to map from X11 keysym to a characrer. XIC still yet to be implemented).
For now, debugger shortcuts are:
- Continue - F9
- Step-Over (Next) - F8
- Step-In (Send) - F7
For details, see:
- 2bac4f32553f/stx.libview: Allow individual applications to define their own shortcut mapping
- 43c6888f5f92/stx.libview: Changed shortcut labels in menus to always show uppercase letters
- 8bbd397fe321/stx.libview: Keyboard mapping: refactored
KeyboardMap
to distinguish between a binding and an alias(es) - e248f3b96260/stx.libview: Keyboard mapping: issue warning if one attempts to bind a shortcut to an action which already
- d01faa4c1b02/stx.libview: Keyboard mapping: initialize default shortcuts in
DeviceWorkstation
- c7cab63f9ec9/stx.libview: X11: translate national characters early in X11 event processing
- b7688f8c4d7a/stx.libtool: Keyboard mapping: code updated to catch up with
KeyboardMap
- c03e750ffe41/stx.libwidg2: Align shortcuts in menus to the right
- 9ff89d98ba80/stx.libwidg2: Keyboard mapping: code updated to catch up with
KeyboardMap
- 13a835555b48/stx.goodies.smallsense: Keyboard mapping: code updated to catch up with
KeyboardMap
- 2b0f9dbe6e43/stx.projects.smalltalk: Keyboard mapping: remove all shortcut definitions from
keyboard.rc
- 94661347fc81/stx.libtool: Issue #103: Added shortcuts for common debugging operations
Couple comments:
We need shortcuts configurable. Since there's simply not enough distint shortcuts to cover whole system and since we'd like users to configure shortcuts to their taste, shortcuts would clash. Therefore we need a way to configure shortcuts on per-window basis as well.
When processing shortcuts, the first thing is to translate physical key (#AltP) to a logical key (#PrintId?). This is done in
DeviceWorkstation>>translateKey:forView:
. We need to dispatch back to the view from there and ask a view for a ranslation. The view then can look to its own keyboard map and if translation is not found, pass to super view and so on.Second thing is to react to shortcut. This is already implemented, see
SimpleView >> processShortcut:
. You need to override this only if the shortcut is not listed in a menu (which it shoud!!!).When implementing, make sure menu items correctly show physical key, not logical.