LAnnPushPin::GetBitmap

Summary

Gets the bitmap handle for the primary bitmap of the annotation object.

Syntax

#include "ltwrappr.h"

virtual L_INT LAnnPushPin::GetBitmap(pLBitmap, uStructSize)

virtual L_INT LAnnPushPin::GetBitmap(pBitmap, uStructSize)

Parameters

LBitmapBase * pLBitmap

Pointer to an LBitmapBase object to be updated with the handle to the annotation object's primary bitmap.

pBITMAPHANDLE pBitmap

Address of the variable to be updated with the handle to the annotation object's primary bitmap.

L_UINT uStructSize

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

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

Before calling LAnnPushPin::GetBitmap(pLBitmap, uStructSize), where pLBitmap is of type LBitmapBase , you must declare an LBitmapBase object. Then, pass the address of the object in the pLBitmap parameter. This function will update the object with the handle to the annotation object's primary bitmap.

Before calling LAnnPushPin::GetBitmap(pBitmap, uStructSize), where pBitmap is of type pBITMAPHANDLE, you must declare a variable of data type BITMAPHANDLE. Then, pass the address of the variable in the pBitmap parameter. This function will update the variable with the handle to the annotation object's primary bitmap.

A pushpin object has a primary bitmap, (manipulated using LAnnPushPin::SetBitmap/LAnnPushPin::GetBitmap) when the text is shown, and a secondary bitmap, manipulated using LAnnPushPin::SetSecondaryBitmap / LAnnPushPin::GetSecondaryBitmap. 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 has the active mode property. 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.

Required DLLs and Libraries

Platforms

Win32, x64.

See Also

Functions

Topics

Example

This is an example for both forms of LAnnPushPin::GetBitmap(pBitmap:

//***IMPORTANT: In the OnPaint(), add the following code: 
//      RECT rect; 
//      m_AnnContainer.GetBoundingRect(&rect) ; 
//      HDC hdc = ::GetDC(m_hWnd); 
//      m_AnnContainer.Draw(hdc,&rect); 
//      ::ReleaseDC(m_hWnd, hdc); 
 
L_INT LAnnPushPin_GetBitmapExample(HWND hWnd, LAnnContainer &AnnContainer, L_BOOL bPrimary) 
{ 
   LBitmap MyBitmap; 
   ANNRECT annRect; 
 
   LAnnPushPin *pMyAnnPushPin = new(LAnnPushPin); 
 
   annRect.left = 50; 
   annRect.top = 50; 
   annRect.right = 170; 
   annRect.bottom = 170; 
 
   pMyAnnPushPin->SetRect(&annRect); 
 
   //Set pushpin properties 
   pMyAnnPushPin->SetVisible(TRUE); 
 
   //Flip the primary bitmap 
   LBitmapBase *pBitmapBasePrimary = new(LBitmapBase); 
   pMyAnnPushPin->GetBitmap(pBitmapBasePrimary, sizeof(BITMAPHANDLE)); 
   //or 
   //BITMAPHANDLE LeadBitmap; 
   //pMyAnnPushPin->GetBitmap(&LeadBitmap, sizeof(BITMAPHANDLE)); 
   //pBitmapBasePrimary->Flip(); 
 
   //Flip the secondary bitmap 
   LBitmapBase *pBitmapBaseSecondary = new(LBitmapBase); 
   pMyAnnPushPin->GetSecondaryBitmap(pBitmapBaseSecondary, sizeof(BITMAPHANDLE)); 
 
   //or 
   //BITMAPHANDLE LeadBitmap; 
   //pMyAnnPushPin->GetSecondaryBitmap(&LeadBitmap, sizeof(BITMAPHANDLE)); 
   //pBitmapBaseSecondary->Flip(); 
 
   //Create container and insert annotation 
   AnnContainer.Create(hWnd, &annRect, TRUE); 
   AnnContainer.Insert(*pMyAnnPushPin); 
   AnnContainer.SetUserMode(ANNUSER_RUN); 
 
   if (bPrimary) 
      pMyAnnPushPin->SetActiveState(ANNACTIVE_ENABLED); 
   else 
      pMyAnnPushPin->SetActiveState(ANNACTIVE_DISABLED); 
 
   return SUCCESS; 
} 

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.