<br><div class="gmail_quote"><br><div class="gmail_quote"><div class="im">On Fri, Jun 26, 2009 at 5:25 PM, xristos <span dir="ltr"><<a href="mailto:xristos@suspicious.org" target="_blank">xristos@suspicious.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I fixed the main loop issue with destroy-current-window.<br>
If something else does not work as it should, someone should<br>
post about how freeglut works for these bits. I don't have<br>
linux or x11 here and can't test what freeglut does when<br>
windows are destroyed.<br>
<br>
I can't do anything about CCL as the issue is not that simple.<br>
The code that is commented out in interface.lisp simply interrupts<br>
the initial thread and starts the glut event loop there.<br>
<br>
This does not work (window comes up but event loop is blocked<br>
and i can't do anything) because, in CCL, the initial thread<br>
does certain housekeeping tasks and one can not simply hijack it.<br>
Someone familiar with how CCL does things might want to look into<br>
this, specifically into what CCL does with their cocoa event loop<br>
and duplicate the functionality.</blockquote></div><div><br>I did solve that issue by "cloning" code taken from examples/opengl-ffi.lisp <br>in CCL source distribution. I still didn't had the time to get on my laptop<br>
(where the code is), but I'll be able to send it soon.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im"><br>
<br>
The same strategy of interrupting the initial thread and starting<br>
the glut event loop there works fine in SBCL but i haven't included<br>
the code as for most scenarios the default behavior of SBCL where<br>
the REPL is on the initial thread (this is not true when slime is<br>
involved of course, one has to do the interrupt trick then)<br>
should suffice.<br>
<br>
New patch:<br>
<br><br>
<br>
<br></div><div><div></div><div class="h5">
On 26 Jun 2009, at 15:55, Luís Oliveira wrote:<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Wed, Jun 24, 2009 at 7:43 PM, xristos<<a href="mailto:xristos@suspicious.org" target="_blank">xristos@suspicious.org</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Here is a cleaner version against current cl-opengl<br>
without the extra wm-close methods.<br>
</blockquote>
<br>
Looking good, though it still doesn't seem to exit the main loop.<br>
Here's how I reproduce that bug:<br>
<br>
* (require :cl-glut-examples)<br>
...<br>
* (cl-glut-examples:rb-cube) ; for instance<br>
<press Esc to close the window and the function won't return><br>
<br>
Also, this patch doesn't work on at least CCL because of that<br>
threading issue I mentioned earlier.<br>
<br>
-- <br>
Luís Oliveira<br>
<a href="http://student.dei.uc.pt/%7Elmoliv/" target="_blank">http://student.dei.uc.pt/~lmoliv/</a><br>
</blockquote>
<br>
<br>_______________________________________________<br>
cl-opengl-devel mailing list<br>
<a href="mailto:cl-opengl-devel@common-lisp.net" target="_blank">cl-opengl-devel@common-lisp.net</a><br>
<a href="http://common-lisp.net/cgi-bin/mailman/listinfo/cl-opengl-devel" target="_blank">http://common-lisp.net/cgi-bin/mailman/listinfo/cl-opengl-devel</a><br>
<br></div></div></blockquote></div><br>
</div><br>