PushPin Annotation Object

The PushPin annotation object (ANNOBJECT_PUSHPIN) is a rectangle containing a scaled image that can be activated to show a hidden note. With the automated functions, in design mode, the user clicks and drags to specify the rectangle in the current window. A dialog box then lets the user specify the preferred options. In run mode, clicking on the icon displays the hidden note.

The class for PushPin Annotation objects is LAnnPushPin.

A PushPin object has a primary bitmap, (manipulated using the LAnnPushPin::SetBitmap and the LAnnPushPin::GetBitmap functions) when the text is shown, and a secondary bitmap, changed using the LAnnPushPin::SetSecondaryBitmap functions. The primary bitmap is shown with the note text. The secondary bitmap is shown by itself when the note is minimized.

In design mode, the PushPin object shows the text and displays the primary bitmap. In run mode, the object shows/hides the text when clicked. The PushPin object can respond to activation events (this ability can be manipulated using the LAnnotation::SetActiveState and the LAnnotation::GetActiveState functions). When the mode is ANNACTIVE_ENABLED, the text is shown and the primary bitmap is painted in the top-left corner of the note.

When the mode is ANNACTIVE_DISABLED, the text is hidden and the secondary bitmap is displayed.

For information on flipping, reversing or rotating annotation objects, refer to Flipping, Reversing and Rotating Annotation Objects.

With low-level functions, you must define the size and position of the rectangle. Other applicable properties have the following defaults, which you can change:

Visible

Defaults to FALSE. It can be changed using the LAnnotation::SetVisible function.

Selected

Defaults to FALSE. It can be changed using the LAnnotation::SetSelected function.

Name

Defaults to an empty string. It can be changed using the LAnnotation::SetNameOptions function.

Foreground color

Defaults to red. It can be changed using the LAnnotation::SetForeColor function.

Background color

Defaults to yellow. It can be changed using the LAnnotation::SetBackColor function.

Font size

Defaults to 10 point, translated with a scaling factor of 1. It can be changed using the LAnnotation::SetFontSize function.

Font underline

Defaults to FALSE. It can be changed using the LAnnotation::SetFontUnderline function.

Font strikethrough

Defaults to FALSE. It can be changed using the LAnnotation::SetFontStrikethrough function.

Font italic

Defaults to FALSE. It can be changed using the LAnnotation::SetFontItalic function.

Font bold

Defaults to FALSE. It can be changed using the LAnnotation::SetFontBold function.

Font name

Defaults to "Arial". It can be changed using the LAnnotation::SetFontName function.

Text

Defaults to "AaBbYyZz". It can be changed using the LAnnNote::SetText.

Text Displayed*

Defaults to Show text. It can be changed using LAnnotation::SetTextOptions.

Text Color*

Defaults to red (RGB(255,0,0). It can be changed using LAnnotation::SetTextOptions.

Bitmap

Defaults to NULL. It can be changed using the LAnnXXX::SetBitmap function.

SecondaryBitmap

Defaults to a PushPin bitmap. It can be changed using the LAnnPushPin::SetSecondaryBitmap function.

Fixed State

Defaults to not fixed. It can be changed using the LAnnXXX::SetFixed function.

Hyperlink

Defaults to ANNLINK_NONE. It can be changed using the LAnnotation::SetHyperlink function.

Tag (identifier)

Defaults to 0. It can be changed using the LAnnotation::SetTag function.

Window handle

Defaults to NULL or the handle inherited from the container. It can be changed for all objects using LAnnContainer::SetWnd.

User mode

Defaults to design mode or the mode inherited from the container. It can be changed for all objects using LAnnContainer::SetUserMode.

* These features must be enabled using the LAnnotation::SetOptions function.

Related topics:

Implementing Annotations.

Types of Annotations.

Low-Level Coordinate System for Annotations.

Annotation Objects - Automated Features