LImageViewer::SaveAnnotation

#include "ltwrappr.h"

L_INT LImageViewer::SaveAnnotation(pFileName, nCellIndex, nSubCellIndex, nStartPage, uFlags)

LPTSTR pFileName;

/* output file name */

L_INT nCellIndex;

/* index of the cell */

L_INT nSubCellIndex;

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

L_INT nStartPage;

/* the page number of a multi-page file */

L_UINT uFlags;

/* flag */

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

Parameter

Description

pFileName

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

nCellIndex

A zero-based index of the cell for which to save the annotation. Pass -2 to save the annotation of the selected cell.

nSubCellIndex

A zero-based index into the image list attached to the cell specified in nCellIndex. 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.

nStartPage

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

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.

Returns

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 LImageViewer::LoadAnnotation function.

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:

LImageViewer::SetAnnotationContainer, LImageViewer::AnnToRgn, LImageViewer::GetSelectedAnnotationAttributes, LImageViewer::AnnotationCallBack, LImageViewer::EnableAnnotationCallBack, LImageViewer::GetAnnotationContainer, LImageViewer::EnableAnnotationCreatedCallBack, LImageViewer::AnnotationCreatedCallBack, LImageViewer::LoadAnnotation, Class Members

Topics:

Image Viewer Cells

 

Window Control/Image Viewer Functions: Annotations

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 LImageViewer
{
   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( TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\Test.cmp"), pCellInfo->nCellIndex, pCellInfo->nSubCellIndex, 0, 0);
      }
      break;
   case WM_RBUTTONUP:
         SaveAnnotation( TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\Test.cmp"), pCellInfo->nCellIndex, pCellInfo->nSubCellIndex, 0, 0);
      break;
   }
   return SUCCESS;
}
L_INT LImageViewer_SaveAnnotationExample(LImageViewer& ImageViewer)
{
   ImageViewer.EnableMouseCallBack(TRUE);
   return SUCCESS;
}