Solaris CDE - Guide avancé de l'utilisateur et de l'administrateur système

Types de données

Lorsque vous créez un nouveau fichier de données, l'apparence et le comportement de l'icône de ce fichier dans le Gestionnaire de fichiers dépendent du type de données du fichier. Le bureau permet d'associer des caractéristiques personnalisées aux fichiers et aux répertoires, grâce au mécanisme de classification des données selon leur type.

Définition

Un type de données est une structure définie dans la base de données du bureau. L'exemple ci-dessous illustre la définition du type de données XWD, figurant dans le fichier de configuration /usr/dt/appconfig/types/langue/xclients.dt.

DATA_ATTRIBUTES XWD
 {
 	ACTIONS				Ouvrir,Imprimer
 	ICON					Dtxwd
 	NAME_TEMPLATE		%s.xwd
 	MIME_TYPE      	application/octet-stream
 	SUNV3_TYPE    		xwd-file
 	DESCRIPTION  		Ce fichier contient une image au format XWD. \
 							Il s'agit généralement de captures de \
 							fenêtres effectuées à l'aide de l'action \
 							XWDCapture. Le type de données est XWD et \
 							l'extension, .xwd ou .wd.
 }
DATA_CRITERIA XWD1
 {
 	DATA_ATTRIBUTES_NAME			XWD
 	MODE									f
 	NAME_PATTERN						*.xwd
 }

 DATA_CRITERIA XWD2
 {
 	DATA_ATTRIBUTES_NAME			XWD
 	MODE									f
 	NAME_PATTERN						*.wd
 }

Toute définition de type de données se compose des deux parties suivantes :

DATA_ATTRIBUTES : définit l'apparence et le comportement du type de données.

DATA_CRITERIA : indique les critères (nom ou contenu) permettant d'attribuer le type de données à un fichier.

La zone DATA_ATTRIBUTES_NAME permet d'associer les critères aux attributs.

Plusieurs zones DATA_CRITERIA peuvent être indiquées pour une zone DATA_ATTRIBUTE. Par exemple, pour le type de données XWD, deux critères NAME_PATTERN permettent d'indiquer deux extensions différentes (.xwd et .wd).

Association des fichiers de données aux actions

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 :

Lancement d'actions à partir du menu Sélectionné(s)

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).

Figure 10–5 Menu Sélectionné(s) d'un fichier XWD

Graphic

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.

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.

Comportement du double-clic

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.

Pose d'un fichier sur une icône d'action

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).

Impression pour un type de données

Pour imprimer un fichier de données à partir du bureau, vous pouvez :

Vous pouvez également lancer des impressions à partir de nombreuses applications.

L'impression à partir du bureau s'effectue à l'aide de l'action Imprimer. Tout comme l'action Ouvrir, cette action est utilisée pour de nombreux types de données. Elle est donc associée à d'autres actions, la zone ARG_TYPE permettant de personnaliser l'impression pour les différents types de données.

Par exemple, l'exemple ci-dessous illustre l'action Imprimer associée au type de données XWD. Elle est définie dans le fichier /usr/dt/appconfig/types/langue/xclients.dt:

ACTION Imprimer
 {
 	LABEL					Imprimer
 	ARG_TYPE				XWD
 	TYPE					MAP
 	MAP_ACTION			NoPrint
 }

Cette action Imprimer, propre aux fichiers XWD, est associée à une action NoPrint, définie dans le fichier /usr/dt/appconfig/types/langue/dt.dt. Elle affiche une boîte de dialogue informant l'utilisateur que l'impression du type de données est impossible.

Comparez l'action Imprimer des fichiers XWD avec la suivante (fichiers PCL) :

ACTION Print
{
 	LABEL				Print
 	ARG_TYPE			PCL
 	TYPE				MAP
 	MAP_ACTION		PrintRaw
 }

L'action PrintRaw, définie dans le fichier de configuration /usr/dt/appconfig/types/langue/print.dt, indique la commande permettant d'imprimer les fichiers PCL.

ACTION PrintRaw
 {
 	TYPE						COMMAND
 	WINDOW_TYPE				NO_STDIO
 	EXEC_STRING				/usr/dt/bin/dtlp -w %(File)Arg_1%
 }