2.1
Le point d'extension org.eclipse.ui.commands
sert
à déclarer des commandes et des catégories de commandes avec les
éléments command
et category
. Une commande est une représentation abstraite d'un certain comportement sémantique mais il ne s'agit pas d'une implémentation réelle. Cela permet à différents développeurs d'ajouter un comportement spécifique pour des domaines propres. Par exemple, il peut y avoir une commande "paste" avec une implémentation dans un éditeur et une implémentation différente dans un widget de l'explorateur. Ces implémentations sont appelées gestionnaires.
<!ELEMENT extension (activeKeyConfiguration , category , command , keyBinding , keyConfiguration , context , scope)>
<!ATTLIST extension
id CDATA #IMPLIED
name CDATA #IMPLIED
point CDATA #REQUIRED>
<!ELEMENT activeKeyConfiguration EMPTY>
<!ATTLIST activeKeyConfiguration
value CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED>
Cet élément sert à définir la configuration de touche active initiale pour Eclipse. En présence de plusieurs éléments, seul le dernier déclaré (dans l'ordre de lecture du registre des plug-ins) est pris en compte.
Cet élément a été remplacé par une préférence. Si votre application doit changer la configuration par défaut des touches, spécifiez alors ce qui suit dans votre fichier plugin_customization.ini
: org.eclipse.ui/KEY_CONFIGURATION_ID=your.default.key.configuration.id
.
id
attribute) de l'élément
keyConfiguration qui doit être initialement actif.id
attribute)
de l'élément keyConfiguration que vous souhaitez actif à
l'origine.<!ELEMENT category EMPTY>
<!ATTLIST category
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED>
Dans l'interface utilisateur, les commandes sont souvent organisées
par catégories afin de les rendre plus accessibles. Cet élément permet
de définir ces catégories. Une commande ne peut appartenir qu'à une
catégorie. Si le même attribut
id
contient plusieurs de ces éléments, seul le dernier
déclaré (dans l'ordre de lecture du registre des plug-ins) est pris en
compte.
<!ELEMENT command (commandParameter | defaultHandler?)>
<!ATTLIST command
category CDATA #IMPLIED
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
categoryId CDATA #IMPLIED
defaultHandler CDATA #IMPLIED>
Cet élément est employé pour définir des commandes. Une commande correspond
à une demande de l'utilisateur pouvant être traitée par une action et
dont la syntaxe doit être unique comparée à celle des autres commandes. Ne
définissez pas une commande s'il en existe déjà une ayant le même
objectif. Si le même attribut id
contient plusieurs de ces
éléments, seul le dernier déclaré (dans l'ordre de lecture du registre des
plug-ins) est pris en compte. Pour comprendre comment les actions sont liées
aux commandes, reportez-vous aux points d'extension
org.eclipse.ui.actionSets et
org.eclipse.ui.editorActions.
activeWhen
. Si vous créez un IExecutableExtension
, vous pouvez utiliser l'élément defaultHandler
à la place.<!ELEMENT keyBinding EMPTY>
<!ATTLIST keyBinding
configuration CDATA #IMPLIED
command CDATA #IMPLIED
locale CDATA #IMPLIED
platform CDATA #IMPLIED
contextId CDATA #IMPLIED
string CDATA #IMPLIED
scope CDATA #IMPLIED
keyConfigurationId CDATA #IMPLIED
commandId CDATA #IMPLIED
keySequence CDATA #IMPLIED>
Cet élément permet d'assigner des séquences de touches à des
commandes. Veuillez utiliser l'élément key
dans le point d'extension "org.eclipse.ui.bindings" à la place.
java.util.Locale
.platform
sont celles renvoyées par
org.eclipse.swt.SWT.getPlatform()
.schemeId
sur l'élément key
dans le point d'extension "org.eclipse.ui.bindings".Séquence de touches à affecter à la commande. Les séquences de touches se composent d'une ou plusieurs activation de touche, correspondant à l'activation d'une touche du clavier éventuellement associée à l'une des touches suivantes : Ctrl, Alt, Maj ou Commande. Les activations de touche sont séparées par un espace et les touches associées par le caractère '+'.
Les touches de modification peuvent également être exprimées indépendamment de la plateforme. Sous MacOS X, par exemple, "Command" est la plupart du temps utilisé à la place de "Ctrl". Ainsi, "M1" remplacera soit "Ctrl" ou "Command", selon le cas. De même, "M2" est "Shift"; "M3" est "Alt"; et "M4" est "Ctrl" (MacOS X). Si plus de plateformes sont ajoutées, alors vous pourrez compter sur ces alias correspondant à des valeurs par défaut de la plateforme.
La syntaxe pour cette chaîne est définie dans org.eclipse.ui.internal.keys
. La chaîne fait la distinction entre les majuscules et les minuscules -- même si du point de vue du styles les lettres capitales sont à privilégier. Si la touche est une lettre, ajoutez simplement la lettre. Si la touche est une touche spéciale (c'est-à-dire non-ASCII), utilisez alors l'une des touches suivantes : ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP, BREAK, CAPS_LOCK, END, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, HOME, INSERT, NUM_LOCK, NUMPAD_0, NUMPAD_1, NUMPAD_2, NUMPAD_3, NUMPAD_4, NUMPAD_5, NUMPAD_6, NUMPAD_7, NUMPAD_8, NUMPAD_9, NUMPAD_ADD, NUMPAD_DECIMAL, NUMPAD_DIVIDE, NUMPAD_ENTER, NUMPAD_EQUAL, NUMPAD_MULTIPLY, NUMPAD_SUBTRACT, PAGE_UP, PAGE_DOWN, PAUSE, PRINT_SCREEN, ou SCROLL_LOCK. Si la touche est une touche ASCII non imprimable, utilisez alors l'une des touches suivantes : BS, CR, DEL, ESC, FF, LF, NUL, SPACE, TAB, ou VT. Notez que CR est la touche d'entrée/retour sur la plupart des claviers.
<!ELEMENT keyConfiguration EMPTY>
<!ATTLIST keyConfiguration
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Cet élément est employé pour définir des configurations de touches. Si le même attribut id
contient plusieurs de ces
éléments, seul le dernier déclaré (dans l'ordre de lecture du registre des
plug-ins) est pris en compte. Veuillez utiliser le point d'extension "org.eclipse.ui.bindings" à la place.
<!ELEMENT context EMPTY>
<!ATTLIST context
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED
parentId CDATA #IMPLIED>
Cet élément est employé pour définir des contextes. Si le même attribut id
contient plusieurs de ces
éléments, seul le dernier déclaré (dans l'ordre de lecture du registre des
plug-ins) est pris en compte. Veuillez utiliser le point d'extension org.eclipse.ui.contexts à la place.
<!ELEMENT scope EMPTY>
<!ATTLIST scope
description CDATA #IMPLIED
id CDATA #REQUIRED
name CDATA #REQUIRED
parent CDATA #IMPLIED>
Cet élément est employé pour définir des portées. Si le même attribut id
contient plusieurs de ces
éléments, seul le dernier déclaré (dans l'ordre de lecture du registre des
plug-ins) est pris en compte.
@déconseillé, utilisez le point d'extension "org.eclipse.ui.contexts"
à la place.
<!ELEMENT commandParameter (values)>
<!ATTLIST commandParameter
id CDATA #REQUIRED
name CDATA #REQUIRED
values CDATA #IMPLIED
optional (true | false) "true">
Définit un paramètre qu'une commande doit comprendre. Un paramètre est un moyen de fournir plus d'informations à un gestionnaire lors de l'exécution. Par exemple, une commande "afficher la vue" pourrait prendre une vue comme paramètre. Les gestionnaires doivent être capables de comprendre ces paramètres et doivent donc être traités comme des API.
org.eclipse.core.commands.IParameterValues
. Si la classe n'est pas spécifiée, vous devez spécifier l'élément values
le plus explicite. Veuillez vous reporter à org.eclipse.core.runtime.IExecutableExtension
.<!ATTLIST values
class CDATA #REQUIRED>
La version la plus explicite de l'attribut values
sur le commandParameter
.
org.eclipse.core.commands.IParameterValues
. Si la classe n'est pas spécifiée, vous devez spécifier l'élément values
le plus explicite. Veuillez vous reporter à org.eclipse.core.runtime.IExecutableExtension
.<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Une valeur possible du paramètre.
IExecutableExtension
.IExecutableExtension
.<!ELEMENT defaultHandler (parameter)>
<!ATTLIST defaultHandler
class CDATA #REQUIRED>
Gestionnaire par défaut pour cette commande. Si aucun autre gestionnaire n'est actif, ce gestionnaire sera actif. Ce gestionnaire entrera en conflit avec d'autres définitions de gestionnaire ne spécifiant aucune condition activeWhen
. Si vous ne créez pas un IExecutableExtension
, vous pouvez utiliser ledefaultHandler
à la place.
org.eclipse.core.commands.IHandler
.
Le fichier plugin.xml
du plug-in org.eclipse.ui
utilise de façon extensive le point d'extension
org.eclipse.ui.commands
.
Il n'existe pas d'API publiques de déclaration de commandes,
catégories, liaison de touches, configurations de touches ou contextes
hormis ce point d'extension. Les API publiques de requête et de
définition de contextes, ainsi que d'enregistrement d'actions
pour le traitement de commandes spécifiques se trouvent dans
org.eclipse.ui.IKeyBindingService
.
Copyright (c) 2000, 2005 IBM Corporation and others.
All rights reserved. Ce programme et les produits associés sont
distribués sous licence publique Eclipse v1.0 et disponibles à
l'adresse suivante :
http://www.eclipse.org/legal/epl-v10.html