La présente section décrit les étapes générales de la définition d'un objet de commande et de la création de divers types d'objets.
En cas de PUSH_ACTION et/ou DROP_ACTION, créez les définitions de l'action. Il s'agit des actions qui s'exécutent lorsque l'utilisateur clique sur l'objet ou pose un fichier dessus.
Créez les fichiers image d'icône de l'objet de commande.
Pour plus de détails sur les tailles, noms et emplacements des icônes, voir "Fichiers d'images".
Créez un nouveau fichier de configuration du Tableau de bord dans :
appliqué au système : /etc/dt/appconfig/types/langue/*.fp ;
personnel : RépPersonnel/.dt/types/*.fp.
Ajoutez la définition de l'objet de commande au fichier.
Sauvegardez le fichier.
Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail.
Utilisez ces zones pour définir le comportement d'un objet de commande.
TYPE : configuré sur icon
PUSH_ACTION : spécifie le nom de l'action à exécuter.
Par exemple, l'objet de commande suivant, qui sera intégré au panneau secondaire Applications personnelles, permet l'exécution d'un jeu :
CONTROL Ball
 {
 	TYPE							icon
 	CONTAINER_NAME				PersAppsSubpanel
 	CONTAINER_TYPE				SUBPANEL
 	ICON							ball
 	PUSH_ACTION					RunBallGame
 	HELP_STRING					"Cet objet de commande lance le jeu Ball."
 }
L'objet de commande sera placé dans l'angle supérieur gauche du sélecteur. Il permet de lancer l'action CutDisp.
CONTROL StartCutDisp
 {
   TYPE							icon
   CONTAINER_NAME			Switch
   CONTAINER_TYPE			SWITCH
   POSITION_HINTS			first
   ICON							cutdisp
   HELP_STRING				"Cet objet de commande lance l'action CutDisp."
   PUSH_ACTION				CutDisp
 }
Utilisez ces zones pour définir le comportement d'un objet de commande.
TYPE : configuré sur file
FILE_NAME : indique le chemin du fichier que vous souhaitez ouvrir
PUSH_ACTION : configuré sur Open.
Une action Ouvrir doit être définie pour le type de données du fichier.
Par exemple, l'objet de commande sera placé sur le côté droit du panneau principal. Il permet de lancer l'Editeur de texte à l'aide du fichier de données /users/ellen/PhoneList.txt. L'action Ouvrir des fichiers de type *.txt fait partie de la base de données d'actions par défaut.
CONTROL EditPhoneList
 {
 	TYPE							file
 	FILE_NAME					/users/ellen/PhoneList.txt
 	CONTAINER_NAME				Top
 	CONTAINER_TYPE				BOX
 	POSITION_HINTS				last
 	ICON							PhoneBook
 	HELP_STRING					"Cet objet de commande affiche la liste téléphonique."
 	PUSH_ACTION					Open
 }
Utilisez la zone DROP_ACTION pour préciser l'action qui s'exécute lorsque l'utilisateur pose un fichier sur l'objet de commande. L'action doit pouvoir accepter un argument de fichier.
La définition d'un objet de commande comporte souvent à la fois une zone PUSH_ACTION et une zone DROP_ACTION. La même action peut être utilisée pour l'une ou l'autre.
Par exemple, l'objet de commande suivant, figurant dans le panneau secondaire Applications personnelles, exécute le client X xwud, qui nécessite un argument de fichier.
CONTROL Run_xwud
 {
 	CONTAINER_NAME				PerAppsSubpanel
 	CONTAINER_TYPE				SUBPANEL
 	POSITION_HINTS				2
 	ICON							XwudImage
 	PUSH_ACTION					RunXwud
 	DROP_ACTION					RunXwud
 }
Utilisez ces zones pour définir le comportement d'un objet de commande.
TYPE : indiquez l'une des valeurs suivantes :
icon--Permet de définir les paramètres PUSH_ACTION et/ou DROP_ACTION pour l'objet de commande.
file--Si vous souhaitez que l'objet de commande, une fois sélectionné, se comporte comme le fichier lorsque vous cliquez deux fois sur l'icône de ce dernier dans le Gestionnaire de fichiers.
ICON et ALTERNATE_ICON : décrivent les images utilisées pour indiquer l'état (changé et inchangé) du fichier contrôlé.
MONITOR_TYPE : décrit les conditions pouvant être à l'origine d'une modification de l'image. Utilisez l'une des valeurs suivantes :
mail--L'apparence de l'objet de commande est modifié lorsque des informations sont ajoutées au fichier.
file--L'objet de commande est modifié lorsque le fichier spécifié n'est plus vide.
FILE_NAME : indique le fichier à contrôler.
Par exemple, l'objet de commande suivant recherche la présence d'un fichier meetings qui doit être transféré (ftp anonyme) sur votre système. L'objet de commande est placé dans la partie supérieure du panneau secondaire Applications personnelles.
CONTROL MonitorCalendar
 {
 	TYPE							file
 	CONTAINER_NAME				PersonalApps
 	CONTAINER_TYPE				SUBPANEL
 	POSITION_HINTS				first
 	FILE_NAME					/users/ftp/meetings
 	MONITOR_TYPE				file
 	ICON							meetingsno
 	ALTERNATE_ICON				meetingsyes
 }
Un objet de commande d'une instance vérifie si le processus lancé par la zone PUSH_ACTION est déjà en cours d'exécution. Si tel n'est pas le cas, la fonction de la zone PUSH_ACTION est sollicitée. Si le processus est en cours d'exécution, la fenêtre apparaît en haut de la pile de fenêtres de l'espace de travail courant.
Utilisez ces zones pour définir le comportement d'un objet de commande.
PUSH_RECALL : configuré sur True.
CLIENT_NAME : indique le nom du client à l'objet de commande.
La valeur de la zone CLIENT_NAME doit correspondre à la première chaîne (nom_res) de la caractéristique WM_CLASS, dans la fenêtre supérieure de l'application. Pour plus de détails, reportez-vous à la page de manuel xprop(1).
PUSH_ACTION : décrit l'action lancée lorsque l'utilisateur clique sur l'objet de commande.
Par exemple, l'objet de commande suivant lance une instance d'application dont l'action est MyEditor.
CONTROL MyEditor
 {
 	TYPE							icon
 	CONTAINER_NAME				Top
 	CONTAINER_TYPE				BOX
 	POSITION_HINTS				15
 	PUSH_RECALL					True
 	CLIENT_NAME					BestEditor
 	PUSH_ACTION					StartMyEditor
 	ICON							MyEd
 }
L'objet de commande d'une fenêtre cliente est une fenêtre d'application intégrée au Tableau de bord. Par exemple, vous pouvez placer un compteur de chargement du système dans le Tableau de bord en créant un objet de commande xload de fenêtre cliente.
Définissez l'objet de commande.
Utilisez ces zones pour définir le comportement d'un objet de commande.
TYPE : configuré sur client.
CLIENT_NAME : indique le client à lancer.
La valeur de la zone CLIENT_NAME doit correspondre à la première chaîne (nom_res) de la caractéristique WM_CLASS, dans la fenêtre supérieure de l'application. Pour plus de détails, reportez-vous à la page de manuel xprop(1).
Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail.
Lancez le client à partir de la ligne de commande d'un émulateur de terminal.
Par exemple, l'objet de commande suivant affiche un programme de mesure de la charge processeur de 30 x 20 pixels.
CONTROL LoadMeter
 {
 	TYPE							client
 	CONTAINER_NAME				Top
 	CONTAINER_TYPE				BOX
 	CLIENT_NAME					xload
 	CLIENT_GEOMETRY			30x20
 }
Si le client n'est pas sauvegardé et restauré entre les sessions, vous pouvez configurer l'objet de commande afin qu'il lance le client lorsque l'utilisateur clique dessus. Par exemple, l'objet de commande LoadMeter peut être configuré afin de lancer xload en ajoutant la ligne suivante à la définition :
PUSH_ACTION StartXload
et en créant l'action :
ACTION StartXload
 {
 	WINDOW_TYPE				NO_STDIO
 	EXEC_STRING				/usr/contrib/bin/X11/xload
 }
Vous pouvez définir une séquence d'animation, activée lorsque l'utilisateur sélectionne l'objet de commande ou pose un objet dessus.
Pour comporter une séquence d'animation, un objet doit :
être de type icon ;
comporter une zone PUSH_ACTION ou une zone DROP_ACTION.
Précisez la séquence d'animation à l'aide du composant ANIMATION :
	ANIMATION nom_animation
 	{
 		image_icône				[délai]
 		image_icône				[délai]
 		...
 	}
où délai représente la durée entre les icônes d'animation, en millisecondes.
Ajoutez les zones PUSH_ANIMATION et/ou DROP_ANIMATION à la définition de l'objet de commande. La valeur correspond au nom de la séquence ANIMATION.
Par exemple, les lignes suivantes permettent l'animation de l'objet de commande qui lance l'application BestEditor. Le délai entre les icônes est de 300 millisecondes. Cet exemple suppose que vous avez dû créer les fichiers d'icône frame1, frame2, etc.
CONTROL BestEditor
 {
 	...
 	PUSH_ANIMATION BestEdAnimation
 	...
 }
 ANIMATION BestEdAnimation
 {
 	frame1			300
 	frame2
 	...
 }
L'aide sur un objet de commande peut être obtenue de deux façons.
Chaîne d'aide dans la définition de l'objet de commande.
La chaîne d'aide s'affiche lorsque l'utilisateur fait appel à l'aide relative à l'objet de commande ; elle ne comporte ni formatage (en-têtes), ni liens.
Précisez la chaîne d'aide dans la définition de l'objet de commande :
HELP_STRING chaîne_aide
Indication d'une rubrique d'aide dans un volume d'aide.
Une rubrique d'aide comporte des informations exploitant toutes les capacités du système d'aide. Pour créer une rubrique d'aide, vous devez utiliser le kit du développeur du Bureau CDE.
Précisez le volume d'aide et l'ID de la rubrique d'aide dans la définition de l'objet de commande :
HELP_VOLUME nom_volume_aide HELP_TOPIC id_rubrique