#include "l_bitmap.h"
L_LTANN_API L_INT L_AnnEnumerateTextTokenTable(hAutomation, pfnCallback, pUserData)
HANNOBJECT hAutomation; |
handle of the automation object |
ANNENUMTEXTTOKENTABLECALLBACK pfnCallback; |
callback function for each entry in the text token table |
L_VOID *pUserData; |
pointer to more parameters for the callback |
Lets you examine the contents of the annotation text token table.
Parameter |
Description |
hAutomation |
Handle of the automation object. |
pfnCallback |
Callback function for processing each entry in the text token table. Use the function pointer as the value of this parameter. |
|
L_AnnEnumerateTextTokenTable calls the pfnCallback callback function for each entry in the annotation text token table. The callback function must adhere to the function prototype described in the ANNENUMTEXTTOKENTABLECALLBACK Function. |
pUserData |
Void pointer that you can use to pass one or more additional parameters that the callback function needs. |
|
To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID *. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. If the additional parameters are not needed, you can pass NULL in this parameter. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Use this function to examine the contents of the annotation text token table. This function is used with the text annotation objects that support tokens, namely the following:
ANNOBJECT_AUTOMATION
ANNOBJECT_BUTTON
ANNOBJECT_NOTE
ANNOBJECT_PUSHPIN
ANNOBJECT_STAMP
ANNOBJECT_TEXT
ANNOBJECT_TEXTPOINTER
The pfnCallback is called for each token. Note that the tokens cannot be changed with this function. To modify the text token table, use one of the following functions:
Required DLLs and Libraries
|
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64.
// This example enumerates all of the tokens in the text token table,// and displays the result.L_INT EXT_CALLBACK annTextTokenTableCallback(L_INT nTextTokenCount,L_INT nIndex,pANNTEXTTOKEN pTextToken,L_VOID* pUserData){L_TCHAR* pszMsg;L_TCHAR szTemp[100];L_TCHAR* pszType;pszMsg = (L_TCHAR *)pUserData;if (nIndex == 0)wsprintf(pszMsg, TEXT("Total Tokens: %d\n"), nTextTokenCount);pszType = TEXT("Unknown");switch(pTextToken->nTokenType){case ANNTOKEN_NONE:pszType = TEXT("ANNTOKEN_NONE");break;case ANNTOKEN_SEPARATOR:pszType = TEXT("ANNTOKEN_SEPARATOR");break;case ANNTOKEN_TEXT:pszType = TEXT("ANNTOKEN_TEXT");break;case ANNTOKEN_DATE_YYYY:pszType = TEXT("ANNTOKEN_DATE_YYYY");break;case ANNTOKEN_DATE_YY:pszType = TEXT("ANNTOKEN_DATE_YY");break;case ANNTOKEN_DATE_MM:pszType = TEXT("ANNTOKEN_DATE_MM");break;case ANNTOKEN_DATE_DD:pszType = TEXT("ANNTOKEN_DATE_DD");break;case ANNTOKEN_DATE_MONTH_NAME:pszType = TEXT("ANNTOKEN_DATE_MONTH_NAME");break;case ANNTOKEN_DATE_DAY_OF_WEEK:pszType = TEXT("ANNTOKEN_DATE_DAY_OF_WEEK");break;case ANNTOKEN_TIME_HH_12:pszType = TEXT("ANNTOKEN_TIME_HH_12");break;case ANNTOKEN_TIME_HH_24:pszType = TEXT("ANNTOKEN_TIME_HH_24");break;case ANNTOKEN_TIME_MM:pszType = TEXT("ANNTOKEN_TIME_MM");break;case ANNTOKEN_TIME_SS:pszType = TEXT("ANNTOKEN_TIME_SS");break;case ANNTOKEN_TIME_MILLISECONDS:pszType = TEXT("ANNTOKEN_TIME_MILLISECONDS");break;case ANNTOKEN_AM_PM:pszType = TEXT("ANNTOKEN_AM_PM");break;}wsprintf(szTemp, TEXT("[%d]#%c\t%s\t%s\t%s\n"),nIndex,pTextToken->cToken ? pTextToken->cToken : ' ',pTextToken->pszDesc ? pTextToken->pszDesc : TEXT(""),pTextToken->pszTokenString ? pTextToken->pszTokenString : TEXT(""),pszType);lstrcat(pszMsg, szTemp);return SUCCESS;}L_INT AnnEnumeratTextTokenTableExample(HANNOBJECT hAutomation){L_INT nRet;L_TCHAR szMsg[1000];lstrcpy(szMsg, TEXT(""));nRet = L_AnnEnumerateTextTokenTable(hAutomation, annTextTokenTableCallback, szMsg);if(nRet != SUCCESS)return nRet;MessageBox(NULL, szMsg, TEXT("Text Token Table"), MB_OK);return SUCCESS;}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
