# com.bea.ide.control
ControlWizard Class

public abstract class ControlWizard
extends `ControlWizardSimple`

Extend this class for complete control of the look of an insert wizard. It should generally create a modal dialog which prompts for all necessary information.
In addition to control-specific information, it must be able to get for variable name if CONFIG_INSERT_INSTANCE is set and new JCX name if CONFIG_CREATE_EXTENSION_FILE is set.

Hierarchy
  `Object`
  `ControlWizardSimple`
  `ControlWizard`

## Nested Class Summary

`public static interface` | `ControlWizard.NameValidator` A class that allows a custom insert wizard to request name validation from the IDE before returning from the wizard's show method.

Nested classes from com.bea.ide.control`.`ControlWizardSimple``
``ControlWizardSimple.TagAttributeList`, `ControlWizardSimple.TagAttributeValue``

## Field Summary

Fields from com.bea.ide.control`.`ControlWizardSimple``
``CONFIG_CREATE_EXTENSION_FILE`, `CONFIG_INSERT_INSTANCE`, `CONFIG_NO_FACTORY`, `CONFIG_USE_EXISTING``

## Constructor Summary

ControlWizard()

## Method Summary

`public `JComponent`` | `getComponent`() This method will never be called.
`public abstract `Dialog`` | `getDialog`(`Frame` parent) Called by the IDE to retrieve the custom dialog that will collect necessary information for inserting the control.
`public abstract `String`` | `getExtensionName`() After a call to the onFinish() method , this will be called to get the instance name if CONFIG_CREATE_EXTENSION_FILE is set.
`public abstract `String`` | `getInstanceName`() After a call to the onFinish() method, this will be called to get the instance name if CONFIG_INSERT_INSTANCE is set.
`public `Issue`[]` | `getIssues`() This method will never be called.
`public `ControlWizard.NameValidator`` | `getNameValidator`() Returns the validator passed in by the IDE.
`public void` | `setNameValidator`(`ControlWizard.NameValidator` validator) Sets the name validator, so your wizard or dialog can ensure that the variable and/or JCX name are valid from the IDE's perspective.

Methods from `com.bea.ide.control.`ControlWizardSimple``
``getConfigurationInfo`, `getContext`, `getExtensionFileContent`, `getInstanceAnnotations`, `onFinish`, `setConfiguration`, `setContext`, `setName`, `setPackage``

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Detail

### ControlWizard

    public ControlWizard()

## Method Detail

### getComponent() Method

    public JComponent getComponent()

This method will never be called. The show() method should create and show a modal dialog which prompts for all necessary information.

Overrides
  `ControlWizardSimple.getComponent()`

### getDialog(Frame) Method

    public abstract Dialog getDialog(Frame parent)

Called by the IDE to retrieve the custom dialog that will collect necessary information for inserting the control. This will be called instead of the getComponent() method, but otherwise behaves very similarly. The onFinish() method will be called after the dialog's show() method returns from the dialog created here.
The onFinish() method should simply return `true` if control creation should continue (in other words, if the user pressed OK and the wizard did all necessary validation), or `false` if control creation was cancelled.

#### Parameters

parent
  The frame that will contain this dialog.

#### Returns

The custom insert dialog.

### getExtensionName() Method

    public abstract String getExtensionName()

After a call to the onFinish() method , this will be called to get the instance name if CONFIG_CREATE_EXTENSION_FILE is set.

#### Returns

The java type or filename to create.

### getInstanceName() Method

    public abstract String getInstanceName()

After a call to the onFinish() method, this will be called to get the instance name if CONFIG_INSERT_INSTANCE is set.

#### Returns

The variable name for the control instance.

### getIssues() Method

    public Issue[] getIssues()

This method will never be called. Any validation should be done during the dialog's show() method.

Overrides
  `ControlWizardSimple.getIssues()`

### getNameValidator() Method

    public ControlWizard.NameValidator getNameValidator()

Returns the validator passed in by the IDE. Call this method to retrieve the validator class in order to verify that the variable and JCX names proposed by the user are acceptable to the IDE.

#### Returns

The validator to use for validating the new control variable and JCX name.

### setNameValidator(ControlWizard.NameValidator) Method

    public void setNameValidator(ControlWizard.NameValidator validator)

Sets the name validator, so your wizard or dialog can ensure that the variable and/or JCX name are valid from the IDE's perspective. This will be set before the show() method is called.

#### Parameters

validator
  A validator to use for validating the new control variable and JCX name.