File Type $CA (202)
All Auxiliary Types Reserved
Full Name: Finder Icons File
Short Name: Icons
Written by Matt Deatherage (July 1989)
Files of this type and auxiliary type contain icons.
The Apple IIGS Finder keeps the icons it uses in files of type $CA. The
Finder searches for these files in a directory named Icons on each volume
mounted. Each icon contains information not only describing the icon and its
mask (both regular and "small icon" sizes), but also information to match the
icon to files from their file type, auxiliary type, and filename.
The Finder first attempts to load the file Finder.Icons from the Icons
directory on the boot disk, stopping with a fatal error if it is not present
(this file contains icons for devices as well as the icon to match files with
no other icon). It then loads other icon files from that directory, and then
from other disks.
The format of icon files is as follows:
- +000 iBlkNext: Long
- When loaded by the Finder, this is the
handle to the next icon file (a linked list terminated by zero). On disk,
this field should be zero.
- +004 iBlkID: Word
- ID number of this type of icon file. This
field must be $0001 for the Finder to recognize the icon file.
- +006 iBlkPath: Long
- When loaded by the Finder, this is the handle
to the pathname of this icon file. On disk, this field should be zero.
- +010 iBlkName: 16 Bytes
- A 16-byte String of the name of the
icon file.
- +026 iBlkIcons: IconData
- A list of Icon Data records.
The format of Icon Data records is as follows:
- +000 iDataLen: Word
The length of this Icon Data record. A value
of zero in this field terminates the list of Icon Data records.
- +002 iDataBoss: 64 Bytes
The pathname of the application that owns
this icon. If this String has non-zero length, and the file this icon is
associated with is a document (not an application, folder, device, or
trash can), the Finder attempts to launch a file with this pathname when
this icon is opened or printed. This string should be empty for
non-documents. This is a full pathname, and most developers creating
icons will wish to set this to the full pathname of the application on the
shipping disk.
- +066 iDataName: 16 Bytes
- A 16-byte String containing a file
name. Files on disk must match the specification of this string or this
icon will not be displayed for the files. The asterisk (*) serves as a
wildcard character. For example, the string *.ASM matches all filenames
ending with the characters .ASM.
- +082 iDatatype: Word
- File type associated with this icon.
Files on disk must have this file type for this icon to be displayed. A
file type of $0000 in this field matches any file type on disk. As an
example, an application icon would want to have the filename of the
application in the iDataName field and the file type $00B3 (GS/OS
Application) in this field. Without the file type specification, the icon
would show up for any file with the application's file name, including a
folder on a hard disk in which the user has placed the application.
- +084 iDataAux: Word
- Auxiliary type associated with this icon.
Similar to the file type field, a value of $0000 here matches any
auxiliary type on disk.
- +086 iDataBig: Icon
- The normal size icon image data.
- iDataSmall: Icon
- The small size icon image data.
The format of Icon records is the same as that listed in the QuickDraw II
Auxiliary chapter of the Apple IIGS Toolbox Reference Manual. Previous icon
structure documentation stated the iconType field of the Icon record (also
known as the imType field) had to be zero. This is no longer true; the Finder
respects color icons (bit 15 of iconType set) by not coloring the icon in
funny ways, even if the user asks for it. The Finder still does this if bit
15 of iconType says the icon is a black-and-white icon.
Further Reference
- Apple IIGS Toolbox Reference, Volume 2
- Apple IIGS Icon Editor
This and all of the other Apple II Technical Notes have been converted
to HTML by Aaron Heiss as a public service to the Apple II community, with
permission by Apple Computer, Inc. Any and all trademarks, registered and
otherwise, are properties of their owners.