# script : plusieurs commande et annulation.



## Link1993 (15 Janvier 2011)

bonjour, alors voila, j'ai fait un applescript pour afficher les fichiers cacher... mais voila,
j'ai deux problemes... le premier, est simplement que je ne sais pas comment faire un bouton annuler (sachant que j'ai une commande apres faisant redemarrer le finder apres le shell script...)

Enfin, et c'est surtout ca le principale (qui devrait du coup resoudre le probleme d'annulation...) est comment faire suivre plusieurs commandes apres une exception ? parce que mettre then apres l'exception, c'est bien, mais on ne peux qu'en mettre un ... là, il passe directement a la suite, qui l'a pas d'exception...

voila a quoi ca ressemble actuellement pour la partie shell script


```
try
	if the bouton is "Non" then do shell script "defaults write com.apple.finder AppleShowAllFiles 0"
	tell application "Finder" to quit
	if the bouton is "Oui" then do shell script "defaults write com.apple.finder AppleShowAllFiles 1"
	tell application "Finder" to quit
end try
tell application "Finder" to launch
```

Avec ca, je voudrai du coup, mettre quit et launch juste au moment de l'exception.

ps : un truc du genre 
	
	



```
relaunch application "Finder"
```
, ca existe ?? 
ca me permettra d'economiser 2 ligne ! 

---------- Nouveau message ajouté à 17h53 ---------- Le message précédent a été envoyé à 17h39 ----------

bon, en fait, j'ai refait une recherche sur google, mais avec un autre mots clef...

j'ai du coup tout modifier, et ca marche, sauf une chose, quand je choisis non, il ne redemarre pas le finder apres l'avoire quitté...


```
if the bouton is "Non" then
	do shell script "defaults write com.apple.finder AppleShowAllFiles 0"
	tell application "Finder" to quit
	launch application "Finder"
else if the bouton is "Oui" then
	do shell script "defaults write com.apple.finder AppleShowAllFiles 1"
	tell application "Finder" to quit
	launch application "Finder"
end if
```
j'ai du  aussi passer de tell application "finder" to launch a launch application "Finder" sinon, il ne faisait carrement plus rien ... (alors qu'avant, c'etait l'inverse, l'autre marchais mais pas cette commande la...)

Je ne comprend pas pourquoi... quelqu'un peu m'expliquer ??


----------



## Anonyme (15 Janvier 2011)

Bonjour,

Le problème est que tu quittes et relance le *Finder*  dans un temps de moins dun dixième de seconde, donc ça marche un certain temps et d'autre non c'est un hasard, un delay va régler le problème

Si tu veux moins de lignes :
	
	



```
quit application "Finder"
do shell script "defaults write com.apple.finder AppleShowAllFiles " & ((bouton is "Oui") as integer)
delay 2
launch application "Finder"
```

*((bouton is "Oui") as integer)* va donner une valeur de 1 si c'est *Oui* et 0 si c'est faux, parce que convertir un booléen  en nombre donnera 1 ou 0


----------



## Link1993 (16 Janvier 2011)

j'ai donc rajouter un delaie d'attente (j'ai mis 1 pour que ca soit plus court, et ca marche   )

par contre, je n'ai pas eu le temps d'essayer ton truc : je n'ai actuellement pas tellement le temps pour faire des essaies... 

---------- Nouveau message ajouté à 17h50 ---------- Le message précédent a été envoyé à 17h45 ----------




Mac_Jac a dit:


> *((bouton is "Oui") as integer)* va donner une valeur de 1 si c'est *Oui* et 0 si c'est faux, parce que convertir un booléen  en nombre donnera 1 ou 0



Par contre, as integer, que veut il dire, et que va il faire, le convertir ??

Comment ca marche du coup ?? (juste par curiositer :rateau: )

Un booléen ... j'ai une petite idée de ce que c'est, mais si tu pouvait m'eclaircir ma lanterne, ca serai le must 


en fait, je n'ai qu'en connaissance de programmation, que le texas instrument, qui marche a peux pret pareille... sauf qu'il y a les LBl , en quelque sorte, des "marque page" et tout le programme d'appuie dessus (les menus entre autre) et c'est ca qui me desoriente entre autre:s


----------



## Anonyme (17 Janvier 2011)

Bonjour,



Link1993 a dit:


> Par contre, as integer, que veut il dire, et que va il faire, le convertir ??
> 
> Comment ca marche du coup ?? (juste par curiositer :rateau: )
> 
> Un booléen ... j'ai une petite idée de ce que c'est, mais si tu pouvait m'eclaircir ma lanterne, ca serai le must


Un booléen c'est : vrai ou faux, ( true et false) en AppleScript
Cette expression *(bouton is "Oui") * est un booléen
*(bouton is "Oui") as integer* convertira le booléen en nombre, integer ça veut dire un nombre entier. 

Si cette expression *(bouton is "Oui")*  est vrai  le nombre sera 1, s'il est faux le nombre sera 0


----------



## tatouille (17 Janvier 2011)

Link1993 a dit:


> Un booléen ... j'ai une petite idée de ce que c'est, mais si tu pouvait m'eclaircir ma lanterne, ca serai le must



http://fr.wikipedia.org/wiki/George_Boole

tu devrais penser a te suicider ca aiderait grandement l'espece humaine et j'espere que tu ne t'es point reproduit parce que dans ce cas il faut aussi eliminer la descendance puisque le mal a deja ete fait au niveau de l'ascendance.

http://fr.wikipedia.org/wiki/Alg%C3%A8bre_de_Boole_%28logique%29

conclusion il faut avoir de grave disfonctionnement genetique pour avoir une petite idee de ce qu'est un boolean


----------

