Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "E4/Eclipse Application Model"

< E4
(Scheduling Units of Work)
Line 11: Line 11:
 
IAdapterManager - adapt an object (typically, the current selection) to a type that is relevant to the current plug-in
 
IAdapterManager - adapt an object (typically, the current selection) to a type that is relevant to the current plug-in
  
=== Scheduling Units of Work ===
+
=== Scheduling background 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, IJobManager - schedule and manage background jobs
 
Job, IJobManager - schedule and manage background jobs
  

Revision as of 10:29, 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.

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 background 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

IPreferencesService - retrieve and modify 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

Dynamic enablement

IExtensionTracker - ability to react to components coming and going at runtime

UI state persistence

IDialogSettings, IMemento - Persistence of UI state: layouts, dialog sizes, viewer selection and expansion state

Extension registry

IExtensionRegistry - registering and accessing extensions and extension points

Back to the top