Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jdt.ui.wizards
Class NewContainerWizardPage

    java.lang.Object
      org.eclipse.jface.dialogs.DialogPage
          org.eclipse.jface.wizard.WizardPage
              org.eclipse.jdt.ui.wizards.NewElementWizardPage
                  org.eclipse.jdt.ui.wizards.NewContainerWizardPage

All Implemented Interfaces:
  IDialogPage, IMessageProvider, IWizardPage

Direct Known Subclasses:
  NewPackageWizardPage, NewTypeWizardPage

public abstract class NewContainerWizardPage
extends NewElementWizardPage

Wizard page that acts as a base class for wizard pages that create new Java elements. The class provides a input field for source folders (called container in this class) and API to validate the enter source folder name.

Since:
  2.0

Field Summary
`protected static String` | `CONTAINER` Id of the container field
`protected IStatus` | `fContainerStatus` The status of the last validation.

Fields inherited from interface org.eclipse.jface.dialogs.IMessageProvider
`ERROR, INFORMATION, NONE, WARNING`

Constructor Summary
`NewContainerWizardPage(String name)` Create a new `NewContainerWizardPage`

Method Summary
`protected IStatus` | `containerChanged()` This method is a hook which gets called after the source folder's text input field has changed.
`protected void` | `createContainerControls(Composite parent, int nColumns)` Creates the necessary controls (label, text field and browse button) to edit the source folder location.
`protected ITextSelection` | `getCurrentTextSelection()` Returns the test selection of the current editor.
`protected IJavaElement` | `getInitialJavaElement(IStructuredSelection selection)` Utility method to inspect a selection to find a Java element.
`protected int` | `getMaxFieldWidth()` Returns the recommended maximum width for text fields (in pixels).
`IPackageFragmentRoot` | `getPackageFragmentRoot()` Returns the `IPackageFragmentRoot` that corresponds to the current value of the source folder field.
`String` | `getPackageFragmentRootText()` Returns the current text of source folder text field.
`protected IWorkspaceRoot` | `getWorkspaceRoot()` Returns the workspace root.
`protected void` | `handleFieldChanged(String fieldName)` Hook method that gets called when a field on this page has changed.
`protected void` | `initContainerPage(IJavaElement elem)` Initializes the source folder field with a valid package fragment root.
`protected void` | `setFocusOnContainer()` Sets the focus to the source folder's text field.
`void` | `setPackageFragmentRoot(IPackageFragmentRoot root, boolean canBeModified)` Sets the current source folder (model and text field) to the given package fragment root.

Methods inherited from class org.eclipse.jdt.ui.wizards.NewElementWizardPage
`setVisible, updateStatus, updateStatus`

Methods inherited from class org.eclipse.jface.wizard.WizardPage
`canFlipToNextPage, getContainer, getDialogSettings, getImage, getName, getNextPage, getPreviousPage, getShell, getWizard, isCurrentPage, isPageComplete, setDescription, setErrorMessage, setImageDescriptor, setMessage, setPageComplete, setPreviousPage, setTitle, setWizard, toString`

Methods inherited from class org.eclipse.jface.dialogs.DialogPage
`convertHeightInCharsToPixels, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, convertWidthInCharsToPixels, dispose, getControl, getDescription, getDialogFontName, getErrorMessage, getFont, getMessage, getMessageType, getTitle, getToolTipText, initializeDialogUnits, isControlCreated, performHelp, setButtonLayoutData, setControl, setMessage`

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

Methods inherited from interface org.eclipse.jface.dialogs.IDialogPage
`createControl, dispose, getControl, getDescription, getErrorMessage, getMessage, getTitle, performHelp`

Field Detail

### CONTAINER

    protected static final String CONTAINER

  Id of the container field

  See Also:
    Constant Field Values

### fContainerStatus

    protected IStatus fContainerStatus

  The status of the last validation.

Constructor Detail

### NewContainerWizardPage

    public NewContainerWizardPage(String name)

  Create a new `NewContainerWizardPage`

Parameters:
  `name` - the wizard page's name

Method Detail

### initContainerPage

    protected void initContainerPage(IJavaElement elem)

  Initializes the source folder field with a valid package fragment root. The package fragment root is computed from the given Java element.

  Parameters:
    `elem` - the Java element used to compute the initial package fragment root used as the source folder

### getInitialJavaElement

    protected IJavaElement getInitialJavaElement(IStructuredSelection selection)

  Utility method to inspect a selection to find a Java element.

  Parameters:
    `selection` - the selection to be inspected
  Returns:
    a Java element to be used as the initial selection, or `null`, if no Java element exists in the given selection

### getCurrentTextSelection

    protected ITextSelection getCurrentTextSelection()

  Returns the test selection of the current editor. `null` is returned when the current editor does not have focus or does not return a text selection.

  Returns:
    Returns the test selection of the current editor or `null`.
  Since:
    3.0

### getMaxFieldWidth

    protected int getMaxFieldWidth()

  Returns the recommended maximum width for text fields (in pixels). This method requires that createContent has been called before this method is call. Subclasses may override to change the maximum width for text fields.

  Returns:
    the recommended maximum width for text fields.

### createContainerControls

    protected void createContainerControls(Composite parent,
                                           int nColumns)

  Creates the necessary controls (label, text field and browse button) to edit the source folder location. The method expects that the parent composite uses a `GridLayout` as its layout manager and that the grid layout has at least 3 columns.

  Parameters:
    `parent` - the parent composite
    `nColumns` - the number of columns to span. This number must be greater or equal three

### setFocusOnContainer

    protected void setFocusOnContainer()

  Sets the focus to the source folder's text field.

### containerChanged

    protected IStatus containerChanged()

  This method is a hook which gets called after the source folder's text input field has changed. This default implementation updates the model and returns an error status. The underlying model is only valid if the returned status is OK.

  Returns:
    the model's error status

### handleFieldChanged

    protected void handleFieldChanged(String fieldName)

  Hook method that gets called when a field on this page has changed. For this page the method gets called when the source folder field changes.

  Every sub type is responsible to call this method when a field on its page has changed. Subtypes override (extend) the method to add verification when a own field has a dependency to an other field. For example the class name input must be verified again when the package field changes (check for duplicated class names).

  Parameters:
    `fieldName` - The name of the field that has changed (field id). For the source folder the field id is `CONTAINER`

### getWorkspaceRoot

    protected IWorkspaceRoot getWorkspaceRoot()

  Returns the workspace root.

  Returns:
    the workspace root

### getPackageFragmentRoot

    public IPackageFragmentRoot getPackageFragmentRoot()

  Returns the `IPackageFragmentRoot` that corresponds to the current value of the source folder field.

  Returns:
    the IPackageFragmentRoot or `null` if the current source folder value is not a valid package fragment root

### getPackageFragmentRootText

    public String getPackageFragmentRootText()

  Returns the current text of source folder text field.

  Returns:
    the text of the source folder text field

### setPackageFragmentRoot

    public void setPackageFragmentRoot(IPackageFragmentRoot root,
                                       boolean canBeModified)

  Sets the current source folder (model and text field) to the given package fragment root.

  Parameters:
    `root` - The new root.
    `canBeModified` - if `false` the source folder field can not be changed by the user. If `true` the field is editable

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse JDT Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) IBM Corp. and others 2000, 2004. All Rights Reserved.