At the most abstract level, the protocol is given by 3 interfaces:
IWizard - a wizard consisting of several wizard pagesIWizardPage - an individual wizard pageIWizardContainer - the outside world from the point of view of
a wizardIWizard. The abstract base
class Wizard is provided as a starting point; it is simpler to
subclass Wizard than to implement IWizard from scratch.
The main responsibility of a Wizard subclass is doing the real
work when the wizard finishes.
Similarly, a wizard page is any object implementing IWizardPage.
The abstract base class WizardPage is provided as a starting point.
The main responsibility of a WizardPage subclass is providing
the SWT controls and the backing logic for a single wizard page.
WizardDialog is a ready-to-use JFace dialog that is instantiated
with a wizard and acts as the wizard's container. This dialog has a standard
layout: an area at the top containing the wizard's title, description,
and image; the actual wizard page appears in the middle; below it is a
progress indicator; and at the bottom is an area with a message line and
a button bar containing Next, Back, Finish, Cancel, and Help buttons.
WizardSelectionPage, a special abstract subclass of WizardPage,
allows whole other wizards to be connected to a root page.
Note: None of the classes in this package maintain global state.