Can anyone give me the scoop on how gui event messages are handled with
osgViewer?

 

I'm trying to get the viewer running inside a GUI toolkit (in this case
MFC).  It's mostly working for me except for event propagation.

 

 

 

Basically I've noticed that if you do
osg::GraphicsContext::createGraphicsContext and pass it an hwnd then a
couple of things happen:

 

One the osgViewer::GraphicsWindowWin32 registers a WindowProc function with
windows.  This causes the function to be called back by default and respond
to messages.  HOWEVER since we provided an hWnd to it then
GraphicsWindowWin32 has _ownsWindow marked false.  As a result it registers
for messages, reacts to them, but never returns a value saying it handled
the message.

 

This doesn't seem like a great way to do it to me.  I have no way to know if
OSG handled the event (such as a key press).  If I assume it did handle it,
I get in trouble.  If I assume it didn't handle it, I get in trouble.  To
granularly figure this out would be a major pain.

 

Maybe there is another way I should be setting this up.  Can anyone shed
some light?

 

 

Thanks

-Brad

 

 

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to