From 776c03b9e3518ff93d7bc1d24e276ac900c1808c Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Thu, 17 Jun 2010 14:28:16 +0000 Subject: [PATCH] From Nguyen Van Truong, fix for passing of events to slaves --- examples/osgcluster/osgcluster.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/examples/osgcluster/osgcluster.cpp b/examples/osgcluster/osgcluster.cpp index 8a42bea82..c78c4db8e 100644 --- a/examples/osgcluster/osgcluster.cpp +++ b/examples/osgcluster/osgcluster.cpp @@ -408,6 +408,22 @@ void CameraPacket::readEventQueue(osgViewer::Viewer& viewer) { _events.clear(); + osgViewer::ViewerBase::Contexts contexts; + viewer.getContexts(contexts); + + for(osgViewer::ViewerBase::Contexts::iterator citr =contexts.begin(); citr != contexts.end(); ++citr) + { + osgGA::EventQueue::Events gw_events; + + osgViewer::GraphicsWindow* gw = dynamic_cast(*citr); + if (gw) + { + gw->checkEvents(); + gw->getEventQueue()->copyEvents(gw_events); + } + _events.insert(_events.end(), gw_events.begin(), gw_events.end()); + } + viewer.getEventQueue()->copyEvents(_events); osg::notify(osg::INFO)<<"written events = "<<_events.size()<