org.eclipse.ui.dialogs

## Class WizardNewFileCreationPage

- java.lang.Object
- - org.eclipse.jface.dialogs.DialogPage
  - - org.eclipse.jface.wizard.WizardPage
    - - org.eclipse.ui.dialogs.WizardNewFileCreationPage

All Implemented Interfaces:
  IDialogPage, IMessageProvider, IWizardPage, Listener

    public class WizardNewFileCreationPage
    extends WizardPage
    implements Listener

Standard main page for a wizard that creates a file resource.

This page may be used by clients as-is; it may be also be subclassed to suit.

Subclasses may override

- `getInitialContents`
- `getNewFileLabel`

Subclasses may extend

- `handleEvent`

### Field Summary

### Fields inherited from interface org.eclipse.jface.dialogs.IMessageProvider

`ERROR, INFORMATION, NONE, WARNING`

### Constructor Summary

Constructors
Constructor and Description
`WizardNewFileCreationPage(String pageName, IStructuredSelection selection)` Creates a new file creation wizard page.

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`protected void` `createAdvancedControls(Composite parent)` Creates the widget for advanced options.
`void` `createControl(Composite parent)` Creates the top level control for this dialog page under the given parent composite.
`protected void` `createFile(IFile fileHandle, InputStream contents, IProgressMonitor monitor)` Deprecated. As of 3.3, use or override `createNewFile()` which uses the undoable operation support. To supply customized file content for a subclass, use `getInitialContents()`.
`protected IFile` `createFileHandle(IPath filePath)` Creates a file resource handle for the file with the given workspace path.
`protected void` `createLinkTarget()` Creates the link target path if a link target has been specified.
`IFile` `createNewFile()` Creates a new file resource in the selected container and with the selected name.
`protected ISchedulingRule` `createRule(IResource resource)` Deprecated. As of 3.3, scheduling rules are provided by the undoable operation that this page creates and executes.
`IPath` `getContainerFullPath()` Returns the current full path of the containing resource as entered or selected by the user, or its anticipated initial value.
`String` `getFileExtension()` Returns the file extension to use when creating the new file.
`String` `getFileName()` Returns the current file name as entered by the user, or its anticipated initial value.
`protected InputStream` `getInitialContents()` Returns a stream containing the initial contents to be given to new file resource instances.
`protected String` `getNewFileLabel()` Returns the label to display in the file name specification visual component group.
`protected void` `handleAdvancedButtonSelect()` Shows/hides the advanced option widgets.
`void` `handleEvent(Event event)` The `WizardNewFileCreationPage` implementation of this `Listener` method handles all events and enablements for controls on this page.
`protected void` `initialPopulateContainerNameField()` Sets the initial contents of the container name entry field, based upon either a previously-specified initial value or the ability to determine such a value.
`void` `setAllowExistingResources(boolean value)` Sets the flag indicating whether existing resources are permitted to be specified on this page.
`void` `setContainerFullPath(IPath path)` Sets the value of this page's container name field, or stores it for future use if this page's controls do not exist yet.
`void` `setFileExtension(String value)` Set the only file extension allowed for this page's file name field.
`void` `setFileName(String value)` Sets the value of this page's file name field, or stores it for future use if this page's controls do not exist yet.
`void` `setVisible(boolean visible)` The `DialogPage` implementation of this `IDialogPage` method sets the control to the given visibility state.
`protected IStatus` `validateLinkedResource()` Checks whether the linked resource target is valid.
`protected boolean` `validatePage()` Returns whether this page's controls currently all contain valid values.

### 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

`dispose, getControl, getDescription, getErrorMessage, getMessage, getTitle, performHelp`

### Constructor Detail

#### WizardNewFileCreationPage

    public WizardNewFileCreationPage(String pageName,
                                     IStructuredSelection selection)

Creates a new file creation wizard page. If the initial resource selection contains exactly one container resource then it will be used as the default container resource.

Parameters:
  `pageName` - the name of the page
  `selection` - the current resource selection

### Method Detail

#### createAdvancedControls

    protected void createAdvancedControls(Composite parent)

Creates the widget for advanced options.

Parameters:
  `parent` - the parent composite

#### createControl

    public void createControl(Composite parent)

Description copied from interface: `IDialogPage`
Creates the top level control for this dialog page under the given parent composite.

Implementors are responsible for ensuring that the created control can be accessed via `getControl`

Specified by:
  `createControl` in interface `IDialogPage`
Parameters:
  `parent` - the parent composite

#### createFile

    @Deprecated
    protected void createFile(IFile fileHandle,
                                          InputStream contents,
                                          IProgressMonitor monitor)
                                   throws CoreException

Deprecated. As of 3.3, use or override `createNewFile()` which uses the undoable operation support. To supply customized file content for a subclass, use `getInitialContents()`.
Creates a file resource given the file handle and contents.

Parameters:
  `fileHandle` - the file handle to create a file resource with
  `contents` - the initial contents of the new file resource, or `null` if none (equivalent to an empty stream)
  `monitor` - the progress monitor to show visual progress with
Throws:
  `CoreException` - if the operation fails
  `OperationCanceledException` - if the operation is canceled

#### createFileHandle

    protected IFile createFileHandle(IPath filePath)

Creates a file resource handle for the file with the given workspace path. This method does not create the file resource; this is the responsibility of `createFile`.

Parameters:
  `filePath` - the path of the file resource to create a handle for
Returns:
  the new file resource handle
See Also:
  `createFile(org.eclipse.core.resources.IFile, java.io.InputStream, org.eclipse.core.runtime.IProgressMonitor)`

#### createLinkTarget

    protected void createLinkTarget()

Creates the link target path if a link target has been specified.

#### createNewFile

    public IFile createNewFile()

Creates a new file resource in the selected container and with the selected name. Creates any missing resource containers along the path; does nothing if the container resources already exist.

In normal usage, this method is invoked after the user has pressed Finish on the wizard; the enablement of the Finish button implies that all controls on on this page currently contain valid values.

Note that this page caches the new file once it has been successfully created; subsequent invocations of this method will answer the same file resource without attempting to create it again.

This method should be called within a workspace modify operation since it creates resources.

Returns:
  the created file resource, or `null` if the file was not created

#### createRule

    @Deprecated
    protected ISchedulingRule createRule(IResource resource)

Deprecated. As of 3.3, scheduling rules are provided by the undoable operation that this page creates and executes.
Returns the scheduling rule to use when creating the resource at the given container path. The rule should be the creation rule for the top-most non-existing parent.

Parameters:
  `resource` - The resource being created
Returns:
  The scheduling rule for creating the given resource
Since:
  3.1

#### getContainerFullPath

    public IPath getContainerFullPath()

Returns the current full path of the containing resource as entered or selected by the user, or its anticipated initial value.

Returns:
  the container's full path, anticipated initial value, or `null` if no path is known

#### getFileName

    public String getFileName()

Returns the current file name as entered by the user, or its anticipated initial value.
The current file name will include the file extension if the preconditions are met.

Returns:
  the file name, its anticipated initial value, or `null` if no file name is known
See Also:
  `setFileExtension(String)`

#### getFileExtension

    public String getFileExtension()

Returns the file extension to use when creating the new file.

Returns:
  the file extension or `null`.
Since:
  3.3
See Also:
  `setFileExtension(String)`

#### getInitialContents

    protected InputStream getInitialContents()

Returns a stream containing the initial contents to be given to new file resource instances. Subclasses may wish to override. This default implementation provides no initial contents.

Returns:
  initial contents to be given to new file resource instances

#### getNewFileLabel

    protected String getNewFileLabel()

Returns the label to display in the file name specification visual component group.

Subclasses may reimplement.

Returns:
  the label to display in the file name specification visual component group

#### handleAdvancedButtonSelect

    protected void handleAdvancedButtonSelect()

Shows/hides the advanced option widgets.

#### handleEvent

    public void handleEvent(Event event)

The `WizardNewFileCreationPage` implementation of this `Listener` method handles all events and enablements for controls on this page. Subclasses may extend.

Specified by:
  `handleEvent` in interface `Listener`
Parameters:
  `event` - the event which occurred

#### initialPopulateContainerNameField

    protected void initialPopulateContainerNameField()

Sets the initial contents of the container name entry field, based upon either a previously-specified initial value or the ability to determine such a value.

#### setAllowExistingResources

    public void setAllowExistingResources(boolean value)

Sets the flag indicating whether existing resources are permitted to be specified on this page.

Parameters:
  `value` - `true` if existing resources are permitted, and `false` otherwise
Since:
  3.4

#### setContainerFullPath

    public void setContainerFullPath(IPath path)

Sets the value of this page's container name field, or stores it for future use if this page's controls do not exist yet.

Parameters:
  `path` - the full path to the container

#### setFileName

    public void setFileName(String value)

Sets the value of this page's file name field, or stores it for future use if this page's controls do not exist yet.

Parameters:
  `value` - new file name

#### setFileExtension

    public void setFileExtension(String value)

Set the only file extension allowed for this page's file name field. If this page's controls do not exist yet, store it for future use.
If a file extension is specified, then it will always be appended with a '.' to the text from the file name field for validation when the following conditions are met:
(1) File extension length is greater than 0
(2) File name field text length is greater than 0
(3) File name field text does not already end with a '.' and the file extension specified (case sensitive)
The file extension will not be reflected in the actual file name field until the file name field loses focus.

Parameters:
  `value` - The file extension without the '.' prefix (e.g. 'java', 'xml')
Since:
  3.3

#### validateLinkedResource

    protected IStatus validateLinkedResource()

Checks whether the linked resource target is valid. Sets the error message accordingly and returns the status.

Returns:
  IStatus validation result from the CreateLinkedResourceGroup

#### validatePage

    protected boolean validatePage()

Returns whether this page's controls currently all contain valid values.

Returns:
  `true` if all controls are valid, and `false` if at least one is invalid

#### setVisible

    public void setVisible(boolean visible)

Description copied from class: `DialogPage`
The `DialogPage` implementation of this `IDialogPage` method sets the control to the given visibility state. Subclasses may extend.

Specified by:
  `setVisible` in interface `IDialogPage`
Overrides:
  `setVisible` in class `DialogPage`
Parameters:
  `visible` - `true` to make this page visible, and `false` to hide it