[comp.windows.x] Adding accelerators to menu items

pete@iris49.UUCP (Pete Ware) (02/08/91)

If you are using the athena simple menu's, you can't add accelerators
to menu items.  The reason is that the menu items are RectObjects
which have no translations and so no where to place any accelerators.

--pete
Pete Ware / Biosym / San Diego CA / (619) 546-5532
uucp:	  scripps.edu!bioc1!pete
Internet: bioc1!pete@scripps.edu

converse@expo.lcs.mit.EDU (02/08/91)

> If you are using the athena simple menu's, you can't add accelerators
> to menu items.  The reason is that the menu items are RectObjects
> which have no translations and so no where to place any accelerators.

Hmm, xmh has accelerators for some menu items and it uses the Athena
SimpleMenu widget.

pete@iris49.UUCP (Pete Ware) (02/08/91)

I'm being stupid argueing with the author, but judging from the man
page and the app-defaults file (source isn't on line), it looks like
the accelerators are bound to the Menu, for example 

	Xmh*tocMenu.Accelerators: #override ...

This works because xmh is a great program and defines a bunch of
actions that could probably be invoked from any widget.  What you
can't do is (and what I thought the original person was asking) cause
some an action of one of the menu items:

	Xmh*tocMenu.open.Accelerators: #override \n\
			:Meta<Key>I:	activate()

First off, the menu's items don't have any actions -- they're RectObjs
secondly even if they did have actions they don't have any translation
tables and hench no accelerators.

--pete (I'm probably going to regret this)
Pete Ware / Biosym / San Diego CA / (619) 546-5532
uucp:	  scripps.edu!bioc1!pete
Internet: bioc1!pete@scripps.edu