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. The basic template for a user-defined dialog typically looks something like this:
public class MyDialog extends Dialog {
Object result;
public MyDialog (Shell parent, int style) {
super (parent, style);
}
public MyDialog (Shell parent) {
this (parent, 0); // your default style bits go here (not the Shell's style bits)
}
public Object open () {
Shell parent = getParent();
Shell shell = new Shell(parent, SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);
shell.setText(getText());
// Your code goes here (widget creation, set result, etc).
shell.open();
Display display = parent.getDisplay();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) display.sleep();
}
return result;
}
}
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.
Note
Only one of the styles APPLICATION_MODAL, PRIMARY_MODAL, and SYSTEM_MODAL may be specified.
Shell, SWT Example: ControlExample, Sample code and further information
| Access | Constructor and Description |
|---|---|
| public | |
| public |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | checkParent(Shell parent)
Throws an exception if the specified widget can not be used as a parent for the receiver. |
| pack-priv static int | |
| protected void | |
| pack-priv void | error(int
the descriptive error code code)Does whatever dialog specific cleanup is required, and then
uses the code in |
| public Shell | Returns: the receiver's parentReturns the receiver's parent, which must be a |
| public int | |
| public String | Returns: the textReturns the receiver's text, which is the string that the window manager will typically display as the receiver's title. |
| public void |
| parent | back to summary |
|---|---|
| pack-priv Shell parent | |
| style | back to summary |
|---|---|
| pack-priv int style | |
| title | back to summary |
|---|---|
| pack-priv String title | |
| Dialog | back to summary |
|---|---|
| public Dialog(Shell parent) Constructs a new instance of this class given only its parent.
| |
| Dialog | back to summary |
|---|---|
| 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
| |
| checkParent | back to summary |
|---|---|
| pack-priv void checkParent(Shell parent) Throws an exception if the specified widget can not be used as a parent for the receiver.
| |
| checkStyle | back to summary |
|---|---|
| pack-priv static int checkStyle(Shell parent, int style) | |
| checkSubclass | back to summary |
|---|---|
| protected void checkSubclass() Checks that this class can be subclassed. Important Note See the comment in
| |
| error | back to summary |
|---|---|
| pack-priv void error(int code) Does whatever dialog specific cleanup is required, and then
uses the code in
| |
| getParent | back to summary |
|---|---|
| public Shell getParent() Returns the receiver's parent, which must be a
| |
| getStyle | back to summary |
|---|---|
| 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.
| |
| getText | back to summary |
|---|---|
| public 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.
| |
| setText | back to summary |
|---|---|
| public void setText(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.
| |