Personnalisation<indexterm><primary>Tableau de bord</primary><secondary>personnalisation</secondary></indexterm> du Tableau de bord Les utilisateurs peuvent personnaliser le Tableau de bord à l'aide des menus instantanés et des objets de commande d'installation d'icônes des panneaux secondaires. Le présent chapitre décrit la création et la modification des fichiers de configuration en vue d'une personnalisation du Tableau de bord. Informations connexes Pour plus de détails sur la configuration et les objets de commande du Tableau de bord, reportez-vous à la page de manuel dtfpfile(4X). Pour plus de détails sur le Gestionnaire de l'espace de travail, reportez-vous aux pages de manueldtwm(1) et dtwmrc(4). Fichiers de configuration du Tableau de bord<indexterm> <primary>Fichiers</primary><secondary>de configuration</secondary><tertiary>Tableau de bord</tertiary></indexterm><indexterm><primary>Tableau de bord</primary><secondary>fichiers de configuration</secondary></indexterm> Le Tableau de bord est défini dans une base de données de fichiers de configuration. Ces fichiers permettent de personnaliser le Tableau de bord. Certains changements ne peuvent être effectués que par la modification d'un fichier de configuration, et notamment: l'ajout d'un nouvel emplacement d'objet de commande dans le panneau principal l'ajout de types d'objets de commande particuliers, tels que des fenêtres clientes la modification de certains comportements par défaut, par exemple l'activation des objets de commande du Tableau de bord par simple ou double clic Ces fichiers de configuration peuvent être personnels, répartis sur le système ou éloignés. La souplesse de configuration est de ce fait maximale. Le Tableau de bord est créé et géré par le Gestionnaire de l'espace de travail. Fichier de configuration du Tableau de bord par défaut Le Tableau de bord par défaut est défini dans le fichier de configuration /usr/dt/appconfig/types/langue/dtwm.fp. Fichierdtwm.fp Ce fichier ne doit pas être modifié. Chemin de recherche des fichiers de configuration du Tableau de bord<indexterm> <primary>Chemin de recherche</primary><secondary>définitions du Tableau de bord</secondary></indexterm><indexterm><primary>Tableau de bord</primary> <secondary>chemin de recherche</secondary></indexterm> La définition du Tableau de bord peut être répartie dans plusieurs fichiers, locaux ou éloignés. Tableau de bordconvention d'appellation des fichiersLes fichiers utilisés pour définir le Tableau de bord doivent répondre aux conditions suivantes: Le nom du fichier doit se terminer par .fp; par exemple, mail.fp. Le fichier doit se trouver sur le chemin de recherche de la base de données d'actions. Le chemin de recherche de la base de données d'actions par défaut comprend les trois répertoires indiqués ci-dessous (par ordre de recherche): Rép_Personnel/.dt/types Personnalisations de niveau utilisateur. /etc/dt/appconfig/types/langue Personnalisations de niveau système. /usr/dt/appconfig/types/langue Objets de commande et panneau intégrés. Un répertoire supplémentaire,Répertoirefp_dynamicTableau de bordpersonnalisations dynamiques Rép_Personnel/.dt/types/fp_dynamic, est utilisé pour les personnalisations effectuées à partir de l'interface utilisateur. Il ne doit pas être utilisé dans le cadre de personnalisations manuelles. Le chemin de recherche de la base de données peut contenir des répertoires ajoutés lors de la configuration réseau du système. Des emplacements à distance sont ajoutés lorsque le système est configuré pour accéder à un serveur d'applications. Pour plus de détails, reportez-vous à la section . Règles de priorité dans la structure du Tableau de bord<indexterm><primary>Tableau de bord</primary><secondary>priorité de structure</secondary></indexterm><indexterm><primary>Priorité</primary></indexterm><indexterm><primary></primary><secondary>structure du Tableau de bord</secondary></indexterm> La structure du Tableau de bord est définie par l'ensemble des fichiers de configuration résidant sur le chemin de recherche de la base de données d'actions. En cas de conflit entre les composants d'une définition, les règles de priorité déterminent la définition utilisée. Il existe deux cas de conflit: lorsque les composants partagent le même nom d'objet de commande et les mêmes valeurs pour CONTAINER_NAME et CONTAINER_TYPE lorsque les composants doivent théoriquement occuper le même emplacement (différents noms mais valeurs de CONTAINER_NAME, CONTAINER_TYPE et POSITION_HINTS identiques. Le Tableau de bord fait appel aux règles de priorité suivantes: Dans le premier cas (même nom d'objet, même nom et même type de conteneur), c'est le premier composant lu qui est utilisé. Par exemple, si un objet de commande de niveau système et un objet de commande intégré contiennent tous deux les zones suivantes (et s'ils diffèrent par ailleurs): CONTROL TextEditor { CONTAINER_TYPE BOX CONTAINER_NAME Top … } alors l'objet de commande de niveau système est prioritaire. Dans le second cas, l'ordre de lecture détermine leur position respective. Par exemple, si un utilisateur crée un nouvel objet de commande personnel pour le panneau principal, (CONTAINER_TYPE BOX et CONTAINER_NAME Top) et lui affecte le paramètre POSITION_HINTS 5, l'objet de commande intégré et tous les autres objets de commande sont décalés d'une position vers la droite. Si vous modifiez un objet de commande en en créant une version de niveau système ou personnel, la nouvelle définition doit comporter le même nom d'objet de commande et les mêmes paramètres CONTAINER_NAME, et CONTAINER_TYPE. Si tel n'est pas le cas, le nouvel objet de commande s'ajoutera à celui qui existe déjà. <indexterm><primary>Tableau de bord</primary><secondary>personnalisations dynamiques</secondary></indexterm>Fichiers du Tableau de bord créés dynamiquement Lorsqu'un utilisateur procède à la personnalisation du Tableau de bord à l'aide de la commande Installer une icône et des menus instantanés, les fichiers sont écrits dans le répertoire Rép_Personnel/.dt/types/fp_dynamic. Le Tableau de bord crée un fichier supplémentaire, Fichierdtwmfp.session Rép_Personnel/.dt/sessions/dtwmfp.session, utilisé pour enregistrer et rétablir l'état du Tableau de bord personnalisé pour chaque session. Gestion des personnalisations effectuées à l'aide de l'interface utilisateur Les utilisateurs peuvent personnaliser le Tableau de bord à l'aide des menus instantanés et des objets de commande d'installation d'icônes. La présente section explique comment: empêcher certaines personnalisations des utilisateurs. Vous pouvez par exemple rendre la suppression d'un objet de commande impossible annuler certaines personnalisations des utilisateurs. Il peut s'avérer nécessaire, par exemple, de rétablir un objet de commande supprimé par erreur Prévention des personnalisations utilisateur<indexterm><primary>Tableau de bord</primary><secondary>contrôle des personnalisations utilisateur</secondary></indexterm><indexterm><primary>Tableau de bord</primary><secondary>contrôle</secondary></indexterm> Si l'objet de commande est intégré, copiez sa définition du fichier /usr/dt/appconfig/types/langue/dtwm.fp vers le fichier /etc/dt/appconfig/types/langue/nom.fp. Ajoutez la ligne suivante à la définition de l'objet de commande: LOCKED True Rétablissement du Tableasu de bord modifié, d'un contrôle supprimé ou du panneau secondaire<indexterm><primary>Panneau secondaire</primary><secondary>rétablisement</secondary></indexterm><indexterm> <primary>Objet de commande</primary><secondary>rétablissement</secondary> </indexterm> PourRétablissement du Tableau de bord annuler toutes les personnalisations du Tableau de bord et le rétablir par défaut, utilisez l'action Rétablir tableau de bord dans le groupe d'applications Outils_Bureau.Objet de commandeverrouillage ZoneLOCKED Toutes les personnalisations effectuées par l';utilisateur à l'aide des menus déroulants du tableau de bord sont annulées. Pour rétablir un contrôle individuel qui a été supprimé, procédez de la manière suivante: Dans le répertoire Rép_Personnel/.dt/types/fp_dynamic, supprimez le fichier créé lors de la suppression de l'objet de commande par l'utilisateur. L'objet de commande portera alors le même nom que l'objet d'origine supprimé. Par exemple, si un utilisateur a supprimé l'objet de commande Editeur d'icônes, un fichier du répertoire fp_dynamic contiendra: CONTROL IconEditor { … DELETE True } ZoneDELETE Lorsqu'un utilisateur supprime un panneau secondaire, un fichier dynamique distinct est créé pour ce dernier et pour chacun de ses objets de commande. For related information, see . Organisation de la définition du Tableau de bord<indexterm><primary>Tableau de bord</primary><secondary>organisation de la définition</secondary></indexterm> Le Tableau de bord est élaboré à partir de l'ensemble des définitions de ses composants. La syntaxe requise pour chaque composant définit l'emplacement de ce dernier dans le Tableau de bord ainsi que sa présentation et son comportement. Composants du Tableau de bord<indexterm><primary>Tableau de bord</primary><secondary>composants</secondary></indexterm>
Composants du Tableau de bord
Le Tableau de bord se compose de la manière suivante: Le Définition PANNEAUPANNEAU (PANEL) est le conteneur supérieur, ou père, de l'ensemble du Tableau de bord. Le PANNEAU est le conteneur d'une ou plusieurs BOITES(BOX). Une Définition BOITEBOITE est le conteneur d'un ou plusieurs OBJETS DE COMMANDE(CONTROL). Il existe deux types de conteneurs: Un Définition PANNEAU SECONDAIREPANNEAU SECONDAIRE(SUBPANEL) est associé à un objet de commande donné (l'objet de commande est le conteneur du panneau secondaire). Les panneaux secondaires “glissent” de l'objet de commande auquel ils sont associés. LeSélecteur d'espace de travaildéfinition SELECTEUR(SWITCH) contient les boutons permettant de changer d'espace de travail ainsi que des objets de commande supplémentaires.
Syntaxe générale de la définition du Tableau de bord<indexterm><primary>Tableau de bord</primary><secondary>syntaxe</secondary></indexterm> Chacun des composants du Tableau de bord est défini séparémént à l'aide la syntaxe: COMPONENT nom { KEYWORD valeur KEYWORD valeur … } Certains mots clés sont requis, d'autres sont facultatifs. Pour plus de détails, reportez-vous à la page de manuel dtfpfile(4X). <indexterm><primary>Définition</primary><secondary>PANNEAU</secondary> </indexterm>Définition du PANNEAU Le PANNEAU est le composant supérieur. Sa définition indique: le nom du Tableau de bord des zones décrivant le comportement et la présentation générale du Tableau de bord PANEL nom_tableau_bord { KEYWORD valeur KEYWORD valeur … } nom_tableau_bord est le nom unique du Tableau de bord. Le nom par défaut est “FrontPanel”. <indexterm><primary>Définition</primary><secondary>BOÎTE</secondary></indexterm><indexterm><primary></primary><secondary>syntaxe</secondary></indexterm>Définition d'une BOITE La définition d'une BOITE indique: le nom de la BOITE le PANNEAU dans lequel elle se trouve ( ZoneCONTAINER_NAMECONTAINER_NAME ) l'emplacement de la boîte dans le PANNEAU (POSITION_HINTS) les zones décrivant la présentation et le comportement s'appliquant à l'ensemble de la boîte BOX nom_boîte { CONTAINER_NAME nom_tableau_bord POSITION_HINTS emplacement KEYWORD valeur KEYWORD valeur … } <indexterm><primary>Définition</primary><secondary>OBJET DE COMMANDE</secondary><tertiary>syntaxe</tertiary></indexterm>Définition d'un OBJET DE COMMANDE La définition d'un OBJET DE COMMANDE indique : le nom de l'OBJET DE COMMANDE; si ce dernier se trouve dans une boîte, un panneau secondaire ou un sélecteur (ZoneCONTAINER_TYPECONTAINER_TYPE) la boîte, le panneau secondaire ou le sélecteur qui contient l'objet de commande (Zone CONTAINER_NAMECONTAINER_NAME) L'emplacement de l'OBJET DE COMMANDE dans la BOITE (POSITION_HINTS) les zones décrivant la présentation et le comportement de l'objet de commande. CONTROL nom_objet_commande { CONTAINER_TYPE BOITE ou PANNEAU SECONDAIRE ou SELECTEUR CONTAINER_NAME nom_boîte ou nom_panneau_secondaire ou nom_sélecteur TYPE type_objet_commande POSITION_HINTS emplacement KEYWORD valeur KEYWORD valeur … } Panneau secondairedéfinitionPanneau secondaire syntaxe <indexterm><primary>Panneau secondaire</primary><secondary>syntaxe</secondary></indexterm>Définition du PANNEAU SECONDAIRE La définition d'un PANNEAU SECONDAIRE indique : le nom du PANNEAU SECONDAIRE le nom de l'objet de commande auquel il est associé Panneau secondaireconteneur ( ZoneCONTAINER_NAMECONTAINER_NAME ) les zones décrivant l'apparence et le comportement du panneau secondaire. PANNEAU SECONDAIRE nom_panneau_secondaire { CONTAINER_NAME nom_objet_commande KEYWORD valeur KEYWORD valeur … } <indexterm><primary>Définition</primary><secondary>SELECTEUR</secondary></indexterm><indexterm><primary>Sélecteur d'espace de travail</primary></indexterm><indexterm><primary>syntaxe de définition</primary> </indexterm>Définition d'un SELECTEUR La définition du SELECTEUR indique: le nom du SELECTEUR la BOITE dans laquelle se trouve le SELECTEUR (ZoneCONTAINER_NAMECONTAINER_NAME) l'emplacement du SELECTEUR dans la BOITE (POSITION_HINTS) les zones décrivant l'apparence et le comportement du SÉLECTEUR SWITCH nom_sélecteur { CONTAINER_NAME nom_boîte POSITION_HINTS emplacement KEYWORD valeur KEYWORD valeur … }
Modification du panneau principal<indexterm><primary>Tableau de bord</primary><secondary>modification</secondary></indexterm> Le panneau principal correspond à la fenêtre du Tableau de bord sans les panneaux secondaires.
Conteneurs du panneau principal
Vous pouvez effectuer les modifications suivantes: ajout ou retrait d'objets de commande interversion d'objets de commande Ajout d'un objet de commande au panneau principal<indexterm> <primary>Objet de commande</primary><secondary>ajout au panneau principal</secondary></indexterm> Créez un fichier de configuration du Tableau de bord : appliqué au système: /etc/dt/appconfig/types/langue/*.fp personnel: Rép_Personnel/.dt/types/*.fp Définissez l'objet de commande du fichier. Indiquez le conteneur de l'objet de commande dans les zones CONTAINER_NAME et CONTAINER_TYPE: CONTAINER_NAME Top CONTAINER_TYPE BOX Utilisez POSITION_HINTS pour spécifier l'emplacement horizontal de l'objet de commande. Les personnalisations étant prioritaires sur les objets de commande intégrés, le nouvel objet de commande va décaler l'objet de commande existant d'une position vers la droite. Sauvegardez le fichier de configuration. Créez une icône pour l'objet de commande du Tableau de bord. Reportez-vous à la section . Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Par exemple, la définition d'objet de commande suivante figurant dans le fichier /etc/dt/appconfig/types/langue/audio.fp insère l'objet d'une application audio entre ceux de l'Horloge et de l'Agenda. CONTROL AudioApplication { TYPE icon CONTAINER_NAME Top CONTAINER_TYPE BOX ICON AudioApp POSITION_HINTS 2 PUSH_ACTION StartAudioApplication PUSH_RECALL true } Suppression d'un objet de commande<indexterm> <primary>Objet de commande</primary><secondary>suppression</secondary></indexterm> Créez un fichier de configuration du Tableau de bord. appliqué au système: /etc/dt/appconfig/types/langue/nom.fp personnel: Rép_Personnel/.dt/types/nom.fp Copiez la définition de l'objet de commande à supprimer dans le nouveau fichier. S'il s'agit d'un objet de commande intégré, sa définition se trouve dans /usr/dt/appconfig/types/langue/dtwm.fp. Il n'est pas nécessaire de copier la totalité de la définition. Toutefois, le segment copié doit contenir les zones CONTAINER_NAME et CONTAINER_TYPE. Ajoutez la zone DELETE à la définition : DELETE True Enregistrez le fichier de configuration. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Par exemple, la définition d'objet de commande suivante figurant dans le fichier /etc/dt/appconfig/types/language/TrashCan.fp supprime l'objet de commande de la Corbeille du Tableau de bord. CONTROL Trash { CONTAINER_NAME Top CONTAINER_TYPE BOX DELETE True } Modification d'un objet de commande<indexterm><primary>Objet de commande</primary><secondary>modification</secondary></indexterm> Utilisez cette procédure pour modifier la définition d'un objet de commande, par exemple pour changer l'image de son icône. Copiez la totalité de la définition de l'objet de commande du fichier /usr/dt/appconfig/types/langue/dtwm.fp vers: appliqué au système: /etc/dt/appconfig/types/langue/nom.fp personnel: Rép_Personnel/.dt/types/nom.fp Modifiez la zone souhaitée. Vous pouvez également ajouter des zones supplémentaires. Enregistrez le fichier. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Interversion d'objets de commande<indexterm><primary>Objet de commande</primary><secondary>interversion</secondary></indexterm> Copiez les définitions des objets à déplacer de /usr/dt/appconfig/types/langue/dtwm.fp vers: appliqué au système: /etc/dt/appconfig/types/langue/nom.fp personnel: Rép_Personnel/.dt/types/nom.fp Vous devez copier la totalité de la définition de chacun des objets à déplacer. Intervertissez les valeurs des zones ZonePOSITION_HINTSPOSITION_HINTS des définitions des objets de commande. Enregistrez le fichier. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Par exemple, les définitions suivantes figurant dans un fichier /etc/dt/appconfig/types/C/MailInfo.fp intervertissent les objets de commande Courrier et Gestionnaire d'information et les verrouillent, empêchant ainsi toute tentative de modification personnelle. CONTROL Mail { POSITION_HINTS 12 LOCKED True …reste de la définition de l'objet de commande } CONTROL Help { POSITION_HINTS 5 LOCKED True …reste de la définition de l'objet de commande } Remplacement d'objet de commande du Tableau de bord<indexterm><primary>Objet de commande</primary><secondary>remplacement</secondary></indexterm> Créez une autre définition d'objet de commande avec: le même nom_objet_commande la même valeur de zoneCONTAINER_NAME ZoneCONTAINER_NAME Par exemple, les deux objets de commande suivants sont définis dans deux fichiers de configuration. Ils partagent les mêmes noms d'objet et de conteneur et sont par conséquent considérés comme identiques. Définition dans /etc/dt/appconfig/types/C/SysControls.fp: Control ImportantApplication ( CONTAINER_NAME Top CONTAINER_TYPE BOX POSITION_HINTS 2 … Définition dans Rép_Personnel/.dt/types/MyControls.fp: Control ImportantApplication { CONTAINER_NAME Top CONTAINER_TYPE BOX POSITION_HINTS 6 … } L'objet de commande personnel étant prioritaire, il sera affecté à l'emplacement 6. Spécification de l'icône utilisée par un objet de commande<indexterm><primary>Objet de commande</primary><secondary>apparence</secondary></indexterm><indexterm><primary>Objet de commande</primary> <secondary>icône</secondary></indexterm><indexterm><primary>Icônes</primary><secondary>Tableau de bord</secondary></indexterm> La zone ZoneICON Tableau de bordICON de la définition d'objet de commande définit l'image de l'icône utilisée pour l'objet de commande. La valeur de la zone ICON peut désigner les éléments ci-dessous. Un nom de fichier de base. Le nom de fichier de base est le nom du fichier contenant l'image de l'icône moins les suffixes de la taille (m et t) et du type d'image (bm et pm). Par exemple, si des fichiers s'appellent Jeu.l.pm et Jeu.m.pm, utilisez Jeu. Si vous utilisez un nom de fichier de base, les fichiers d'icône doivent être copiés dans un répertoire figurant sur le chemin de recherche d'icône. Icônes personnelles: Rép_Personnel/.dt/icons Icônes appliquées au système: /etc/dt/appconfig/icons/langue Un chemin de recherche du fichier d'icône absolu, comprenant le nom complet du fichier. Utilisez le chemin absolu uniquement si le fichier d'icône ne figure pas sur le chemin de recherche de l'icône. L'icône de la taille dont vous avez besoin dépend de l'emplacement de l'objet de commande: Emplacement Taille requise Panneau principal 48 x 48 pixels ( nom.l.pm ou nom.l.bm) Panneau secondaire 32 x 32 pixels (nom.m.pm ou nom.m.bm) Copiez le fichier d'icône dans l'un des emplacement suivants: icônes personnelles: Rép_Personnel/.dt/icons icônes appliquées au systèm: /etc/dt/appconfig/icons/langue
Création et modification de panneaux secondaires<indexterm> <primary>Panneau secondaire</primary><secondary>création</secondary> </indexterm><indexterm><primary>Panneau secondaire</primary><secondary>modification</secondary></indexterm> Les utilisateurs peuvent créer et modifier des panneaux secondaires à l'aide des menus instantanés du Tableau de bord. Cette section explique la procédure à suivre pour effectuer des personnalisations de niveau système, qui requièrent une modification des fichiers de configuration du Tableau de bord. Un panneau secondaire est “associé” à un objet de commande du panneau principal.
Le conteneur d'un panneau secondaire est l'objet de commande auquel il est associé.
Panneau secondaireassociation au panneau principalLa liaison est établie dans la définition du panneau secondaire. La zone CONTAINER_NAME indique l'objet de commande auquel est associé le panneau secondaire: CONTROL nom_objet_commande { … } SUBPANEL nom_panneau_secondaire { CONTAINER_NAME nom_objet_commande … } Création d'un nouveau panneau secondaire de niveau système<indexterm> <primary>Panneau secondaire</primary><secondary>personnalisation système</secondary></indexterm><indexterm><primary>Panneau secondaire</primary><secondary>nouveau</secondary></indexterm> Localisez le nom_objet_commande de l'objet de commande du panneau principal auquel associer le panneau secondaire. S'il s'agit d'un objet de commande intégré, sa définition se trouve dans /usr/dt/appconfig/types/langue/dtwm.fp. Créez un nouveau fichier /etc/dt/appconfig/types/langue/*.fp. Définissez le panneau secondaire: SUBPANEL nom_panneau_secondaire { CONTAINER_NAME nom_objet_commande TITLE valeur KEYWORD valeur … } Enregistrez le nouveau fichier de configuration. Sélectionnez l'option “Relancer Gestionnaire de l'esp. de travail” du menu Espace de travail. Personnalisation des panneaux secondaires intégrés<indexterm> <primary>Panneau secondaire</primary><secondary>intégré</secondary> </indexterm><indexterm><primary>Panneau secondaire</primary><secondary>personnalisation</secondary></indexterm> Vous pouvez modifier les caractéristiques générales (le titre, par exemple) et le contenu des panneaux secondaires intégrés. Modification des caractéristiques générales d'un panneau secondaire intégré Créez un nouveau fichier de configuration du Tableau de bord: appliqué au système: /etc/dt/appconfig/types/langue/nom.fp personnel: Rép_Personnel/.dt/types/nom.fp Copiez la totalité de la définition par défaut du paramètre SUBPANEL de /usr/dt/appconfig/types/language/dtwm.fp vers le nouveau fichier: SUBPANEL nom_panneau_secondaire { … } Modifiez la définition du panneau secondaire. Enregistrez le nouveau fichier de configuration. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Par exemple, la définition suivante, figurant dans le fichier /users/janice/.dt/types/PerApps.fp, modifie le nom du panneau secondaire Applications personnelles: SUBPANEL PersAppsSubpanel { CONTAINER_NAME TextEditor TITLE Applications de Janice } Ajout d'un objet de commande appliqué au système à un panneau secondaire intégré Créez un fichier de configuration du Tableau de bord /etc/dt/appconfig/types/langue/nom.fp Définissez l'objet de commande appliqué au système dans le fichier. Utilisez les zones CONTAINER_NAME et CONTAINER_TYPE pour spécifier le conteneur de l'objet de commande: CONTROL nom_objet_commande { CONTAINER_NAME nom_panneau_secondaire CONTAINER_TYPE SUBPANEL … } Reportez-vous à la section . Enregistrez le fichier de configuration. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Par exemple, l'objet de commande suivant, défini dans un nouveau fichier /etc/dt/appconfig/types/langue/DigitalClock.fp ajoute l'Horloge numérique (du groupe d'applications Outils_Bureau) au panneau secondaire Applications personnelles pour l'ensemble des utilisateurs. CONTROL DigitalClockControl { TYPE icon CONTAINER_NAME PerAppsSubpanel CONTAINER_TYPE SUBPANEL ICON Dtdgclk PUSH_ACTION DigitalClock PUSH_RECALL True } Retrait d'un objet de commande d'un panneau secondaire Utilisez la même procédure que pour le retrait d'un objet de commande du panneau principal. Reportez-vous à la section . Retrait de l'objet de commande<indexterm><primary>Objet de commande</primary><secondary>installation d'icône</secondary> </indexterm><indexterm><primary>Objet de commande</primary><secondary>retrait</secondary></indexterm> d'installation d'icône Ajoutez la zone suivante à la définition du panneau secondaire: CONTROL_INSTALL False Modification de la fermeture automatique des panneaux secondaires<indexterm> <primary>Panneau secondaire</primary><secondary>modification de la fermeture automatique</secondary></indexterm> La fermeture automatique des panneaux secondaires est activée par défaut lorsque l'utilisateur sélectionne un objet de commande, sauf si l'utilisateur a déplacé ce panneau de son emplacement d'origine. Le Tableau de bord peut être configuré afin que les panneaux secondaires restent ouverts jusqu'à l'intervention de l'utilisateur. Créez un nouveau fichier de configuration du Tableau de bord dans: appliqué au système: /etc/dt/appconfig/types/langue/*.fp personnel: Rép_Personnel/.dt/types/*.fp Copiez la définition par défaut du paramètre PANEL de /usr/dt/appconfig/types/language/dtwm.fp vers le nouveau fichier: PANEL Tableau_bord { … } Ajoutez la zone suivante à la définition du paramètre PANEL: SUBPANEL_UNPOST False Enregistrez le nouveau fichier de configuration. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail.
Définition des objets de commande du Tableau de bord<indexterm><primary>Objet de commande</primary><secondary>définition</secondary></indexterm> L'utilisateur peut créer des objets de commande personnels en faisant glisser des icônes sur les objets de commande d'installation d'icône. Les personnalisations se trouvent ainsi simplifiées mais dépendent étroitement des objets de commande du Tableau de bord. Par exemple, un objet de commande créé à l'aide d'Installer une icône ne peut: générer d'animation afficher de fenêtre cliente modifier sa présentation lors d'un événement (tel que la réception d'un courrier) La présente section décrit la procédure à suivre pour créer manuellement des objets de commande du Tableau de bord. Pour plus de détails sur la syntaxe des objets de commande du Tableau de bord, reportez-vous à la page de manuel dtfpfile(4X). Définition des objets de commande du Tableau de bord La définition d'un objet de commande du Tableau de bord repose sur la structure suivante: CONTROL nom_objet_commande { TYPE type_objet_commande CONTAINER_NAME valeur CONTAINER_TYPE valeur autres zones définissant l'apparence et le comportement } <indexterm><primary>Objet de commande</primary><secondary>types</secondary> </indexterm>Types d'objets de commande La zone ZoneTYPE TYPE de la définition de l'objet de commande sert à spécifier le comportement de base de l'objet de commande. TYPEComportement Objet de commandeiconTableau de bordicon (par défaut). L'objet de commande exécute une action donnée lorsqu'un utilisateur clique dessus ou pose un fichier dessus. Objet de commandeblankblank Paramètre blanc utilisé pour ajuster la disposition des objets de commande. Objet de commandebusybusy Voyant occupé. L'objet de commande clignote (alternance d'images) lorsqu'une action est lancée. Objet de commandeclientclient Fenêtre cliente du Tableau de bord. Objet de commandeclockclock Horloge. Objet de commandedatedate Affiche la date du jour. Objet de commandefilefile Représente un fichier. La sélection de cet objet de commande lance l'exécution de l'action par défaut sur le fichier. Création d'un nouvel objet de commande<indexterm> <primary>Objet de commande</primary><secondary>création</secondary> </indexterm> La présente section décrit les étapes générales de la définition d'un objet de commande et de la création de divers types d'objets. En cas de PUSH_ACTION et/ou DROP_ACTION, créez les définitions de l'action. Il s'agit des actions exécutées lorsque l'utilisateur clique sur l'objet ou pose un fichier dessus. Créez les fichiers image d'icône de l'objet de commande. Pour plus de détails sur les tailles, noms et emplacements des icônes, reportez-vous à la section . Créez un nouveau fichier de configuration du Tableau de bord dans: appliqué au système: /etc/dt/appconfig/types/langue/*.fp personnel: Rép_Personnel/.dt/types/*.fp Ajoutez la définition de l'objet de commande au fichier. Enregistrez le fichier. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Création d'un objet de commande qui exécute une action lors d'un déclic utilisateur Utilisez ces zones pour définir le comportement d'un objet de commande. TYPE: configuré sur icon ZonePUSH_ACTIONPUSH_ACTION: spécifie le nom de l'action à exécuter. Par exemple, l'objet de commande suivant, qui sera intégré au panneau secondaire Applications personnelles, permet l'exécution d'un jeu: CONTROL Ball { TYPE icon CONTAINER_NAME PersAppsSubpanel CONTAINER_TYPE SUBPANEL ICON ball PUSH_ACTION RunBallGame HELP_STRING "Cet objet de commande lance le jeu Ball." } L'objet de commande sera placé dans l'angle supérieur gauche du sélecteur. Il permet de lancer l'action CutDisp. CONTROL StartCutDisp { TYPE icon CONTAINER_NAME Switch CONTAINER_TYPE SWITCH POSITION_HINTS first ICON cutdisp HELP_STRING "Cet objet de commande lance l'action CutDisp." PUSH_ACTION CutDisp } <indexterm><primary>Objet de commande</primary><secondary>ouverture d'un fichier</secondary></indexterm>Création d'un objet de commande pour l'ouverture d'un fichier Utilisez ces zones pour définir le comportement d'un objet de commande. TYPE: configuré sur file ZoneFILE_NAMEFILE_NAME: indique le chemin du fichier à ouvrir PUSH_ACTION: configuré sur Open Une action Ouvrir doit être définie pour le type de données du fichier. Par exemple, l'objet de commande sera placé sur le côté droit du panneau principal. Il permet de lancer l'Editeur de texte à l'aide du fichier de données /users/ellen/PhoneList.txt. L'action Ouvrir des fichiers de type *.txt fait partie de la base de données d'actions par défaut. CONTROL EditPhoneList { TYPE file FILE_NAME /users/ellen/PhoneList.txt CONTAINER_NAME Top CONTAINER_TYPE BOX POSITION_HINTS last ICON PhoneBook HELP_STRING "Cet objet de commande affiche la liste téléphonique." PUSH_ACTION Open } Création d'un objet de commande qui se comporte comme une zone de pose<indexterm><primary>Zone</primary><secondary>pose</secondary> <tertiary>objet de commande du Tableau de bord</tertiary></indexterm><indexterm> <primary>Tableau de bord</primary><secondary>objet de commande Zone de pose</secondary></indexterm><indexterm><primary>Objet de commande</primary><secondary>zone de pose</secondary></indexterm> Utilisez la zone ZoneDROP_ACTIONDROP_ACTION pour préciser l'action exécutée lorsque l'utilisateur pose un fichier sur l'objet de commande. L'action doit pouvoir accepter un argument de fichier. La définition d'un objet de commande comporte souvent à la fois une zone PUSH_ACTION et une zone DROP_ACTION. La même action peut être utilisée pour l'une ou l'autre. Par exemple, l'objet de commande suivant, figurant dans le panneau secondaire Applications personnelles, exécute le client X xwud, qui exige un argument de fichier. CONTROL Run_xwud { CONTAINER_NAME PerAppsSubpanel CONTAINER_TYPE SUBPANEL POSITION_HINTS 2 ICON XwudImage PUSH_ACTION RunXwud DROP_ACTION RunXwud } Création d'un objet de commande pour le contrôle d'un fichier<indexterm><primary>Objet de commande</primary> <secondary>contrôle</secondary></indexterm> Utilisez ces zones pour définir le comportement d'un objet de commande. TYPE: indique l'une des valeurs suivantes : Objet de commandetype iconicon Permet de définir les paramètres PUSH_ACTION et/ou DROP_ACTION pour l'objet de commande. Objet de commandetype filefile Si vous souhaitez que l'objet de commande, une fois sélectionné, se comporte comme le fichier lorsque vous cliquez deux fois sur l'icône de ce dernier dans le Gestionnaire de fichiers. ICON et ZoneALTERNATE_ICONALTERNATE_ICON : décrit les images utilisées pour indiquer l'état (changé et inchangé) du fichier contrôlé. ZoneMONITOR_TYPEMONITOR_TYPE: décrit les conditions pouvant être à l'origine d'une modification de l'image. Utilisez l'une des valeurs suivantes: Objet de commandecontrô leObjet de commande type mail mail L'apparence de l'objet de commande est modifié lorsque des informations sont ajoutées au fichier. file L'objet de commande est modifié lorsque le fichier spécifié n'est plus vide. FILE_NAMEZoneFILE_NAME: indique le fichier à contrôler. Par exemple, l'objet de commande suivant recherche la présence d'un fichier meetings qui doit être transféré (ftp anonyme) sur votre système. L'objet de commande est placé dans la partie supérieure du panneau secondaire Applications personnelles. CONTROL MonitorCalendar { TYPE file CONTAINER_NAME PersonalApps CONTAINER_TYPE SUBPANEL POSITION_HINTS first FILE_NAME /users/ftp/meetings MONITOR_TYPE file ICON meetingsno ALTERNATE_ICON meetingsyes } Création d'un objet de commande d'une instance (bascule)<indexterm><primary>Objet de commande</primary><secondary>bascule</secondary></indexterm><indexterm><primary>Objet de commande</primary><secondary>instance</secondary></indexterm> Un objet de commande d'une instance vérifie si le processus lancé par la zone PUSH_ACTION est déjà en cours d'exécution. Si tel n'est pas le cas, la fonction de la zone PUSH_ACTION est sollicitée. Si le processus est en cours d'exécution, la fenêtre apparaît en haut de la pile de fenêtres de l'espace de travail courant. Utilisez ces zones pour définir le comportement d'un objet de commande. PUSH_RECALL: configuré sur True. ZoneCLIENT_NAMECLIENT_NAME: indique le nom du client à l'objet de commande. La valeur de la zone CLIENT_NAME doit correspondre à la première chaîne (res_name) de la caractéristique WM_CLASS, dans la fenêtre supérieure de l'application. Pour plus de détails, reportez-vous à la page de manuel xprop(1). PUSH_ACTION: décrit l'action lancée lorsque l'utilisateur clique sur l'objet de commande. Par exemple, l'objet de commande suivant lance une instance d'application dont l'action est MyEditor. CONTROL MyEditor { TYPE icon CONTAINER_NAME Top CONTAINER_TYPE BOX POSITION_HINTS 15 PUSH_RECALL True CLIENT_NAME BestEditor PUSH_ACTION StartMyEditor ICON MyEd } Création d'un objet de commande de fenêtre cliente<indexterm> <primary>Tableau de bord</primary><secondary>client</secondary></indexterm><indexterm> <primary>Client</primary><secondary>fenêtre du Tableau de bord</secondary> </indexterm><indexterm><primary>Objet de commande</primary><secondary>client</secondary></indexterm> L'objet de commande d'une fenêtre cliente est une fenêtre d'application intégrée au Tableau de bord. Par exemple, vous pouvez placer un compteur de chargement du système dans le Tableau de bord en créant un objet de commande xload de fenêtre cliente. Définissez l'objet de commande. Utilisez ces zones pour définir le comportement d'un objet de commande. TYPE: configuré sur client. ZoneCLIENT_NAMECLIENT_NAME: indique le client à lancer. La valeur de la zone CLIENT_NAME doit correspondre à la première chaîne (res_name) de la caractéristique WM_CLASS, dans la fenêtre supérieure de l'application. Pour plus de détails, reportez-vous à la page de manuel xprop(1). ZoneCLIENT_GEOMETRYCLIENT_GEOMETRY: indique, en pixels, la taille requise pour la fenêtre cliente du Tableau de bord. La page de manuel xwininfo(1) explique comment déterminer la taille d'une fenêtre en pixels. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Lancez le client à partir de la ligne de commande d'un émulateur de terminal. Par exemple, l'objet de commande suivant affiche un programme de mesure de la charge processeur de 30 x 20 pixels. CONTROL LoadMeter { TYPE client CONTAINER_NAME Top CONTAINER_TYPE BOX CLIENT_NAME xload CLIENT_GEOMETRY 30x20 } Si le client n'est pas enregistré et rétabli entre les sessions, vous pouvez configurer l'objet de commande afin qu'il lance le client lorsque l'utilisateur clique dessus. Par exemple, l'objet de commande LoadMeter peut être configuré afin de lancer xload en ajoutant la ligne suivante à la définition: PUSH_ACTION StartXload et en créant l'action: ACTION StartXload { WINDOW_TYPE NO_STDIO EXEC_STRING /usr/contrib/bin/X11/xload } Animation d'un objet de commande<indexterm><primary>Objet de commande</primary><secondary>animation</secondary></indexterm><indexterm> <primary>Animation</primary><secondary>Tableau de bord</secondary></indexterm><indexterm> <primary>Tableau de bord</primary><secondary>animation</secondary></indexterm> Vous pouvez définir une séquence d'animation, activée lorsque l'utilisateur sélectionne l'objet de commande ou pose un objet dessus. Pour comporter une séquence d'animation, un objet doit: être de type icon comporter une zone PUSH_ACTION ou une zone DROP_ACTION Précisez la séquence d'animation à l'aide du composant finitionANIMATION ANIMATION: ANIMATION nom_animation { image_icône [délai] image_icône [délai] … } delai représente la durée entre les icônes d'animation, en millisecondes. Ajoutez les zones Zone PUSH_ANIMATIONPUSH_ANIMATION et/ou ZoneDROP_ANIMATIONDROP_ANIMATION à la définition de l'objet de commande. La valeur correspond au nom de la séquence ANIMATION. Par exemple, les lignes suivantes permettent l'animation de l'objet de commande qui lance l'application BestEditor. Le délai entre les icônes est de 300 millisecondes. Il est entendu dans cet exemple que vous avez créé les fichiers d'icône frame1, frame2, etc. CONTROL BestEditor { … PUSH_ANIMATION BestEdAnimation … } ANIMATION BestEdAnimation { frame1 300 frame2 … } Aide sur un objet de commande du Tableau de bord<indexterm><primary>Aide</primary><secondary>Tableau de bord</secondary> </indexterm><indexterm><primary>Tableau de bord</primary><secondary>aide</secondary></indexterm><indexterm><primary>Objet de commande</primary><secondary>aide sur l'élément</secondary></indexterm> L'aide sur un objet de commande peut être obtenue de deux façons. Chaîne d'aide dans la définition de l'objet de commande. La chaîne d'aide s'affiche lorsque l'utilisateur invoque l'aide relative à l'objet de commande; elle ne comporte ni formatage (en-têtes), ni liens. Précisez la chaîne d'aide dans la définition de l'objet de commande: HELP_STRING chaîne_aide ZoneHELP_STRING Indication d'une rubrique d'aide dans un volume d'aide. Une rubrique d'aide comporte des informations exploitant toutes les capacités du système d'aide. Pour créer une rubrique d'aide, vous devez utiliser le kit du développeur du Bureau CDE. Précisez le volume d'aide et l'ID de la rubrique d'aide dans la définition de l'objet de commande:Zone HELP_VOLUMEZone HELP_TOPIC HELP_VOLUME nom_volume_aide HELP_TOPIC id_rubrique Personnalisation du sélecteur d'espace de travail<indexterm><primary>Sélecteur d'espace de travail</primary> <secondary>personnalisation</secondary></indexterm><indexterm><primary>Sélecteur d'espace de travail</primary></indexterm> Le sélecteur d'espace de travail peut être personnalisé en modifiant: le nombre d'espaces de travail la présentation du sélecteur les objets de commande du sélecteur Modification du nombre d'espaces de travail par défaut<indexterm><primary>Espaces de travail</primary><secondary>modification du nombre par défaut</secondary></indexterm><indexterm> <primary>Sélecteur d'espace de travail</primary><secondary>nombre d'espaces de travail</secondary></indexterm> Modifiez la ressource suivante dans le Gestionnaire de l'espace de travail: Dtwm*workspaceCount: n Pour plus de détails, reportez-vous à la section . Modification du nombre de rangs du sélecteur<indexterm><primary>Sélecteur d'espace de travail</primary><secondary>nombre de rangs</secondary></indexterm> Modifiez la zone Zone NUMBER_OF_ROWSNUMBER_OF_ROWS dans la définition SWITCH. Par exemple, la définition suivante est celle d'un sélecteur comportant trois rangs. SWITCH Switch { CONTAINER_NAME nom_boîte NUMBER_OF_ROWS 3 … } Modification ou ajout d'objets de commande dans le sélecteur d'espace de travail<indexterm><primary>Sélecteur d'espace de travail</primary><secondary>ajout d'objets de commande</secondary></indexterm><indexterm> <primary>Objet de commande</primary><secondary>sélecteur d'espace de travail</secondary></indexterm> Créez un fichier de configuration du Tableau de bord à l'aide de la définition de l'objet de commande. Précisez que l'objet de commande doit se trouver à l'intérieur du sélecteur: CONTAINER_NAME Switch CONTAINER_TYPE SWITCH Précisez la position de l'objet de commande dans le sélecteur: POSITION_HINTS n n est un nombre entier. Les positions sont numérotées de gauche à droite et de haut en bas. En ce qui concerne le sélecteur par défaut comportant deux rangs, les positions sont numérotées de 1 à 4. Créez l'icône de l'objet de commande. La taille recommandée est 16x16 pixels. Par exemple, l'objet de commande suivant permet de placer un objet de commande Terminal dans le sélecteur. CONTROL SwitchTerminal { TYPE icon CONTAINER_NAME Switch CONTAINER_TYPE SWITCH POSITION_HINTS 3 ICON Fpterm LABEL Terminal PUSH_ACTION Dtterm HELP_TOPIC FPOnItemTerm HELP_VOLUME FPanel } L'objet de commande utilise une icône intégrée et la rubrique d'aide utilisée par l'objet de commande Terminal dans le panneau secondaire Applications personnelles. Configuration générale du Tableau de bord La syntaxe PANEL du Tableau de bord permet de: modifier l'emplacement du Tableau de bord modifier la présentation de la fenêtre déterminer la présentation et le comportement des objets de commande La description par défaut du paramètre PANEL se trouve dans le fichier /usr/dt/appconfig/types/langue/dtwm.fp. Pour plus d'informations, reportez-vous à la page de manuel dtfpfile(4X). Procédure générale Créez un nouveau fichier de configuration du Tableau de bord dans /etc/dt/appconfig/types/langue ou Rép_Personnel/.dt/types. Copiez la description par défaut du paramètre PANEL de /usr/dt/types/language/dtwm.fp vers le nouveau fichier. Modifiez la description du paramètre PANEL. La nouvelle description du paramètre PANEL est prioritaire sur la description par défaut. Modification de l'emplacement par défaut du Tableau de bord<indexterm><primary>Tableau de bord</primary><secondary>emplacement</secondary></indexterm> Utilisez la zone Zone PANEL_GEOMETRYPANEL_GEOMETRY dans la définition du paramètre PANEL pour indiquer l'emplacement. Par exemple, le panneau suivant se trouve dans l'angle supérieur droit. PANEL SpecialFrontPanel { PANEL_GEOMETRY -1+1 … } Libellé des objets de commande du Panneau principal<indexterm><primary>Libellés</primary><secondary>objets de commande du Tableau de bord</secondary></indexterm><indexterm><primary>Tableau de bord</primary><secondary>libellés des objets de commande</secondary> </indexterm><indexterm><primary>Objet de commande</primary><secondary>libellés</secondary></indexterm> Ajoutez la ligne suivante à la définition du paramètre PANEL: DISPLAY_CONTROL_LABELS True Ajoutez une zone LABEL pour chaque objet de commande. La zone nom_objet_commande est utilisée si aucun paramètre LABEL n'est spécifié. Modification du comportement des objets de commande<indexterm><primary>Objet de commande</primary><secondary>clic/double clic</secondary></indexterm> Utilisez la zone Zone CONTROL_BEHAVIORCONTROL_BEHAVIOR de la définition du paramètre PANEL pour préciser la manière dont l'utilisateur exécute le paramètre PUSH_ACTION de l'objet de commande. Les valeurs de la zone sont : simple_clic L'utilisateur clique sur l'objet de commande pour exécuter le paramètre PUSH_ACTION. double_clic L'utilisateur clique deux fois sur l'objet de commande pour exécuter le paramètre PUSH_ACTION. Création d'un nouveau Tableau de bord<indexterm> <primary>Tableau de bord</primary><secondary>nouveau</secondary></indexterm> Il peut être préférable de créer un nouveau Tableau de bord si vous souhaitez apporter des modifications importantes. Pour éviter tout conflit avec les composants intégrés du Tableau de bord, le nouveau Tableau de bord doit faire appel à de nouveaux noms pour le paramètre PANEL et les autres conteneurs. Créez le composant PANEL du nouveau Tableau de bord. Attribuez-lui un nom unique: PANEL nom_tableau_bord { … } Créez les nouvelles boîtes et les nouveaux objets de commande à l'aide des nouveaux noms de conteneurs. Si vous souhaitez utiliser des composants existants, vous devez copier leurs définitions et modifier la valeur du paramètre CONTAINER_NAME. Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail. Exemple de création d'un Tableau de bord personnel comportant trois rangs<indexterm><primary>Tableau de bord</primary><secondary>ajout de rangs</secondary></indexterm> Dans l'exemple suivant, le Tableau de bord par défaut est modifié. Ses objets de commande sont disposés sur trois rangs. Copiez le fichier /usr/dt/appconfig/types/langue/dtwm.fp dans Rép_Personnel/.dt/types/MyFrontPanel.fp. Ce fichier doit être accessible en écriture. Il s'agit du fichier à modifier pour créer le nouveau Tableau de bord. Modifiez le nom du Tableau de bord: PANEL NewFrontPanel Modifiez le nom de la boîte Top ainsi que celui de son conteneur: BOX NewFrontPanelTop { CONTAINER_NAME NewFrontPanel POSITION_HINTS first … } Ajoutez les définitions de la boîte pour le rang du milieu et le rang du bas: BOX NewFrontPanelMiddle { CONTAINER_NAME NewFrontPanel POSITION_HINTS second } BOX NewFrontPanelBottom { CONTAINER_NAME NewFrontPanel POSITION_HINTS second } Modifiez le paramètre CONTAINER_NAME des objets de commande suivants en NewFrontPanelTop: Horloge Date Personnel Editeur_texte Courrier Modifiez le paramètre CONTAINER_NAME des objets de commande suivants en NewFrontPanelBottom : Imprimante Style Applications Aide Corbeille Modifiez le paramètre CONTAINER_NAME du sélecteur en NewFrontPanelMiddle. Définissez les ressources: Dtwm*frontPanel*name: NewFrontPanel Sélectionnez l'option Relancer Gestionnaire de l'esp. de travail du menu Espace de travail.