Hi J-S, Thank you so much for the help, much appreciated. I downloaded and built Qt 4.4.3 today, thinking it might have been a Qt problem, since I was using an older version than Robert.
I will replace the event methods with your suggestion. W.r.t the composite viewer, I would really rather use it with multiple views in single context. In our application, these tiled views could be very many at once and I think context switching between all of them would be bad for performance. Again, I appreciate your help looking into this! Thanks, Morné On Tue, Feb 3, 2009 at 4:21 PM, Jean-Sébastien Guay <jean-sebastien.g...@cm-labs.com> wrote: > Hi again Morné, > >> - The trackball manipulator does not throw (since Robert does not see this >> we can assume this is a Windows-specific problem, either caused by Qt on >> Windows or GraphicsWindowWin32's event handling) > > I've found out why this is. Since QOSGWidget uses GraphicsWindowWin32 > directly, the graphics window already sends mouse events to the event queue. > So in QOSGWidget::mouse*Event (Press, DoubleClick, Release, Move), you don't > want to call _gw->getEventQueue()->mouseButton*() because then it means that > the same event is sent twice. This has the effect that if two release events > are received by the TrackballManipulator, it stops the throw since the mouse > speed when it gets the second release is 0. > > I would still send the events to QWidget though, just to be sure, so I would > replace those methods by: > > void QOSGWidget::mousePressEvent( QMouseEvent* event ) > { > QWidget::mousePressEvent(event); > } > > (or just not override them) and so on for all other event methods. The > actual event will be put in the event queue in > GraphicsWindowWin32::handleNativeWindowingEvent(). > > In our project, we had run into the same problem, but we resolved it > differently. We subclassed GraphicsWindowWin32 to ignore all events, and > instead add them in the event queue in the overridden QOSGWidget methods. I > don't remember why we did it this way, but I think the above is more > general, in addition to not requiring a subclass. > > I'm still looking for the cause/solution to the addView() problem. > > J-S > -- > ______________________________________________________ > Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com > http://www.cm-labs.com/ > http://whitestar02.webhop.org/ > _______________________________________________ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org