We've come up with a problem in Lesstif.
In our software we have a menu that is popped up via a right mouse button
click.
If the user clicks *and holds* the right mouse button and drags down to a
cascading menu item, the submenu pops up to the right and they can drag over
to it and select something off the submenu.
If the user right clicks *and lets go* the menu stays open (as expected).
If they then click (left or right, doesn't matter) on the cascading menu
item, the submenu pops up to the right, but the parent menu has grabbed the
pointer or something because you can't click on the submenu.
The code looks like...
m_widget = XmCreatePopupMenu(parent, "popup", args, n);
// [ calls a function which adds all the menu items here ]
XButtonPressedEvent event;
memset(&event,0,sizeof(event));
event.type = ButtonPress;
event.display = XtDisplay(ctrl.GetWidget());
event.window = XtWindow(ctrl.GetWidget());
unsigned int buttons;
XQueryPointer(event.display, event.window, &event.root, &event.subwindow,
&event.x_root, &event.y_root, &event.x, &event.y, &buttons);
XmMenuPosition(m_widget,&event);
XtManageChild(m_widget)
MxWaitForUnmap(m_widget); // <- a function of ours that does an event loop
until the given widget is unmapped
The author of this code tells me he tried several other ways of popping up
the menu with no luck.
-- Dave Williss
------
Meddle not in the affairs of dragons,
for you are crunchy and taste good with catsup
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Lesstif-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/lesstif-discuss