
Souvenez-vous, le mois dernier, nous avons vu comment modifier les ressources des applications X en rajoutant des lignes dans les fichiers .Xdefaults ou en utilisant le programme xrdb. Nous allons voir ce mois-ci que X est fourni avec des outils permettant de recuperer les noms de ressources de la plupart des applications X mais aussi de les modifier en temps reel.
Le premier programme que nous allons voir se nomme appres, c'est un outil tres pratique si l'on connait le nom de la classe d'un programme. Par exemple, les xterm ont pour nom de classe XTerm, voici comment recuperer les ressources des xterm (assez pratique d'ailleurs) :
bash# appres XTerm *VT100*font5: 9x15 *VT100*font3: 6x10 *VT100*font4: 7x13 *VT100*font2: 5x7 *VT100*font1: nil2 *VT100*font6: 10x20 *tekMenu*vtshow*Label: Show VT Window *tekMenu*tektextsmall*Label: Small Characters *tekMenu*vtmode*Label: Switch to VT Mode *tekMenu*tektextlarge*Label: Large Characters *tekMenu*tekpage*Label: PAGE *tekMenu*tekreset*Label: RESET *tekMenu*tektext2*Label: #2 Size Characters (...)La liste de toutes les ressources disponibles apparait, il sera donc plus facile de modifier telle ou telle ressource.
L'utilitaire viewres sert a visionner tous les widgets de la hierarchie Athena fournie en standard avec le systeme X-Window. On peut regarder tous les types de Widgets et toutes les ressources attachees a ces elements d'interface, l'affichage typique de ce programme est le suivant :

On peut voir un arbre avec la racine (Object) a gauche puis tous les descendants dont Text qui est selectionne (un clicke avec le bouton gauche bien sur !). Pour afficher les ressources de ce widget Text, allez dans le menu show puis selectionnez ressources box et le tour est joue. Cet utilitaire est surtout precieux pour les personnes qui programme avec les Athena widget pour avoir toujours sous les yeux la liste des ressources disponibles pour un widget donne.
Le programme editres reunit a peu pres le meilleur de viewres et appres. A savoir qu'il va nous permettre de recuperer les noms des ressources pour une application donnee mais qu'en plus, on va pouvoir visionner les ressources interactivement comme viewres mais aussi les modifier, des explications s'impose. Tout d'abord, voici a quoi ressemble editres :

Pour obtenir cet affichage, nous avons tout d'abord lance le programme par un simple :
bash# editres &Puis nous avons lance le programme xman dont nous voulons editer les ressources. Pour se faire, allez dans le menu Commands de editres et selectionner la commande get tree. Le pointeur de souris se transforme alors en croix et attend que vous clickiez sur une fentre, clickez donc sur la fenetre de xman, vous obtiendrez la hierarchie ci-dessus.
Par defaut, le programme xman ressemble a ceci :

Supposons que nous voulions modifier la couleur de fond pour un bleu. Selectionnez le widget Form qui est un des fils de Top Box. Form designe toujours un cadre comprenant plusieurs widgets descendants, c'est lui qui represente le pere des boutons Help, Quit et Manual Page de Xman. Apres avoir selectionne ce widget, allez dans le menu Commands et selections Show Ressources Box. Vous allez obtenir l'affichage suivant :

Selectionnez la ressource background et entrez Blue dans le champs Enter Resource Value, ceci fait, mettez la ressource a jour en appuyant sur le bouton Apply, et hop, le tour est joue.
Modifiez ensuite les couleurs de fond du label "Manual Browser" et des boutons Help et Quit avec la couleur darkblue. Selectionnez aussi la couleur blanche pour la couleur du texte.
Si vous bloquez : pour mettre la couleur du fond en darkblue, editez les ressources background des widgets top label, help button et quit button. Pour la couleur du texte, il faut mettre a white la ressource foreground (avant-plan) de ces memes widgets, tous descendants de Form. Vous devez obtenir l'affichage suivant :

C'est plus cool, non. Si vous voulez obtenir les memes ressource la prochaine fois que vous utiliserez X, utilisez la commande save and apply plutot que apply quand vous changez les ressources, vous aurez un .Xdefaults mis a jour automatiquement.
Bien sur, nous avons surtout touche aux couleurs dans nos initiations en donnant des noms de couleurs en toutes lettres. Sachez que les definitions des couleurs se trouvent dans la fichier /etc/X11/rgb.txt. Vous pouvez d'ailleurs donner directement les composantes des couleurs selon la syntaxe RRRRGGGGBBBB en hexadecimal. Pour les fonts, vous pouvez les lister avec la commande xlsfonts mais vous pouvez utiliser des * pour voir toutes les polices en 12 points par exemple par un appel a xlsfonts *12* (Vous listez en fait toutes les fonts comportant 12 dans leur definition). Le programme X interactif xfontsel permet aussi de choisir une police. Nous reviendrons sur ces sujets dans un prochain LINE, surtout si vous nous le demandez :-).
Eh oui, et un gros comme vous pouvez le constater car si ces programmes sont tres attirants, sachez que les applications motif 2.0 ne sont pas compatibles avec le protocole de editres, esperons que cela evolue rapidement ! Utilisez donc ces programmes pour les applications X de base, vous pourrez ainsi personnaliser votre systeme au maximum.