Actividades

org.eclipse.ui.activities

3.0

O ponto de extensão org.eclipse.ui.activities é utilizado para declarar actividades e elementos associados. As actividades são utilizadas pela plataforma para filtrar determinadas contribuições de plugin feitas pela vista de utilizadores, até que estes revelem interesse pelas mesmas.Tal permite ao Eclipse crescer dinamicamente, com base no padrão de utilização de um utilizador.

<!ELEMENT extension (activity , activityRequirementBinding , activityPatternBinding , category , categoryActivityBinding , defaultEnablement)*>

<!ATTLIST extension

id    CDATA #IMPLIED

name  CDATA #IMPLIED

point CDATA #REQUIRED>


<!ELEMENT activity EMPTY>

<!ATTLIST activity

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED>

Este elemento é utilizado para definir actividades. Caso exista mais do que um destes elementos com o mesmo atributo id, apenas o último elemento declarado (por ordem de leitura do registo) é considerado válido.



<!ELEMENT activityRequirementBinding EMPTY>

<!ATTLIST activityRequirementBinding

requiredActivityId CDATA #REQUIRED

activityId         CDATA #REQUIRED>

Este elemento permite associar actividades a outras actividades. A relação estipula que quando se activa activityId, também se activa requiredActivityId.



<!ELEMENT activityPatternBinding EMPTY>

<!ATTLIST activityPatternBinding

activityId CDATA #REQUIRED

pattern    CDATA #REQUIRED>

Este elemento permite associar actividades a padrões.



<!ELEMENT category EMPTY>

<!ATTLIST category

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED>

Este elemento é utilizado para definir categorias. Caso exista mais do que um destes elementos com o mesmo atributo id, apenas o último elemento declarado (por ordem de leitura do registo) é considerado válido.



<!ELEMENT categoryActivityBinding EMPTY>

<!ATTLIST categoryActivityBinding

activityId CDATA #REQUIRED

categoryId CDATA #REQUIRED>

Este elemento permite associar categorias a actividades.



<!ELEMENT defaultEnablement EMPTY>

<!ATTLIST defaultEnablement

id CDATA #REQUIRED>

Este elemento permite especificar que uma determinada actividade deve ser activada por predefinição.



De seguida é apresentado um exemplo de várias definições de actividades e categorias, bem como de associações.

 

<extension point=

"org.eclipse.ui.activities"

>

<activity id=

"com.xyz.Activity"

description=

"Filtra contribuições de com.xyz"

name=

"A Minha Actividade"

/>

<activity id=

"com.xyz.OtherActivity"

description=

"Filtra outras contribuições de com.xyz"

name=

"A Minha Outra Actividade"

/>

<!-- outra actividade requer actividade -->

<activityRequirementBinding activityId=

"com.xyz.OtherActivity"

requiredActivityId=

"com.xyz.Activity"

/>

<category id=

"com.xyz.Category"

description=

"com.xyz Activities"

name=

"A Minha Categoria"

/>

<!-- colocar a actividade na categoria -->

<categoryActivityBinding activityId=

"com.xyz.Activity"

categoryId=

"com.xyz.Category"

/>

<!-- associar todas as contribuições de com.xyz -->

<activityPatternBinding id=

"com.xyz.Activity"

pattern=

"com\.xyz/.*"

/>

<!-- associar my.contribution do plugin com.xyz.other -->

<activityPatternBinding id=

"com.xyz.OtherActivity"

pattern=

"com\.xyz\.other/my.contribution"

/>

<!-- a nossa actividade deve ser activada por predefinição -->

<defaultEnablement id=

"com.xyz.Activity"

/>

</extension>

Actualmente não existe qualquer API pública para declarar actividades ou elementos associados, para além deste ponto de extensão. O estado das actividade na área de trabalho pode ser acedido através de org.eclipse.ui.IWorkbench.getActivitySupport(). A partir daqui, o utilizador pode consultar e actualizar o conjunto de actividades actualmente activadas.

Não existem "actividades predefinidas" facultadas pela área de trabalho. As actividades devem ser definidas a nível de um produto como, por exemplo, SDK de Eclipse, de forma a integrar estreitamente todos os componentes (conhecidos) que o produto contém.