tell application "Finder"
set cheminsource to choose folder with prompt "Sélectionnez le dossier contenant les fichiers à exporter en PDF"
set nameList to {"Enregistrer le PDF dans le dossier d'origine du RTD", "Enregistrer le PDF dans un dossier à choisir"}
set choix to (choose from list the nameList with prompt "Sélectionner : " with title "Choix") as string
if choix is "false" then -- Bouton Annuler
else if choix is "Enregistrer le PDF dans le dossier d'origine du RTD" then
set lechoix to 1
set chemincible to ""
else if choix is "Enregistrer le PDF dans un dossier à choisir" then
set lechoix to 2
set chemincible to choose folder with prompt "Sélectionnez le dossier cible"
end if
try
my inspecter(cheminsource, chemincible)
end try
end tell
on inspecter(source, cible)
tell application "Finder"
-- traitement des fichiers :
set les_fichiers to files of source
repeat with chaque_fichier in les_fichiers
-- traitement d'un fichier
tell application "Finder"
set lefichier to chaque_fichier
set nom to name of chaque_fichier -- recupere le nom du fichier
set extens to document file nom in source --recupere l extension du fichier
set lextension to name extension of extens
if lextension = "rtd" then
set sauv to AppleScript's text item delimiters --sauvegarder la variable delimiteur
set AppleScript's text item delimiters to {"."} --récupère la partie avant le dernier "."
set elements to text items of nom
set nomcourt to (items 1 thru -2 of elements) as string
set ancien_nom to nomcourt
set AppleScript's text item delimiters to sauv --restaurer la variable delimiteur
set extension hidden of lefichier to false -- force affichage de l'extension
set lefichier to chaque_fichier as string
set chemin_fichier to container of chaque_fichier
set chemin_fichier to chemin_fichier as string
tell application "RagTime 6.5.2"
activate application "RagTime 6.5.2"
open file lefichier -- ouvre le fichier dans rag time
delay 1
tell application "System Events"
tell process "RagTime"
click menu item "Imprimer…" of menu 1 of menu bar item "Fichier" of menu bar 1
delay 2
click menu button "pdf" of front window
delay 1
click menu item "Enregistrer au format PDF"
delay 1
set value of text field 1 of sheet of window "Imprimer" to ancien_nom & ".pdf"
click button "Enregistrer" of sheet of window "Imprimer"
end tell
end tell
close document nom --ferme le fichier
end tell
set lechemin to ((path to desktop folder) & ancien_nom & ".pdf") as string
if cible is "" then
move lechemin to chemin_fichier
else
move lechemin to cible --chemin_fichier
end if
end if
end tell
end repeat
-- traitement des dossiers :
set les_dossiers to folders of source
repeat with chaque_dossier in les_dossiers
-- traitement d'un dossier
my inspecter(chaque_dossier, cible)
end repeat
end tell
end inspecter
tell application "Finder"
activate
if choix is "false" then
display dialog "opération annulée"
else
(display dialog ("waouou ... Ca y est c'est fait !") buttons {"Salut !"})
end if
end tell