From: Johannes B. <Joh...@ig...> - 2006-04-24 10:19:47
|
Hi, i would like extend a existing viewer-app with the following functionality: if the user pushes the right-mouse-button and moves the mouse the events will be used for navigation. if the user pushes the right-mouse-button and and releases the button _without_ moving the mouse the user gets a right-button-menu. With other toolkit-frontends (e.g. qt/MFC/...) we can explicit popup the menu if the user pushes/releases the right-mouse-button without moving the mouse. With glut/freeglut I can only attach/detach a menu with (glutAttachMenu/glutDetachMenu) but can not control explicit if a menu should appear or not. Is there a hidden functionality or any other method I could use to implement the described behavior with freeglut? Regards, Johannes Behr -- Johannes Behr | email: joh...@ig... Fraunhofer-IGD | tel.: ++49-6151-155-510 Fraunhofer Strasse 5 | fax.: ++49-6151-155-196 64283 Darmstadt, Germany | skype: johannesbehr |
From: steve <sjb...@ai...> - 2006-04-24 10:55:12
|
Johannes Behr wrote: > Hi, > > i would like extend a existing viewer-app > with the following functionality: > > if the user pushes the right-mouse-button and > moves the mouse the events will be used for > navigation. > > if the user pushes the right-mouse-button and > and releases the button _without_ moving > the mouse the user gets a right-button-menu. Your users would find it very hard indeed to consistently press or release the mouse button without causing any mouse motion at all. You need to put a threshold onto the amount of motion allowed before the event is considered not to be a mouse click. > With glut/freeglut I can only attach/detach a menu with > (glutAttachMenu/glutDetachMenu) but can not control > explicit if a menu should appear or not. That's how GLUT works - freeglut is just a clone. > Is there a hidden functionality or any other > method I could use to implement the described behavior > with freeglut? No. IMHO, you should use a different GUI toolkit (such as PLIB/PUI) instead of the built-in menus of GLUT. If you used PLIB/PUI, you could control when you called the menuing system and with what inputs from within the GLUT/freeglut mouse callbacks. |