Działania

org.eclipse.ui.activities

3.0

Punkt rozszerzenia org.eclipse.ui.activities służy do deklarowania działań i elementów powiązanych. Działania są używane przez platformę do filtrowania z widoku użytkowników niektórych elementów dodawanych z modułów, dopóki użytkownicy nie wyrażą swojego zainteresowania tymi elementami. Dzięki temu środowisko Eclipse może rozrastać się dynamicznie z uwzględnieniem stylu pracy użytkownika.

<!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>

Ten element służy do definiowania działań. Jeśli istnieje więcej niż jeden element z tym samym atrybutem id, tylko ostatni zadeklarowany element (w kolejności wynikającej z odczytu rejestru) jest uznawany za poprawny.



<!ELEMENT activityRequirementBinding EMPTY>

<!ATTLIST activityRequirementBinding

requiredActivityId CDATA #REQUIRED

activityId         CDATA #REQUIRED>

Ten element służy do wzajemnego wiązania działań. Związek polega na tym, że w razie włączenia działania activityId wymagane będzie również działanie requiredActivityId.



<!ELEMENT activityPatternBinding EMPTY>

<!ATTLIST activityPatternBinding

activityId CDATA #REQUIRED

pattern    CDATA #REQUIRED>

Ten element służy do wiązania działań z wzorcami.



<!ELEMENT category EMPTY>

<!ATTLIST category

description CDATA #IMPLIED

id          CDATA #REQUIRED

name        CDATA #REQUIRED>

Ten element służy do definiowania kategorii. Jeśli istnieje więcej niż jeden element z tym samym atrybutem id, tylko ostatni zadeklarowany element (w kolejności wynikającej z odczytu rejestru) jest uznawany za poprawny.



<!ELEMENT categoryActivityBinding EMPTY>

<!ATTLIST categoryActivityBinding

activityId CDATA #REQUIRED

categoryId CDATA #REQUIRED>

Ten element służy do wiązania działań z kategoriami.



<!ELEMENT defaultEnablement EMPTY>

<!ATTLIST defaultEnablement

id CDATA #REQUIRED>

Ten element pozwala wskazać, że dane działanie ma być domyślnie włączone.



Poniżej przedstawiono przykłady kilku definicji działań i kategorii, a także odpowiednie powiązania.

 

<extension point=

"org.eclipse.ui.activities"

>

<activity id=

"com.xyz.Activity"

description=

"Filtruje elementy dodawane z com.xyz"

name=

"Moje działanie"

/>

<activity id=

"com.xyz.OtherActivity"

description=

"Filtruje inne elementy dodawane z com.xyz"

name=

"Inne działanie"

/>

<!-- "Moje działanie" jest wymagane przez "Inne działanie" -->

<activityRequirementBinding activityId=

"com.xyz.OtherActivity"

requiredActivityId=

"com.xyz.Activity"

/>

<category id=

"com.xyz.Category"

description=

"Działania com.xyz"

name=

"Moja kategoria"

/>

<!-- umieszczenie działania w kategorii -->

<categoryActivityBinding activityId=

"com.xyz.Activity"

categoryId=

"com.xyz.Category"

/>

<!-- powiązanie wszystkich elementów dodawanych z modułu dodatkowego com.xyz -->

<activityPatternBinding id=

"com.xyz.Activity"

pattern=

"com\.xyz/.*"

/>

<!-- powiązanie elementu my.contribution z modułu com.xyz.other -->

<activityPatternBinding id=

"com.xyz.OtherActivity"

pattern=

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

/>

<!-- nasze działanie ma być domyślnie włączone -->

<defaultEnablement id=

"com.xyz.Activity"

/>

</extension>

Oprócz tego punktu rozszerzenia aktualnie nie jest dostępny żaden publiczny interfejs API umożliwiający deklarowanie działań lub elementów powiązanych. Stan działań w środowisku roboczym jest dostępny za pośrednictwem metody org.eclipse.ui.IWorkbench.getActivitySupport(). Można z jej poziomu przeprowadzać zapytania i aktualizować zestaw działań, które są w danym momencie włączone.

Środowisko robocze nie udostępnia "działań domyślnych". Działania powinny być definiowane na poziomie produktów, np. na poziomie pakietu Eclipse SDK, w celu ścisłej integracji wszystkich (znanych) komponentów zawartych w danym produkcie.