ANNPOINTOPTIONS

typedef struct tagANNPOINTOPTIONS
{
   L_UINT uStructSize;
   L_UINT uFlags;
   L_BOOL bPointUseBitmap;
   pBITMAPHANDLE pPointBitmap;
   L_UINT uBitmapStructSize;
   L_BOOL bPointBitmapTransparent;
   COLORREF crPointBitmapTransparentColor;
   L_INT32 nPointRadius;
   COLORREF crPointBorderColor;
   L_BOOL bPointTransparentFill;
   COLORREF crPointFillColor;
   L_BOOL bPointFixedSize;
   L_INT32 nReserved;
} ANNPOINTOPTIONS, *pANNPOINTOPTIONS;

Member

Description

uStructSize

Size of this structure. Use sizeof(ANNENCRYPTOPTIONS)

uFlags

Flag that indicates which fields are valid. Possible values are one or more (Boolean OR) of the following constants:

 

Value

Meaning

 

ANNPOINT_USE_BITMAP

[0x001] bPointUseBitmap field is valid.

 

ANNPOINT_BITMAP

[0x002] pPointBitmap field is valid.

 

ANNPOINT_BITMAP_TRANSPARENT

[0x004] bPointBitmapTransparent field is valid

 

ANNPOINT_BITMAP_TRANSPARENT_COLOR

[0x008] crPointBitmapTransparentColor field is valid.

 

ANNPOINT_RADIUS

[0x010] nPointRadius field is valid.

 

ANNPOINT_BORDER_COLOR

[0x020] crPointBorderColor field is valid.

 

ANNPOINT_FILL_COLOR

[0x040] crPointFillColor field is valid.

 

ANNPOINT_TRANSPARENT_FILL

[0x080] bPointTransparentFill field is valid.

 

ANNPOINT_FIXED_SIZE

[0x100] bPointFixedSize field is valid.

 

ANNPOINT_ALL

[0x1ff] All fields are valid.

 

bPointUseBitmap

Flag that indicates whether to draw the point using the current point bitmap or as a circle. Possible values are:

 

Value

Meaning

 

TRUE

Draw the point using the current point bitmap.

 

FALSE

Draw the point as a circle.

pPointBitmap

Pointer to a BITMAPHANDLE structure that gets or sets the point bitmap.

uBitmapStructSize

Size of the structure pointed to by pBitmap, for versioning.  Use sizeof(BITMAPHANDLE).

bPointBitmapTransparent

Flag that indicates whether there is a transparent color. Possible values are:

 

Value

Meaning

 

TRUE

If the point is drawn using a bitmap, draw with a transparent color.

 

FALSE

If the point is drawn using a bitmap, there is no transparent color.

crPointBitmapTransparentColor

If the point is drawn as a bitmap, and bPointBitmapTransparent is TRUE, this specifies the transparent color.

nPointRadius

If the point is drawn as a circle, this specifies the radius in pixels (assuming no zooming).

crPointBorderColor

If the point is drawn as a circle, this is the outline color

bPointTransparentFill

Flag for a point drawn as a circle that indicates whether the inside is transparent or uses the fill color. Possible values are:

 

Value

Meaning

 

TRUE

If the point is drawn as a circle, the inside is transparent.

 

FALSE

If the point is drawn as a circle, the fill color is crPointFillColor.

crPointFillColor

If the point is drawn as a circle, this is the fill color.

bPointFixedSize

Flag for a point drawn as a circle that indicates whether the point is a fixed size. Possible values are:

 

Value

Meaning

 

TRUE

If the point is drawn as a circle, the size does not change, regardless of the zoom factor

 

FALSE

If the point is drawn as a circle, the size changes with the zoom factor.

nReserved

Reserved for future use. Must set this field to zero.

Comments

The ANNPOINTOPTIONS structure is used with the functions L_AnnSetPointOptions and L_AnnGetPointOptions to get or set options on an annotation point object.

When calling L_AnnGetPointOptions, the uFlags field identifies which fields to retrieve. When calling L_AnnSetPointOptions, the uFlags field identifies which fields to set.

To get the bitmap of the current point object (hObject), do the following:

memset(&PointOptions, 0, sizeof(ANNPOINTOPTIONS));
PointOptions.nSize = sizeof(ANNPOINTOPTIONS);
PointOptions.uFlags = ANNPOINT_BITMAP;
PointOptions. pPointBitmap = &PointBitmap;
L_AnnGetPointOptions(hObject, &PointOptions);

If the call to L_AnnGetPointOptions is successful, PointBitmap now contains the point bitmap. You must call L_FreeBitmap (&PointBitmap) when you are finished with the bitmap.

If the point is being drawn using a bitmap, the current default point bitmap is used. This can be changed by making the pPointBitmap field point to a valid LEAD bitmap handle, adding the ANNPOINT_BITMAP flag to the uFlags field, and calling L_AnnSetPointOptions.

If bPointBitmapTransparent is TRUE, then the point bitmap is displayed with transparency, where crPointBitmapTransparentColor is the transparent color.

If the point is not being drawn using a bitmap, it is displayed as a circle with the following properties: