The interface ILiveHelpAction is used to build an active help action.
It is straightforward to implement an ILiveHelpAction. You must implement two methods.
Here is a simple implementation of a live help action that opens a message dialog. We don't need any information from the JavaScript, so the initialization data is ignored.
package org.eclipse.platform.doc.isv.activeHelp; import org.eclipse.help.ILiveHelpAction; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.swt.widgets.*; import org.eclipse.ui.*; /** * Sample Active Help action. */ public class ActiveHelpOpenDialogAction implements ILiveHelpAction { public void setInitializationString(String data) { // ignore the data. We do not use any javascript parameters. } public void run() { // Active help does not run on the UI thread, so we must use syncExec Display.getDefault().syncExec(new Runnable() { public void run() { IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); if (window != null) { // Bring the Workbench window to the top of other windows; // On some Windows systems, it will only flash the Workbench // icon on the task bar Shell shell = window.getShell(); shell.setMinimized(false); shell.forceActive(); // Open a message dialog MessageDialog.openInformation( window.getShell(), "Hello World.", "Hello World."); } } }); } }