Mega Code Archive

 
Categories / Java by API / Org Eclipse Jface Wizard
 

Extends WizardPage (getNextPage())

import org.eclipse.jface.wizard.IWizardPage; import org.eclipse.jface.wizard.Wizard; import org.eclipse.jface.wizard.WizardDialog; import org.eclipse.jface.wizard.WizardPage; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; public class MainClass {   public static void main(String[] args) {     Display display = new Display();     Shell shell = new Shell(display);     WizardDialog dlg = new WizardDialog(shell, new SurveyWizard());     dlg.open();     display.dispose();   } } class SurveyWizard extends Wizard {   public SurveyWizard() {     // Add the pages     addPage(new ComplaintsPage());     addPage(new MoreInformationPage());     addPage(new ThanksPage());   }   public boolean performFinish() {     return true;   } } class ThanksPage extends WizardPage {   public ThanksPage() {     super("Thanks");   }   public void createControl(Composite parent) {     Label label = new Label(parent, SWT.CENTER);     label.setText("Thanks!");     setControl(label);   } } class MoreInformationPage extends WizardPage {   public MoreInformationPage() {     super("More Info");   }   public void createControl(Composite parent) {     Composite composite = new Composite(parent, SWT.NONE);     composite.setLayout(new GridLayout(1, false));     new Label(composite, SWT.LEFT).setText("Please enter your complaints");     Text text = new Text(composite, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);     text.setLayoutData(new GridData(GridData.FILL_BOTH));     setControl(composite);   } } class ComplaintsPage extends WizardPage {   private Button yes;   private Button no;   public ComplaintsPage() {     super("Complaints");   }   public void createControl(Composite parent) {     Composite composite = new Composite(parent, SWT.NONE);     composite.setLayout(new GridLayout(2, true));     new Label(composite, SWT.LEFT).setText("Do you have complaints?");     Composite yesNo = new Composite(composite, SWT.NONE);     yesNo.setLayout(new FillLayout(SWT.VERTICAL));     yes = new Button(yesNo, SWT.RADIO);     yes.setText("Yes");     no = new Button(yesNo, SWT.RADIO);     no.setText("No");     setControl(composite);   }   public IWizardPage getNextPage() {     if (yes.getSelection()) {       return super.getNextPage();     }     return getWizard().getPage("Thanks");   } }