Wizards
Wizards are used to guide the user through a sequenced set of tasks. Your plug-in can contribute wizards at predefined extension points in the workbench. It can also create and launch its own wizards.
When you contribute to a workbench wizard extension point, the actions that launch the wizard are already set up by the workbench. You need only supply the wizard that will be used.
If you need to launch other wizards that are not already defined in workbench
wizard extension points, you must launch them yourself. You can launch your own wizards by adding an action to a view, editor, popup,
or an action set.
A wizard is composed of several different underlying parts.
Wizard dialog
The wizard dialog (
WizardDialog
)
is the top level dialog in a wizard. It defines the standard wizard buttons and manages a set of pages that are provided to it.
When you contribute to a workbench wizard extension, you do not have to create a wizard dialog. One is created on your behalf by the workbench, and your wizard is set into it.
The wizard dialog performs the enabling and disabling of the Next, Back, and Finish
buttons based on information it obtains from the wizard and the current wizard
page.
Wizard
The wizard (
IWizard)
controls the overall appearance and behavior of the wizard, such as title bar text, image, and the availability of a help button.
Wizards often use a corresponding
DialogSettings
to obtain (and store) the default values for the settings of controls on the wizard pages.
The
Wizard
class
implements many of the details for standard wizard behavior. You typically
extend this class to implement behavior specific to your wizard. The primary responsibilities of your wizard
will include:
-
Creating and adding your pages to your wizard
-
Implementing the behavior that should occur when the user presses the Finish button.
Wizard page
The wizard page (
IWizardPage) defines the controls that are used to show the content of the wizard page. It responds to events in its content areas and determines when the page is completed.
Your wizard page typically extends the
WizardPage class.
The primary responsibilities of your wizard page will include:
-
creating the SWT controls that represent the page
-
determing when the user has supplied enough information to complete the page (that is, when the user can move to the next page.)