Package org.eclipse.ui.dialogs

## Class SelectionStatusDialog

- 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.SelectionStatusDialog

All Implemented Interfaces:
  `IShellProvider`

Direct Known Subclasses:
  `AbstractElementListSelectionDialog`, `CheckedTreeSelectionDialog`, `ElementTreeSelectionDialog`, `FilteredItemsSelectionDialog`, `NewFolderDialog`, `ProjectLocationSelectionDialog`

    public abstract class SelectionStatusDialog
    extends SelectionDialog

An abstract base class for dialogs with a status bar and ok/cancel buttons. The status message must be passed over as StatusInfo object and can be an error, warning or ok. The OK button is enabled or disabled depending on the status.

Since:
  2.0

### 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
`SelectionStatusDialog​(Shell parent)` Creates an instance of a `SelectionStatusDialog`.

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`protected abstract void` `computeResult()` Compute the result and return it.
`protected void` `configureShell​(Shell shell)` Configures the given shell in preparation for opening this window in it.
`void` `create()` Creates this window's widgetry in a new top-level shell.
`protected Control` `createButtonBar​(Composite parent)` Creates and returns the contents of this dialog's button bar.
`Object` `getFirstResult()` Returns the first element from the list of results.
`protected void` `okPressed()` Notifies that the ok button of this dialog has been pressed.
`void` `setImage​(Image image)` Sets the image for this dialog.
`protected void` `setResult​(int position, Object element)` Sets a result element at the given position.
`void` `setStatusLineAboveButtons​(boolean aboveButtons)` Controls whether status line appears to the left of the buttons (default) or above them.
`protected void` `updateButtonsEnableState​(IStatus status)` Update the status of the ok button to reflect the given status.
`protected void` `updateStatus​(IStatus status)` Update the dialog's status line to reflect the given status.

### 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, 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, createButton, createContents, createDialogArea, 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

#### SelectionStatusDialog

    public SelectionStatusDialog​(Shell parent)

Creates an instance of a `SelectionStatusDialog`.

Parameters:
  `parent` - the parent shell

### Method Detail

#### setStatusLineAboveButtons

    public void setStatusLineAboveButtons​(boolean aboveButtons)

Controls whether status line appears to the left of the buttons (default) or above them.

Parameters:
  `aboveButtons` - if `true` status line is placed above buttons; if `false` to the right

#### setImage

    public void setImage​(Image image)

Sets the image for this dialog.

Parameters:
  `image` - the image.

#### getFirstResult

    public Object getFirstResult()

Returns the first element from the list of results. Returns `null` if no element has been selected.

Returns:
  the first result element if one exists. Otherwise `null` is returned.

#### setResult

    protected void setResult​(int position,
                             Object element)

Sets a result element at the given position.

Parameters:
  `position` - the position
  `element` - the element to set.

#### computeResult

    protected abstract void computeResult()

Compute the result and return it.

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

#### updateStatus

    protected void updateStatus​(IStatus status)

Update the dialog's status line to reflect the given status. It is safe to call this method before the dialog has been opened.

Parameters:
  `status` - the `IStatus` to use for updating the status line.

#### updateButtonsEnableState

    protected void updateButtonsEnableState​(IStatus status)

Update the status of the ok button to reflect the given status. Subclasses may override this method to update additional buttons.

Parameters:
  `status` - the `IStatus` to use.

#### okPressed

    protected void okPressed()

Description copied from class: `Dialog`
Notifies that the ok button of this dialog has been pressed.

The `Dialog` implementation of this framework method sets this dialog's return code to `Window.OK` and closes the dialog. Subclasses may override.

Overrides:
  `okPressed` in class `Dialog`

#### create

    public void create()

Description copied from class: `Window`
Creates this window's widgetry in a new top-level shell.

The default implementation of this framework method creates this window's shell (by calling `createShell`), and its controls (by calling `createContents`), then initializes this window's shell bounds (by calling `initializeBounds`).

Overrides:
  `create` in class `Dialog`

#### createButtonBar

    protected Control createButtonBar​(Composite parent)

Description copied from class: `Dialog`
Creates and returns the contents of this dialog's button bar.

The `Dialog` implementation of this framework method lays out a button bar and calls the `createButtonsForButtonBar` framework method to populate it. Subclasses may override.

The returned control's layout data must be an instance of `GridData`.

Overrides:
  `createButtonBar` in class `TrayDialog`
Parameters:
  `parent` - the parent composite to contain the button bar
Returns:
  the button bar control