public abstract class Exhibitextends Objectimplements Parameterizable, Decorateable, ChangeListenerAn Exhibit represents a mathematical object that can be drawn on the screen. An Exhibit is rendered by a
View, which drawns the Exhibit in a
Display. An Exhibit emits ChangeEvents when it changes in a way that requires redrawing. View objects listen for these events to decide when to do a redraw. The infrastructure for generating these events and for setting up event listening is built into the Exhibit, View, Display,
Parameterclasses so that ordinary programmers will not have to worry about it.
Exhibit s declared as an abstract class, since it doesn't make sense to use it directly. However, it does not contain any abstract methods. Concrete subclasses should provide some way of drawing an actual Exhibit, most likely by overriding the
doDrawmethod (but possibly by creating a specialized View class to do the drawing or by some other technique).
Concrete subclasses can use the
setDefaultBackgroundto customize the Exhibit. The subclass can override the
createAxesmethods, in addtion to
Note that to work correctly with the XML save/restore facility defined in
SaveAndRestore, a subclass of Exhibit must have a parameterless constructor, and it must be an independent (not nested) class.