Hi, I am using a combination of osg manipulators (fly, drive, etc.) with a KeySwitchManipulator. After these are set up, I have several "tools" which can be loaded at runtime, and each of them can register event handler callbacks for things like mouse up and mouse down. These handlers are working correctly, except the "motion model" manipulators furnished by osg are still getting the events, despite the fact that the handlers return true indicating the event was handled. So when you click and drag a building, for example, the view will rotate and spin in an undesirable fashion.
I ran across a thread (http://forum.openscenegraph.org/viewtopic.php?t=2544&highlight=return+manipulator) from back in May 2009 where Robert said: > In OSG-1.x events were not passed on if handled. > > In OSG-2.x events are passed on to all manipulators/event handlers and > it's the event handlers responsibility to decide whether they want to > ignore handled events or not. This approach is more flexible and > robust once you now about if (handled) trick. > So what I am wondering is, what is the correct way to keep the built-in manipulators from responding to these handled events? I know about using the following code in custom maniuplators: Code: if (ea.getHandled()) return false; But what about with the built-in ones? And does the order in which the event handlers are registered affect anything? I am using OSG 2.6.1 with MS Visual Studio 2008 on Vista-64. Thank you! Cheers, Brian ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=14712#14712 _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org