[comp.windows.x] single-window menus

biggers@DG-RTP.DG.COM (Mark Biggers) (06/16/88)

> I have written a toolkit with pull-down menus which takes a different
> approach: the menu is a single window and I track button motion events
> to detect when the pointer enters/leaves an item.  Highlighting feedback
> is not slower than with other strategies, and the menus pop up much
> faster, even though I never keep any unmapped windows; I just create and
> destroy the menu's window as needed.  Anyone care to comment?
> --
> Guido van Rossum, Centre for Mathematics and Computer Science (CWI)

I am curious; would your menu system, as currently implemented, handle
the menu interaction style of: click to bring up menus, traverse the
menu items, then click on an item.  The menu then disappears.

Since you track *button* motion events, apparently your system
requires that the menu button be held down to bring up the menus,
traverse and then select by releasing the button on the item.

Have you tried the RTLmenu package?  It is pretty zingy when popping
up and traversing the menu items.  I like the idea of conserving memory
with single-window menus, however.

I am not sure a Sun 3/50 should be seen as a canonical system.  I now
run mostly Andrew tools and GNU Emacs, along with the cwm tiling
window manager on my 3/50; I am just praying for Clearpoint to release
a memory board for this starved machine.  With the frame buffer, UNIX
and X window server taking 3/4 of physical memory, everytime I switch
to another application, I get to take a break while the machine pages
:^( :^( :^(.

=============================================
Mark Biggers, a.k.a. biggers@dg-rtp.dg.com

Data General
62 Alexander Drive
Research Triangle Park, NC  27709
(919) 248-6201

guido@cwi.nl (Guido van Rossum) (06/21/88)

In article <8806161258.AA00564@peewee.ux_kernel.com> <biggers@dg-rtp.dg.com> writes:
>I am curious; would your menu system, as currently implemented, handle
>the menu interaction style of: click to bring up menus, traverse the
>menu items, then click on an item.  The menu then disappears.
>
>Since you track *button* motion events, apparently your system
>requires that the menu button be held down to bring up the menus,
>traverse and then select by releasing the button on the item.

I don't do this at the moment (I'm sticking dangerously close to the
Macintosh design), but wouldn't it be possible by tracking pointer
motion events while the menu window is popped up, possibly in
combination with grabbing the mouse?  (Uhh, I don't even know off-hand
whether it's possible to do an active grab with no mouse buttons down.)
Or, alternatively, if I don't need to provide highlighting feedback
while no buttons are down, it would be even simpler (just don't unmap
the window at the first button-up).

I haven't tried the RTL menu package.  My ideal menu package should have
a way to turn a pop-up menu into a (temporary) static menu, e.g., by
double-clicking on the title bar or some modifier-key.  With the current
state-of-the-art slow cheap workstations (aka VS2K) popping up the same
menu to change three options is really tedious.
--
Guido van Rossum, Centre for Mathematics and Computer Science (CWI), Amsterdam
guido@piring.cwi.nl or mcvax!piring!guido or guido%piring.cwi.nl@uunet.uu.net