Skip to content

Review and document (if appropriate) keyboard shortcuts on game trees #568

@tturocy

Description

@tturocy

This feature request is for...

Gambit GUI

Requested enahancement or feature

There are a number of keyboard shortcuts which are defined for navigation around extensive games. These are, as far as can be seen, either entirely or mostly undocumented in the user-facing documentation.

The list of (supposedly) supported keyboard shortcuts is in src/gui/efgdisplay.cc on the comment next to gbtEfgDisplay::OnKeyEvent, reproduced here for convenience:

//
// OnKeyEvent -- handle keypress events
// Currently we support the following keys:
//     left arrow:   go to parent of current node
//     right arrow:  go to first child of current node
//     up arrow:     go to previous sibling of current node
//     down arrow:   go to next sibling of current node
//     ALT-up:       go to previous member of information set
//     ALT-down:     go to next member of information set
//     space:        ensure the selected node is visible
//     'R', 'r':     select the root node (and make it visible)
//     delete:       delete the subtree rooted at current node
//     backspace:    delete the parent of the current node
//     'M', 'm':     edit the move at the current node
//     'N', 'n':     edit the properties of the current node
//     escape:       cancel edit of payoff
//     tab:          accept edit of payoff, edit next payoff (if any)
//

We should do the following:

  1. Decide whether this is the set of operations we do want to support, and whether there are any additions or deletions. For example it seems like having backspace delete the parent of the selected node might be a bit dodgy, at least without any confirmation step, as that could be very surprising behaviour if done by accident. Because these are largely (completely) undocumented in current user-facing documentation, we have a fair amount of leeway in making changes.
  2. Confirm that the implementations of any of these we do want to keep are correct. For example, up arrow seems not to work as described in the comment.
  3. Add appropriate explanations to the documentation describing the supported keyboard commands.

Metadata

Metadata

Assignees

No one assigned

    Labels

    c++Items which involve writing in C++enhancementguiItems which involve the graphical interface/wxWidgetshackathonIssues potentially suitable for a hackathon exercise

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions