[GEM-dev] multiple_window: besides the mouse events...

Johannes M Zmoelnig zmoelnig at iem.at
Tue Dec 14 10:24:33 CET 2004


james tittle wrote:
> ...cool!  found an easy fix for the triggerMouseEvent() width/height 
> message output for a window...

good to hear.

looking through the code i have noticed that for too many (in my 
opinion) os-specific lines are in [gemwindow]
probably it would really be best to move _all_ of the os-specific code 
into GemWinCreate***.cpp (that what these files are for at last)
admittedly the __linux__ share in gemwindow.cpp (or formerly GemMan.cpp) 
is by far the biggest, as all the event-handling stuff is in there.

but what would be the best way to get the mouse-callbacks right then ? 
(i mean, the event-callback-system is somewhat different on all platforms)


> ...so, tonight I got the multiple_window branch to compile and run on 
> OSX, but it's not running quite completely...so far it will create new 
> windows (and apparently gl contexts) for each [gemwindow] object, and I 
> have them hooked up to a [gemcontrol]. but only the last one created 
> actually displays anything...
weird, i remember having had similar problems in the beginning, but they 
disappeared after several re-compiles (probably i did change something 
but i don't remember any more...)


> ...have to admit that, beyond getting it to compile and all, I haven't 
> really gone deeply thru the code to check out context sharing and such: 
>  is this working on xwindows atm?

not precisely context-sharing but display-list sharing over several 
contexts (or is this the same thing ?)

but that might be the problem with you displaying too:
the whole scene is compiled into a display-list when the first window 
issues the GemMan::render(); all the following windows only execute this 
display-list.
this has advantages (like the use of display lists; or simply that only 
one "render trigger" is send through the network per cycle) and also 
some disadvantages (might be slower when only one context is used, 
display-list sharing must be enabled)



mfg.a.sdr
IOhannes




More information about the GEM-dev mailing list