Assistentes de Criação

org.eclipse.ui.newWizards

Este ponto de extensão é utilizado para registar extensões de assistentes de criação de recursos. Os assistentes de criação aparecem como opções dentro de "Caixa de Diálogo Novo", e são normalmente utilizados para criar pastas e ficheiros.

Na "Caixa de Diálogo Novo", os assistentes estão organizados em categorias que normalmente reflectem um domínio de problema específico. Por exemplo, um conector orientado por Java define uma categoria chamada "Java", que é apropriada para assistentes de criação de "Classe" ou "Pacote". As categorias definidas por um conector podem ser referenciadas por outros conectores utilizando o atributo category. Os assistentes que não pertencem a nenhum categoria, bem como os assistentes com caminhos de categoria inválidos, irão acabar numa categoria "Outro".

Os assistentes podem, opcionalmente, especificar um sub-elemento de descrição cujo corpo deve conter um texto breve sobre o assistente.

<!ELEMENT extension (category | wizard | primaryWizard)*>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT category EMPTY>

<!ATTLIST category

id             CDATA #REQUIRED

name           CDATA #REQUIRED

parentCategory CDATA #IMPLIED>


<!ELEMENT wizard (description? , selection*)>

<!ATTLIST wizard

id                    CDATA #REQUIRED

name                  CDATA #REQUIRED

icon                  CDATA #IMPLIED

category              CDATA #IMPLIED

class                 CDATA #REQUIRED

project               (true | false)

finalPerspective      CDATA #IMPLIED

preferredPerspectives CDATA #IMPLIED

helpHref              CDATA #IMPLIED

descriptionImage      CDATA #IMPLIED

canFinishEarly        (true | false)

hasPages              (true | false) >


<!ELEMENT description (#PCDATA)>

um sub-elemento opcional cujo corpo contém um texto breve a descrever o que o assistente fará quando for iniciado



<!ELEMENT selection EMPTY>

<!ATTLIST selection

class CDATA #REQUIRED

name  CDATA #IMPLIED>


<!ELEMENT primaryWizard EMPTY>

<!ATTLIST primaryWizard

id CDATA #REQUIRED>

um meio de declarar que um assistente é "primary" na UI. Um assistente principal é enfatizado na caixa de diálogo novo assistente. Note que este elemento não se destina a ser utilizado por programadores de conectores! Este elemento existe para que os gestores de produto possam enfatizar um conjunto de assistentes para os produtos.



A seguir encontra-se um exemplo da configuração do assistente de criação:

   

<extension point=

"org.eclipse.ui.newWizards"

>

<category id=

"com.xyz.XYZ"

name=

"XYZ Wizards"

>

</category>

<category id=

"com.xyz.XYZ.Web"

name=

"Web Wizards"

parentCategory=

"com.xyz.XYZ"

>

</category>

<wizard id=

"com.xyz.wizard1"

name=

"XYZ artifact"

category=

"com.xyz.XYZ/com.xyz.XYZ.Web"

icon=

"./icons/XYZwizard1.gif"

class=

"com.xyz.XYZWizard1"

>

<description>

Create a simple XYZ artifact and set initial content

</description>

<selection class=

"org.eclipse.core.resources.IResource"

/>

</wizard>

</extension>

O valor do atributo classe deve representar uma classe que implementa org.eclipse.ui.INewWizard. Se o assistente for criado a partir do Novo Assistente, será inserido no assistente existente. Se o assistente for lançado como um atalho (a partir do menu Novo Ficheiro ou de um botão da barra de ferramentas) aparecerá como autónomo numa caixa de diálogo em separado.

A área de trabalho já traz os assistentes para criar recursos vazios dos tipos seguintes: projecto, pasta e ficheiro. Estes assistentes são registados utilizando o mesmo mecanismo descrito anteriormente. Podem também aparecer assistentes adicionais, sujeitos a uma instalação de plataforma específica.