L_AnnSelectPoint

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnSelectPoint(hObject, pPoint)

HANNOBJECT hObject;

/* handle to the annotation object */

LPPOINT pPoint;

/* pointer to the Windows POINT structure */

Selects the annotation object at the specified point, relative to the window. If objects overlap, this function selects the front object.

This function is available in the Document and Medical Imaging toolkits.

Parameter

Description

hObject

Handle to the annotation object.

pPoint

Pointer to the Windows POINT structure. Coordinates are relative to the associated window's client area.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Selecting an object sets its selected property to TRUE.

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_AnnSelectRect, L_AnnGetSelectRect, L_AnnGetSelectCount, L_AnnGetType, L_AnnSetSelected, L_AnnGetSelected, L_AnnGetSelectItems

Topics:

Annotation Functions: Using Window Coordinates to Select Objects

 

Annotation Functions: Object Information

 

Implementing an Automated Annotation Program

 

Implementing a Non-automated Annotation Program

 

Displaying and Manipulating Annotation Objects

Example

This example selects an object at a particular point in the window, changes the background color of selected object, and updates the display.

 L_INT AnnSelectPointExample(HWND         hWnd,
                                          HANNOBJECT   hContainer)/* Container annotation object */
{
   L_INT nRet;
   RECT  rClientArea;      /* Client area of the current window */
   POINT SelectionPoint;   /* Point in the client area */
   HDC   hWindowDC;        /* Device context of the current window */
   RECT  rAnnBounds;       /* Bounding rectangle when displaying the note */

   /* Get the device context of the current window */
   hWindowDC = GetDC (hWnd);

   /* Get the client area of the current window */
   GetClientRect(hWnd,&rClientArea);

   /* Select an object in the top left part of the window */
   SelectionPoint.y = rClientArea.bottom / 4;
   SelectionPoint.x = rClientArea.right / 4;
   nRet = L_AnnSelectPoint(hContainer, &SelectionPoint);
   if(nRet != SUCCESS)
      return nRet;

   /* Set the background color of the selected object */
   nRet = L_AnnSetBackColor(hContainer, RGB(255,0,0), ANNFLAG_SELECTED|ANNFLAG_RECURSE);
   if(nRet != SUCCESS)
      return nRet;

   /* Get the bounding rectangle of the selected object */
   nRet = L_AnnGetSelectRect(hContainer, &rAnnBounds);
   if(nRet != SUCCESS)
      return nRet;

   /* Get the window's device context */
   hWindowDC = GetDC (hWnd);

   /* Display the change */
   nRet = L_AnnDraw(hWindowDC, &rAnnBounds, hContainer);
   if(nRet != SUCCESS)
      return nRet;

   /* Remove the queued paint message */
   ValidateRect(hWnd, &rAnnBounds);
   return SUCCESS;
}