Ecriture de l'action d'aide

L'interface ILiveHelpAction est utilisée pour générer une action d'aide active.

L'implémentation d'une interface ILiveHelpAction est très simple. Il vous suffit d'implémenter deux méthodes.

Voici une implémentation simple d'une action d'aide ouvrant une boîte de message. Toute information du JavaScript étant superflue, les données d'initialisation sont ignorées.

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) {
          // ignorer les données. Aucun paramètre javascript n'est utilisé.
     }

     public void run() {
          // L'aide active ne s'exécutant pas sur l'unité d'exécution
de l'interface graphique, syncExec doit être utilisé.
          Display.getDefault().syncExec(new Runnable() {
               public void run() {
                    IWorkbenchWindow window =
                         PlatformUI.getWorkbench().getActiveWorkbenchWindow();
                    if (window != null) {
                         // Activez la fenêtre Plan de travail.
                         // Sur certains systèmes Windows, cette
action fera simplement clignoter l'icône Plan de travail
                         // dans la barre des tâches.
                         Shell shell = window.getShell();
                         shell.setMinimized(false);
                         shell.forceActive();
                         // Ouvre la boîte de message.
                         MessageDialog.openInformation(
                              window.getShell(),
                              "Hello World.",
                              "Hello World.");
                    }
               }
          });
     }
}