org.eclipse.ui.decorators

Seu plug-in pode utilizar decoradores para anotar as imagens de recursos e outros objetos que aparecem nas exibições do workbench.  Os decoradores são úteis quando seu plug-in inclui funcionalidade para tipos de recursos existentes.  Muitas das exibições padrão do workbench participam na exibição de decorações.  

Por exemplo, o PDE contribui com decoradores que permitem a distinção entre projetos binários e de origem.

Exibição Package Explorer com decoradores do PDE

O projeto com.example.sourceProject  é o único projeto de origem mostrado no navegador.  Observe como os outros projetos binários mostram o decorador binário no lado superior esquerdo do ícone do projeto Java.  Esse decorador recebe contribuição do PDE utilizando o ponto de extensão org.eclipse.ui.decorators.

<extension
   point="org.eclipse.ui.decorators">
      <decorator
            objectClass="org.eclipse.core.resources.IResource"
            adaptable="true"
            label="%decorator.label"
            state="false"
            class="org.eclipse.pde.internal.ui.wizards.imports.BinaryProjectDecorator"
            id="org.eclipse.pde.ui.binaryProjectDecorator">
         <description>
            %decorator.desc
         </description>
      </decorator>
</extension>

O atributo class deve nomear uma classe que implemente ILabelDecorator.  Essa classe permite decorar a imagem e o texto originais do rótulo com suas próprias anotações.  Os atributos label e description designam o texto que é utilizado para nomear e descrever o decorador no diálogo de preferências.  O objectClass nomeia a classe de objetos à qual o decorador deve ser aplicado.  O sinalizador adaptable indica se os objetos que se adaptam à classe também devem ser decorados.  O sinalizador state controla se o decorador ficará visível por padrão.

Os decoradores são controlados basicamente pelo usuário através da página de preferências Decorações do Rótulo do workbench.  Os decoradores individuais podem ser ativados e desativados.  Mesmo assim, é interessante projetá-los para que não sobreponham ou entrem em conflito com decoradores SDK existentes da plataforma.  Se seus decoradores incluírem informações que sejam caras de calcular ou muito confusas, é possível que você queira contribuir com suas próprias preferências que permitem que o usuário ajuste com precisão o decorador quando está ativo.  Esta técnica é utilizada pelo cliente CVS.

Página de preferências decoradores do CVS

 

Copyright IBM Corp. e outros 2000,2002.