L_DispContainerGetAnnotationContainer

#include "l_bitmap.h"

L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerGetAnnotationContainer(hCellWnd, nSubCellIndex, PhAnnContainer, uFlags)

Gets the annotation container for the specific frame.

Parameters

L_HWND hCellWnd

A handle to the window that represents the cell on which the function's effect will be applied.

L_INT 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 annotation container. Pass -2 to refer to the selected sub-cell.

HANNOBJECT * PhAnnContainer

Address of the variable to be updated with the handle to the annotation object that is found at the specified point.

L_UINT uFlags

If uFlags contains CELL_ANNOTATION_INCLUDE_TEXT, the image viewer will replace the annotation text with default text. The default text has a fixed size regardless of the scaling of the image inside the medical viewer.

Returns

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

Comments

This function gets a copy of the annotation container. You must free it once it is no longer needed.

This function gets the annotation container. To set the annotation container use L_DispContainerSetAnnotationContainer.

Required DLLs and Libraries

See Also

Functions

Topics

Example

This example will copy the annotation container from the specified sub-cell clicked by the user using the left mouse button, and paste the annotation container on the specified sub-cell clicked by the user using the right mouse button.

HANNOBJECT hContainer; 
static L_INT EXT_CALLBACK MouseCallBack(HWND hCellWnd, 
                                        L_UINT                 uMessage, 
                                        pDISPCONTAINERCELLINFO pCellInfo, 
                                        L_VOID *               pUserData) 
{ 
   UNREFERENCED_PARAMETER(pCellInfo); 
   UNREFERENCED_PARAMETER(pUserData); 
 
   switch(uMessage) 
   { 
   case WM_LBUTTONUP: 
         L_DispContainerGetAnnotationContainer(hCellWnd, pCellInfo->nSubCellIndex, &hContainer, 0); 
      break; 
 
   case WM_RBUTTONUP: 
         L_DispContainerSetAnnotationContainer(hCellWnd, pCellInfo->nSubCellIndex, hContainer, 0); 
      break; 
   } 
 
   return SUCCESS; 
} 
 
L_INT DispContainerGetAnnotationContainerExample(HDISPCONTAINER hCon) 
{ 
   DISPCONTAINERMOUSECALLBACK oldCallBack; 
   L_VOID *                   pOldUserData; 
 
   if (L_DispContainerGetCellCount(hCon, 0) == 0) 
   { 
      MessageBox(NULL, TEXT("you must at least have one cell added to the viewer"), TEXT("No Cell attached"), MB_OK); 
      return FAILURE; 
   } 
 
   HWND hCellWnd = L_DispContainerGetCellWindowHandle(hCon, 0, 0); 
 
   L_DispContainerGetMouseCallBack(hCellWnd, &oldCallBack, &pOldUserData); 
 
   L_DispContainerSetMouseCallBack(hCellWnd, MouseCallBack, hCon); 
 
   return SUCCESS; 
} 

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

LEADTOOLS Medical Image Viewer C API Help