L_AnnSetShowStampBorder

#include "l_bitmap.h"

L_LTANN_API L_INT EXT_FUNCTION L_AnnSetShowStampBorder(hObject, bShowStampBorder, uFlags)

HANNOBJECT hObject;

/* handle to the annotation object */

L_BOOL bShowStampBorder;

/* value that indicates whether the bitmap stamp is displayed with a border */

L_UINT uFlags;

/* flags to determine which objects to process */

Sets one or more bitmap objects to hide or show a border.

Parameter

Description

hObject

Handle to the annotation object.

bShowStampBorder

Value that indicates whether the bitmap stamp is displayed with a border. Possible values are:

 

Value

Meaning

 

TRUE

Makes the bitmap transparent

 

FALSE

Do not make the bitmap transparent. This is the default value.

 

uFlags

Flags that indicates which objects to process. Most of the flags apply only to container objects. You can combine values when appropriate by using a bitwise OR ( | ). The following are valid values:

 

Value

Meaning

 

0

Process only the specified object.

 

ANNFLAG_SELECTED

[0x0001] Process only objects that have the selected property set to TRUE. For getting and setting the selected property, use the L_AnnGetSelected and L_AnnSetSelected functions.

 

ANNFLAG_NOTTHIS

[0x0004] Process only one level of objects within the specified container, not the container itself. If there are containers within the container, they are modified, but the objects within them are not.

 

ANNFLAG_RECURSE

[0x0008] Process objects within a container, and within any subcontainers, down to any level.

 

ANNFLAG_NOTCONTAINER

[0x0002] (Used with ANNFLAG_RECURSE) Process objects within containers, not the containers themselves.

 

ANNFLAG_NOINVALIDATE

[0x0010] Do not invalidate the affected rectangle in the window. Use this to avoid generating unwanted paint messages.

 

ANNFLAG_CHECKMENU

[0x0020] Process objects only if the ANNAUTOTEXT_MENU_TRANSPARENT menu item has been selected.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Sets one or more annotation stamp objects to hide or show a border. The L_AnnSetShowStampBorder function is valid only for the following object types when they are using a bitmap or a metafile:

Stamp (including the Rubber Stamp tools)

In addition, the Automation object stores this setting along with the other object default settings.

Call the L_AnnSetShowStampBorder function to set such objects to display a border. By default the border color is red (0x00FF0000). Call the L_AnnSetForeColor function to set the border color. Call the L_AnnSetLineWidth function to set the border width. By default the border width is .075 points.

Note that the ANNOBJECT_STAMP can display text, a bitmap, or a metafile. If the stamp contains a bitmap or a metafile, use L_AnnSetShowStampBorder to show or hide the border. If the stamp contains text, use L_AnnSetTextOptions to show or hide the border.

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

Win32, x64, Mobile.

See Also

Functions:

L_AnnGetShowStampBorder, L_AnnGetTextOptions, L_AnnSetTextOptions, L_AnnSetBitmap, L_AnnSetMetafile

Topics:

New Annotation Features of Version 14.5

 

Stamp Annotation Object

 

Altering Annotation Object Settings

 

Displaying and Manipulating Annotation Objects

 

Obtaining Annotation Object Information

 

Container Annotation Object

 

Annotation Automation Object

Example

This examples toggles the show border setting of a stamp annotation object (hObject).

L_INT AnnSetShowStampBorderExample(HANNOBJECT hObject)
{
   L_INT nRet = TRUE;
   L_BOOL bShowStampBorder = FALSE;
   L_TCHAR szMsg[200];
   L_UINT uObjectType = 0;

   L_AnnGetType(hObject, &uObjectType);
   if (uObjectType == ANNOBJECT_STAMP)
   {
      nRet = L_AnnGetShowStampBorder(hObject, &bShowStampBorder);
      if (nRet != SUCCESS)
         return nRet;

      bShowStampBorder = !bShowStampBorder;
      nRet = L_AnnSetShowStampBorder(hObject, bShowStampBorder, 0);
      if (nRet != SUCCESS)
         return nRet;

      wsprintf(szMsg, _T("bShowStampBorder changed from %s to %s"),
         !bShowStampBorder ? _T("TRUE") : _T("FALSE"),
         bShowStampBorder ? _T("TRUE") : _T("FALSE"));

      MessageBox(NULL, szMsg, _T("Notice"), MB_OK);
   }
   else
   {
      MessageBox(NULL, _T("Annotation object is not a stamp!"), _T("Notice"), MB_OK);
   }

   return nRet;
}