LAnnotation::GetHyperlink

#include "ltwrappr.h"

virtual L_INT LAnnotation::GetHyperlink(puType, puMsg, pwParam, pLink, puLen)

L_UINT * puType;

/* address of the variable to be updated with the value indicating the hyperlink type */

L_UINT * puMsg;

/* address of the variable to be updated with the value of 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 annotation object.

Parameter

Description

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, you must first call LAnnotation::GetHyperlinkLen and get the string length, allocate a buffer large enough to store the string and the NULL at the end, and then call LAnnotation::GetHyperlink. 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.

See Also

Functions:

Class Members

Topics:

Annotation Functions: Hyperlinks

Example

L_INT LAnnotation_GetHyperlinkExample(LAnnotation& LeadAnn)
{
   L_INT nRet;
   L_UINT uType; // variable to hold hyperlink type 
   L_UINT uMsg; // variable to hold hyperlink msg 
   WPARAM wParam; // variable to hold hyperlink msg param 
   L_TCHAR Buffer[2048]; // buffer to hold hyperlink string 
   L_SIZE_T  uLen ; // length of hyperlink
   L_TCHAR szMessage[80];
  
   nRet = LeadAnn.GetHyperlink( &uType, &uMsg, &wParam, Buffer,NULL);
   if(nRet != SUCCESS)
      return nRet;
   if (uType != ANNLINK_WEBPAGE)
   {
      nRet = LeadAnn.SetHyperlink(ANNLINK_WEBPAGE, 0, 0, TEXT("http://www.leadtools.com "), ANNFLAG_RECURSE|ANNFLAG_SELECTED);
      if(nRet != SUCCESS)
         return nRet;
   }
   // get the length of the hyperlink property
   uLen = LeadAnn.GetHyperlinkLen();
   wsprintf(szMessage, TEXT("Length of hyperlink = %u\n"),uLen); 
   MessageBox(NULL,szMessage, TEXT("Hyperlink"),MB_OK) ;
	return SUCCESS;
}