LImageViewerCell::SaveAnnotation

Summary

Saves the annotation of the specified cell or sub-cell to a file.

Syntax

#include "ltwrappr.h"

L_INT LImageViewerCell::SaveAnnotation(pFileName, nSubCellIndex, nStartPage, uFlags)

Parameters

LPTSTR pFileName

Character string that contains the name of the file to save.

L_INT nSubCellIndex

A zero-based index into the image list attached to the cell. This sub-cell contains the image the annotation that will be saved. Pass -2 to refer to the selected sub-cell. If the cell contains 1 frame then the nSubCellIndex should be 0.

L_INT nStartPage

The page number of a multipage file, which can contain more than one image.

L_UINT uFlags

Flag that is used to determine the way of saving the annotation. Possible values are:

Value Meaning
CONTAINER_FILE_CREATE [0x00000000] Create a file.
CONTAINER_FILE_APPEND [0x00000001] Append an existing file.
CONTAINER_FILE_REPLACE [0x00000002] Replace the annotation in the index nStartPage in the existing file with the new annotation.
CONTAINER_FILE_INSERT [0x00000003]  Insert the annotation in the index nStartPage in the existing file.

The following flags that determine whether to apply the feature on the one cell only, or more than one cell. This value can only be used when the cell is attached to the LImageViewer through the function LImageViewer::InsertCell. Possible values are:

Value Meaning
CELL_APPLYTOTHIS [0x00000000] Apply the feature to this cell only.
CELL_APPLYTOALL [0x10000000] Apply the feature to all the cells in the Image Viewer.
CELL_APPLYTOSELECTED [0x20000000] Apply the feature to the selected cells in the Image Viewer.

Returns

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

Comments

This function saves the annotation to an XML file. To load the saved annotation file use the LImageViewerCell::LoadAnnotation function.

Required DLLs and Libraries

See Also

Functions

Topics

Example

This example copied the annotation container of the sub-cell when user right clicks on it, and paste the annotation container on the sub-cell that the user click on it using the left mouse button.

class LImageViewerChild1 :public LImageViewerCell 
{ 
   virtual L_INT MouseCallBack(L_UINT                 uMessage, 
                               pDISPCONTAINERCELLINFO pCellInfo); 
 
}; 
 
L_INT LImageViewerChild1::MouseCallBack(L_UINT                 uMessage, 
                                       pDISPCONTAINERCELLINFO pCellInfo) 
{ 
   UNREFERENCED_PARAMETER(pCellInfo); 
 
   switch(uMessage) 
   { 
   case WM_LBUTTONUP: 
      { 
         LoadAnnotation(MAKE_IMAGE_PATH(TEXT("IMAGE1.cmp")), pCellInfo->nSubCellIndex, 0, 0); 
      } 
      break; 
   case WM_RBUTTONUP: 
         SaveAnnotation( MAKE_IMAGE_PATH(TEXT("Test.cmp")), pCellInfo->nSubCellIndex, 0, 0); 
      break; 
   } 
 
   return SUCCESS; 
} 
 
L_INT LImageViewer_SaveAnnotationExample(LImageViewerCell& ImageViewerCell) 
{ 
   ImageViewerCell.EnableMouseCallBack(TRUE); 
 
   return SUCCESS; 
} 

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

LEADTOOLS Medical Image Viewer C++ Class Library Help
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.