Pages de propriétés

Identificateur : org.eclipse.ui.propertyPages

Description : ce point d'extension est utilisé pour ajouter des pages de propriétés supplémentaires pour les objets d'un type donné. Une fois définies, ces pages de propriétés apparaissent dans la boîte de dialogue Propriétés des objets de ce type.

Une page de propriétés constitue un moyen convivial d'interagir avec les propriétés d'un objet. Contrairement à la vue Propriétés qui limite l'espace disponible pour l'édition d'une propriété d'objet, une page de propriétés peut offrir la liberté de définir des contrôles plus grands et plus complexes avec des libellés, des icônes, etc. Les propriétés qui logiquement vont ensemble peuvent être regroupées dans une page, plutôt que d'être éparpillées dans la feuille de propriétés. Cependant, dans la plupart des applications, il est plus approprié d'exposer certaines propriétés d'un objet via la feuille de propriétés et d'autres via les pages de propriétés.

Les pages de propriétés s'affichent dans une boîte de dialogue généralement visible lorsque l'option de menu Propriétés est sélection dans le menu en incrustation d'un objet. En plus de la classe d'objets, le filtre de nom peut être également fourni pour enregistrer les pages de propriétés uniquement pour des types d'objet spécifiques.

Si ces mécanismes de filtrage ne sont pas appropriés, une page de propriété peut utiliser le mécanisme des filtres. Dans ce cas, les attributs de l'objet cible sont décrits dans une série de paires clé-valeur. Les attributs qui s'appliquent à la sélection sont spécifiques au type et surpassent le domaine du plan de travail ; aussi ce dernier délègue-t-il le filtrage à ce niveau à la sélection réelle.

Marques de configuration :

   <!ELEMENT extension (page*)>

   <!ATTLIST extension
     point CDATA #REQUIRED
     id    CDATA #IMPLIED
     name  CDATA #IMPLIED
   >

   <!ELEMENT page (filter*)>

   <!ATTLIST page
      id          CDATA #REQUIRED
     name        CDATA #REQUIRED
      icon        CDATA #IMPLIED
     objectClass CDATA #REQUIRED
     class       CDATA #REQUIRED
     nameFilter  CDATA #IMPLIED
     adaptable   (true | false)
   >

   <!ELEMENT filter EMPTY>

   Cet élément permet d'évaluer l'état d'attribut de chaque objet de la sélection en cours. Une correspondance n'est obtenue que si chaque objet de la sélection possède l'état d'attribut spécifié. Chaque objet de la sélection doit implémenter l'interface org.eclipse.ui.IActionFilter ou s'y adapter.

   <!ATTLIST filter
     name  CDATA #REQUIRED
     value CDATA #REQUIRED
   >
Exemples : L'exemple ci-dessous illustre la définition d'une page de propriétés :

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

Informations d'API : l'attribut class doit spécifier le nom qualifié complet de la classe qui implémente org.eclipse.ui.IWorkbenchPropertyPage.

Implémentation fournie : certains objets fournis par le plan de travail peuvent avoir des pages de propriétés enregistrées. Les plug-in sont autorisés à ajouter d'autres pages de propriétés pour ces objets. Les pages de propriétés ne se limitent pas aux ressources du plan de travail : tous les objets apparaissant dans le plan de travail (même ceux spécifiques au domaine et qui ont été créés par les plug-in) peuvent avoir des pages de propriétés et d'autres plug-in peuvent leur enregistrer des pages de propriétés également.

Copyright (c) 2002 IBM Corporation and others. All rights reserved. Ce programme et la documentation associée sont disponibles conformément aux dispositions de Common Public License v1.0 qui accompagne cette distribution et qui est disponible à l'adresse http://www.eclipse.org/legal/cpl-v10.html