Produit : 4D 2004
Plateforme : Mac OS X ♪
Vous voulez ajouter l'icône de votre application dans le Dock de Mac OS X par programmation et faire en sorte que son nom s'affiche quand l'utilisateur passe la souris sur l'icône.
Nous allons utiliser les commandes UNIX avec la commande 4D LANCER PROCESS EXTERNE :
` ---------------------------------------------------
` Méthode de Jeremy Sullivan
` Créée le 13 mars 2006
` Modifiée par ST le 11 décembre 2006
` ---------------------------------------------------
` Description: ajoute une icône d'une application dans le Dock de Mac OS X
` ---------------------------------------------------
` Paramètres :
` $1 TEXTE - nom de l'application telle qu'elle apparaîtra dans le Dock
` $2 TEXTE - chemin Posix vers l'application .app
` ---------------------------------------------------
`méthode d'appel :
`m_AjoutDock ("Ma Super Application";"/Applications/SuperApp.app")
C_TEXTE($1;$2;$applicationName_t;$applicationPath_t)
C_TEXTE($command_t;$inputStream_t;$outputStream_t;$errorStream_t)
$applicationName_t:=$1 ` nom de mon application dans le Dock
$applicationPath_t:=$2 ` chemin posix
$command_t:="defaults write com.apple.dock persistent-apps -array-add "
$command_t:=$command_t+"'<dict><key>tile-data</key><dict><key>file-data</key><dict><key>_CFURLString</key"+"><string>"
$command_t:=$command_t+$applicationPath_t
$command_t:=$command_t+"</string><key>_CFURLStringType</key><integer>0"+"</integer></dict>"
$command_t:=$command_t+"<key>file-label</key><string>"+$applicationName_t+"</string>"
$command_t:=$command_t+"<key>file-type</key><integer>41</integer></dict>"
$command_t:=$command_t+"<key>tile-type</key><string>file-tile</string></dict>'"
LANCER PROCESS EXTERNE($command_t;$inputStream_t;$outputStream_t;$errorStream_t)
Si ($errorStream_t="") `pas d'erreur
` relancer le Dock
LANCER PROCESS EXTERNE("killall -HUP Dock";$inputStream_t;$outputStream_t;$errorStream_t)
Sinon
ALERTE("Erreur : "+$errorStream_t)
Fin de si
Voir la documentation de la commande 4D LANCER PROCESS EXTERNE
Voir aussi : Add applications to the Dock (via Apple Remote Desktop)



