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électionnée 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.
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT page (filter* , keywordReference* , enabledWhen?)>
<!ATTLIST page
id CDATA #REQUIRED
name CDATA #REQUIRED
icon CDATA #IMPLIED
objectClass CDATA #IMPLIED
class CDATA #REQUIRED
nameFilter CDATA #IMPLIED
adaptable (true | false)
category CDATA #IMPLIED>
Déconseillé en version 3.2. L'élément objectClass doit à présent être indiqué à l'aide de l'attribut enablesFor du récepteur.
<!ELEMENT filter EMPTY>
<!ATTLIST filter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Cet élément est employé pour évaluer l'état d'attribut de chaque objet dans 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.
<!ELEMENT keywordReference EMPTY>
<!ATTLIST keywordReference
id CDATA #IMPLIED>
Référence par une page de propriétés à un mot-clé. Voir le point d'extension des mots-clé.
<!ELEMENT enabledWhen (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Elément racine générique. L'élément peut être utilisé dans un point d'extension pour définir son expression d'activation. Les enfants d'une expression d'activation sont combinés à l'aide de l'opérateur and.
<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>
Cet élément représente une opération NOT en résultat de l'évaluation de son expression de sous-élément.
<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Cet élément représente une opération AND en résultat de l'évaluation de ses expressions de sous-élément.
<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
Cet élément représente une opération OR en résultat de l'évaluation de ses expressions de sous-élément.
<!ELEMENT instanceof EMPTY>
<!ATTLIST instanceof
value CDATA #REQUIRED>
Cet élément permet d'effectuer une instance de vérification de l'objet concerné. L'expression renvoie EvaluationResult.TRUE si le type de l'objet est un sous-type du type spécifié par la valeur de l'attribut. Dans le cas contraire, EvaluationResult.FALSE est renvoyé.
<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args CDATA #IMPLIED
value CDATA #IMPLIED>
Cet élément permet d'évaluer l'état de la propriété de l'objet concerné. L'ensemble de propriétés testables peut être développé à l'aide du point d'extension du testeur de propriété. L'expression de test renvoie EvaluationResult.NOT_LOADED si le testeur de propriété effectuant le test réel n'est pas encore chargé.
<!ELEMENT systemTest EMPTY>
<!ATTLIST systemTest
property CDATA #REQUIRED
value CDATA #REQUIRED>
Teste une propriété système en appelant la méthode System.getProperty et compare le résultat avec la valeur spécifiée via l'attribut value.
<!ELEMENT equals EMPTY>
<!ATTLIST equals
value CDATA #REQUIRED>
Cet élément permet d'effectuer une vérification d'égalité de l'objet concerné. L'expression renvoie EvaluationResult.TRUE si l'objet est égal à la valeur fournie par la valeur de l'attribut. Dans le cas contraire, EvaluationResult.FALSE est renvoyé.
<!ELEMENT count EMPTY>
<!ATTLIST count
value CDATA #REQUIRED>
Cet élément permet de tester le nombre d'éléments d'une collection.
<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST with
variable CDATA #REQUIRED>
Cet élément change l'objet à inspecter pour tous les éléments enfant en objet référencé par la variable donnée. Si la variable ne peut pas être résolue, l'expression émet une exception ExpressionException lors de l'évaluation. Les enfants d'une expression with sont combinés à l'aide de l'opérateur and.
<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST resolve
variable CDATA #REQUIRED
args CDATA #IMPLIED>
Cet élément change l'objet à inspecter pour tous les éléments enfant en objet référencé par la variable donnée. Si la variable ne peut pas être résolue, l'expression émet une exception ExpressionException lors de l'évaluation. Les enfants d'une expression with sont combinés à l'aide de l'opérateur and.
<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST adapt
type CDATA #REQUIRED>
Cet élément permet d'adapter l'objet actif en fonction du type spécifié par le type d'attribut. L'expression renvoie l'indication "non chargé" si l'adaptateur ou le type référencé n'est pas encore chargé. Elle émet une exception ExpressionException lors de la détermination de l'existence du nom du type. Les enfants d'une expression adapt sont combinés à l'aide de l'opérateur and.
<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>
<!ATTLIST iterate
operator (or|and) >
Cet élément permet d'effectuer une itération sur une variable qui est de type java.util.Collection. Si l'objet actif n'est pas du type java.util.Collection, une exception ExpressionException sera émise lors de l'évaluation de l'expression.
<extension point=
"org.eclipse.ui.propertyPages"
>
<page id=
"com.xyz.projectPage"
name=
"Propriétés Java XYZ"
objectClass=
"org.eclipse.core.resources.IFile"
class=
"com.xyz.ppages.JavaPropertyPage"
nameFilter=
"*.java"
>
<filter name=
"readOnly"
value=
"true"
/>
</page>
</extension>
Copyright (c) 2002, 2005 IBM Corporation and others.
All rights reserved. Ce programme et les produits associés sont
distribués sous licence v1.0 et disponibles à
l'adresse suivante :
http://www.eclipse.org/legal/epl-v10.html