[plt-dev] update on experiment in re-implementing MrEd
For you amusement, I've put my current work here:
http://svn.plt-scheme.org/plt/branches/mflatt/mred-experiment/
It's really two pieces (though currently somewhat tangled):
* "wxme" subdirectory: A port of the editor class (`editor<%>',
`snip%', etc.) from C++ to Scheme.
There's nothing really to see, yet, except a big pile of code. It's
about 75% done, and it should be worthwhile whether or not the rest
of the experiment pans out. It could be ready to merge into the SVN
trunk sometime in March, or maybe even sooner.
* "cocoa.ss", "gtk.ss", and "win32.ss", with associated
sub-directories: Proof-of-concept bindings to Cocoa, GtK, and Win32
using `scheme/foreign'. For example, under Mac OS X, you can run
mzscheme cocoa.ss
and a window will appear (but in the background, because the
application is not wrapped in an ".app" bundle).
You'll need some extra libraries to make it work:
* Unix/X11: Install GtK and Cairo. (You almost certainly have
them already.)
* Mac OS X: Drop the following file into your "plt/lib"
directory, or put it in any standard shared-library location:
http://www.cs.utah.edu/~mflatt/tmp/cairo.dylib
* Windows: Drop the following files into your "plt/lib"
directory, or put them in any standard DLL location:
http://www.cs.utah.edu/~mflatt/tmp/zlib1.dll
http://www.cs.utah.edu/~mflatt/tmp/libpng12-0.dll
http://www.cs.utah.edu/~mflatt/tmp/libcairo-2.dll
One piece of the puzzle is easy to split from the rest: implementing
the `dc<%>' classes on top of Cairo. If anyone wants to take on that
task, let me know.
Matthew