IntroduceIndirectionInputPage.this.setPageComplete(nameOk); IntroduceIndirectionInputPage.this.setErrorMessage(nameOk ? "" : status.getMessageMatchingSeverity(RefactoringStatus.ERROR));
	public void createControl(Composite parent) {		Composite result= new Composite(parent, SWT.NONE);		setControl(result);		GridLayout layout= new GridLayout();		layout.numColumns= 2;		result.setLayout(layout);		Label methNameLabel= new Label(result, SWT.NONE);		methNameLabel.setText(RefactoringMessages.IntroduceIndirectionInputPage_new_method_name);		fIntermediaryMethodName= createIntermediaryNameCombo(result);		fIntermediaryMethodName.setText(getIntroduceIndirectionRefactoring().getIntermediaryMethodName());		final Label intermediaryTypeLabel= new Label(result, SWT.NONE);		intermediaryTypeLabel.setText(RefactoringMessages.IntroduceIndirectionInputPage_declaring_class);		Composite inner= new Composite(result, SWT.NONE);		GridLayout innerLayout= new GridLayout();		innerLayout.marginHeight= 0;		innerLayout.marginWidth= 0;		innerLayout.numColumns= 2;		inner.setLayout(innerLayout);		inner.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));		fIntermediaryTypeName= createIntermediaryTypeCombo(inner);		fIntermediaryTypeName.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));		final Button browseTypes= new Button(inner, SWT.PUSH);		browseTypes.setText(RefactoringMessages.IntroduceIndirectionInputPage_browse);		GridData gd= new GridData();		gd.horizontalAlignment= GridData.END;		gd.widthHint= SWTUtil.getButtonWidthHint(browseTypes);		browseTypes.setLayoutData(gd);		final Button enableReferencesCheckBox= new Button(result, SWT.CHECK);		enableReferencesCheckBox.setText(RefactoringMessages.IntroduceIndirectionInputPage_update_references);		gd= new GridData(GridData.FILL_HORIZONTAL);		gd.horizontalSpan= 2;		gd.verticalIndent= 2;		enableReferencesCheckBox.setLayoutData(gd);		fIntermediaryMethodName.addModifyListener(new ModifyListener() {			public void modifyText(ModifyEvent e) {				fMethodNameStatus= getIntroduceIndirectionRefactoring().setIntermediaryMethodName(fIntermediaryMethodName.getText());				validateInput(true);			}		});		enableReferencesCheckBox.addSelectionListener(new SelectionAdapter() {			public void widgetSelected(SelectionEvent e) {				getIntroduceIndirectionRefactoring().setEnableUpdateReferences(enableReferencesCheckBox.getSelection());			}		});		fIntermediaryTypeName.addModifyListener(new ModifyListener() {			public void modifyText(ModifyEvent e) {				fDestinationStatus= getIntroduceIndirectionRefactoring().setIntermediaryClassName(fIntermediaryTypeName.getText());				validateInput(false);			}		});		browseTypes.addSelectionListener(new SelectionAdapter() {			public void widgetSelected(SelectionEvent e) {				IType intermediaryType= chooseIntermediaryClass();				if (intermediaryType == null)					return;				RefactoringStatus status= getIntroduceIndirectionRefactoring().setIntermediaryClassName(intermediaryType.getFullyQualifiedName());				boolean nameOk= status.isOK();				fIntermediaryTypeName.setText(intermediaryType.getFullyQualifiedName());				IntroduceIndirectionInputPage.this.setPageComplete(nameOk);				IntroduceIndirectionInputPage.this.setErrorMessage(nameOk ? "" : //$NON-NLS-1$						status.getMessageMatchingSeverity(RefactoringStatus.ERROR));			}		});		if (getIntroduceIndirectionRefactoring().canEnableUpdateReferences())			enableReferencesCheckBox.setSelection(true);		else {			enableReferencesCheckBox.setSelection(false);			enableReferencesCheckBox.setEnabled(false);			getIntroduceIndirectionRefactoring().setEnableUpdateReferences(false);		}		fIntermediaryTypeName.setText(getIntroduceIndirectionRefactoring().getIntermediaryClassName());				fIntermediaryMethodName.setFocus();		fIntermediaryMethodName.selectAll();		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IJavaHelpContextIds.INTRODUCE_INDIRECTION_WIZARD_PAGE);	}