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

Chapitre 13 Création manuelle de types de données

Un type de données peut être défini de deux façons :

Pour créer manuellement un type de données, vous devez modifier un fichier de base de données.

Le présent chapitre décrit la procédure de création manuelle.

Pourquoi créer un type de données manuellement ?

La création manuelle d'un type de données permet de tirer parti des possibilités de la syntaxe des définitions de types de données.

Vous devez créer un type de données manuellement pour bénéficier des fonctions suivantes :

Critères et attributs d'une définition de type de données

La définition d'un type de données est constituée de deux définitions de base de données distinctes.

Il doit y avoir au moins une définition de DATA_CRITERIA pour chaque définition de DATA_ATTRIBUTES ; une définition de DATA_ATTRIBUTESpeut être associée à plusieurs paramètres DATA_CRITERIA .

Vous pouvez, par exemple, créer une définition d'attributs pour fichiers PostScript déterminant l'apparence et le comportement de ces fichiers dans le Gestionnaire de fichiers. Vous pouvez ensuite établir deux critères distincts pour le type de données PostScript, l'un basé sur le nom du fichier et l'autre basé sur son contenu.

Pour plus de détails, reportez-vous à la section "Définition des critères d'un type de données".

Procédure de création manuelle d'un type de données

La présente section décrit la procédure de création des fichiers de configuration de type de données.

Fichiers de configuration des types de données

Les fichiers de configuration contenant des définitions de types de données doivent :

Définition d'un type de données

  1. Ouvrez un fichier de base de données existant ou créez-en un nouveau.

    Pour plus de détails, reportez-vous à la section précédente, "Fichiers de configuration des types de données".

  2. Définissez les attributs du type de données à l'aide de la syntaxe suivante :

    	DATA_ATTRIBUTES nom_type_données
     	{
     		ICON						nom_image
     		DESCRIPTION				chaîne 
     		zone_attribut
     		zone_attribut
     		...
     	}
    

    où :

    nom_type_données : nom unique affecté à ce type de données.

    nom_image :nom de fichier ou chemin d'un fichier d'icône. Utilisez le nom de base du fichier. Par exemple, pour les fichiers d'icônes image.m.pm et image.t.pm, utilisez image.

    zone_attribut : zone définissant l'apparence ou le comportement d'un type de données.

    chaîne : chaîne de caractères. Son contenu apparaîtra dans l'aide contextuelle du type de données.

    Pour plus de détails sur la manière dont le Bureau recherche ces fichiers, reportez-vous à la section "Exemple de création".

  3. Définissez les critères du type de données à l'aide de la syntaxe :

    	DATA_CRITERIA nom_critères
     	{
     		DATA_ATTRIBUTES_NAME						nom_type_données
     		zone_critères
     		zone_critères
     		...
     	}
    

    où :

    nom_critères : nom unique de cette définition de critères.

    nom_type_données : nom utilisé dans la définition du paramètre DATA_ATTRIBUTES définition

    zone_critères : zone utilisée pour définir les critères d'affectation d'un fichier à ce type de données.

    Pour plus de détails sur la manière dont le Bureau recherche ces fichiers, reportez-vous à la section "Définition des critères d'un type de données".

  4. Sauvegardez le fichier de base de données.

  5. Créez les icônes de ce type de données.

    Pour plus de détails, reportez-vous à la section "Indication de l'icône associée au type de données".

  6. Au besoin, créez les actions répertoriées dans la zone ACTIONS de la définition des attributs.

  7. Cliquez deux fois sur Recharger actions dans le groupe d'applications Outils_Bureau pour recharger la base de données.

Exemple de création

Cet exemple suppose que le système contient l'application xgif, permettant l'affichage d'images GIF. Généralement, ce programme est lancé à l'aide de la commande :

xgif nom_fichier

Vous pouvez afficher des images GIF de différentes façons :

  1. Ouvrez un nouveau fichier RépPersonnel/.dt/types/GifViewer.dt pour le modifier.

  2. Entrez les définitions des types de données :

    	DATA_ATTRIBUTES Gif
     	{
     		DESCRIPTION				Fichier image Gif.
     		ICON						GifIcon
     		ACTIONS					Visualiser
     	}
     	DATA_CRITERIA Critères_Gif
     	{
     		DATA_ATTRIBUTES_NAME			Gif
     		NAME_PATTERN						*.gif
     	}
  3. Entrez la définition de l'action GifViewer :

    	ACTION GifViewer
     	{
     		EXEC_STRING					xgif %(File)Arg_1"Fichier Gif à visualiser :"
     		WINDOW_TYPE					NO_STDIO
     		DESCRIPTION					Cliquez deux fois sur un fichier ou \
     										ou posez-le pour lancer l'application.
     	}

    La définition ne comportant pas de zone ICON , l'action fera appel à l'icône par défaut du système.

  4. Entrez l'action de correspondance suivante pour associer l'action GifViewer à l'action Visualiser figurant dans la définition du type de données. Utilisez la zone ARG_TYPE pour limiter cette action aux fichiers de type Gif.

    	ACTION Visualiser
     	{
     		ARG_TYPE				Gif
     		TYPE					MAP
     		MAP_ACTION			GifViewer
     	} 
  5. Sauvegardez le fichier.

  6. Cliquez deux fois sur Recharger actions dans le groupe d'applications Outils_Bureau pour recharger la base de données.

Définition des attributs d'un type de données

La définition DATA_ATTRIBUTES indique l'apparence, le comportement et le nom du type de données et permet de préciser :

Indication de l'icône associée au type de données

Utilisez la zone ICON pour indiquer l'icône utilisée dans le Gestionnaire de fichiers. Si vous ne l'indiquez pas, ce dernier affichera uniquement un libellé.

La valeur de la zone ICON peut désigner les éléments ci-dessous.

Tableau 13-1 Noms et tailles des icônes de types de données

Taille en pixels 

Nom bitmap 

Nom pixmap 

32 x 32 

nom.m.bm

nom.m.pm

16 x 16 

nom.t.bm

nom.t.pm

Association de types de données à des actions

Les types de données peuvent être associés à des actions de deux façons :

Masquage des fichiers en fonction du type de données

Si le type de données d'un fichier est invisible, ce dernier n'apparaît pas dans le Gestionnaire de fichiers.

Utilisez la zone PROPERTIES de la définition du paramètre DATA_ATTRIBUTES pour cacher les icônes de ce type :

PROPERTIES				invisible

Comportement d'un fichier manipulé

Le Tableau 13-2 montre les zones DATA_ATTRIBUTES principalement utilisées par les programmeurs système. Elles indiquent le comportement des fichiers lorsque l'utilisateur exécute certaines tâches.

Pour plus de détails, reportez-vous au manuel Common Desktop Environment Programmer's Guide, qui fait partie de la documentation relative à l'environnement de développement.

Tableau 13-2 DATA_ATTRIBUTES - Zones et descriptions

Zone 

Description 

MOVE_TO_ACTION

Concerne les conteneurs tels que les répertoires. Cette zone indique une action qui doit être exécutée lors du transfert d'un fichier vers un conteneur de ce type de données. 

COPY_TO_ACTION

Concerne les conteneurs tels que les répertoires. Cette zone indique une action qui doit être exécutée lors de la copie d'un fichier dans un conteneur de ce type de données. 

LINK_TO_ACTION

Cette zone indique une action qui doit être exécutée lors de l'association d'un fichier à un autre fichier de ce type de données. 

IS_TEXT

Indique que les fichiers de ce type de données contiennent du texte pouvant être affiché dans une boîte de message. 

MEDIA

Indique le type de support ToolTalk correspondant. 

MIME_TYPE

Indique le type MIME correspondant. 

X400_TYPE

Indique le type X400 correspondant. 

Définition des critères d'un type de données

La définition du paramètre DATA_CRITERIA indique les critères utilisés pour affecter un type d'objet à un fichier ou à un répertoire.

Vous pouvez utiliser les critères figurant dans le Tableau 13-3 pour indiquer les types d'objets.

Tableau 13-3 DATA_CRITERIA - Critères et descriptions

Critères 

Description 

Nom de fichier 

Il doit correspondre à un modèle donné. Utilisez la zone NAME_PATTERN.

Emplacement du fichier 

Le chemin doit correspondre à un modèle donné. Utilisez la zone PATH_PATTERN.

Contenu du fichier 

Une partie donnée du contenu du fichier doit correspondre à des données spécifiques. Utilisez la zone CONTENT.

Mode du fichier  

Le fichier doit disposer des autorisations spécifiées (lecture, écriture, exécution et répertoire). Utilisez la zone MODE.

Liens symboliques

Le type est basé sur le fichier auquel l'objet est lié. 

Un type de données accepte plusieurs critères. Il est cependant préférable de ne pas utiliser les critères NAME_PATTERN et PATH_PATTERN dans le même type de données.

Types de données basés sur le nom

Utilisez la zone NAME_PATTERN pour indiquer les exigences de l'appellation. Les caractères génériques suivants sont acceptés :

? : remplace un caractère quelconque.

* : remplace une séquence de caractères quelconque (y compris une chaîne nulle).

[cc...] : remplace le(s) caractère(s) (c) figurant entre crochets.

[c-c] : remplace le(s) caractère(s) compris entre c et c.

Exemples

Types de données basés sur l'emplacement

Utilisez la zone PATH_PATTERN pour indiquer le chemin. Vous pouvez utiliser les mêmes caractères génériques que pour NAME_PATTERN.

Par exemple, le type de données suivant utilise un critère basé sur le chemin.

DATA_ATTRIBUTES Graphique_projet
 {
 	DESCRIPTION			Fichier graphique pour le projet QS. Cliquez deux fois sur \
 							l'icône pour voir le graphique.
 	ICON					QSgraphics
 }
 DATA_CRITERIA Critères_graphique_projet
 {
 	DATA_ATTRIBUTES_NAME			Graphique_projet
 	PATH_PATTERN						*/projects/QS/graphics/*
 }

Types de données basés sur le nom et l'emplacement

Pour créer un type de données basé à la fois sur le nom et sur l'emplacement, ajoutez le nom à la valeur PATH_PATTERN. Vous ne pouvez pas utiliser à la fois NAME_PATTERN et PATH_PATTERN dans la même définition de critère.

Exemples

Utilisation des modes de fichiers comme critères de type

Utilisez la zone MODE pour indiquer les autorisations requises.

Les critères de mode sont généralement associés à un type de données basé sur le nom, l'emplacement ou le contenu. Ils permettent de limiter un type de données à un fichier ou à un répertoire, ou d'indiquer l'autorisation de lecture, d'écriture ou d'exécution requise.

La zone MODE peut comporter des opérateurs logiques (Tableau 13-4) et des caractères (Tableau 13-5).

Tableau 13-4 Opérateurs logiques et descriptions de la zone MODE

Opérateur 

Description 

!

Opérateur logique NOT

&

Opérateur logique AND

|

Opérateur logique OR

Tableau 13-5 Caractères et descriptions de la zone MODE

Caractère 

Description 

f

Type de données s'appliquant uniquement aux fichiers. 

d

Type de données s'appliquant uniquement aux répertoires. 

r

Fichier lisible par n'importe quel utilisateur. 

w

Fichier accessible en écriture par n'importe quel utilisateur. 

x

Fichier exécutable par n'importe quel utilisateur. 

l

Le fichier est un lien. 

Par défaut, le mode n'est pas pris en compte.

Exemples

Type de données basé sur le contenu

Utilisez la zone CONTENT pour indiquer un type de données basé sur le contenu du fichier. Ce type de données peut être utilisé en combinaison avec des types de données basés sur le nom ou sur l'emplacement.

Le type peut dépendre d'une chaîne ou de chiffres contenus dans le fichier. Le premier octet du fichier porte le numéro 0.

Création d'un type de données à l'aide de plusieurs critères indépendants

Vous pouvez créer un type de données à l'aide de plusieurs critères indépendants  autrement dit, le fichier est affecté à un type de données s'il répond à au moins un des critères.

  1. Créez la définition du paramètre DATA_ATTRIBUTES du type de données.

  2. Créez une définition de DATA_CRITERIA pour chaque critère.

    Utilisez la zone DATA_ATTRIBUTES_NAME pour associer chaque critère à la même définition de DATA_ATTRIBUTES.

    Par exemple, les définitions suivantes permettent de créer le type de données Mif. Le type est basé sur le nom et le contenu.

    DATA_ATTRIBUTES Mif
    {
     	ICON								Frame
     	ACTION_LIST						Ouvrir,Imprimer
     }
    
     DATA_CRITERIA Critères_Nom_Mif
     {
     	DATA_ATTRIBUTES_NAME				Mif
     	NAME_PATTERN							*.mif
     }
    
     DATA_CRITERIA Critères_Contenu_Mif
     {
     	DATA_ATTRIBUTES_NAME		Mif
     	CONTENT							1 string MIFFile
     }

Création de types de données localisés (adaptés au pays)

Le chemin de recherche des types de données comporte des emplacements dépendant la langue utilisée. Le Bureau utilise la valeur de la variable LANG pour déterminer les emplacements des définitions de types de données.

Emplacements des types de données localisés

Les définitions de ces types de données doivent figurer dans les répertoires correspondant à la langue, sur le chemin de recherche des actions.

Les chemins de recherche par défaut sont les suivants :

Localisation d'un type de données

  1. Créez un fichier dans le répertoire correspondant à la langue (par exemple, dans /etc/dt/appconfig/types/japanese).

  2. Copiez la définition du type de données dans le fichier de configuration lié à la langue.

  3. Localisez les zones de la définition de ce type de données.