This provides safe messaging in a way that requires no knowledge of the object types involved, and eliminates dangling references when objects are deleted. All commanders may form a chain terminating with the application object itself. ZView - implements a commander that has a graphical representation. It can be a window or part of a window. Provides a generic architecture for hierarchical views, scrolling, click and draw handling, etc.
Views can contain none, one or more child views to any degree of complexity.
ZWindow - a view that is a single window. Applications may subclass ZWindow and draw the content directly, or install views into one as required. ZApplication - implements the main structure of the application. As a commander, ZApplication responds to commands in the application as a whole, such as Open, New, Quit, etc. ZApplication creates a number of helper objects to get its work done.