Can't Display Keyboard Shortcuts in Popups

Richard Gaskin ambassador at
Wed Apr 20 13:45:21 EDT 2016

Ray wrote:

 > OK - so the software is for drawing 'links' around parts of a picture
 > so when they're clicked the software plays audio files, among other
 > things.  The links are listed in the data grid.  I've already got a
 > traditional menu bar at the top of the screen but instead of
 > requiring the user to select the link in the data grid and then
 > relocate the mouse to the traditional menu bar, click on it, and
 > choose Audio, it seemed easier to simply let the user right click
 > directly on the link in the grid....

Definitely easier, which is why so many apps use context menus.

But also concealed from the user, which is why most apps also include an 
item in the main menu bar, with the context menu providing an extra 
level of convenience.

This is also easier for the developer, because LC does a pretty good job 
of making HIG-savvy apps but doesn't work too hard to provide hooks for 
edge cases.

The HIGs all suggest having menu items in the menu bar, even when a 
subset of them may also be in a context menu.  Given that, LC does a 
great job of making it easy to put the keyboard shortcut where the OS 
vendors recommend we put it.

If this item isn't also in the menu bar, you can put the shortcut into 
the context menu item but with two downsides:

1. It won't be right-aligned as users are accustomed to seeing.

2. It won't have any functional effect, requiring as Craig noted that
    you also write a commandKeyDown handler, with conditionals within
    it to determine when it should be invoked and when it should be

If the shortcut is in the main menu bar as well as in the context menu, 
all that becomes much simpler, and your users will be able to learn the 
shortcut more easily, ultimately never needing the context menu at all 

  Richard Gaskin
  Fourth World Systems
  Software Design and Development for the Desktop, Mobile, and the Web
  Ambassador at      

More information about the Use-livecode mailing list