L_AnnGetUserHandles

Summary

Gets information about all existing user-defined annotation handles.

Syntax

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnGetUserHandles(hObject, pAnnHandle, pCount)

Parameters

HANNOBJECT hObject

Handle to the annotation object for which to get the user handles.

pANNHANDLE pAnnHandle

Array of ANNHANDLE structures to be updated with the user-defined handles.

L_UINT *pCount

Pointer to an unsigned integer used to return the total number of user handles

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

Call with pAnnHandle == NULL to get the total number of user handles. Then allocate memory for an array of ANNHANDLE structures and call this function again.

Gets an array of user-defined handles associated with the annotation object.

Required DLLs and Libraries

Platforms

Win32, x64.

See Also

Functions

Topics

Example

This example gets information about all the user handles in an object.

static L_VOID DumpAnnHandle(L_UINT uIndex, pANNHANDLE  pAnnHandle) 
{ 
   L_TCHAR szMsg[400]; 
 
   if (!pAnnHandle) 
      return; 
 
   _stprintf_s(szMsg, TEXT("uIndex %d\nnSize: %d\nnID: %d\n aptContainer[%f,%f]\nptClient[%d,%d]\nbVisible: %s\ncrPen: 0x%x\ncrFill: 0x%x\nnShape: %s\nhCursor: %s\n"), 
      uIndex, 
      pAnnHandle->uStructSize, 
      pAnnHandle->nID, 
      pAnnHandle->aptContainer.x, pAnnHandle->aptContainer.y, 
      pAnnHandle->ptClient.x, pAnnHandle->ptClient.y, 
      pAnnHandle->bVisible ? TEXT("Visible") : TEXT("Not Visible"), 
      pAnnHandle->crPen, 
      pAnnHandle->crFill, 
      pAnnHandle->nShape == ANNHANDLE_SHAPE_SQUARE ? TEXT("Square") : TEXT("Circle"), 
      pAnnHandle->hCursor ? TEXT("Cursor") : TEXT("No Cursor") 
   ); 
 
   _tprintf(_T("%s"), szMsg); 
} 
 
extern "C" L_INT AnnGetUserHandlesExample(HANNOBJECT hObject) 
{ 
   L_INT       nRet; 
   L_UINT      i; 
   L_UINT      uCount; 
   pANNHANDLE  pAnnHandle; 
 
   // Get the total count of user handles, and allocate memory 
   nRet = L_AnnGetUserHandles(hObject, NULL, &uCount); 
   if (nRet != SUCCESS) 
      return nRet; 
 
   pAnnHandle = (pANNHANDLE)malloc(uCount * sizeof(ANNHANDLE)); 
 
   nRet = L_AnnGetUserHandles(hObject, pAnnHandle, &uCount); 
   if (nRet != SUCCESS) 
      return nRet; 
 
   for (i = 0; i < uCount; i++) 
      DumpAnnHandle(i, pAnnHandle + i); 
 
   free(pAnnHandle); 
   return SUCCESS; 
} 

Help Version 22.0.2023.7.11
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.