Dynamic Context-Sensitive Help

Since 3.1, Eclipse supports dynamic context-sensitive help.

The two pieces of dynamic context-sensitive help include:
To provide dynamic context-sensitive help, a UI component must define the associations between its UI controls and help contexts dynamically, by implementing methods of IContextProvider:

The Help view tracks the activation of workbench parts (views and editors), and it checks to see if they adapt to the IContextProvider interface. If they do, the Help view uses the IContextProvider methods (implemented in the UI component) to locate a corresponding IContext object.

The IContextProvider.getContextChangeMask method provides a mask that the Help view uses to determine when a context change occurs dynamically (for example, as a result of a user gesture to change the UI focus).

When the Help view detects a context change, it updates its context-sensitive help presentation to display:

The content of an IContext object (and its association with a particular help context ID) is defined by a context XML file, which is usually contributed by a UA component.

To register IContext content contributions with the help system, a UA plug-in must declare an extension of org.eclipse.help.contexts, identifying both the context XML file and the UI plug-in for which the IContext content is contributed.