Expressions booléennes et filtres d'actions

Lorsqu'un plug-in ajoute une action à l'interface du plan de travail à l'aide d'un point d'extension de menu, il peut spécifier les conditions dans lesquels l'option de menu est activée (visible). Par ailleurs, outre les conditions d'activation, telles que le nombre de sélections et les classes correspondantes, les plug-in peuvent utiliser des expressions booléennes pour activer une action.

Expressions booléennes

Les expressions booléennes peuvent contenir des opérateurs simples (NOT, AND, OR) et des expressions prédéfinies qui évaluent les conditions suivantes :

Par exemple, les fragments de code suivants représentent des expressions d'activation pouvant être utilisées pour une action supposée d'un ensemble d'actions :

<action id="org.eclipse.examples.actionEnablement.class" 
       label="Red Element" 
       menubarPath="additions" 
       class="org.eclipse.examples.actionEnablement.ObjectTestAction"> 
       <enablement> 
	 <and>
	   <objectClass name="org.eclipse.examples.actionEnablement.TestElement"/> 
           <objectState name="name" value="red"/> 
	 </and>
       </enablement> 
</action> 
<action id="org.eclipse.examples.actionEnablement.property" 
       label="Property" 
       menubarPath="additions" 
       class="org.eclipse.examples.actionEnablement.PropertyTestAction"> 
       <enablement> 
           <systemProperty name="MyTestProperty" value="puppy"/> 
       </enablement> 
</action> 
<action id="org.eclipse.examples.actionEnablement.pluginState" 
       label="Installed" 
       menubarPath="additions" 
       class="org.eclipse.examples.actionEnablement.PluginTestAction"> 
       <enablement> 
           <pluginState id="x.y.z.anotherPlugin" value="installed"/> 
       </enablement> 
</action> 

Reportez-vous aux expressions d'actions pour obtenir des exemples plus détaillés sur ces expressions et une description complète du code XML.

Le tableau suivant répertorie les points d'extension ajoutant des actions et illustre comment des expressions booléennes et des attributs de code XML peuvent être utilisés pour décider de l'activation.

Nom du point d'extension

Attributs influençant l'activation

Expressions booléennes

viewActions

enablesFor - indique le nombre de sélections devant exister pour l'action à activer.

selection class - la classe que les objets sélectionnés doivent sous-classer ou implémenter pour activer l'action.

selection name - un filtre générique pouvant s'appliquer aux objets dans la sélection.

enablement - une expression booléenne.

Les attributs selection class, name et enablesFor doivent être appliqués avant l'expression d'activation.

editorActions

enablesFor - indique le nombre de sélections devant exister pour l'action à activer.

selection class - la classe que les objets sélectionnés doivent sous-classer ou implémenter pour activer l'action.

selection name - un filtre générique pouvant s'appliquer aux objets dans la sélection.

 

enablement - une expression booléenne.

Les attributs selection class, name et enablesFor doivent être appliqués avant l'expression d'activation.

popupMenus

(uniquement pour les contributions d'objets.)

objectClass - indique la classe que les objets dans la sélection doivent sous-classer ou implémenter.

(pour les contributions d'objets et d'afficheurs)

enablesFor - indique le nombre de sélections devant exister pour l'action à activer.

selection class - la classe que les objets sélectionnés doivent sous-classer ou implémenter pour activer l'action.

selection name - un filtre générique pouvant s'appliquer aux objets dans la sélection.

 

visibility - une expression booléenne.

Les attributs selection class, name et enablesFor doivent être appliqués avant l'expression d'activation.

 

actionSets

enablesFor - indique le nombre de sélections devant exister pour l'action à activer.

selection class - la classe que les objets sélectionnés doivent sous-classer ou implémenter pour activer l'action.

selection name - un filtre générique pouvant s'appliquer aux objets dans la sélection.

 

enablement - une expression booléenne.

Les attributs selection class, name et enablesFor doivent être appliqués avant l'expression d'activation.

 

Copyright IBM Corp. and others 2000,2002.