L_DispContainerGetBitmapPixel

#include "l_bitmap.h"

L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerGetBitmapPixel(hCon, nCellIndex, nSubCellIndex, pSrcPoint, pBitmapPoint, uFlags)

HDISPCONTAINER hCon;

/* handle to the container */

L_INT nCellIndex;

/* index of the cell */

L_INT nSubCellIndex;

/* index into the image list attached to the cell */

LPPOINT pSrcPoint;

/* pointer to a POINT structure */

LPPOINT pBitmapPoint;

/* address of the POINT structure to be updated */

L_UINT uFlags;

/* reserved for future */

Gets the bitmap pixel associated with the specified position.

Parameter

Description

hCon

Handle to the Container.

nCellIndex

A zero-based index of the cell for which to get the bitmap coordinates. Pass -2 to get the bitmap coordinates of the selected cells.

nSubCellIndex

A zero-based index into the image list attached to the cell specified in nCellIndex. This sub-cell contains the image that contains the bitmap. Pass -2 to refer to the selected sub-cell.

pSrcPoint

Pointer to the POINT structure that specifies the point to get the corresponding bitmap coordinates. Coordinates are relative to the associated cell area.

pBitmapPoint

Pointer to the POINT structure that provides the corresponding bitmap coordinates to the specified point pSrcPoint.

uFlags

Reserved for future use. Pass 0.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

If the user passes coordinates that falls outside the valid bitmap coordinates range, pBitmapPoint will return {-1, -1}.

Required DLLs and Libraries

LTIVW
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

See Also

Functions:

L_DispContainerCreate, L_DispContainerRemoveCell, L_DispContainerInsertCell, L_DispContainerGetCellCount, L_DispContainerGetWindowHandle, L_DispContainerSetCellBitmapList, L_DispContainerSetCellTag, L_DispContainerGetCellProperties, L_DispContainerGetCellPosition, L_DispContainerRepositionCell, L_DispContainerGetCellBitmapList, L_DispContainerGetCellBounds, L_DispContainerFreezeCell, L_DispContainerSelectCell, L_DispContainerIsCellSelected, L_DispContainerIsCellFrozen

Topics:

Image Viewer Cells

 

Image Viewer Functions: Image Viewer Cells

Example

this example draw dots on the image when clicking on it using the left mouse button.

static L_INT EXT_CALLBACK MouseCallBack(L_UINT                 uMessage,
                                 pDISPCONTAINERCELLINFO pCellInfo,
                                 L_VOID *               pUserData)
{
   UNREFERENCED_PARAMETER(pCellInfo);
   HDISPCONTAINER hCon = (HDISPCONTAINER)pUserData;
   POINT ptBitmapPoint;
   BITMAPHANDLE Bitmap;

   switch(uMessage)
   {
   case WM_LBUTTONDOWN:
      {
         POINT ptPoint = {pCellInfo->nX, pCellInfo->nY};
         L_DispContainerGetBitmapPixel(hCon, pCellInfo->nCellIndex, pCellInfo->nSubCellIndex, &ptPoint, &ptBitmapPoint, 0);

         L_DispContainerGetBitmapHandle(hCon, pCellInfo->nCellIndex, pCellInfo->nSubCellIndex, &Bitmap, 0);
         L_PutPixelColor(&Bitmap, ptBitmapPoint.y, ptBitmapPoint.x, RGB(255, 255, 255));
         L_DispContainerSetBitmapHandle(hCon, pCellInfo->nCellIndex, pCellInfo->nSubCellIndex, &Bitmap, TRUE, 0);
      }
      break;
   }

   return SUCCESS;
}

L_INT DispContainerGetBitmapPixel(HDISPCONTAINER hCon)
{
   DISPCONTAINERMOUSECALLBACK oldCallBack;
   L_VOID *                   pOldUserData;

   L_DispContainerGetMouseCallBack(hCon, &oldCallBack, &pOldUserData);

   L_DispContainerSetMouseCallBack(hCon, MouseCallBack, hCon);

   return SUCCESS;
}