org.eclipse.jface.window
Class ApplicationWindow
java.lang.Object
org.eclipse.jface.window.Window
org.eclipse.jface.window.ApplicationWindow
-
All Implemented Interfaces:
-
IRunnableContext,
IShellProvider
-
public class ApplicationWindow
- extends
Window
- implements
IRunnableContext
An application window is a high-level "main window", with built-in
support for an optional menu bar with standard menus, an optional toolbar,
and an optional status line.
Creating an application window involves the following steps:
- creating an instance of
ApplicationWindow
- assigning the window to a window manager (optional)
- opening the window by calling
open
Only on the last step, when the window is told to open, are
the window's shell and widget tree created. When the window is
closed, the shell and widget tree are disposed of and are no longer
referenced, and the window is automatically removed from its window
manager. Like all windows, an application window may be reopened.
An application window is also a suitable context in which to perform
long-running operations (that is, it implements IRunnableContext
).
Field Summary
|
protected
Label
|
seperator1
The seperator between the menu bar and the rest of the window. |
Fields inherited from class org.eclipse.jface.window.
Window
|
CANCEL,
OK
|
Constructor Summary
|
ApplicationWindow
(
Shell parentShell)
Create an application window instance, whose shell will be created under the
given parent shell. |
Methods inherited from class org.eclipse.jface.window.
Window
|
constrainShellSize,
create,
createContents,
createShell,
getConstrainedShellBounds,
getContents,
getDefaultImage,
getDefaultImages,
getDefaultOrientation,
getInitialLocation,
getInitialSize,
getParentShell,
getReturnCode,
getShell,
getShellListener,
getShellStyle,
getWindowManager,
handleFontChange,
handleShellCloseEvent,
initializeBounds,
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
|
seperator1
protected
Label seperator1
- The seperator between the menu bar and the rest of the window.
ApplicationWindow
public ApplicationWindow(
Shell parentShell)
- Create an application window instance, whose shell will be created under the
given parent shell.
Note that the window will have no visual representation (no widgets)
until it is told to open. By default,
open
does not block.
-
Parameters:
-
parentShell
- the parent shell, or null
to create a top-level shell
getSeperator1
protected
Label getSeperator1()
- Return the top seperator.
-
-
-
Returns:
- Label
addMenuBar
protected void addMenuBar()
- Configures this window to have a menu bar.
Does nothing if it already has one.
This method must be called before this window's shell is created.
-
-
addStatusLine
protected void addStatusLine()
- Configures this window to have a status line.
Does nothing if it already has one.
This method must be called before this window's shell is created.
-
-
addToolBar
protected void addToolBar(int style)
- Configures this window to have a tool bar.
Does nothing if it already has one.
This method must be called before this window's shell is created.
-
-
-
Parameters:
-
style
- swt style bits used to create the Toolbar -
See Also:
-
ToolBarManager.ToolBarManager(int)
,
for style bits
addCoolBar
protected void addCoolBar(int style)
- Configures this window to have a cool bar.
Does nothing if it already has one.
This method must be called before this window's shell is created.
-
-
-
Parameters:
-
style
- the cool bar style -
Since:
- 3.0
canHandleShellCloseEvent
protected boolean canHandleShellCloseEvent()
-
Description copied from class:
Window
- Determines if the window should handle the close event or do nothing.
The default implementation of this framework method returns
true
, which will allow the
handleShellCloseEvent
method to be called. Subclasses may
extend or reimplement.
-
-
Overrides:
-
canHandleShellCloseEvent
in class
Window
-
-
Returns:
- whether the window should handle the close event.
close
public boolean close()
-
Description copied from class:
Window
- Closes this window, disposes its shell, and removes this window from its
window manager (if it has one).
This framework method may be extended (super.close
must
be called).
Note that in order to prevent recursive calls to this method
it does not call Shell#close()
. As a result ShellListener
s
will not receive a shellClosed
event.
-
-
Overrides:
-
close
in class
Window
-
-
Returns:
-
true
if the window is (or was already) closed, and
false
if it is still open
configureShell
protected void configureShell(
Shell shell)
- Extends the super implementation by creating the trim widgets using
createTrimWidgets
.
-
-
Overrides:
-
configureShell
in class
Window
-
-
Parameters:
-
shell
- the shell
createTrimWidgets
protected void createTrimWidgets(
Shell shell)
- Creates the trim widgets around the content area.
-
-
-
Parameters:
-
shell
- the shell -
Since:
- 3.0
getLayout
protected
Layout getLayout()
-
Description copied from class:
Window
- Creates the layout for the shell. The layout created here will be
attached to the composite passed into createContents. The default
implementation returns a GridLayout with no margins. Subclasses that
change the layout type by overriding this method should also override
createContents.
A return value of null indicates that no layout should be attached to the
composite. In this case, the layout may be attached within
createContents.
-
-
Overrides:
-
getLayout
in class
Window
-
-
Returns:
- a newly created Layout or null if no layout should be attached.
showTopSeperator
protected boolean showTopSeperator()
- Returns whether to show a top separator line between the menu bar
and the rest of the window contents. On some platforms such as the Mac,
the menu is separated from the main window already, so a separator line
is not desired.
-
-
-
Returns:
-
true
to show the top separator, false
to not show it -
Since:
- 3.0
createStatusLine
protected void createStatusLine(
Shell shell)
- Create the status line if required.
-
-
-
Parameters:
-
shell
-
createMenuManager
protected
MenuManager createMenuManager()
- Returns a new menu manager for the window.
Subclasses may override this method to customize the menu manager.
-
-
-
Returns:
- a menu manager
createStatusLineManager
protected
StatusLineManager createStatusLineManager()
- Returns a new status line manager for the window.
Subclasses may override this method to customize the status line manager.
-
-
-
Returns:
- a status line manager
createToolBarManager
protected
ToolBarManager createToolBarManager(int style)
- Returns a new tool bar manager for the window.
Subclasses may override this method to customize the tool bar manager.
-
-
-
Parameters:
-
style
- swt style bits used to create the Toolbar
-
Returns:
- a tool bar manager
-
See Also:
-
ToolBarManager.ToolBarManager(int)
,
for style bits
createToolBarManager2
protected
IToolBarManager createToolBarManager2(int style)
- Returns a new tool bar manager for the window.
By default this method calls createToolBarManager
. Subclasses
may override this method to provide an alternative implementation for the
tool bar manager.
-
-
-
Parameters:
-
style
- swt style bits used to create the Toolbar
-
Returns:
- a tool bar manager
-
Since:
- 3.2
-
See Also:
-
createToolBarManager(int)
createCoolBarManager
protected
CoolBarManager createCoolBarManager(int style)
- Returns a new cool bar manager for the window.
Subclasses may override this method to customize the cool bar manager.
-
-
-
Parameters:
-
style
- swt style bits used to create the Coolbar
-
Returns:
- a cool bar manager
-
Since:
- 3.0
-
See Also:
-
CoolBarManager.CoolBarManager(int)
,
for style bits
createCoolBarManager2
protected
ICoolBarManager createCoolBarManager2(int style)
- Returns a new cool bar manager for the window.
By default this method calls createCoolBarManager
. Subclasses
may override this method to provide an alternative implementation for the
cool bar manager.
-
-
-
Parameters:
-
style
- swt style bits used to create the Coolbar
-
Returns:
- a cool bar manager
-
Since:
- 3.2
-
See Also:
-
createCoolBarManager(int)
createToolBarControl
protected
Control createToolBarControl(
Composite parent)
- Creates the control for the tool bar manager.
Subclasses may override this method to customize the tool bar manager.
-
-
-
Parameters:
-
parent
- the parent used for the control
-
Returns:
- a Control
createCoolBarControl
protected
Control createCoolBarControl(
Composite composite)
- Creates the control for the cool bar manager.
Subclasses may override this method to customize the cool bar manager.
-
-
-
Parameters:
-
composite
- the parent used for the control
-
Returns:
- an instance of
CoolBar
-
Since:
- 3.0
getFont
protected
Font getFont()
- Returns the default font used for this window.
The default implementation of this framework method
obtains the symbolic name of the font from the
getSymbolicFontName
framework method
and retrieves this font from JFace's font
registry using JFaceResources.getFont
.
Subclasses may override to use a different registry,
etc.
-
-
-
Returns:
- the default font, or
null
if none
getMenuBarManager
public
MenuManager getMenuBarManager()
- Returns the menu bar manager for this window (if it has one).
-
-
-
Returns:
- the menu bar manager, or
null
if
this window does not have a menu bar -
See Also:
-
addMenuBar()
getStatusLineManager
protected
StatusLineManager getStatusLineManager()
- Returns the status line manager for this window (if it has one).
-
-
-
Returns:
- the status line manager, or
null
if
this window does not have a status line -
See Also:
-
addStatusLine()
getSymbolicFontName
public
String getSymbolicFontName()
- Returns the symbolic font name of the font to be
used to display text in this window.
This is not recommended and is included for backwards
compatability.
It is recommended to use the default font provided by
SWT (that is, do not set the font).
-
-
-
Returns:
- the symbolic font name
getToolBarManager
public
ToolBarManager getToolBarManager()
- Returns the tool bar manager for this window (if it has one).
-
-
-
Returns:
- the tool bar manager, or
null
if
this window does not have a tool bar -
See Also:
-
addToolBar(int)
getToolBarManager2
public
IToolBarManager getToolBarManager2()
- Returns the tool bar manager for this window (if it has one).
-
-
-
Returns:
- the tool bar manager, or
null
if
this window does not have a tool bar -
Since:
- 3.2
-
See Also:
-
addToolBar(int)
getCoolBarManager
public
CoolBarManager getCoolBarManager()
- Returns the cool bar manager for this window.
-
-
-
Returns:
- the cool bar manager, or
null
if
this window does not have a cool bar -
Since:
- 3.0
-
See Also:
-
addCoolBar(int)
getCoolBarManager2
public
ICoolBarManager getCoolBarManager2()
- Returns the cool bar manager for this window.
-
-
-
Returns:
- the cool bar manager, or
null
if
this window does not have a cool bar -
Since:
- 3.2
-
See Also:
-
addCoolBar(int)
getToolBarControl
protected
Control getToolBarControl()
- Returns the control for the window's toolbar.
Subclasses may override this method to customize the tool bar manager.
-
-
-
Returns:
- a Control
getCoolBarControl
protected
Control getCoolBarControl()
- Returns the control for the window's cool bar.
Subclasses may override this method to customize the cool bar manager.
-
-
-
Returns:
- an instance of
CoolBar
-
Since:
- 3.0
run
public void run(boolean fork,
boolean cancelable,
IRunnableWithProgress runnable)
throws
InvocationTargetException,
InterruptedException
- This implementation of IRunnableContext#run(boolean, boolean,
IRunnableWithProgress) blocks until the runnable has been run,
regardless of the value of
fork
.
It is recommended that fork
is set to
true in most cases. If fork
is set to false
,
the runnable will run in the UI thread and it is the runnable's
responsibility to call Display.readAndDispatch()
to ensure UI responsiveness.
-
-
Specified by:
-
run
in interface
IRunnableContext
-
-
Parameters:
-
fork
- true
if the runnable should be run in a separate thread,
and false
to run in the same thread -
cancelable
- true
to enable the cancelation, and
false
to make the operation uncancellable -
runnable
- the runnable to run
-
Throws:
-
InvocationTargetException
- wraps any exception or error which occurs
while running the runnable
-
InterruptedException
- propagated by the context if the runnable
acknowledges cancelation by throwing this exception. This should not be thrown
if cancelable is false
.
setStatus
public void setStatus(
String message)
- Sets or clears the message displayed in this window's status
line (if it has one). This method has no effect if the
window does not have a status line.
-
-
-
Parameters:
-
message
- the status message, or null
to clear it
toolBarChildrenExist
protected boolean toolBarChildrenExist()
- Returns whether or not children exist for the Application Window's
toolbar control.
-
-
-
Returns:
- boolean true if children exist, false otherwise
coolBarChildrenExist
protected boolean coolBarChildrenExist()
- Returns whether or not children exist for this application window's
cool bar control.
-
-
-
Returns:
- boolean true if children exist, false otherwise
-
Since:
- 3.0
Guidelines for using Eclipse APIs.
Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.