JHotDraw 7

JHotDraw 7 is a two-dimensional graphics framework for structured drawing editors. It can be used to create many different editors from a simple doodle program up to full fledged diagram editors and vector animation tools.

JHotDraw 7 is a major rewrite of earlier versions of JHotDraw which in turn is a derivation of HotDraw.


  • All contracts in the JHotDraw 7 framework are implemented against Java Interfaces. The framework provides many points to hook in your own code.
  • The framework is small enough to create Java applets with it.
  • Abstract and Default implementations are provided to get you a quick start.
  • The framework makes use of common Java idioms, such as the JavaBeans setter and getter methods. This is supposed to reduce your learning curve.
  • The drawing code takes advantage of Java2D. It uses double precision coordinates for all drawings.
  • A drawing can be shown and edited in multiple windows with different scale factors.
  • Undo/Redo is implemented based on the Swing undo package.
  • Cut, Copy and Paste clipboard operations are supported.
  • XML is used as the default external storage format and for clipboard operations.


  • JHotDraw 7 requires a J2SE 6 compliant Java Virtual Machine.


You can license JHotDraw 7 either using an LGPL license or using a Creative Commons Attribution (by) 2.5 license.

© Werner Randelshofer. All rights reserved.