Package org.eclipse.swt.widgets

## Class Dialog

- java.lang.Object
- - org.eclipse.swt.widgets.Dialog

All Implemented Interfaces:
  `Adaptable`

Direct Known Subclasses:
  `ColorDialog`, `FileDialog`, `FontDialog`, `MessageBox`

    public abstract class Dialog
    extends java.lang.Object
    implements Adaptable

This class is the abstract superclass of the classes that represent the built in platform dialogs. A `Dialog` typically contains other widgets that are not accessible. A `Dialog` is not a `Widget`.

This class can also be used as the abstract superclass for user-designed dialogs. Such dialogs usually consist of a Shell with child widgets.

Note: The modality styles supported by this class are treated as HINTs, because not all are supported by every subclass on every platform. If a modality style is not supported, it is "upgraded" to a more restrictive modality style that is supported. For example, if `PRIMARY_MODAL` is not supported by a particular dialog, it would be upgraded to `APPLICATION_MODAL`. In addition, as is the case for shells, the window manager for the desktop on which the instance is visible has ultimate control over the appearance and behavior of the instance, including its modality.

Styles:
  APPLICATION_MODAL, PRIMARY_MODAL, SYSTEM_MODAL
Events:
  (none)

Note: Only one of the styles APPLICATION_MODAL, PRIMARY_MODAL, and SYSTEM_MODAL may be specified.

See Also:
  `Shell`

### Field Summary

Fields
`protected int` `returnCode`
`protected Shell` `shell`

### Constructor Summary

Constructors
`Dialog​(Shell parent)` Constructs a new instance of this class given only its parent.
`Dialog​(Shell parent, int style)` Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `checkOperationMode()`
`protected void` `checkSubclass()`
`<T> T` `getAdapter​(java.lang.Class<T> adapter)` Implementation of the `Adaptable` interface.
`Shell` `getParent()` Returns the receiver's parent, which must be a `Shell` or null.
`int` `getStyle()` Returns the receiver's style information.
`java.lang.String` `getText()` Returns the receiver's text, which is the string that the window manager will typically display as the receiver's title.
`void` `open​(DialogCallback dialogCallback)` Opens this dialog in a non-blocking way and brings it to the front of the display.
`protected void` `prepareOpen()`
`protected void` `runEventLoop​(Shell shell)`
`void` `setText​(java.lang.String string)` Sets the receiver's text, which is the string that the window manager will typically display as the receiver's title, to the argument, which must not be null.

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

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

### Field Detail

#### shell

    protected Shell shell

#### returnCode

    protected int returnCode

### Constructor Detail

#### Dialog

    public Dialog​(Shell parent)

Constructs a new instance of this class given only its parent.

Parameters:
  `parent` - a shell which will be the parent of the new instance
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent

#### Dialog

    public Dialog​(Shell parent,
                  int style)

Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

The style value is either one of the style constants defined in class `SWT` which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the `int` "|" operator) two or more of those `SWT` style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

Parameters:
  `parent` - a shell which will be the parent of the new instance
  `style` - the style of dialog to construct
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
See Also:
  `SWT.APPLICATION_MODAL`

### Method Detail

#### getParent

    public Shell getParent()

Returns the receiver's parent, which must be a `Shell` or null.

Returns:
  the receiver's parent
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

#### getStyle

    public int getStyle()

Returns the receiver's style information.

Note that, the value which is returned by this method may not match the value which was provided to the constructor when the receiver was created.

Returns:
  the style bits
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

#### getText

    public java.lang.String getText()

Returns the receiver's text, which is the string that the window manager will typically display as the receiver's title. If the text has not previously been set, returns an empty string.

Returns:
  the text
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

#### setText

    public void setText​(java.lang.String string)

Sets the receiver's text, which is the string that the window manager will typically display as the receiver's title, to the argument, which must not be null.

Parameters:
  `string` - the new text
Throws:
  `java.lang.IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the text is null
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

#### open

    public void open​(DialogCallback dialogCallback)

Opens this dialog in a non-blocking way and brings it to the front of the display. If given, the `dialogCallback` is notified when the dialog is closed.

Use this method instead of the `open()` method from the respective `Dialog` implementation when running in JEE_COMPATIBILTY mode.

Parameters:
  `dialogCallback` - the callback to be notified when the dialog was closed or `null` if no callback should be notified.
Since:
  3.1
See Also:
  `DialogCallback`, `Application.OperationMode`

#### getAdapter

    public <T> T getAdapter​(java.lang.Class<T> adapter)

Implementation of the `Adaptable` interface.

IMPORTANT: This method is not part of the RWT public API. It is marked public only so that it can be shared within the packages provided by RWT. It should never be accessed from application code.

Specified by:
  `getAdapter` in interface `Adaptable`
Parameters:
  `adapter` - the lookup class
Returns:
  an object that can be cast to the given class or `null` if there is no adapter associated with the given class.

#### prepareOpen

    protected void prepareOpen()

#### checkSubclass

    protected void checkSubclass()

#### checkOperationMode

    protected void checkOperationMode()

#### runEventLoop

    protected void runEventLoop​(Shell shell)