|
BNDL (Bundle) est une ressource établissant le lien entre les applications, les types de documents et les icônes associées à ces types. Ces icônes seront utilisées par le Finder et ces liens seront invoqués lors d'un double-clic ou d'un glisser-déposer sur l'icône d'un document.
|
Tout fichier est caractérisé par un type et un créateur.
- Le Type : |
Il définit le contenu du fichier (APPL est une application, PICT est une image, TEXT est un fichier de texte sans enrichissement typographique...).Chaque application définit un ou plusieurs types qui lui sont propres pour désigner les sortes de documents qu'elle gère. |
- Le Créateur : |
Il désigne l'application qui a créé le fichier. Si le fichier est une application, ce champ représente sa signature. Une signature doit être unique. 2 applications n'ont pas le droit de porter la même signature, sinon le processus ne fonctionnera plus. |
Le Finder peut attribuer une famille d'icônes différente à chaque couple Type-Créateur. La ressource BNDL définit ces associations. Si une application ne possède pas de ressource BNDL, elle n'aura pas d'icône personnalisée et ses documents non plus. Elle héritera alors d'une icône générique aidant à son identification.
Les associations Type-Créateur-Famille d'icônes sont stockés automatiquement dans des fichiers invisibles, gérés par le Finder, et présents sur chaque volume :
- Fichier Desktop, sous système 6 (et antérieur) et sur les disquettes quel que soit le système.
- Fichiers Desktop DB et Desktop DF, sous système 7 et supérieur.
|
Si on apporte des modifications à une ressource BNDL, il faut donc ensuite reconstruire le Bureau (Option + Commande au démarrage).
Le fichier Desktop est composé de ressources, mais les fichiers Desktop DB et DF ne contient qu'un Data Fork.
Il existe toujours autant de ressources de type 'FREF' que de types dans une ressource 'BNDL'.
|
Quelques commentaires :
La famille d'icônes associée au type 'APPL' représente l'icône de l'application.
ResEdit affecte la même icône aux types RSRC et rsrc, car ces 2 types représentent la même chose.
Le type 'ssrc' désigne un fichier modèle (qui n'est pas verrouillé, mais ne doit pas être modifié).
2 fichiers de même type peuvent avoir des icônes différentes si elles ont été créées par 2 applications différentes.
Le type '****' signifie que l'application peut ouvrir tous les types de fichiers (inutile de lui associer des icônes).
Note : Il ne faut pas confondre Type de fichier et Type de ressource. Certains formats sont identiques (TEXT) ou très similaires (PICT) mais dans la plupart des cas, ils n'ont strictement rien à voir.
Quelques types de fichiers répandus ou utilisés par le système :
adev |
Extension réseau |
kfil |
Clavier |
AIFC |
Son (format AIFF-C) |
lttr |
Lettre PowerTalk |
AIFF |
Son (format AIFF) |
LWFN |
Police PostScript |
appe |
Application Tâche de fond seule |
Midi |
Instructions MIDI (QuickTime 2) |
APPL |
Application |
MooV |
Séquence QuickTime |
cbnd |
Outil de connexion |
msam |
Passerelle messagerie PowerTalk |
cdev |
Tableau de bord |
osas |
Script AppleScript |
clpp |
Extrait image (glisser-déposer) |
pdvr |
Pilote d'impression QD GX |
clps |
Extrait son (glisser-déposer) |
pext |
Extension d'impression QD GX |
clpt |
Extrait texte (glisser-déposer) |
PICT |
Image QuickDraw |
csam |
Service répertoire et messagerie |
pref |
Fichier de préférences |
dfil |
Accessoire de bureau |
PRER |
Pilote d'imprimante |
DFIL |
Valise d'accessoires de bureau |
qery |
Fichier de requête |
dsam |
Service de répertoire PowerTalk |
RDEV |
Extension Sélecteur |
edtp |
Edition (données graphiques) |
scri |
Extension pour système d'écriture |
edts |
Edition (données sonores) |
sdev |
Extension Control Strip |
edtt |
Edition (données textuelles) |
sfil |
Son (ressource 'snd') |
fbnd |
Outil de transfert de fichier |
sjob |
Document PDD |
fext |
Extension du Finder |
tbnd |
Outil d'émulation de Terminal |
ffil |
Police de caractères bitmap |
TEXT |
Suite de caractères ASCII |
FFIL |
Valise de polices de caractères |
tfil |
Police TrueType |
help |
Guide Apple |
thng |
Composant (Component Mgr) |
ifil |
Système d'écriture |
ttro |
Texte en lecture seule |
INIT |
Extension Système |
zsys |
Fichier système |
Certains types génériques n'ont pas besoin d'être associé à une famille d'icônes. C'est le cas, par exemple, pour les types ****, fold, disk et ltr*.
Si une application est capable d'ouvrir le type personnel d'une autre application mais pas d'en créer, elle peut citer ce type dans ressource BNDL sans lui associer de famille d'icônes. Toutefois, en présence d'Easy Open, une ressource 'open' fera beaucoup mieux l'affaire.
Lorsqu'une application sait gérer les documents 'modèles', elle distingue leur type par la première lettre du code qui doit être un 's'. Donc, si elle gère les documents TEXT et PICT, elle définira les types sEXT et sICT comme types modèle et leur associera une icône distinctive.
|
Pour assurer l'unicité de la signature d'une application et la définition d'un type donné, signatures et types doivent être enregistrés auprès d'Apple, qui centralise tout dans une base de données unique, à Cupertino.
Une application pourra utiliser comme type de fichier personnel, le même code que sa signature ou le type générique '????' si ses documents ont un format sans intérêt.
|
Les modifications les plus courantes, sont l'édition des icônes ou l'ajout d'icônes en couleurs, si l'application a omis de le faire. Dans ResEdit, un double-clic sur l'icône fait apparaître l'éditeur d'icônes.
Quelques autres particularités intéressantes :
Si un fichier possède une ressource BNDL, le Finder Flag correspondant doit être coché (Menu File / Get info for...) mais si le fichier n'en possède pas, le Finder Flag ne doit pas être coché sous peine de provoquer une belle pagaille dans le Finder.
Une ressource de type exactement égal à la signature du fichier et d'ID 0 doit exister dans le fichier (voir SIGN).
Un fichier ne comporte pas de ressources BNDL sauf cas exceptionnel...