|
Eclipse Platform 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.eclipse.jface.window.Window
A JFace window is an object that has no visual representation (no widgets) until it is told to open.
Creating a window involves the following steps:
Window
create
(optional)
WindowManager.add
(optional)
open
The JFace window framework (this package) consists of this class,
Window
, the abstract base of all windows, and one concrete
window classes (ApplicationWindow
) which may also be subclassed.
Clients may define additional window subclasses as required.
The Window
class provides the following methods which subclasses
may override:
close
- extend to free other SWT resourcesconfigureShell
- extend or reimplement to set shell
properties before window openscreateContents
- extend or reimplement to create
controls before window opensgetInitialSize
- reimplement to give the initial
size for the shellgetInitialLocation
- reimplement to give the initial
location for the shellgetShellListener
- extend or reimplement to receive
shell eventsgetToolTipText
- reimplement to add tool tipshandleFontChange
- reimplement to respond to font
changeshandleShellCloseEvent
- extend or reimplement to handle
shell closings
Nested Class Summary | |
static interface |
Window.IExceptionHandler
This interface defines a Exception Handler which can be set as a global handler and will be called if an exception happens in the event loop. |
Field Summary | |
static int |
CANCEL
Standard return code constant (value 1) indicating that the window was canceled. |
static int |
OK
Standard return code constant (value 0) indicating that the window was opened. |
Constructor Summary | |
protected |
Window(Shell parentShell)
Creates a window instance, whose shell will be created under the given parent shell. |
Method Summary | |
boolean |
close()
Closes this window, disposes its shell, and removes this window from its window manager (if it has one). |
protected void |
configureShell(Shell newShell)
Configures the given shell in preparation for opening this window in it. |
protected void |
constrainShellSize()
Constrain the shell size to be no larger than the display bounds. |
void |
create()
Creates this window's widgetry in a new top-level shell. |
protected Control |
createContents(Composite parent)
Creates and returns this window's contents. |
protected Shell |
createShell()
Creates and returns this window's shell. |
protected Control |
getContents()
Returns the top level control for this window. |
static Image |
getDefaultImage()
Returns the default image. |
protected Point |
getInitialLocation(Point initialSize)
Returns the initial location to use for the shell. |
protected Point |
getInitialSize()
Returns the initial size to use for the shell. |
protected Shell |
getParentShell()
Returns parent shell, under which this window's shell is created. |
int |
getReturnCode()
Returns this window's return code. |
Shell |
getShell()
Returns this window's shell. |
protected ShellListener |
getShellListener()
Returns a shell listener. |
protected int |
getShellStyle()
Returns the shell style bits. |
WindowManager |
getWindowManager()
Returns the window manager of this window. |
protected void |
handleFontChange(PropertyChangeEvent event)
Notifies of a font property change. |
protected void |
handleShellCloseEvent()
Notifies that the window's close button was pressed, the close menu was selected, or the ESCAPE key pressed. |
protected void |
initializeBounds()
Initializes the location and size of this window's SWT shell after it has been created. |
int |
open()
Opens this window, creating it first if it has not yet been created. |
void |
setBlockOnOpen(boolean shouldBlock)
Sets whether the open method should block
until the window closes. |
static void |
setDefaultImage(Image image)
Sets the default image. |
static void |
setExceptionHandler(Window.IExceptionHandler handler)
Sets the exception handler for this application. |
protected void |
setReturnCode(int code)
Sets this window's return code. |
protected void |
setShellStyle(int newShellStyle)
Sets the shell style bits. |
void |
setWindowManager(WindowManager manager)
Sets the window manager of this window. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int OK
open()
,
Constant Field Valuespublic static final int CANCEL
open()
,
Constant Field ValuesConstructor Detail |
protected Window(Shell parentShell)
open
does not block.
parentShell
- the parent shell, or null
to create a top-level shellsetBlockOnOpen(boolean)
Method Detail |
public boolean close()
This framework method may be extended (super.close
must be
called).
true
if the window is (or was already) closed,
and false
if it is still openprotected void configureShell(Shell newShell)
The default implementation of this framework method sets the shell's image and gives it a grid layout. Subclasses may extend or reimplement.
newShell
- the shellprotected void constrainShellSize()
public void create()
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
).
protected Control createContents(Composite parent)
The default implementation of this framework method
creates an instance of Composite
.
Subclasses may override.
protected final Shell createShell()
The default implementation of this framework method creates
a new shell and configures it using configureShell. Rather
than override this method, subclasses should instead override
configureShell.
protected Control getContents()
null
if this window's
control has not been created yetpublic static Image getDefaultImage()
setDefaultImage
.
null
if nonesetDefaultImage(org.eclipse.swt.graphics.Image)
protected Point getInitialLocation(Point initialSize)
initialSize
- the initial size of the shell, as returned by getInitialSize
.
protected Point getInitialSize()
Shell.computeSize(SWT.DEFAULT, SWT.DEFAULT, true)
.
protected Shell getParentShell()
null
if there is no parent shellpublic int getReturnCode()
OK
and CANCEL
.
public Shell getShell()
null
if this window's
shell has not been created yetprotected ShellListener getShellListener()
The default implementation of this framework method
returns a new listener that makes this window the
active window for its window manager (if it has one)
when the shell is activated, and calls the framework
method handleShellCloseEvent
when the
shell is closed. Subclasses may extend or reimplement.
protected int getShellStyle()
The default value is SWT.CLOSE|SWT.MIN|SWT.MAX|SWT.RESIZE
.
Subclassers should call setShellStyle
to
change this value, rather than overriding this method.
public WindowManager getWindowManager()
null
if noneprotected void handleFontChange(PropertyChangeEvent event)
The default implementation of this framework method does nothing. Subclasses may reimplement.
event
- the property change event detailing what changedprotected void handleShellCloseEvent()
The default implementation of this framework method
sets the window's return code to CANCEL
and closes the window using close
.
Subclasses may extend or reimplement.
protected void initializeBounds()
This framework method is called by the create
framework method.
The default implementation calls getInitialSize
and
getInitialLocation
and passes the results to Shell.setBounds
.
This is only done if the bounds of the shell have not already been modified.
Subclasses may extend or reimplement.
public int open()
If this window has been configured to block on open
(setBlockOnOpen
), this method waits until
the window is closed by the end user, and then it returns the window's
return code; otherwise, this method returns immediately.
A window's return codes are window-specific, although two standard
return codes are predefined: OK
and CANCEL
.
create()
public void setBlockOnOpen(boolean shouldBlock)
open
method should block
until the window closes.
shouldBlock
- true
if the
open
method should not return
until the window closes, and false
if the
open
method should return immediatelypublic static void setDefaultImage(Image image)
image
- the default image, or null
if noneprotected void setReturnCode(int code)
open
if block on open is enabled. For non-blocking
opens, the return code needs to be retrieved manually using
getReturnCode
.
code
- the return codeprotected void setShellStyle(int newShellStyle)
The shell style bits are used by the framework method
createShell
when creating this window's shell.
newShellStyle
- the new shell style bitspublic void setWindowManager(WindowManager manager)
Note that this method is used by WindowManager
to maintain a
backpointer. Clients must not call the method directly.
manager
- the window manager, or null
if nonepublic static void setExceptionHandler(Window.IExceptionHandler handler)
Note that only one handler may be set. Other calls to this method will be ignored.
|
Eclipse Platform 2.0 |
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |