Для создания действий активной справки применяется интерфейс ILiveHelpAction.
Реализация интерфейса ILiveHelpAction не представляет особых сложностей. Необходимо реализовать два метода.
Ниже приведен исходный код действия активной справки, открывающего окно диалога сообщения. Поскольку информация от JavaScript не требуется, данные инициализации игнорируются.
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.*; /** * Пример действия активной справки */ public class ActiveHelpOpenDialogAction implements ILiveHelpAction { public void setInitializationString(String data) { // Данные игнорируются. Параметры JavaScript не применяются. } public void run() { // Так как активная справка не выполняется в нити пользовательского интерфейса, // требуется применение syncExec Display.getDefault().syncExec(new Runnable() { public void run() { IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); if (window != null) { // Отображение окна рабочей среды поверх остальных окон; // В некоторых системах Windows на панели задач // будет выделен значок рабочей среды Shell shell = window.getShell(); shell.setMinimized(false); shell.forceActive(); // Open a message dialog MessageDialog.openInformation( window.getShell(), "Hello World.", "Hello World."); } } }); } }