Dans le cas du type de données XWD, l'utilisateur crée un fichier en lui attribuant l'une des extensions suivantes : .xwd ou .wd. Le bureau utilise le nom du fichier en tant que critère pour l'associer au type de données approprié.
Tout fichier de type XWD dispose des éléments suivants :
une icône unique permettant d'identifier les fichiers de données ;
des informations d'aide contextuelles qui décrivent le type de données ;
un menu Sélectionné(s) personnalisé dans le Gestionnaire de fichiers, contenant les options Ouvrir et Imprimer (l'action Ouvrir lance l'action Xwud pour les fichiers XWD).
Le menu Sélectionné(s) du Gestionnaire de fichiers n'est actif que lorsqu'un fichier ou un répertoire est sélectionné. Les options figurant dans la partie inférieure de ce menu dépendent du type de données du fichier. Par exemple, s'il s'agit d'un fichier XWD, les actions Ouvrir et Imprimer sont disponibles.
La zone ACTIONS de la définition du type de données spécifie les commandes ajoutées dans la partie inférieure du menu Sélectionné(s) du type de données.
DATA_ATTRIBUTES XWD { ACTIONS Ouvrir,Imprimer ... }
Le contenu du menu Sélectionné(s) dépend du type de données. Cependant, l'action Ouvrir est commune à de nombreux types de données (ce qui signifie qu'elle figure dans le menu qui s'affiche lorsque vous sélectionnez un fichier dans le Gestionnaire de fichiers et que vous ouvrez le menu Sélectionné(s) correspondant).
Généralement, l'action Ouvrir lance l'application associée au fichier de données. Par exemple, lorsque vous ouvrez un fichier XWD, l'action Xwud est exécutée : le client X xwud est lancé pour afficher le fichier. En d'autres termes, l'action Ouvrir est équivalente à l'action Xwud. De même, lorsque vous ouvrez un fichier TEXTFILE, l'éditeur de texte est lancé ; dans le cas d'un fichier BM (bitmap) ou PM (pixmap), c'est l'éditeur d'icônes qui est lancé.
La possibilité de créer des actions Ouvrir qui effectuent différentes opérations repose sur les deux fonctions décrites ci-dessous.
Cette fonction permet de créer une action qui en lance une autre, au lieu d'exécuter directement une commande. Par exemple, vous pouvez créer une action Ouvrir qui renvoie à (lance) l'action Xwud.
Restrictions en fonction du type de données
Les définitions d'actions peuvent contenir une zone ARG_TYPE permettant d'associer l'action à certains types de données uniquement. Par exemple, vous pouvez faire en sorte que l'action Ouvrir (qui renvoie à l'action Xwud) ne s'applique qu'aux fichiers dont le type de données est XWD.
Voici la définition de l'action qui permet d'associer l'action Ouvrir à l'action Xwud pour le type de données XWD. Elle figure dans le fichier de configuration de la base de données /usr/dt/appconfig/types/C/xclients.dt.
ACTION Ouvrir { LABEL Ouvrir ARG_TYPE XWD TYPE MAP MAP_ACTION Xwud }
La zone TYPE indique qu'il s'agit d'une action de correspondance et la zone MAP_ACTION, qu'elle exécute l'action Xwud. La zone ARG_TYPE spécifie que l'action ne s'applique qu'aux fichiers dont le type de données est XWD.
Comparez la définition précédente de l'action Ouvrir à la définition suivante, qui figure dans le fichier de la base de données /usr/dt/appconfig/types/C/dt.dt.
ACTION Ouvrir { LABEL Ouvrir ARG_TYPE BM TYPE MAP MAP_ACTION Dticon }
Cette définition ne s'applique qu'aux fichiers dont le type de données (ARG_TYPE) est BM (fichiers bitmap). Elle renvoie l'action Ouvrir à l'action Dticon, qui lance l'Editeur d'icônes.
Le comportement du double-clic est défini par la première entrée de la zone ACTIONS. Par exemple, pour le type de données XWD, vous pouvez exécuter l'action Ouvrir en cliquant deux fois sur l'icône : l'action Xwud est alors lancée.
Lorsque l'utilisateur pose un fichier de données sur une icône d'action, le système lance l'action en utilisant le fichier comme argument (voir la section "Utilisation des fichiers de données comme arguments").
Par exemple, lorsqu'un fichier XWD est placé sur l'icône Afficher fichier xwd, l'action Xwud est lancée et le fichier est utilisé comme argument (le client X xwud est lancé pour afficher le fichier de données).