Escribir la acción de ayuda

La interfaz ILiveHelpAction permite construir una acción de la ayuda activa.

Es muy sencillo implementar una interfaz ILiveHelpAction.  Debe implementar dos métodos.

A continuación figura una implementación simple de una acción de ayuda directa que abre un diálogo de mensajes. No nos hace falta información procedente del JavaScript, por lo que los datos de inicialización se pasan por alto.

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.*;
/**
 * Acción de ayuda activa de ejemplo.
 */
public class ActiveHelpOpenDialogAction implements ILiveHelpAction {

     public void setInitializationString(String data) {
          // hacer caso omiso de los datos. No usamos los parámetros de javascript.
     }

      public void run() {
          // La ayuda activa no se ejecuta en la hebra de la UI, por lo que debemos usar syncExec
          Display.getDefault().syncExec(new Runnable() {
      public void run() {
                    IWorkbenchWindow window =
                         PlatformUI.getWorkbench().getActiveWorkbenchWindow();
                    if (window != null) {
                         // Poner la ventana del entorno de trabajo encima de las otras ventanas;
                         // En algunos sistemas de ventanas, esto solo activará el icono
                         // del entorno de trabajo en la barra de tareas
                         Shell shell = window.getShell();
                         shell.setMinimized(false);
                         shell.forceActive();
                         // Abrir un diálogo de mensajes
      MessageDialog.openInformation(
                              window.getShell(),
                              "Hello World.",
                              "Hello World.");
                    }
               }
          });
     }
}

Copyright IBM Corporation y otros 2000, 2003.