HotDraw is a two-dimensional graphics framework for structured drawing editors that is written in VisualWorks Smalltalk. It has been used to create many different editors from CASE tools to a HyperCard clone. You can easily create new figures and special manipulation tools for your drawings. Unlike many other drawing editors, HotDraw drawings can be animated. Here's an example of the default drawing editor editing some figures:

You can even insert other views into HotDraw drawings.
HotDraw runs under VisualWorks 2.5, 3.0, and 5i as well as the ENVY versions of VisualWorks 2.5 and 3.0. There are different installation instructions for the different platforms:
VW2.5: The sources for HotDraw are broken into several files. These require VisualWorks 2.5 with the events file-in. The framework sources are mandatory, but the tool development environment and the applications are provided as example uses of the framework. To install the framework, simply download the HotDraw-VW25.zip file. Once you have downloaded the file, you need to decompress it and file-in the install.st script. This will ask for the parts of HotDraw, you wish to install.
VW3.0 or VW5i: Both VisualWorks 3.0 and 5i have their own parcels. For VisualWorks 3.0, you'll need to download HotDraw-VW30.zip, decompress it, and load the parcels. VisualWorks 5i installation is similar, except you need to download HotDraw-VW5i.zip.
If you are wanting a version for ENVY, you can download the HotDraw-ENVY-301.dat.gz file. To install this file, decompress it, import the applications, and load the HotDrawApp. If you want to create new tools, you can load the HotDrawDevApp. Finally, if you wish to view the sample applications, you can load the HotDrawSamplesApp.
If you are using pre-VisualWorks 2.5 or ObjectWorks R4.1, you can download HotDraw from this directory.
If you want to use the constraints from the previous version of HotDraw or you don't want to use events, you can get the previous version from this page.
For people using Digitalk's Smalltalk/V products, there is also a port by Dorin Sandu.
There are a couple different versions of HotDraw written for Java. One is HotDraw for Java written by Ken Auer.
A good paper for people trying to learn HotDraw is the paper by Ralph Johnson titled Documenting Frameworks Using Patterns from OOPSLA'92.
If you are upgrading from the previous version of HotDraw, you might want to look at these conversion tips.
Other papers on HotDraw can be found in /pub/papers/HotDraw/ directory on the Smalltalk ftp server.
The mailing for HotDraw is hotdraw@cs.uiuc.edu. You can send questions/comments of general interest about HotDraw to the mailing list, but first you should subscribe (or unsubscribe) to the list by sending mail to hotdraw-request@cs.uiuc.edu with the body of subscribe (or unsubscribe).
Other questions/comments about HotDraw can be sent to John Brant (brant@cs.uiuc.edu). Also please send bug reports to this address. I can't fix bugs that I don't know about, and if you have a fix, send it too.
|
Comments or suggestions can be sent to brant@cs.uiuc.edu. |