27 Apr 2007 14:38
Re: Just one frame?
Johnny Zackrisson <jz <at> student.chalmers.se>
2007-04-27 12:38:33 GMT
2007-04-27 12:38:33 GMT
> Things become much clearer now :). with-ltk is thought for applications > which should run as one application, but not for tinkering in the REPL, > so just do the start-wish and none of the with-ltk's. Then you can do > exactly as you want. If you want events processed, just call mainloop > from the repl and break and exit it (without quitting wish) to return to > the REPL. Alternatively, keep calling (process-events) which directly > returns after processing all pending events. Bingo! You nailed it there. It wasn't at first clear to me how I should send objects to Tk, and then I realized that all I had to do was to call pack. :) The "Running it manually" part of the documentation sort of tells you this, but not explicitly how such behvaiour is to be invoked. Perhaps you should add a comment that you just call pack for sending objects? > Well, if your lisp has threads, spawn mainloop in a thread. Or use > serve-event. But with threads a word of caution: LTk hasn't been > stress-tested with respect to multi-threading yet (proper threading > support is still in the planning phase), so use it at you own risk :) Oh, how.. simple. :) > That is easy to do with LTk as it is: just get the code from the Tk > entry widget, > read and eval it, and output the result to the Tk GUI. However, it might > be a > good idea to run the GUI in a different process than the lisp code to > execute, > as when the lisp process locks up, or enters the debugger, the GUI still > runs > happily... Ah.. I will work on this later on, and perhaps post an example. :) I'm starting to see the light here. I guess I'm looking at GUI programming from a network programmers perspective. I would imagine keeping the repl intact and interactive would be /essential/ for dynamic GUI programming, let alone rapid prototyping, debugging and whatnot. I suppose most people have simple, very easy designed GUI's with pretty much static behaviour, in which case you can just wrap it all up around a with-ltk call and be done with the GUI part. Another question, LTK is said to be just fine as long as you do not need high-performance. How do you define high-performance in this context? Is a CAD application a high-performance application? Is realtime stock trading curves high-performance? Or are we talking about the obvious; FPS game with intense graphics? Thanks a bunch Peter, I think we've sorted out my problems by now. :) -- Johnny Zackrisson, Gothenburg, Sweden.