|
Eclipse Platform Release 3.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
A workbench is the root object for the Eclipse Platform user interface.
A workbench has one or more main windows which present to the end user information based on some underlying model, typically on resources in an underlying workspace. A workbench usually starts with a single open window, and automatically closes when its last window closes.
Each workbench window has a collection of pages; the active page is the one that is being presented to the end user; at most one page is active in a window at a time.
Each workbench page has a collection of workbench parts, of which there are two kinds: views and editors. A page's parts are arranged (tiled or stacked) for presentation on the screen. The arrangement is not fixed; the user can arrange the parts as they see fit. A perspective is a template for a page, capturing a collection of parts and their arrangement.
The platform creates a workbench when the workbench plug-in is activated;
since this happens at most once during the life of the running platform,
there is only one workbench instance. Due to its singular nature, it is
commonly referred to as
This interface is not intended to be implemented by clients.
Method Summary | |
void | addWindowListener(IWindowListener listener)
Adds a window listener. |
boolean | close()
Closes this workbench and all its open windows. |
IWorkbenchWindow | getActiveWorkbenchWindow()
Returns the currently active window for this workbench (if any). |
IWorkbenchActivitySupport | getActivitySupport()
Returns an interface to manage activities at the workbench level. |
IWorkbenchCommandSupport | getCommandSupport()
Returns an interface to manage commands at the workbench level. |
IWorkbenchContextSupport | getContextSupport()
Returns an interface to manage contexts at the workbench level. |
IDecoratorManager | getDecoratorManager()
Returns the decorator manager. |
Display | getDisplay()
Returns the display for this workbench. |
IEditorRegistry | getEditorRegistry()
Returns the editor registry for the workbench. |
IElementFactory | getElementFactory(String factoryId)
Returns the element factory with the given id. |
IIntroManager | getIntroManager()
Return the intro manager for this workbench. |
IPerspectiveRegistry | getPerspectiveRegistry()
Returns the perspective registry for the workbench. |
PreferenceManager | getPreferenceManager()
Returns the preference manager for the workbench. |
IPreferenceStore | getPreferenceStore()
Returns the preference store for the workbench. |
IProgressService | getProgressService()
Returns the progress service for the workbench. |
ISharedImages | getSharedImages()
Returns the shared images for the workbench. |
IThemeManager | getThemeManager()
Return the theme manager for this workbench. |
int | getWorkbenchWindowCount()
Returns the number of open main windows associated with this workbench. |
IWorkbenchWindow[] | getWorkbenchWindows()
Returns a list of the open main windows associated with this workbench. |
IWorkingSetManager | getWorkingSetManager()
Returns the working set manager for the workbench. |
IWorkbenchWindow | openWorkbenchWindow(IAdaptable input)
Creates and opens a new workbench window with one page. |
IWorkbenchWindow | openWorkbenchWindow(String perspectiveId,
IAdaptable input)
Creates and opens a new workbench window with one page. |
void | removeWindowListener(IWindowListener listener)
Removes a window listener. |
boolean | restart()
Closes then restarts this workbench. |
boolean | saveAllEditors(boolean confirm)
Save all dirty editors in the workbench. |
IWorkbenchPage | showPerspective(String perspectiveId,
IWorkbenchWindow window)
Shows the specified perspective to the user. |
IWorkbenchPage | showPerspective(String perspectiveId,
IWorkbenchWindow window,
IAdaptable input)
Shows the specified perspective to the user. |
Method Detail |
public Display getDisplay()
Code should always ask the workbench for the display rather than rely on Display.getDefault().
public IProgressService getProgressService()
public void addWindowListener(IWindowListener listener)
public void removeWindowListener(IWindowListener listener)
public boolean close()
If the workbench has an open editor with unsaved content, the user will be given the opportunity to save it.
public IWorkbenchWindow getActiveWorkbenchWindow()
public IEditorRegistry getEditorRegistry()
public IPerspectiveRegistry getPerspectiveRegistry()
public PreferenceManager getPreferenceManager()
public IPreferenceStore getPreferenceStore()
public ISharedImages getSharedImages()
public int getWorkbenchWindowCount()
public IWorkbenchWindow[] getWorkbenchWindows()
public IWorkingSetManager getWorkingSetManager()
public IWorkbenchWindow openWorkbenchWindow(String perspectiveId, IAdaptable input) throws WorkbenchException
Note: The caller is responsible to ensure the action using this method will explicitly inform the user a new window will be opened. Otherwise, callers are strongly recommended to use the openPerspective APIs to programmatically show a perspective to avoid confusing the user.
In most cases where this method is used the caller is tightly coupled to a particular perspective. They define it in the registry and contribute some user interface action to open or activate it. In situations like this a static variable is often used to identify the perspective Id.
The workbench also defines a number of menu items to activate or open each registered perspective. A complete list of these perspectives is available from the perspective registry found on IWorkbench.
public IWorkbenchWindow openWorkbenchWindow(IAdaptable input) throws WorkbenchException
Note: The caller is responsible to ensure the action using this method will explicitly inform the user a new window will be opened. Otherwise, callers are strongly recommended to use the openPerspective APIs to programmatically show a perspective to avoid confusing the user.
The workbench also defines a number of menu items to activate or open each registered perspective. A complete list of these perspectives is available from the perspective registry found on IWorkbench.
public boolean restart()
If the workbench has an open editor with unsaved content, the user will be given the opportunity to save it.
public IWorkbenchPage showPerspective(String perspectiveId, IWorkbenchWindow window) throws WorkbenchException
The perspective may be shown in the specified window, in another existing window, or in a new window depending on user preferences. The exact policy is controlled by the workbench to ensure consistency to the user. The policy is subject to change. The current policy is as follows:
The workbench also defines a number of menu items to activate or open each registered perspective. A complete list of these perspectives is available from the perspective registry found on IWorkbench.
public IWorkbenchPage showPerspective(String perspectiveId, IWorkbenchWindow window, IAdaptable input) throws WorkbenchException
The perspective may be shown in the specified window, in another existing window, or in a new window depending on user preferences. The exact policy is controlled by the workbench to ensure consistency to the user. The policy is subject to change. The current policy is as follows:
The workbench also defines a number of menu items to activate or open each registered perspective. A complete list of these perspectives is available from the perspective registry found on IWorkbench.
public IDecoratorManager getDecoratorManager()
Any client using the decorator manager should come up with the text and image for the element (including any of the part's own decorations) before calling the decorator manager. It should also add a listener to be notified when decorations change.
Note that if the element implements IAdaptable, decorators may use this mechanism to obtain an adapter (for example an IResource), and derive the decoration from the adapter rather than the element. Since the adapter may differ from the original element, those using the decorator manager should be prepared to handle notification that the decoration for the adapter has changed, in addition to handling notification that the decoration for the element has changed. That is, it needs to be able to map back from the adapter to the element.
public boolean saveAllEditors(boolean confirm)
public IElementFactory getElementFactory(String factoryId)
public IWorkbenchActivitySupport getActivitySupport()
public IWorkbenchCommandSupport getCommandSupport()
public IWorkbenchContextSupport getContextSupport()
public IThemeManager getThemeManager()
public IIntroManager getIntroManager()
|
Eclipse Platform Release 3.0 | ||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.