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

Exemple de création d'un module d'enregistrement

Les étapes suivantes permettent de créer un module d'enregistrement pour une application "non-CDE" existante appelée BestTextEditor.

Informations sur "BestTextEditor"

L'exemple considère que l'application BestTextEditor possède les caractéristiques suivantes :

Etapes d'enregistrement de "BestTextEditor"

La procédure ci-dessous permet d'enregistrer BestTextEditor.

  1. Modifiez les ressources des polices et des couleurs.

    Dans le fichier app-defaults de BestTextEditor, supprimez les ressources qui définissent :

    • les polices de texte,

    • les couleurs de premier plan et d'arrière-plan.

  2. Créez la racine de l'application.

    Créez le répertoire :

    	/desktop_approots/BTE

    Si vous intégrez une application existante, vous devez créer un répertoire racine différent du répertoire d'installation de l'application, sinon les fichiers de configuration que vous avez créés seront supprimés lors de la mise à jour de l'application.

  3. Créez les répertoires du module d'enregistrement.

    Créez les répertoires suivants :

    	/desktop_approots/BTE/dt/appconfig/types/C
     	/desktop_approots/BTE/dt/appconfig/help/C
     	/desktop_approots/BTE/dt/appconfig/icons/C
     	/desktop_approots/BTE/dt/appconfig/appmanager/C/BestTextEditor
  4. Créez les actions et les types de données de l'application.

    1. Créez le fichier de configuration des définitions d'actions et de types de données :

      		/desktop_approots/BTE/dt/appconfig/types/C/BTE.dt
    2. Créez la définition d'action pour l'exécution de BestTextEditor :

      		ACTION BTEditor
       		{
       				WINDOW_TYPE			NO_STDIO
       				ICON					BTERun
       				DESCRIPTION			Cliquez deux fois sur cette 
       									icône ou posez dessus\
       										un fichier de données BTE 
       										pour exécuter \
       										BestTextEditor.
       				EXEC_STRING			/usr/BTE/BTEd %Arg_1%
       		}
    3. Créez le type de données des fichiers *.bte :

      		DATA_ATTRIBUTES BTEDataFile
       		{
       				DESCRIPTION				Fichier de données 
       									de BestTextEditor.
       				ICON						BTEData
       				ACTIONS					Ouvrir,Imprimer
       		}
      
       		DATA_CRITERIA BTEDataFileCriteria1
       		{
       				DATA_ATTRIBUTES_NAME			BTEDataFile
       				NAME_PATTERN						*.bte
       				MODE									f
       		}
    4. Créez le type de données des fichiers *.tpl :

      		DATA_ATTRIBUTES BTETemplateFile
       		{
       				DESCRIPTION			Fichier modèle de BestTextEditor.
       				ICON					BTETempl
       				ACTIONS				Ouvrir
       		}
      
       		DATA_CRITERIAL BTETemplateFileCriteria1
       		{
       				DATA_ATTRIBUTES_NAME			BTETemplateFile
       				NAME_PATTERN						*.tpl
       				MODE									f
       		}
    5. Créez l'action Ouvrir pour les fichiers *.bte.

      		ACTION Ouvrir
       		{
       				ARG_TYPE			BTEDataFile
       				TYPE				MAP
       				MAP_ACTION		BTEditor
       		}
    6. Créez l'action Imprimer pour les fichiers *.bte.

      Des actions Imprimer simples figurent ci-dessous. Ces actions nécessitent qu'une valeur soit définie pour la variable d'environnement LPDEST et ne tiennent pas compte de l'option d'impression -s. Si LPDEST n'est pas définie, l'action peut échouer.

      		ACTION Imprimer
       		{
       				ARG_TYPE				BTEDataFile
       				TYPE					MAP
       				MAP_ACTION			BTEPrintData
       		}
      		ACTION BTEPrintData
       		{ 		WINDOW_TYPE				NO_STDIO
       				EXEC_STRING				BTEPrint -d $LPDEST %Arg_1%
       		}

      Voici une autre version de l'action BTEPrintData et du script l'accompagnant. Ensemble, ils gèrent les situations où LPDEST n'est pas définie et qu'une impression directe est demandée.

      		ACTION BTEPrintData
       		{
       				WINDOW_TYPE				NO_STDIO
       				EXEC_STRING				/usr/BTE/bin/BTEenvprint \
       											%(File)Arg_1%
       		}

      Le contenu du script /usr/BTE/bin/BTEenvprint est :

      		# BTEenvprint
       		#!/bin/sh
       		DEST=””
       		SILENT=””
       		if [ $LPDEST ] ; then
       			DEST=”-d $LPDEST”
       		fi
       		fi
       		BTEPrint $DEST SILENT $1
    7. Créez l'action Ouvrir pour les fichiers *.tpl :

      		ACTION Ouvrir
       		{
       				ARG_TYPE			BTETemplateFile
       				TYPE				MAP
       				MAP_ACTION		BTEditor
       		}
    8. Créez l'action Imprimer pour les fichiers *.tpl :

      		ACTION Imprimer
       		{
       				ARG_TYPES		BTETemplateFile
       				TYPE				MAP
       				MAP_ACTION		NoPrint
       		}

      NoPrint est une action intégrée qui affiche une boîte de dialogue indiquant à l'utilisateur que le fichier ne peut pas être imprimé.

  5. Placez les fichiers d'aide dans le module d'enregistrement.

    1. Placez les fichiers d'aide dans les emplacements suivants :

      		/desktop_approots/BTE/dt/appconfig/help/C/BTEHelp.sdl
       		/desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE1.xwd
       		/desktop_approots/BTE/dt/appconfig/help/C/graphics/BTE2.xwd
    2. Créez le fichier :

      		/desktop_approots/BTE/dt/appconfig/types/C/BTEhelp.dt. 

      Placez la définition d'action suivante dans le fichier :

      		ACTION BTEHelp
       		{
       				WINDOW_TYPE			NO_STDIO
       				EXEC_STRING			/usr/dt/bin/dthelpview 
       								-helpVolume \ BTEHelp.sdl
       				DESCRIPTION			Ouvre le volume d'aide 
       								de BestTextEditor.
       		}
  6. Créez les icônes de l'application.

    Utilisez l'Editeur d'icônes. Le Tableau 5–3 donne des indications relatives à la taille.

    Tableau 5–3 Indications de taille des icônes

    Nom 

    Taille 

    nom_base.t.pm

    16 x 16 

    nom_base.m.pm

    32 x 32 

    nom_base.l.pm

    48 x 48 

    Créez ces fichiers d'icônes dans le répertoire /desktop_approots/BTE/dt/appconfig/icons/C:

    • Icônes représentant l'action qui exécute l'application : BTERun.t.pm, BTERun.m.pm, BTERun.l.pm

    • Icônes représentant les fichiers *.bte : BTEData.t.pm, BTEData.m.pm

    • Icônes représentant les fichiers *.tpl : BTETempl.t.pm, BTETempl.m.pm

    • Icônes représentant le groupe d'applications (utilisé à l'étape 7) : BTEApp.t.pm, BTEApp.m.pm

  7. Créez le groupe d'applications.

    1. S'il n'existe pas, créez le répertoire suivant :

      	/desktop_approots/BTE/dt/appconfig/appmanager/C/BestTextEditor
    2. Cette étape est facultative. Elle attribue une icône unique au groupe d'applications en créant pour ce dernier un type de données et les actions associées. Si vous sautez cette étape, le groupe d'applications utilisera l'icône par défaut.

      Ajoutez les définitions de types de données et d'actions suivantes au fichier /desktop_approots/BTE/dt/appconfig/types/C/BTE.dt. Le type de données indique l'icône que le groupe d'applications BestTextEditor utilisera. Les actions proposent le même comportement Ouvrir et Imprimer que les groupes d'applications intégrés.

      		DATA_ATTRIBUTES BestTextEditorAppGroup
       		{
       				ACTIONS		OpenInPlace,OpenNewView
       				ICON			BTEApp
       		{
      		DATA_CRITERIA BestTextEditorAppGroupCriterial
       		{
       				DATA_ATTRIBUTES_NAME	BestTextEditorAppGroup
       				MODE							d
       				PATH_PATTERN				*/appmanager/*/BestTextEditor
       		}
      		ACTION Ouvrir
       		{
       				ARG_TYPE				BestTextEditorAppGroup
       				TYPE					MAP
       				MAP_ACTION			OpenAppGroup
       		}
      		ACTION Imprimer
       		{
       				ARG_TYPE				BestTextEditorAppGroup
       				TYPE					MAP
       				MAP_ACTION			PrintAppGroup
       		}
    3. Créez, dans le groupe d'applications, une icône qui lancera l'application. Pour ce faire, créez le fichier :

      		/desktop_approots/BTE/dt/appconfig/appmanager/C \
       		/BestTextEditor/BTEditor

      et faites-en un fichier exécutable.

    4. Créez le fichier d'action du groupe d'applications qui ouvrira le volume d'aide. Pour ce faire, créez le fichier :

      		/desktop_approots/BTE/dt/appconfig/appmanager/C \
       		/BestTextEditor/BTEHelp

      et faites-en un fichier exécutable.

    5. Placez les autres fichiers dans le groupe d'applications, par exemple les fichiers "read me", les fichiers d'exemples de données et les fichiers modèles.

  8. Enregistrez l'application.

    Dans une fenêtre d'émulateur de terminal :

    1. Connectez-vous en tant que superutilisateur.

    2. Exécutez la commande suivante :

      		/usr/dt/bin/dtappintegrate -s /desktop_approots/BTE
    3. Ouvrez le groupe d'applications Outils_Bureau et cliquez deux fois sur Recharger applications.