Class Dialog
- Direct Known Subclasses:
ColorDialog
,DirectoryDialog
,FileDialog
,FontDialog
,MessageBox
,PrintDialog
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.
- Styles:
- APPLICATION_MODAL, PRIMARY_MODAL, SYSTEM_MODAL, SHEET
- Events:
- (none)
Note: Only one of the styles APPLICATION_MODAL, PRIMARY_MODAL, and SYSTEM_MODAL may be specified.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
Checks that this class can be subclassed.Returns the receiver's parent, which must be aShell
or null.int
getStyle()
Returns the receiver's style information.getText()
Returns the receiver's text, which is the string that the window manager will typically display as the receiver's title.void
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.
-
Constructor Details
-
Dialog
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:
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
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 theint
"|" operator) two or more of thoseSWT
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 instancestyle
- the style of dialog to construct- Throws:
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:
-
-
Method Details
-
checkSubclass
protected void checkSubclass()Checks that this class can be subclassed.IMPORTANT: See the comment in
Widget.checkSubclass()
.- Throws:
SWTException
-- ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
- See Also:
-
getParent
Returns the receiver's parent, which must be aShell
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
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
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:
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
-