Establecimiento de acciones

Identificador: org.eclipse.ui.actionSets

Descripción: Este punto de extensión se utiliza para añadir menús, elementos de menús y botones de la barra de herramientas en las áreas comunes de la ventana del entorno de trabajo. Estas contribuciones son conocidas colectivamente como un establecimiento de acciones y aparecen dentro de la ventana del entorno de trabajo a petición del usuario.

Señalamiento de configuración:

   <!ELEMENT actionSet (menu)* (action)* (description?)>
   <!ATTLIST actionSet
      id        CDATA #REQUIRED
      label     CDATA #REQUIRED
      visible   (true | false) #IMPLIED
    >
    <!ELEMENT description (#PCDATA)>

   <!ELEMENT menu (separator)+>
   <!ATTLIST menu
      id         CDATA #REQUIRED
      label      CDATA #REQUIRED
      path       CDATA #IMPLIED
   >    <!ELEMENT separator EMPTY>
   <!ATTLIST separator
      name       CDATA #REQUIRED
   >
  • name - el nombre del separador que más tarde puede ser referenciado como la última señal de la vía de acceso de la acción. Por tanto, los separadores sirven como grupos nominados en los cuales pueden añadirse acciones y submenús.
  •    <!ELEMENT action (selección)*>
       <!ATTLIST action
          id                NMTOKEN #REQUIRED
          label             CDATA #REQUIRED
          menubarPath       CDATA #IMPLIED
          toolbarPath       CDATA #IMPLIED
          icon              CDATA #IMPLIED
          tooltip           CDATA #IMPLIED
          helpContextId     CDATA #IMPLIED
          state             (true | false) #IMPLIED
          pulldown          (true | false) #IMPLIED
          class             CDATA #REQUIRED
          enablesFor        CDATA #IMPLIED
       >    <!ELEMENT selection EMPTY>
       <!ATTLIST selection
          class             CDATA #REQUIRED
          name              CDATA #IMPLIED
       > Es importante tener en cuenta que el entorno de trabajo no genera menús en nombre de los plug-ins: las vías de acceso a los menús deben describir menús ya existentes.

    Los criterios de habilitación para la extensión de una acción son definidos inicialmente por enablesFor y selection.  Sin embargo, una vez que la acción delegada ha sido instanciada, podrá controlar el estado de habilitación de la acción directamente dentro de su método selectionChanged.

    Las etiquetas de acción y de menú pueden contener caracteres especiales que codifican mnemotécnicos y aceleradores utilizando las reglas siguientes:

    1. Los mnemotécnicos se especifican utilizando el carácter "y comercial" ('&') delante de un carácter seleccionado del texto traducido. Como no se permite usar el signo "y comercial" en las series XML, utilice los caracteres &amp;.
    2. Los aceleradores opcionales se especifican al final de la cadena de caracteres del nombre, utilizando @ seguido de una serie de modificadores y el carácter acelerador final (por ejemplo, &amp;Save@Ctrl+S). El modificador puede encadenarse utilizando el signo '+' como delimitador (como en @Ctrl+Shift+S).
    Ejemplos:

    A continuación vemos un ejemplo de establecimiento de acción (adviértanse los subelementos y la manera de utilizar los atributos):

        <extension point = "org.eclipse.ui.actionSets">
            <actionSet id="com.xyz.actionSet"
                label="Mis Acciones"
                visible="true">
                <menu id="com.xyz.xyzMenu"
                    label="Menú XYZ"
                    path="additions">
                    <separator name="grupo1"/>
                </menu>
                <action id="com.xyz.runXYZ"
                    label="&amp;Ejecutar herramienta XYZ"
                    menubarPath="com.xyz.xyzMenu/grupo1"
                    toolbarPath="Normal/XYZ"
                    icon="icons/runXYZ.gif"
                    tooltip="Ejecutar herramienta XYZ"
                    helpContextId="com.xyz.contexto_ejecutar_acción"
                    class="com.xyz.actions.RunXYZ"
                    enablesFor="1">
                    <selection class="org.eclipse.core.resources.IFile" name="*.java"/>
                </action>
            </actionSet>
        </extension>

    En el ejemplo anterior, la acción especificada, denominada "Mis Acciones", es inicialmente visible desde cada perspectiva.  Solamente habilitará una selección (atributo enablesFor). Por añadidura, los objetos seleccionados deben implementar el interfaz especificado (IFile) y deberán ser archivos de Java.

    Información del API: El valor del atributo class debe ser el nombre totalmente calificado de una clase que implementa org.eclipse.ui.IWorkbenchWindowActionDelegate o org.eclipse.ui.IWorkbenchWindowPulldownDelegate.  Éste último debe implementarse en los casos en que pulldown sea "true".  Esta clase se carga lo más tarde posible para evitar la carga del plug-in en su totalidad antes de que sea realmente necesario.

    Implementación suministrada: Los plug-ins pueden utilizar este punto de extensión para añadir nuevos menús de máximo nivel (por ejemplo, Depurar). Los plug-ins pueden asimismo definir grupos nombrados que permitan que otros plug-ins les contribuyan sus acciones.

    Los menús de máximo nivel se crean utilizando los valores siguientes para el atributo path:

    La omisión del atributo path dará como resultado la adición del nuevo menú en el grupo additions de la barra de menús.

    Los grupos por omisión de una ventana de entorno de trabajo están definidos en el interfaz IWorkbenchActionConstants.  Estas constantes pueden utilizarse en código para contribución dinámica.  Los valores también pueden copiarse en un archivo XML para una integración mayor con los menús del entorno de trabajo y la barra de herramientas existente.

    Varios elementos de menú y de barra de herramientas de la ventana del entorno de trabajo se definen algorrítmicamente.  En tales casos, deberá utilizarse un mecanismo aparte para ampliar la ventana.  Por ejemplo, la adición de una vista nueva del entorno de trabajo da como resultado la aparición de un nuevo elemento de menú en el menú Perspectiva. Las extensiones Importar, Exportar y Nuevos asistentes también se añaden a la ventana automáticamente.
     

    Copyright IBM Corp. 2000, 2001.  Reservados todos los derechos.