Descripción: Este punto de extensión se utiliza para añadir páginas de propiedades adicionales para objetos de un tipo dado. Una vez definidas, estas páginas de propiedades aparecerán en el diálogo de Propiedades de los objetos de ese tipo.
Una página de propiedades constituye una forma de interactuar con las propiedades de un objeto fácil de usar. A diferencia de la vista de propiedades, que restringe el espacio disponible para editar las propiedades de un objeto, una página de propiedades se beneficia de la libertad para definir controles más extensos y complejos mediante etiquetas, iconos, etc. Las propiedades que por lógica van juntas pueden asimismo agruparse en una página, lo cual es preferible a su diseminación en la hoja de propiedades. Sin embargo, en la mayoría de aplicaciones será apropiado exponer algunas de las propiedades de un objeto mediante la hoja de propiedades y algunas mediante las páginas de propiedades.
Las páginas de propiedades se muestran en un recuadro de diálogo visible normalmente cuando se selecciona el elemento de menú Propiedades en el menú emergente de un objeto. Además de la clase del objeto, el filtro de nombre puede opcionalmente ocasionar que se efectúe el registro de páginas de propiedades únicamente para algunos tipos de objetos en particular.
Si estos mecanismos de filtrado fueran inadecuados, la página de propiedades puede utilizar el mecanismo filter. En tal caso, los atributos del objeto en cuestión serán descritos en una serie de pares de valores clave. Los atributos aplicables a la selección son específicos para el tipo y superan el dominio del entorno de trabajo mismo, por lo que éste delegará el filtrado a este nivel a la selección actual.
Señalamiento de configuración:
<!ELEMENT page (filter)*>
<!ATTLIST page
id
CDATA #REQUIRED
name
CDATA #REQUIRED
icon
CDATA #IMPLIED
objectClass CDATA #REQUIRED
class
CDATA #REQUIRED
nameFilter CDATA #IMPLIED
>
A continuación podemos observar un ejemplo de definición de página de propiedades:
<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>
Información del API: El valor del atributo class debe especificar un nombre totalmente calificado de la clase que implementa org.eclipse.ui.IWorkbenchPropertyPage.
Implementación suministrada: Algunos objetos proporcionados por el entorno de trabajo pueden poseer páginas de propiedades ya registradas. Los plug-ins pueden añadir más páginas de propiedades a estos objetos. Las páginas de propiedades no se limitan a los recursos del entorno de trabajo: todos los objetos mostrados en el entorno de trabajo (incluso objetos de dominio específico creados por los plug-ins) pueden tener páginas de propiedades y otros plug-ins pueden registrar páginas de propiedades para ellos.