Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "E4/Eclipse Application Model"
(→Handlers) |
|||
Line 13: | Line 13: | ||
=== Scheduling Units of Work === | === Scheduling Units of Work === | ||
IProgressService - Schedule Work in a way that is visible to the user | IProgressService - Schedule Work in a way that is visible to the user | ||
− | Job - | + | Job, IJobManager - schedule and manage background jobs |
=== Help === | === Help === | ||
Line 40: | Line 40: | ||
=== Be Dynamic-Aware === | === Be Dynamic-Aware === | ||
IExtensionTracker | IExtensionTracker | ||
+ | |||
+ | === UI state persistence === | ||
+ | IDialogSettings, IMemento - Persistence of UI state: layouts, dialog sizes, viewer selection and expansion state | ||
[[Category:e4]] | [[Category:e4]] |
Revision as of 10:23, 15 May 2008
a.k.a. "the twenty things"
This is a first list of "recommended APIs" - things that we expect most Eclipse plug-ins would make use of (if applicable).
Note that "the Workbench", "PlatformUI" or "Platform" are not on this list. Think of which services you would want to use from within your contributed view or editor.
Contents
Selection
ISelectionService - Listening to the current selection
Adapting objects
IAdapterManager - adapt an object (typically, the current selection) to a type that is relevant to the current plug-in
Scheduling Units of Work
IProgressService - Schedule Work in a way that is visible to the user Job, IJobManager - schedule and manage background jobs
Help
IWorkbenchHelpSystem
Undo/Redo
IWorkbenchOperationSupport
Preferences
IPreferenceStore - access preferences
Handlers
IHandlerService - register a handler for a global command like Copy/Paste
Bjorn asks: where is the list of the global commands? Do we have a namespace of commands? Can any plug-in contribute to the set of commands? How do we know what the semantics of a given command are?
UI Contributions
IMenuService - programmatic contribution to menus and toolbars
Open web pages
IWorkbenchBrowserSupport
Decorations
IDecoratorManager
Be Dynamic-Aware
IExtensionTracker
UI state persistence
IDialogSettings, IMemento - Persistence of UI state: layouts, dialog sizes, viewer selection and expansion state