![]() |
Icon Control Definition IDs |
Header: ControlDefinitions.h |
enum { kControlIconRefProc = 324, kControlIconRefNoTrackProc = 325 };
Identifies the variant of the icon control ('CDEF' resource ID 20) that supports all standard types of icon-based content. Note that you do not supply content for this control upon its creation with a call to the NewControl function. Rather, after the controls creation you can set or change its content at any time by passing the SetControlData function the kControlIconContentTag control data tag constant and a ControlButtonContentInfo structure containing any of the allowable data types. Supported data types for this icon control variant are specified with the following ControlContentType values: kControlContentIconSuiteRes, kControlContentCIconRes (uses a black-and-white 'ICON' resource if the color resource isnt available), kControlContentIconSuiteHandle, kControlContentCIconHandle, and kControlContentIconRef. Note, too, that if you supply the kControlContentIconRef value, you must first use Icon Services functions to register your resources and generate IconRef values. See the
Identifies the non-tracking variant of the icon control ('CDEF' resource ID 20) that supports all standard types of icon-based content. This control immediately returns kControlIconPart as the part code hit without tracking. Note that you do not supply content for this control upon its creation with a call to the NewControl function. Rather, after the controls creation you can set or change its content at any time by passing the SetControlData function the kControlIconContentTag control data tag constant and a ControlButtonContentInfo structure containing any of the allowable data types. Supported data types for this icon control variant are specified with the following ControlContentType values: kControlContentIconSuiteRes, kControlContentCIconRes (uses a black-and-white 'ICON' resource if the color resource isnt available), kControlContentIconSuiteHandle, kControlContentCIconHandle, and kControlContentIconRef. Note, too, that if you supply the kControlContentIconRef value, you must first use Icon Services functions to register your resources and generate IconRef values. See the
The Mac OS 8.5 Control Manager defines these new control definition IDs.
When creating a control, your application supplies a control definition ID to one of the Control Manager control-creation functions or to the control resource; see 'CNTL'. The control definition ID indicates the type of control to create. A control definition ID is an integer that contains the resource ID of a control definition function in its upper 12 bits and a variation code in its lower 4 bits. A control definition ID is derived as follows:
control definition ID = 16 * ('CDEF' resource ID) + variation code
A control definition function determines how a control generally looks and behaves. Control definition functions are stored as resources of type 'CDEF'. Various Control Manager functions call a control definition function whenever they need to perform some control-dependent action, such as drawing the control on the screen. For more information on how to create a control definition function, see ControlDefProcPtr.
A control definition function, in turn, can use a variation code to describe variations of the same basic control. For example, all pop-up arrows share the same basic control definition function, which is stored in a resource of type 'CDEF' and has a resource ID of 12. The standard pop-up arrow is large and points to the right; it has a control definition ID of 192. A variation of this is a large, left-pointing arrow, which has a control definition ID of 193. Still another variation, in which the arrow points up, has a control definition ID of 194.
Your application can use the constants listed here in place of control definition IDs. These constants, and their associated IDs, are not supported unless the Appearance Manager is available.
© 2000 Apple Computer, Inc. (Last Updated 6/30/2000)