Important: The information in this document is obsolete and should not be used for new development.
PtInIconMethod
You can use thePtInIconMethod
function to determine whether a specified point is within an icon. (A point is considered to be within an icon if the point is within the icon's mask.) ThePtInIconMethod
function obtains the icon to test against with the aid of your icon getter function.
FUNCTION PtInIconMethod (testPt: Point; iconRect: Rect; align: IconAlignmentType; theMethod: IconGetter; yourDataPtr: Ptr): Boolean;
testPt
- The point to be tested, specified in local coordinates of the current graphics port.
iconRect
- The rectangle in which the icon appears, specified in local coordinates of the current graphics port.
align
- A value that specifies how the icon against which to hit-test is aligned within the rectangle specified by
iconRect
. See the description ofPlotIconID
on page 5-20 for a list of constants you can use in this parameter.theMethod
- A pointer to an icon getter function.
yourDataPtr
- A pointer to data that is passed to your icon getter function.
DESCRIPTION
ThePtInIconMethod
function hit-tests the point specified bytestPt
against an icon obtained with the aid of an icon getter function, using the destination rectangle and alignment specified byiconRect
andalign
. The parametersiconRect
andalign
should be the same as when the icon was last drawn. ThePtInIconMethod
function returnsTRUE
if the point is in the icon mask andFALSE
if it is not.
PtInIconMethod
passes to your icon getter function the type of icon your function should retrieve (either'ICN#'
or'ics#'
) and also passes the value specified in theyourDataPtr
parameter. ThePtInIconMethod
function examines the size of the specified rectangle and requests the appropriate icon from your icon getter function. Your icon getter function should return a handle to the requested icon's data. ThePtInIconMethod
function extracts the mask from the icon data that your icon getter function returns. If your icon getter function returns data that does not correspond to an icon of type'ICN#'
or type'ics#'
,PtInIconMethod
attempts to generate a mask from the returned data.Your icon getter function can get the icon's data using whatever method is appropriate to your application. For example, your application might maintain its own cache of icons (and pass a pointer to it in the
yourDataPtr
parameter) or use its icon getter function to get an icon from the desktop database.SEE ALSO
For more information about icon getter functions, see page 5-58.