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"
(→Be Dynamic-Aware) |
(→Handlers) |
||
Line 26: | Line 26: | ||
=== Handlers === | === Handlers === | ||
IHandlerService - register a handler for a global command like Copy/Paste | 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 === | === UI Contributions === |
Revision as of 18:10, 13 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 - create 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