13.2. Customizing a Wizard
Problem
You want to customize a template you created for a plug-in that includes a wizard.
Solution
Edit the wizard’s support file
(SampleNewWizard.java in the example created in
the previous recipe) to customize the code.
Discussion
In the plug-in created in the previous recipe, the wizard creates
files with the default name document.new,
inserting default text into those files. This wizard is supported by
the two files SampleNewWizard.java and
SampleNewWizardPage.java. In
SampleNewWizard.java, the code begins by
creating the page the wizard will show:
public class SampleNewWizard extends Wizard implements INewWizard {
private SampleNewWizardPage page;
private ISelection selection;
/**
* Constructor for SampleNewWizard.
*/
public SampleNewWizard( ) {
super( );
setNeedsProgressMonitor(true);
}
/**
* Adding the page to the wizard.
*/
public void addPages( ) {
page = new SampleNewWizardPage(selection);
addPage(page);
}
.
.
.In the createControl method of
SampleNewWizardPage.java, the
wizard’s appearance is created. As you can see here,
the SWT controls—labels, text controls, and so on—are
added and positioned:
public void createControl(Composite parent) { Composite container = new Composite(parent, SWT.NULL); GridLayout layout = new GridLayout( ); container.setLayout(layout); layout.numColumns = 3; layout.verticalSpacing = 9; Label label = new Label(container, SWT.NULL); label.setText("&Container:"); containerText = new Text(container, SWT.BORDER | SWT.SINGLE); ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access