LAnnFreehandHotSpot::GetUserHandles
#include "ltwrappr.h"
virtual L_INT LAnnFreehandHotSpot::GetUserHandles(pAnnHandle, puCount)
| pANNHANDLE pAnnHandle; | /* array of ANNHANDLE structures that define user handles */ | 
| L_UINT *pCount; | /* pointer to an unsigned integer used to return the total count of user handles */ | 
Gets information about all existing user-defined annotation handles. This function is available in the Document/Medical Toolkits.
| Parameter | Description | 
| pAnnHandle | Array of ANNHANDLE structures to be updated with the user-defined handles. | 
| puCount | Pointer to an unsigned integer used to return the total number of user handles | 
Returns
| 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
| LTANN 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: | |
| Topics: | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
Example
// This example displays information about all the user handles in an object
L_VOID DumpAnnHandle(L_UINT uIndex, pANNHANDLE pAnnHandle) 
{
   L_TCHAR szMsg[400]; 
   
   if (pAnnHandle) 
   {
      wsprintf(szMsg, TEXT("uIndex %d\nuStructSize: %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")
         ); 
      MessageBox(NULL, szMsg, TEXT(""), MB_OK); 
   }
}
L_VOID ExampleAnnGetUserHandles(LAnnFreehandHotSpot * LFreehandHotSpot) 
{
   L_UINT i; 
   L_UINT uCount; 
   pANNHANDLE pAnnHandle; 
   // Get the total count of user handles, and allocate memory
   LFreehandHotSpot->GetUserHandles(NULL, &uCount); 
   pAnnHandle = (pANNHANDLE)malloc(uCount * sizeof(ANNHANDLE)); 
   LFreehandHotSpot->GetUserHandles(pAnnHandle, &uCount); 
   for (i = 0; i<uCount; i++)
      DumpAnnHandle(i, pAnnHandle + i); 
   free(pAnnHandle); 
}