Package org.eclipse.ui.dialogs

## Class ListSelectionDialog

- java.lang.Object
- - org.eclipse.jface.window.Window
  - - org.eclipse.jface.dialogs.Dialog
    - - org.eclipse.jface.dialogs.TrayDialog
      - - org.eclipse.ui.dialogs.SelectionDialog
        - - org.eclipse.ui.dialogs.ListSelectionDialog

All Implemented Interfaces:
  `IShellProvider`

Direct Known Subclasses:
  `YesNoCancelListSelectionDialog`

    public class ListSelectionDialog
    extends SelectionDialog

A standard dialog which solicits a list of selections from the user. This class is configured with an arbitrary data model represented by content and label provider objects. The `getResult` method returns the selected elements.

This class may be instantiated; it is not intended to be subclassed.

Example:

     ListSelectionDialog dlg = new ListSelectionDialog(getShell(), input, new BaseWorkbenchContentProvider(),
                    new WorkbenchLabelProvider(), "Select the resources to save:");
     dlg.setInitialSelections(dirtyEditors);
     dlg.setTitle("Save Resources");
     dlg.open();

Restriction:
  This class is not intended to be subclassed by clients.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.eclipse.jface.window.Window

`Window.IExceptionHandler`

### Field Summary

### Fields inherited from class org.eclipse.jface.dialogs.Dialog

`blockedHandler, buttonBar, DIALOG_DEFAULT_BOUNDS, DIALOG_PERSISTLOCATION, DIALOG_PERSISTSIZE, dialogArea, DLG_IMG_ERROR, DLG_IMG_HELP, DLG_IMG_INFO, DLG_IMG_MESSAGE_ERROR, DLG_IMG_MESSAGE_INFO, DLG_IMG_MESSAGE_WARNING, DLG_IMG_QUESTION, DLG_IMG_WARNING, ELLIPSIS`

### Fields inherited from class org.eclipse.jface.window.Window

`CANCEL, OK, resizeHasOccurred`

### Constructor Summary

Constructors
`ListSelectionDialog​(Shell parentShell, Object input, IStructuredContentProvider contentProvider, ILabelProvider labelProvider, String message)` Creates a list selection dialog.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `configureShell​(Shell shell)` Configures the given shell in preparation for opening this window in it.
`protected Control` `createDialogArea​(Composite parent)` Creates and returns the contents of the upper part of this dialog (above the button bar).
`protected CheckboxTableViewer` `getViewer()` Returns the viewer used to show the list.
`protected void` `okPressed()` The `ListSelectionDialog` implementation of this `Dialog` method builds a list of the selected elements for later retrieval by the client and closes this dialog.

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

`createButtonsForButtonBar, createMessageArea, getDialogBoundsSettings, getDialogBoundsStrategy, getInitialElementSelections, getInitialSelections, getMessage, getOkButton, getResult, isResizable, setDialogBoundsSettings, setInitialElementSelections, setInitialSelections, setMessage, setResult, setSelectionResult, setTitle`

### Methods inherited from class org.eclipse.jface.dialogs.TrayDialog

`closeTray, createButtonBar, createHelpControl, getLayout, getTray, handleShellCloseEvent, isDialogHelpAvailable, isHelpAvailable, openTray, setDialogHelpAvailable, setHelpAvailable`

### Methods inherited from class org.eclipse.jface.dialogs.Dialog

`applyDialogFont, buttonPressed, cancelPressed, close, convertHeightInCharsToPixels, convertHeightInCharsToPixels, convertHorizontalDLUsToPixels, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, convertVerticalDLUsToPixels, convertWidthInCharsToPixels, convertWidthInCharsToPixels, create, createButton, createContents, dialogFontIsDefault, getBlockedHandler, getButton, getButtonBar, getCancelButton, getDialogArea, getImage, getInitialLocation, getInitialSize, getOKButton, initializeBounds, initializeDialogUnits, setBlockedHandler, setButtonLayoutData, setButtonLayoutFormData, shortenText`

### Methods inherited from class org.eclipse.jface.window.Window

`canHandleShellCloseEvent, constrainShellSize, createShell, getConstrainedShellBounds, getContents, getDefaultImage, getDefaultImages, getDefaultOrientation, getParentShell, getReturnCode, getShell, getShellListener, getShellStyle, getWindowManager, handleFontChange, open, setBlockOnOpen, setDefaultImage, setDefaultImages, setDefaultModalParent, setDefaultOrientation, setExceptionHandler, setParentShell, setReturnCode, setShellStyle, setWindowManager`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ListSelectionDialog

    public ListSelectionDialog​(Shell parentShell,
                               Object input,
                               IStructuredContentProvider contentProvider,
                               ILabelProvider labelProvider,
                               String message)

Creates a list selection dialog.

Parameters:
  `parentShell` - the parent shell
  `input` - the root element to populate this dialog with
  `contentProvider` - the content provider for navigating the model
  `labelProvider` - the label provider for displaying model elements
  `message` - the message to be displayed at the top of this dialog, or `null` to display a default message

### Method Detail

#### configureShell

    protected void configureShell​(Shell shell)

Description copied from class: `Window`
Configures the given shell in preparation for opening this window in it.

The default implementation of this framework method sets the shell's image and gives it a grid layout. Subclasses may extend or reimplement.

Overrides:
  `configureShell` in class `SelectionDialog`
Parameters:
  `shell` - the shell

#### createDialogArea

    protected Control createDialogArea​(Composite parent)

Description copied from class: `Dialog`
Creates and returns the contents of the upper part of this dialog (above the button bar).

The `Dialog` implementation of this framework method creates and returns a new `Composite` with standard margins and spacing.

The returned control's layout data must be an instance of `GridData`. This method must not modify the parent's layout.

Subclasses must override this method but may call `super` as in the following example:

     Composite composite = (Composite) super.createDialogArea(parent);
     //add controls to composite as necessary
     return composite;

Overrides:
  `createDialogArea` in class `Dialog`
Parameters:
  `parent` - the parent composite to contain the dialog area
Returns:
  the dialog area control

#### getViewer

    protected CheckboxTableViewer getViewer()

Returns the viewer used to show the list.

Returns:
  the viewer, or `null` if not yet created

#### okPressed

    protected void okPressed()

The `ListSelectionDialog` implementation of this `Dialog` method builds a list of the selected elements for later retrieval by the client and closes this dialog.

Overrides:
  `okPressed` in class `Dialog`