L_AnnGetHyperlink
#include "l_bitmap.h"
L_LTANN_API L_INT L_AnnGetHyperlink(hObject, puType, puMsg, pwParam, pLink, puLen)
HANNOBJECT hObject; |
/* handle of the annotation object */ |
L_UINT * puType; |
/* address of the variable to be updated with the hyperlink type */ |
L_UINT * puMsg; |
/* address of the variable to be updated with the user defined message */ |
WPARAM * pwParam; |
/* address of the variable to be updated with the value of wParam */ |
L_TCHAR * pLink; |
/* character string containing the hyperlink string */ |
L_SIZE_T * puLen; |
/* address of an integer variable to be updated with hyperlink string length*/ |
Gets the hyperlink information of the specified annotation object.
This function is available in the Document and Medical Imaging toolkits.
Parameter |
Description |
|
hObject |
Handle of the annotation object. |
|
puType |
Address of the variable to be updated with the value indicating the hyperlink type. Possible hyperlink types are: |
|
|
Value |
Meaning |
|
ANNLINK_NONE |
[0x0000] Object has no hyperlink. |
|
ANNLINK_LTANNEVENT |
[0x0001] WM_LTANNEVENT message will be sent with LTANNEVENT_HYPERLINK |
|
ANNLINK_USERMSG |
[0x0002] The user defined message will be sent with wParam as the wParam message of this function and lParam containing the handle of the object. |
|
ANNLINK_RUN |
[0x0003] The program specified in pLink will be run. Both the program and the command line parameters have to be specified in pLink. |
|
ANNLINK_WEBPAGE |
[0x0004] The web page with the URL specified in pLink will be opened in the current browser. Note that not all web browsers accept a page on the command line. Some will simply go to their default home page. |
puMsg |
Address of the variable to be updated with the value of the user defined message. This parameter is only valid if the value pointed to by puType is ANNLINK_USERMSG. |
|
pwParam |
Address of the variable to be updated with the value of wParam. This parameter is only valid if the value pointed to by puType is ANNLINK_USERMSG. |
|
pLink |
Character string containing the hyperlink string. This parameter is valid only if the value pointed to by puType is ANNLINK_RUN or ANNLINK_WEBPAGE. If puType points to ANNLINK_RUN, pLink contains the name of the program to run and all required command line parameters. If puType points to ANNLINK_WEBPAGE, pLink contains the URL of the Web page to access. |
|
puLen |
Pointer to an integer variable (L_SIZE_T) that will be updated with the length of the hyperlink string. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
Objects with a hyperlink of type ANNLINK_RUN or ANNLINK_WEBPAGE have a hyperlink string associated with them. To see what the hyperlink string of an object is, first call L_AnnGetHyperlink passing NULL for the pLink parameter. The length of the hyperlink string is returned in the *puLen argument. Allocate a buffer large enough to store the string and the NULL at the end, and then call L_AnnGetHyperlink again, passing the pointer to the allocated buffer for the pLink argument. Note that the length does NOT account for the null at the end of the string.
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. |
Platforms
Windows 2000 / XP/Vista.
See Also
Functions: |
|
Topics |
|
|
|
|
|
|
Example
For complete sample code, refer to the Annotate example.
L_INT AnnGetHyperlinkExample(HANNOBJECT hAnnObject) { L_INT nRet; WPARAM wParam; L_UINT uType, uMsg; L_TCHAR Buffer[2048]; L_SIZE_T zLen; nRet = L_AnnGetHyperlinkLen(hAnnObject, &zLen); if(nRet != SUCCESS) return nRet; zLen = zLen + 1; nRet = L_AnnGetHyperlink(hAnnObject, &uType, &uMsg, &wParam, Buffer, &zLen); if(nRet != SUCCESS) return nRet; if (uType == ANNLINK_NONE) MessageBox(NULL, TEXT("Object has no hyperlink."), TEXT("Notice"), MB_OK); else if ((uType == ANNLINK_WEBPAGE) || (uType == ANNLINK_RUN)) MessageBox(NULL, Buffer, TEXT("Message"), MB_OK); else MessageBox(NULL, TEXT("Hyperlink does not have a string.\n"), TEXT("Message"), MB_OK); return SUCCESS; }