ImageGear for C and C++ on Windows v19.10 - Updated
LPFNIG_ART_OVERRIDEDRAWNOTIFYFUNC
API Reference Guide > ART Component API Reference > ART Component Callback Functions Reference > LPFNIG_ART_OVERRIDEDRAWNOTIFYFUNC

This callback operates similar to the LPFNIG_ART_DRAWNOTIFYFUNC callback.

Declaration:

 
Copy Code
typedef BOOL (ACCUAPI *LPFNIG_ART_OVERRIDEDRAWNOTIFYFUNC)(
        HIGEAR hIGear, 
        DWORD dwGrpID, 
        LPVOID lpPrivate, 
        HDC hDC, 
        AT_MODE nWhen, 
        ART_MARK_INDEX hMarkIndex, 
        const LPART_MARK_ATTRIBUTES lpMarkAttr, 
        const LPAT_RECT lprcClip, 
        const LPAT_RECT lprcBounds, 
        AT_MODE nOrientation
);

Arguments:

Name Type Description
hIGear HIGEAR HIGEAR handle to the image.
dwGrpID DWORD Identifier of group.
lpPrivate LPVOID A far pointer that takes private callback data.
hDC HDC Windows handle to the drawing device.
nWhen AT_MODE Before or after image.
hMarkIndex ART_MARK_INDEX Index for the mark.
lpMarkAttr const LPART_MARK_ATTRIBUTES Set to the ART_MARK_ATTRIBUTES structure of the mark to draw.
lprcClip const LPAT_RECT Set to the AT_RECT coordinates of the clipping rectangle.
lprcBounds const LPAT_RECT The scaled bounds of the mark.
nOrientation AT_MODE The orientation of the mark. Set to an AT_MODE constant (defined in Gear.h) that begins with IG_ROTATE_ .

Return Value:

Returns FALSE if the callback did not handle the drawing of the mark, and the library did.

Supported Raster Image Formats:

All pixel formats supported by ImageGear for C and C++.

Sample:

None

Remarks:

This callback is called for known marks, instead of user-defined marks. The purpose of this callback is to let the developer draw the standard marks, instead of letting the library do it.

All of the parameters are the same as LPFNIG_ART_DRAWNOTIFYFUNC. The return value is different. When this callback returns TRUE, it means that the library does not draw the mark. When it returns FALSE, the callback did not handle the drawing of the mark and the library draws the mark. This callback can be used to draw all mark types or just a few marks. The developer can check the dwType field of the lpMarkAttr parameter to determine if they want to draw this type of mark, or let the library handle it.

Finally the nOrientation parameter tells the callback how to orient the mark when drawn. Possible values include IG_ROTATE_0, IG_ROTATE_90, IG_ROTATE_180 and IG_ROTATE_270.

In order to use this callback, it must be registered with ART using the function ART_callback_register().