L_AnnSetAutoSnapCursor

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnSetAutoSnapCursor(hAutomation, bSnap)

HANNOBJECT hAutomation;

/* handle to the automation annotation object */

L_BOOL bSnap;

/* value that indicates whether to restrict the cursor location */

Sets the behavior of the cursor location when creating annotations using automation in design mode.

Parameter

Description

hAutomation

Handle to the automation annotation object

bSnap

Boolean value that indicates whether to restrict the cursor location during annotation creation in design mode. Possible values are:

 

Value

Meaning

 

TRUE

The cursor location will snap to on or within the annotation container.

 

FALSE

The cursor location is not restricted.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

This function sets the automation cursor behavior when clicking outside the container. It has no effect on the behavior of the cursor when clicking inside the container. When creating annotations using automation in design mode, the user first chooses an annotation tool. Next the user clicks the mouse in the window containing the image, either on or outside the container (annotation image).

If cursor snapping is enabled and the user clicks outside the container as shown in the figure

If cursor snapping is disabled and the user clicks outside the container but in the window, drawing of the annotation object begins with the annotation object outside of the container.

The default for behavior is to have cursor snapping enabled.

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:

L_AnnGetAutoSnapCursor, L_AnnGetAutoCursor, L_AnnSetUserData, L_AnnGetUserData, L_AnnSetAutoCursor, L_AnnRestrictCursor, L_AnnGetRestrictToContainer, L_AnnSetRestrictToContainer, L_AnnGetAutoBackColor, L_AnnGetAutoContainer, L_AnnGetAutoDialogFontSize, L_AnnGetAutoDrawEnable, L_AnnGetAutoMenuEnable, L_AnnGetAutoMenuItemEnable, L_AnnGetAutoMenuState, L_AnnGetAutoOptions, L_AnnGetAutoText, L_AnnGetAutoTextLen, L_AnnGetAutoUndoEnable, L_AnnSetAutoBackColor, L_AnnSetAutoContainer, L_AnnSetAutoDefaults, L_AnnSetAutoDialogFontSize, L_AnnSetAutoDrawEnable, L_AnnSetAutoMenuEnable, L_AnnSetAutoMenuItemEnable, L_AnnSetAutoMenuState, L_AnnSetAutoOptions, L_AnnSetAutoText, L_AnnSetAutoUndoEnable

Topics:

Displaying and Manipulating Annotation Objects

 

Altering Annotation Object Settings

 

Obtaining Annotation Object Information

 

Annotation Functions: Implementing Automation

Example

The following example toggles the automation cursor snap state. The cursor snap state affects whether the cursor snaps to a container border. when creating annotations by clicking outside the annotation container.

 L_INT AnnSetAutoSnapCursorExample(HANNOBJECT hAutomation)
{
   L_INT    nRet = TRUE;
   L_BOOL   bSnap = FALSE;
   L_TCHAR  szMsg[200];

   nRet = L_AnnGetAutoSnapCursor(hAutomation, &bSnap);
   if (nRet != SUCCESS)
      return nRet;

   bSnap = !bSnap;
   nRet = L_AnnSetAutoSnapCursor(hAutomation, bSnap);
   if (nRet != SUCCESS)
      return nRet;

   wsprintf(szMsg, TEXT("Automation Snap Cursor State changed from %s to %s"),
      !bSnap ? TEXT("TRUE") : TEXT("FALSE"),
      bSnap ? TEXT("TRUE") : TEXT("FALSE"));

   MessageBox(NULL, szMsg, TEXT("Notice"), MB_OK);
   return SUCCESS;
}