Les étapes suivantes permettent de créer un module d'enregistrement pour une application "non-CDE" existante appelée BestTextEditor.
L'exemple considère que l'application BestTextEditor possède les caractéristiques suivantes :
Elle a été installée dans le répertoire /usr/BTE.
La langue de la session de l'utilisateur est la langue par défaut (C).
La syntaxe de lancement de BestTextEditor est :
BTEd {nom_fichier]
où nom_fichier est le nom du fichier de données à ouvrir dans la nouvelle fenêtre. BestTextEditor crée sa propre fenêtre, c'est-à-dire qu'elle ne s'exécute pas dans une fenêtre d'émulateur de terminal.
BestTextEditor crée et utilise deux types de fichiers de données :
Des fichiers de documentation utilisant la convention de dénomination *.bte. BestTextEditor dispose d'une ligne de commande pour l'impression de ses fichiers de données .bte. La syntaxe de cette commande est :
BTEPrint [-d destination] [-s] nom_fichier
où :
-d destination : indique l'imprimante de destination.
-s : indique une impression directe. La boîte de dialogue d'impression de l'application ne s'affiche pas.
nom_fichier : indique le fichier à imprimer.
Des fichiers modèles utilisant la convention de dénomination *.tpl. Les fichiers modèles ne peuvent pas être imprimés.
Les fichiers app-defaults existant pour BestTextEditor qui ne figurent pas dans le bureau contiennent des ressources pour les polices d'interface et les couleurs de premier plan et d'arrière-plan.
Un volume d'aide en ligne pour BestTextEditor a été créé à l'aide du kit du développeur du bureau CDE. Lorsqu'il a été élaboré, ce volume a utilisé les fichiers source suivants :
…/BTEHelp.htg …/graphics/BTE1.xwd …/graphics/BTE2.xwd
et généré le fichier /BTEHelp.sdl.
La procédure ci-dessous permet d'enregistrer BestTextEditor.
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.
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.
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
Créez les actions et les types de données de l'application.
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
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% }
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 }
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 }
Créez l'action Ouvrir pour les fichiers *.bte.
ACTION Ouvrir { ARG_TYPE BTEDataFile TYPE MAP MAP_ACTION BTEditor }
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
Créez l'action Ouvrir pour les fichiers *.tpl :
ACTION Ouvrir { ARG_TYPE BTETemplateFile TYPE MAP MAP_ACTION BTEditor }
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é.
Placez les fichiers d'aide dans le module d'enregistrement.
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
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. }
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
Créez le groupe d'applications.
S'il n'existe pas, créez le répertoire suivant :
/desktop_approots/BTE/dt/appconfig/appmanager/C/BestTextEditor
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 }
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.
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.
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.
Enregistrez l'application.
Dans une fenêtre d'émulateur de terminal :