Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. |
#include "ltwrappr.h"
virtual L_INT LBitmapWindow::MagGlassCallBack(hWnd, nMaskPlaneStart, nMaskPlaneEnd, pMaskPlane, nMaskPlaneSize)
HWND hWnd; |
/* handle to a window */ |
L_INT nMaskPlaneStart; |
/* start position of the mask array */ |
L_INT nMaskPlaneEnd; |
/* end position of the mask array */ |
L_UCHAR *pMaskPlane; |
/* array of bit flags */ |
L_SIZE_T nMaskPlaneSize; |
/* size of the bit flags array */ |
Handles the WM_LBUTTONDOWN, WM_LBUTTONUP and WM_MOUSEMOVE messages received by the window to which the Magnifying Glass is attached.
Parameter |
Description |
hWnd |
Handle of the window to which the Magnifying Glass is attached. |
nMaskPlaneStart |
The start position of the mask plane array. |
nMaskPlaneEnd |
The end position of the mask plane array. |
pMaskPlane |
An array of bit flags which represents a mask plane. This array works as a plane for the parts of the bitmap that are not yet updated. |
nMaskPlaneSize |
The size of the bit flags array in bytes. |
|
Keep in mind that this is a void pointer, which must be cast to the appropriate data type within your callback function. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
This is an optional callback function is called for each WM_LBUTTONDOWN, WM_MOUSEMOVE and WM_LBUTTONUP message received by the window to which the magnifying glass is attached.
In order to use this callback function, you must call LBitmapWindow::SetToolType, and also you must override LBitmapWindow::MagGlassCallBack. Once that is done, information about the non-updated parts of the bitmap can be obtained from this callback function, in the pMaskPlane parameter. This callback function receives information when the left mouse button is pressed or released and when the mouse is moved while the left mouse button is pressed.
The information received by this function can be passed to the LEADTOOLS Internet functions to get pixel values of the non-updated parts of the bitmap.
Required DLLs and Libraries
LTDIS For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Platforms
Win32, x64.
See Also
Functions: |
LBitmapWindow::SetMagGlassOptions, LBitmapWindow::GetMagGlassOptions, LBitmapWindow::UpdateMagGlassShape |
Topics: |
|
|
|
|
Example
/*<struct>*/ #if defined(MyAnnStamp) class MyBitmapWindow : public LBitmapWindow { public: L_INT MagGlassCallback (HWND hWnd, L_INT nMaskPlaneStart, L_INT nMaskPlaneEnd, L_UCHAR *pMaskPlane, L_INT nMaskPlaneSize); }; #endif /*</struct>*/ L_INT MyBitmapWindow::MagGlassCallback (HWND hWnd, L_INT nMaskPlaneStart, L_INT nMaskPlaneEnd, L_UCHAR *pMaskPlane, L_INT nMaskPlaneSize) { UNREFERENCED_PARAMETER(pMaskPlane); UNREFERENCED_PARAMETER(nMaskPlaneEnd); UNREFERENCED_PARAMETER(nMaskPlaneSize); UNREFERENCED_PARAMETER(nMaskPlaneStart); UNREFERENCED_PARAMETER(hWnd); // .. Write your code here. return SUCCESS; } L_INT LBitmapWindow__MagGlassCallBackExample(MyBitmapWindow *LeadBWnd ) { LeadBWnd->EnableCallBack(TRUE); LeadBWnd->LBitmapWindow::SetToolType(TOOL_MAGGLASS) ; return SUCCESS; }