Exibir Menus, Barra de Ferramentas e Ações

Identificador: org.eclipse.ui.viewActions

Descrição: esse ponto de extensão é utilizado para incluir ações no menu e na barra de ferramentas para exibições registradas por outros plug-ins. Cada exibição tem um menu pulldown local normalmente ativado ao clicar na área superior direita. Outros plug-ins podem contribuir com sub-menus e ações para esse menu. Os plug-ins também podem contribuir com ações para a barra de ferramentas de exibição. Aos proprietários de exibições é dada a primeira chance de ocupar essas áreas. Inclusões opcionais por outros plug-ins são anexadas.

Marcação da Configuração:

   <!ELEMENT viewContribution (menu | action)*>
   <!ATTLIST viewContribution
      id         CDATA #REQUIRED
      targetID   CDATA #REQUIRED
   >

  • id - único identificador que pode ser utilizado para referir-se a essa contribuição.
  • targetID - identificador único da exibição (conforme especificado no registro) dentro do qual a contribuição é feita.
  •    <!ELEMENT menu (separator)+>
       <!ATTLIST menu
          id         CDATA #REQUIRED
          label      CDATA #REQUIRED
          path       CDATA #IMPLIED
       >    <!ELEMENT separator EMPTY>
       <!ATTLIST separator
          name       CDATA #REQUIRED
       >
  • name - nome do separador que pode mais tarde ser referido como o último token no caminho da ação. Assim sendo, os separadores servem como grupos nomeados dentro dos quais as ações podem ser incluídas.
  •    <!ELEMENT action (selection)*>
       <!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
          class             CDATA #REQUIRED
          enablesFor        CDATA #IMPLIED
       >    <!ELEMENT selection EMPTY>
       <!ATTLIST selection
          class             CDATA #REQUIRED
          name              CDATA #IMPLIED
       > Os critérios de ativação para a extensão de uma ação são inicialmente definidos por enablesFor e seleção.  Entretanto, uma vez que a ação delegada tenha sido instanciada, ela pode controlar o estado de ativação da ação diretamente dentro do seu método selectionChanged.

    A ação e a etiquetas de menu podem conter caracteres especiais que codificam mnemônicos e aceleradores utilizando as seguintes regras:

    1. Mnemônicos são especificados utilizando o caracter e comercial ('&') antes de um caracter no texto traduzível. Uma vez que o e comercial não é permitido em cadeias XML, utilize a entidade de caractere &amp;.
    2. Os aceleradores opcionais são especificados ao final da cadeia de nome, utilizando @ seguido por uma série de modificadores e caracter de acelerador final (por exemplo) &amp;Save@Ctrl+S). Os modificadores podem ser colocados em cadeia, utilizando-se o sinal '+' como delimitador (como em @Ctrl+Shift+S).
    Exemplos:

    A seguir um exemplo do ponto de extensão de uma exibição (note que os subelementos e os atributos de modo são utilizados):

       <extension point="org.eclipse.ui.viewActions">
          <viewContribution
             id="com.xyz.xyzViewC1"
             targetID="org.eclipse.ui.views.navigator.ResourceNavigator">
             <menu id="com.xyz.xyzMenu"
                label="XYZ Menu"
                path="additions">
                <separator name="group1"/>
             </menu>
             <action id="com.xyz.runXYZ"
                  label="&amp;Run XYZ Tool"
                  menubarPath="com.xyz.xyzMenu/group1"
                  toolbarPath="Normal/XYZ"
                  icon="icons/runXYZ.gif"
                  tooltip="Run XYZ Tool"
                  helpContextId="com.xyz.run_action_context"
                  class="com.xyz.actions.RunXYZ"
                  enablesFor="1"/>
                  <selection class="org.eclipse.core.resources.IFile" name="*.java">
             </action>
         </viewContribution>
       </extension>

    No exemplo acima, a ação especificada somente ativará uma seleção simples (atributo enablesFor). Além disso, cada objeto nessa seleção deve implementar a interface especificada. (IFile) e deve ser um arquivo Java. Elementos múltiplos seleção podem ser especificados, significando 'um de'.

    Informações de API: o valor do atributo de classe deve ser um nome completo de uma classe Java que implementa org.eclipse.ui.IViewActionDelegate. Essa interface é carregada o mais tarde possível para evitar o carregamento de todo o plug-in antes que isso seja necessário. Ela estende org.eclipse.ui.IActionDelegate e inclui um método adicional que permite ao delegado inicializar com a ocorrência de exibição de sua contribuição interna.

    Implementação Fornecida: cada visualização normalmente vem com um número de itens padrão no menu pulldown e na barra de ferramentas local. Inclusões a partir dos plug-ins serão anexadas ao complemento padrão.  É útil para publicar os identificadores de ação para uma exibição dentro de uma interface pública.   Por exemplo, as ações e os principais grupos para a janela do workbench são definidos em org.eclipse.ui.IWorkbenchActionConstants.

    Copyright IBM Corp. 2000, 2001.  Todos os Direitos Reservados.