Comandos

org.eclipse.ui.commands

2.1

O ponto de extensão org.eclipse.ui.commands é utilizado para declarar comandos e categorias de comandos usando os elementos command e category. Através desse ponto de extensão, também é possível atribuir seqüências de teclas para comandos utilizando o elemento keyBinding. As seqüências de teclas são ligadas aos comandos com base nas configurações de teclas e nos contextos declarados neste documento, bem como através da utilização dos elementos keyConfiguration e context.

<!ELEMENT extension (activeKeyConfiguration , category , command , keyBinding , keyConfiguration , context)>

<!ATTLIST extension

id    CDATA #IMPLIED

name  CDATA #IMPLIED

point CDATA #REQUIRED>


<!ELEMENT activeKeyConfiguration EMPTY>

<!ATTLIST activeKeyConfiguration

value              CDATA #IMPLIED

keyConfigurationId CDATA #IMPLIED>

Este elemento é utilizado para definir a configuração de teclas inicialmente ativa para Eclipse. Se houver mais de um desses elementos, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido.



<!ELEMENT category EMPTY>

<!ATTLIST category

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED>

Na UI, os comandos são normalmente organizados por categoria para facilitar o gerenciamento. Este elemento é utilizado para definir essas categorias. Os comandos podem se auto-incluir em, no máximo, uma categoria. Se houver mais de um desses elementos com o mesmo atributo id, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido.



<!ELEMENT command EMPTY>

<!ATTLIST command

category    CDATA #IMPLIED

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED

categoryId  CDATA #IMPLIED>

Esse elemento é utilizado para definir os comandos. Um comando representa um pedido do usuário que pode ser identificado por uma ação e que deve ser semanticamente exclusivo dentre outros comandos. Não defina um comando se já houver outro definido com o mesmo significado. Se houver mais de um desses elementos com o mesmo atributo id, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido. Consulte os pontos de extensão org.eclipse.ui.actionSets e org.eclipse.ui.editorActions para compreender como as ações estão conectadas aos comandos.



<!ELEMENT keyBinding EMPTY>

<!ATTLIST keyBinding

configuration      CDATA #IMPLIED

command            CDATA #IMPLIED

locale             CDATA #IMPLIED

platform           CDATA #IMPLIED

contextId          CDATA #IMPLIED

string             CDATA #IMPLIED

scope              CDATA #IMPLIED

keyConfigurationId CDATA #IMPLIED

commandId          CDATA #IMPLIED

keySequence        CDATA #IMPLIED>

Esse elemento permite designar seqüências de teclas para comandos.



<!ELEMENT keyConfiguration EMPTY>

<!ATTLIST keyConfiguration

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED

parent      CDATA #IMPLIED

parentId    CDATA #IMPLIED>

Esse elemento é utilizado para definir configurações de teclas. Se houver mais de um desses elementos com o mesmo atributo id, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido.



<!ELEMENT context EMPTY>

<!ATTLIST context

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED

parent      CDATA #IMPLIED

parentId    CDATA #IMPLIED>

Esse elemento é utilizado para definir os contextos. Se houver mais de um desses elementos com o mesmo atributo id, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido.



<!ELEMENT handlerSubmission EMPTY>

<!ATTLIST handlerSubmission

commandId CDATA #REQUIRED

handler   CDATA #REQUIRED>

Esse elemento declara uma rotina de tratamento para um comando. Essa rotina de tratamento é então associada ao comando com as restrições determinadas. Essa associação é feita na inicialização. Associar uma rotina de tratamento não significa que essa rotina de tratamento sempre será a escolhida pelo workbench; a real opção é feita examinando o estado do workbench e comparando com diversas submissões da rotina de tratamento.

Essa API específica ainda deve ser considerada experimental. Embora seja possível utilizá-la, você deve saber aceitar que essa API pode ser radicalmente alterada ou pode ser inteiramente removida em algum ponto no futuro. Agradecemos o feedback sobre essa API para platform-ui-dev@eclipse.org.



<!ELEMENT scope EMPTY>

<!ATTLIST scope

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED

parent      CDATA #IMPLIED>

Esse elemento é utilizado para definir os escopos. Se houver mais de um desses elementos com o mesmo atributo id, apenas o último elemento declarado (na ordem de leitura do registro de plug-in) será considerado válido. @deprecated Utilize o ponto de extensão "org.eclipse.ui.contexts" em substituição.



O arquivo plugin.xml no plug-in org.eclipse.ui torna extensivo o uso do ponto de extensão org.eclipse.ui.commands.

Essa não é nenhuma API pública para a declaração de comandos, categorias, ligações de teclas, configurações de teclas ou contextos diferentes deste ponto de extensão. A API pública para consultas e para a definição de contextos, bem como para o registro de ações para manipular comandos específicos, pode ser encontrada em org.eclipse.ui.IKeyBindingService.