From: Shannon V Spires

Subject: Re: ACL to MCL

Date: 1996-10-24 3:23

> That is exactly the major limitation to the MCL graphics package: > THERE IS NOTHING LIKE A BMP WINDOW, e.g. a window which "remembers" > what you have drawn to it and is able to refresh, redisplay, etc. The > only way to accomplish this is to actually record (in your own code) > all actions taken to the window, then erase it, then redraw > everything. This is something about MCL which is very primitive and > very disturbing when trying to do a port.
There are many examples on the MCL CD for how to do this--most use offscreen GWorlds. One of the easiest to use (IMHO) is scrolling-gworld-windows.lisp by Kazushi Minagawa on the MCL 3.9 (and presumably 4.0) CDs. It makes a graphics window very much like you describe: you can draw to it and it remembers the new pixels, properly refreshes them (by doing a fast bitmap copy when necessary), and scrolls. As long as you do all your drawing within a with-focused-gworld (see the code for examples of how to use this macro), the drawing operations will be remembered. -- Shannon Spires <sandia.gov at svspire>