Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
yad_yet_another_dialog [Le 14/07/2018, 11:17]
80.215.113.109 [Configuration]
yad_yet_another_dialog [Le 29/01/2019, 22:35]
zococo [Types de champs de la fenêtre form (formulaire)]
Ligne 84: Ligne 84:
 | Affichage ​              ​|''​%%--text-info%%'' ​     | Affiche le contenu d'un fichier texte     | | Affichage ​              ​|''​%%--text-info%%'' ​     | Affiche le contenu d'un fichier texte     |
 | Affichage ​              ​|''​%%--picture%%'' ​     | Un simple visionneur d'​images ​    | | Affichage ​              ​|''​%%--picture%%'' ​     | Un simple visionneur d'​images ​    |
-| Multiples ​             |''​%%--form%%'' ​  | Affiche une multitude de boîte ​|+| Multiples ​             |''​%%--form%%'' ​  | Affiche une multitude de champs ​|
 | Multiples ​                ​|''​%%--notebook%%'' ​      | Affiche une boîte avec des onglets | | Multiples ​                ​|''​%%--notebook%%'' ​      | Affiche une boîte avec des onglets |
 | Multiple |''​%%--paned%%''​| Affiche une boîte en deux parties| | Multiple |''​%%--paned%%''​| Affiche une boîte en deux parties|
Ligne 94: Ligne 94:
 Les formulaires permettent de décliner les différentes options de yad dans la même fenêtre. Les formulaires permettent de décliner les différentes options de yad dans la même fenêtre.
 Les types de champs de formulaire sont saisis sous la forme  Les types de champs de formulaire sont saisis sous la forme 
---field=LABEL[:​TYPE]+--field="LABEL"[:TYPE]
 Les types de champs sont les suivants : H, RO, NUM, CHK, CB, CBE, CE, FL, SFL, DIR, CDIR, FN, MFL, MDIR, DT, SCL, CLR, BTN, FBTN, LBL, TXT.            || Les types de champs sont les suivants : H, RO, NUM, CHK, CB, CBE, CE, FL, SFL, DIR, CDIR, FN, MFL, MDIR, DT, SCL, CLR, BTN, FBTN, LBL, TXT.            ||
 ^Type de champ^ Utilisation^ ^Type de champ^ Utilisation^
Ligne 120: Ligne 120:
 |TXT            |Entrée texte multiligne. Occupe l’ensemble de la surface du formulaire.| |TXT            |Entrée texte multiligne. Occupe l’ensemble de la surface du formulaire.|
 ===== Exemples ===== ===== Exemples =====
-[[https://​code.google.com/​archive/​p/​yad/​wikis|Quelques exemples sur cette page]]+Avant de vous lancer dans la lecture, notez que vous trouverez de nombreux exemples, simples et complexes avec ces liens : 
 +  * [[http://​smokey01.com/​yad|Apprendre par l'​exemple]] ([[https://​www.dropbox.com/​s/​56k5ta6j52r9inu/​yad.pdf|copie en PDF]]) 
 +  * [[https://​code.google.com/​archive/​p/​yad/​wikis|Applications simples]]
 ====--calendar==== ====--calendar====
 Dans cet exemple le calendrier s'​ouvrira à la date du jour et la sortie sera de format sam./​27/​juil./​2019/​ Dans cet exemple le calendrier s'​ouvrira à la date du jour et la sortie sera de format sam./​27/​juil./​2019/​
Ligne 367: Ligne 369:
 </​code>​ </​code>​
 L'​icone peut-être définie par son chemin complet ou par une icone système (Dans mon exemple "​search"​.). L'​icone peut-être définie par son chemin complet ou par une icone système (Dans mon exemple "​search"​.).
 +
 +===Fermer la fenêtre et lancer une action===
 +Il est possible d'​affecter une action à un bouton yad. 
 +<​code>​
 +yad --form --field "​Bouton 1:btn" --field "​Bouton 2:btn" --field "​Bouton 3:btn" "echo '​bouton n°1 cliqué'"​ "echo '​bouton n°2 cliqué'"​ "echo '​bouton n°3 cliqué'"​
 +</​code>​
 +Dans cet exemple simple, l'​appui sur un bouton déclenche l'​affichage d'un message simple. Il est possible d'​aller un peu plus loin en activant une fonction personnalisée ou un script bash.
 +<​code>​
 +function bonjour () { echo "​Bonjour ""​$USER""​.";​ PidYad=$(pgrep yad); echo "Le pid de Yad est ""​$PidYad";​ }
 +export -f bonjour
 +yad --form --field "​bonjour:​btn"​ "bash -c bonjour"​
 +</​code>​
 +Dans cet autre exemple, on crée une fonction toute simple qui affiche le nom de l'​utilisateur ainsi que le numéro d'​identification du processus affecté à yad. Cette fonction est ensuite appelée par le bouton personnalisé yad.
 +
 +Ce numéro pid (process identification digit) peut être utilisé pour fermer la fenêtre yad si le bouton appelle un script. En effet, comme indiqué ci-dessus, si la sortie du bouton n'est pas numérique, l'​appui sur le bouton ne permet pas de fermer la fenêtre. Avec cette astuce, il est possible de combiner les deux actions. Exemple :
 +<​code>​
 +function ferme_yad () { bonjour ; PidYad=$(pgrep yad); kill -s SIGUSR1 "​$PidYad";​}
 +export -f ferme_yad
 +yad --form --field "​bonjour:​btn"​ "bash -c ferme_yad"​
 +</​code>​
 ====Récupérer les sorties dans les boîtes multiples.==== ====Récupérer les sorties dans les boîtes multiples.====
 Dans les boîtes multiples la sortie standard sera de type champ1|champ2|champ3| où "​|"​ est le séparateur par défaut. Dans les boîtes multiples la sortie standard sera de type champ1|champ2|champ3| où "​|"​ est le séparateur par défaut.
Ligne 403: Ligne 425:
 ===== Voir aussi ===== ===== Voir aussi =====
    
-  * **(en)** [[https://​sourceforge.net/​projects/​yad-dialog|Site officiel ​du logiciel]] +  ​* **(en)** [[http://​manpages.ubuntu.com/​manpages/​wily/​man1/​yad.1.html|Manuel des fonctions]] 
-  * **(en)** [[https://​groups.google.com/​forum/#​!forum/​yad-common|Forum de discution du logiciel. L'​auteur ​participe ​souvent.]] +  * **(en)** [[http://​smokey01.com/​yad/​|Exemples simples de toutes les fonctions de base (Recommandé)]] 
-  * **(en)** [[https://​www.thelinuxrain.com/​articles/​multiple-item-data-entry-with-yad|Exemples ​illustrés pour les formulaires à items multiples]]+  ​* **(en)** [[https://​sourceforge.net/​p/yad-dialog/​wiki/​browse_pages/​|Site officiel ​avec exemples d'​applications]] 
 +  * **(en)** [[https://​groups.google.com/​forum/#​!forum/​yad-common|Forum de discussion. L'​auteur participe.]] 
 +  * **(en)** [[http://​www.thelinuxrain.com/​articles/​the-buttons-of-yad|Exemples sur les boutons]] 
 +  * **(en)** [[http://​www.thelinuxrain.com/​articles/​multiple-item-data-entry-with-yad|Exemples ​sur les items multiples]]
   * **(en)** [[https://​pypi.python.org/​pypi?​name=yad&​version=0.9.3&:​action=display|Ajouter Yad à vos scripts Python (non testé)]]   * **(en)** [[https://​pypi.python.org/​pypi?​name=yad&​version=0.9.3&:​action=display|Ajouter Yad à vos scripts Python (non testé)]]
-  * **(en)** [[https://​www.thelinuxrain.com/​articles/​the-buttons-of-yad|Les boutons avec Yad]] 
-  * **(en)** [[http://​smokey01.com/​yad/​|Bien utile liste détaillée d'​exemples]] 
    
 ---- ----
-//​Contributeurs principaux : [[sergeG75018]].//​+//​Contributeurs principaux : [[sergeG75018]], LukePerp.//
    
 //Basé sur [[http://​manpages.ubuntu.com/​manpages/​wily/​man1/​yad.1.html|« les pages du manuel »]].// //Basé sur [[http://​manpages.ubuntu.com/​manpages/​wily/​man1/​yad.1.html|« les pages du manuel »]].//
  • yad_yet_another_dialog.txt
  • Dernière modification: Le 28/09/2022, 21:04
  • par Amiralgaby