Stránky vlastností

org.eclipse.ui.propertyPages

Tento bod rozšíření se používá pro přidání další stránky vlastností pro objekty daného typu. Jakmile jsou definovány, tyto stránky vlastností se zobrazí v dialogovém okně vlastností pro objekty tohoto typu.

Stránka vlastností je uživatelsky přívětivý způsob interakce s vlastnostmi objektu. Na rozdíl od pohledu vlastností, který omezuje prostor dostupný pro editaci vlastnosti objektu, stránka vlastností může využívat možnosti definovat větší a složitější obslužné prvky se štítky, ikonami atd. Vlastnosti, které se k sobě logicky hodí, se také mohou sdružovat na stránce, namísto toho, aby byly rozptýleny v listu vlastností. Avšak ve většině aplikací je vhodné vystavit některé vlastnosti objektu prostřednictvím listu vlastností a některé prostřednictvím stránek vlastností.

Stránky vlastností se zobrazují v dialogovém okně, které je normálně viditelné při zvolení položky nabídky "Vlastnosti" na rozevírací nabídce pro daný objekt. Kromě třídy objektu může být volitelně dodán filtr názvů pro registraci stránek vlastností pouze pro určené typy objektů.

Pokud jsou tyto filtrovací mechanizmy nevyhovující, stránka vlastností může použít mechanizmus filtru. V tomto případě jsou atributy cílového objektu popsány v řadě párů klíčových hodnot. Atributy, které se používají u výběru odpovídají typu a jsou mimo rozsah samotné domény pracovní plochy, proto bude pracovní plocha delegovat filtrování na této úrovni do aktuálního výběru.

<!ELEMENT extension (page*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT page (filter* , keywordReference*)>

<!ATTLIST page

id          CDATA #REQUIRED

name        CDATA #REQUIRED

icon        CDATA #IMPLIED

objectClass CDATA #REQUIRED

class       CDATA #REQUIRED

nameFilter  CDATA #IMPLIED

adaptable   (true | false)

category    CDATA #IMPLIED>


<!ELEMENT filter EMPTY>

<!ATTLIST filter

name  CDATA #REQUIRED

value CDATA #REQUIRED>

Tento prvek se používá pro vyhodnocení stavu atributu každého objektu v aktuálním výběru. Stav odpovídá pouze tehdy, pokud má každý objekt ve výběru určený stav atributu. Každý objekt ve výběru musí implementovat nebo se přizpůsobit rozhraní org.eclipse.ui.IActionFilter.



<!ELEMENT keywordReference EMPTY>

<!ATTLIST keywordReference

id CDATA #IMPLIED>

Odkaz na klíčové slovo ze stránky vlastností. Viz bod rozšíření klíčová slova.



Následuje příklad definice stránky vlastností:

   

<extension point=

"org.eclipse.ui.propertyPages"

>

<page id=

"com.xyz.projectPage"

name=

"XYZ Java Properties"

objectClass=

"org.eclipse.core.resources.IFile"

class=

"com.xyz.ppages.JavaPropertyPage"

nameFilter=

"*.java"

>

<filter name=

"readOnly"

value=

"true"

/>

</page>

</extension>

Atribut class musí určovat úplný název třídy, která implementuje org.eclipse.ui.IWorkbenchPropertyPage.

Některé objekty poskytované pracovní plochou mohou mít registrovány stránky vlastností. Moduly plug-in mohou pro tyto objekty přidávat další stránky vlastností. Stránky vlastností se neomezují na prostředky pracovní plochy: všechny objekty zobrazující se na pracovní ploše (včetně objektů daných doménou, vytvořených moduly plug-in) mohou mít stránky vlastností a jiné moduly plug-in pro ně mohou stránky vlastností registrovat.