Unidraw [1] is a
CeePlusPlus application framework for developing custom graphical editors.
JohnVlissides implemented on top of
InterViews as part of his thesiswork at Stanford. It has been mined by a number of application programmers over the years to build a variety of stuff [2], as well as being mined by
JohnVlissides for several publications and articles on
DesignPatterns.
For a fairly in-depth description, see [3].
[1] http://www.ivtools.org/ivtools/unidrawinfo.html
[2] http://www.ivtools.org/ivtools/ivapps.html
[3] http://www.amazon.com/exec/obidos/ASIN/0132139847/qid%3D929999695/002-8625093-9047430
For a more in-depth description, see "Unidraw: A Framework for Building Domain-Specific Graphical Editors," by
JohnVlissides,
ACM Transactions on Information Systems, 8(3):237-268 (1990).
For the ultimate description, see
Generalized Graphical Object Editing, JohnVlissides' Ph.D. thesis, available as Stanford Computer Systems Lab Technical Report CSL-TR-90-427 (send e-mail to
[email protected]).
HotDraw is similar in intent but much smaller in scope.
The Berlin Project (
http://www.berlin-consortium.org) is working on a Unidraw-like
FactoryMethod object.
UnidrawFramework is closely related to the
TooledComposite DesignPattern, also by
JohnVlissides.
A writeup on the continued evolution of Unidraw as part of
IvTools:
http://www.ivtools.org/ivtools/reusingunidraw.txt
CategoryFramework