Package org.eclipse.ui.dialogs

## Class WizardResourceImportPage

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

All Implemented Interfaces:
  `IDialogPage`, `IMessageProvider`, `IWizardPage`, `Listener`, `IOverwriteQuery`

    public abstract class WizardResourceImportPage
    extends WizardDataTransferPage

The abstract superclass for a typical import wizard's main page.

Clients may subclass this page to inherit its common destination resource selection facilities.

Subclasses must implement

- `createSourceGroup`

Subclasses may override

- `allowNewContainerName`

Subclasses may extend

- `handleEvent`

### Field Summary

Fields
`protected List` `selectedTypes`
`protected ResourceTreeAndListGroup` `selectionGroup` The `selectionGroup` field should have been created with a private modifier.

### Fields inherited from class org.eclipse.ui.dialogs.WizardDataTransferPage

`COMBO_HISTORY_LENGTH, SIZING_TEXT_FIELD_WIDTH`

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

`ERROR, INFORMATION, NONE, WARNING`

### Fields inherited from interface org.eclipse.ui.dialogs.IOverwriteQuery

`ALL, CANCEL, NO, NO_ALL, YES`

### Constructor Summary

Constructors
`protected` `WizardResourceImportPage​(String name, IStructuredSelection selection)` Creates an import wizard page.

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods
`protected boolean` `allowNewContainerName()` The `WizardResourceImportPage` implementation of this `WizardDataTransferPage` method returns `true`.
`void` `createControl​(Composite parent)` Creates the top level control for this dialog page under the given parent composite.
`protected void` `createDestinationGroup​(Composite parent)` Creates the import destination specification controls.
`protected void` `createFileSelectionGroup​(Composite parent)` Create the import source selection widget
`protected abstract void` `createSourceGroup​(Composite parent)` Creates the import source specification controls.
`protected boolean` `determinePageCompletion()` Returns whether this page is complete.
`protected IPath` `getContainerFullPath()` Returns the path of the container resource specified in the container name entry field, or `null` if no name has been typed in.
`protected String` `getErrorDialogTitle()` Get the title for an error dialog.
`protected abstract ITreeContentProvider` `getFileProvider()` Returns a content provider for `FileSystemElement`s that returns only files as children.
`protected abstract ITreeContentProvider` `getFolderProvider()` Returns a content provider for `FileSystemElement`s that returns only folders as children.
`protected IPath` `getResourcePath()` Return the path for the resource field.
`protected List` `getSelectedResources()` Returns this page's list of currently-specified resources to be imported.
`protected void` `getSelectedResources​(IElementFilter filter, IProgressMonitor monitor)` Returns this page's list of currently-specified resources to be imported filtered by the IElementFilter.
`protected void` `getSelectedResources​(org.eclipse.ui.internal.ide.dialogs.IElementFilter filter, IProgressMonitor monitor)` Deprecated. Should use the API `IElementFilter`
`protected String` `getSourceConflictMessage()` Returns the error message for when the source conflicts with the destination.
`protected IContainer` `getSpecifiedContainer()` Returns the container resource specified in the container name entry field, or `null` if such a container does not exist in the workbench.
`protected List` `getTypesToImport()` Returns a collection of the currently-specified resource types for use by the type selection dialog.
`protected void` `handleContainerBrowseButtonPressed()` Opens a container selection dialog and displays the user's subsequent container resource selection in this page's container name field.
`void` `handleEvent​(Event event)` The `WizardResourceImportPage` implementation of this `Listener` method handles all events and enablements for controls on this page.
`protected void` `handleTypesEditButtonPressed()` Open a registered type selection dialog and note the selections in the receivers types-to-export field
`protected void` `initialPopulateContainerField()` Sets the initial contents of the container name field.
`protected void` `setAllSelections​(boolean value)` Set all of the selections in the selection group to value
`void` `setContainerFieldValue​(String value)` Sets the value of this page's container resource field, or stores it for future use if this page's controls do not exist yet.
`protected void` `setupSelectionsBasedOnSelectedTypes()` Update the tree to only select those elements that match the selected types.
`protected boolean` `sourceConflictsWithDestination​(IPath sourcePath)` Returns whether or not the source location conflicts with the destination resource.
`protected void` `updateSelections​(Map map)` Update the selections with those in map .
`protected void` `updateWidgetEnablements()` Check if widgets are enabled or disabled by a change in the dialog.
`protected boolean` `validateDestinationGroup()` Returns whether this page's destination specification controls currently all contain valid values.

### Methods inherited from class org.eclipse.ui.dialogs.WizardDataTransferPage

`addToHistory, addToHistory, createBoldLabel, createOptionsGroup, createOptionsGroupButtons, createPlainLabel, createSpacer, displayErrorDialog, displayErrorDialog, getPathFromText, queryForContainer, queryForContainer, queryOverwrite, queryYesNoQuestion, restoreWidgetValues, saveWidgetValues, updatePageCompletion, validateOptionsGroup, validateSourceGroup`

### 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, setVisible`

### 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, setVisible`

### Field Detail

#### selectedTypes

    protected List selectedTypes

#### selectionGroup

    protected ResourceTreeAndListGroup selectionGroup

The `selectionGroup` field should have been created with a private modifier. Subclasses should not access this field directly.

Restriction:
  This field is not intended to be referenced by clients.

### Constructor Detail

#### WizardResourceImportPage

    protected WizardResourceImportPage​(String name,
                                       IStructuredSelection selection)

Creates an import wizard page. If the initial resource selection contains exactly one container resource then it will be used as the default import destination.

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

### Method Detail

#### allowNewContainerName

    protected boolean allowNewContainerName()

The `WizardResourceImportPage` implementation of this `WizardDataTransferPage` method returns `true`. Subclasses may override this method.

Specified by:
  `allowNewContainerName` in class `WizardDataTransferPage`
Returns:
  `true` if new ones are okay, and `false` if only existing ones are allowed

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

Parameters:
  `parent` - the parent composite

#### createDestinationGroup

    protected void createDestinationGroup​(Composite parent)

Creates the import destination specification controls.

Parameters:
  `parent` - the parent control

#### createFileSelectionGroup

    protected void createFileSelectionGroup​(Composite parent)

Create the import source selection widget

#### createSourceGroup

    protected abstract void createSourceGroup​(Composite parent)

Creates the import source specification controls.

Subclasses must implement this method.

Parameters:
  `parent` - the parent control

#### getErrorDialogTitle

    protected String getErrorDialogTitle()

Description copied from class: `WizardDataTransferPage`
Get the title for an error dialog. Subclasses should override.

Overrides:
  `getErrorDialogTitle` in class `WizardDataTransferPage`

#### getContainerFullPath

    protected IPath getContainerFullPath()

Returns the path of the container resource specified in the container name entry field, or `null` if no name has been typed in.

The container specified by the full path might not exist and would need to be created.

Returns:
  the full path of the container resource specified in the container name entry field, or `null`

#### getFileProvider

    protected abstract ITreeContentProvider getFileProvider()

Returns a content provider for `FileSystemElement`s that returns only files as children.

#### getFolderProvider

    protected abstract ITreeContentProvider getFolderProvider()

Returns a content provider for `FileSystemElement`s that returns only folders as children.

#### getResourcePath

    protected IPath getResourcePath()

Return the path for the resource field.

Returns:
  IPath

#### getSelectedResources

    protected List getSelectedResources()

Returns this page's list of currently-specified resources to be imported. This is the primary resource selection facility accessor for subclasses.

Returns:
  a list of resources currently selected for export (element type: `IResource`)

#### getSelectedResources

    protected void getSelectedResources​(IElementFilter filter,
                                        IProgressMonitor monitor)
                                 throws InterruptedException

Returns this page's list of currently-specified resources to be imported filtered by the IElementFilter.

Throws:
  `InterruptedException`
Since:
  3.10

#### getSelectedResources

    @Deprecated
    protected void getSelectedResources​(org.eclipse.ui.internal.ide.dialogs.IElementFilter filter,
                                        IProgressMonitor monitor)
                                 throws InterruptedException

Deprecated.
Should use the API `IElementFilter`
DO NOT USE THIS METHOD Returns this page's list of currently-specified resources to be imported filtered by the IElementFilter.

Throws:
  `InterruptedException`

#### getSpecifiedContainer

    protected IContainer getSpecifiedContainer()

Returns the container resource specified in the container name entry field, or `null` if such a container does not exist in the workbench.

Returns:
  the container resource specified in the container name entry field, or `null`

#### getTypesToImport

    protected List getTypesToImport()

Returns a collection of the currently-specified resource types for use by the type selection dialog.

#### handleContainerBrowseButtonPressed

    protected void handleContainerBrowseButtonPressed()

Opens a container selection dialog and displays the user's subsequent container resource selection in this page's container name field.

#### handleEvent

    public void handleEvent​(Event event)

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

Parameters:
  `event` - Event

#### handleTypesEditButtonPressed

    protected void handleTypesEditButtonPressed()

Open a registered type selection dialog and note the selections in the receivers types-to-export field

#### initialPopulateContainerField

    protected final void initialPopulateContainerField()

Sets the initial contents of the container name field.

#### setAllSelections

    protected void setAllSelections​(boolean value)

Set all of the selections in the selection group to value

Parameters:
  `value` - boolean

#### setContainerFieldValue

    public void setContainerFieldValue​(String value)

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

Parameters:
  `value` - String

#### setupSelectionsBasedOnSelectedTypes

    protected void setupSelectionsBasedOnSelectedTypes()

Update the tree to only select those elements that match the selected types. Do nothing by default.

#### updateSelections

    protected void updateSelections​(Map map)

Update the selections with those in map .

Parameters:
  `map` - Map - key tree elements, values Lists of list elements

#### updateWidgetEnablements

    protected void updateWidgetEnablements()

Check if widgets are enabled or disabled by a change in the dialog.

Overrides:
  `updateWidgetEnablements` in class `WizardDataTransferPage`

#### validateDestinationGroup

    protected final boolean validateDestinationGroup()

Description copied from class: `WizardDataTransferPage`
Returns whether this page's destination specification controls currently all contain valid values.

The `WizardDataTransferPage` implementation of this method returns `true`. Subclasses may reimplement this hook method.

Overrides:
  `validateDestinationGroup` in class `WizardDataTransferPage`
Returns:
  `true` indicating validity of all controls in the destination specification group

#### getSourceConflictMessage

    protected final String getSourceConflictMessage()

Returns the error message for when the source conflicts with the destination.

#### sourceConflictsWithDestination

    protected boolean sourceConflictsWithDestination​(IPath sourcePath)

Returns whether or not the source location conflicts with the destination resource. By default this is not checked, so `false` is returned.

Parameters:
  `sourcePath` - the path being checked
Returns:
  `true` if the source location conflicts with the destination resource, `false` if not

#### determinePageCompletion

    protected boolean determinePageCompletion()

Description copied from class: `WizardDataTransferPage`
Returns whether this page is complete. This determination is made based upon the current contents of this page's controls. Subclasses wishing to include their controls in this determination should override the hook methods `validateSourceGroup` and/or `validateOptionsGroup`.

Overrides:
  `determinePageCompletion` in class `WizardDataTransferPage`
Returns:
  `true` if this page is complete, and `false` if incomplete
See Also:
  `WizardDataTransferPage.validateSourceGroup()`, `WizardDataTransferPage.validateOptionsGroup()`