I think GraphicsContext::Trait class will be much more appropriate for
such requests. So I propose 3 types of window creation by setting
Traits class variables.
. new variable to Traits are (Window is a typedef for each platform
window handle, something like Producer/Types)
Window parent;
Window window;

Now 3 different creation window creation modes.
. if parent is NULL and window is NULL => everything works like it
works like now. ie a new  window created without a parent, and set
"window" to created window handle
. if parent is not NULL, window is NULL => create a new window but
pass parent to window creation routines, and set "window" to created
window handle
. if window is not NULL => than do not create a window but do whatever
needs to be done for the target platform to hook to already existing
window message queue. (ie under Win32 replace the window procedure
using  SetWindowLongPtr and GWLP_WNDPROC).

--
Orhun Birsoy
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/

Reply via email to