YAD : liste des fonctions
yad --title "Titre de la fenêtre"
yad --window-icon=/home/tux/images/Icones/Icone_fenetre.png
Exemple où seule l'icône de la fenêtre est modifiée.
yad --window-icon=/home/tux/images/Icones/Icone_fenetre.png \ --title="Fenêtre avec icône personnalisée"
Exemple où l'icône et le titre de la fenêtre sont modifiés.
yad --title "fixer la largeur de la fenêtre " \ --width=800
yad --title "fixer la hauteur et la largeur de la fenêtre " \ --width=800 \ --height=300
Positionner la fenêtre sur l'écran
yad --geometry=19800x10800
La taille demandée est de 19800 pixels de largeur sur 10800 pixels de hauteur mais comme mon écran est de résolution bien inférieure yad va adapter la taille de la fenêtre au mieux ! Le principe de yad pour attribuer une taille à une fenêtre est de faire toujours au mieux de l'affichage des éléments que doit contenir la fenêtre. Lorsque l'on demande à yad une taille de fenêtre (largeur, hauteur) ou un positionnement cela ne pourra être qu'un souhait, yad cherche toujours à adapter les souhaits au contraintes physiques de l'écran. Si l'on demande rien à yad au sujet de la taille et du positionnement de la fenêtre, yad adaptera au mieux la tailler de la fenêtre et l'affichera au centre de l'écran.
il y a trois usages de yad –geometry
- yad –geometry=lgxht+dx+dy
- yad –geometry=lgxht
- yad –geometry=+dx+dy
où la taille de la fenêtre
- lg est la largeur souhaitée
- ht est la hauteur souhaitée
et le décalage du coin haut gauche de la fenêtre par rapport au coin haut gauche de l'écran
- +dx est la valeur décalage vers la droite
- +dy est la valeur décalage vers le bas
yad --text="Bonjour à vous"
Ne pas oublier d'adapter l'exemple suivant pour l'image de l'icône…
yad --window-icon=/home/tux/images/Icones/Icone_fenetre.png \ --title="Exemple de texte" \ --text="Bonjour à vous" \ --geometry=+200+200 \ --width=500
Il est possible d'aligner le texte, exemple :
yad --window-icon=/home/tux/images/Icones/Icone_fenetre.png \ --title="Exemple de texte" \ --text="Bonjour à vous" --text-align=center \ --geometry=500x200+200+200
Relancer l'exemple en remplaçant center par une des valeurs left right
Le compte à rebours décompte une durée exprimée en secondes l'exemple de base le plus simple
yad --timeout=3
Exemple simple mais avec un indicateur style sablier…
yad --timeout=10 --timeout-indicator=top \ --text="Bonjour à vous"
Exemple plus “riche” mais simple, n'oublier pas d'adapter le chemin de l'image pour l'icône.
Essayer cet exemple puis recommencer en remplaçant chaque fois top par une des valeurs bottom left right
yad \ --window-icon=/home/tux/Images/Icones/Internet.png \ --title="Compte à rebours" \ --text="Bonjour à vous" \ --geometry=+200+200 \ --width=500 \ --height=300 \ --timeout=10 \ --timeout-indicator=top
Adapter le nom de l'image avant de lancer cet exemple
nom_image="Images/clavier1.gif" titre="$(basename $nom_image)" yad --no-buttons --title="$titre" --image="$nom_image"
Fenêtre au toujours au premier plan
Le paramètre –on-top permet de signifier que la fenêtre sera toujours an premier plan. Reprise de l'exemple d'affichage d'image mais en rajoutant l'option –on-top
nom_image="Images/clavier1.gif" titre="$(basename $nom_image)" yad \ --no-buttons \ --title="$titre" \ --image="$nom_image" \ --on-top
Glisser des éléments dans une fenêtre
Il est parfois utile que la fenêtre reste en premier plan c'est à dire que tant qu'elle n'est pas fermée elle apparaîtra toujours par dessus les autres. Voici un exemple où l'on drague et lâche depuis le gestionnaire de fichiers des fichiers ou dossiers dans cette fenêtre .
yad \ --geometry=400x100+500+100 \ --on-top \ --text="Ouvrez votre gestionnaire de fichiers et glissez les images que vous souhaitez visualiser" \ --no-buttons \ --skip-taskbar \ --dnd \ --cmd echo $1
Autre exemple pour afficher des images, chaque fois que l'on reçoit une image on supprime “file:⁄⁄” de la tête du nom de fichier, on récupère le nom de l'image pour le titre puis on lance une nouvelle instance de yad pour afficher l'image concernée
yad \ --geometry=400x100+500+100 \ --on-top \ --text="Ouvrez votre gestionnaire de fichiers et glissez les fichiers que vous souhaitez visualiser" \ --no-buttons \ --skip-taskbar \ --dnd \ --cmd echo $1 | while read nom_fichier do nom_image=$(echo "$nom_fichier"|sed "s/file:\/\///1") titre=$(basename "$nom_image") yad --no-buttons --title="$titre" --image="$nom_image" & done