LDialogImage::DoModalAddFrame

#include "ltwrappr.h"

virtual L_INT LDialogImage::DoModalAddFrame(hWndOwner)

HWND hWndOwner;

/* handle of the window which owns the dialog */

Displays the Add Frame dialog box, and gets the options for LBitmap::AddFrame. This function is available in the Raster Pro and above toolkits.

Parameter

Description

hWndOwner

Handle of the window which owns the dialog.

Returns

SUCCESS_DLG_CLOSE

The dialog exits successfully after pressing the "Close" button.

< 1

An error occurred. Refer to Return Codes.

Comments

LDialogImage::SetAddFrameParams must be called before using this function to set the initial values for the dialog. You can get the updated ADDFRAMEDLGPARAMS with the values entered by the user through the dialog by using LDialogImage::GetAddFrameParams.

The Add Frame dialog.

Required DLLs and Libraries

LTDLGIMG
LTDLGKRN
LTDLGUTL
LTDLGCTRL
LTDLGCOM
LTDIS
LTIMGUTL
LTIMGEFX

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application

See Also

Functions:

LBase::EnableCallBack, LDialogBase::EnablePreview, LDialogBase::EnableAutoProcess, LDialogBase::EnableToolbar, LDialogBase::Free, LDialogBase::Initialize, LDialogImage::SetAddFrameParams, LDialogImage::GetAddFrameParams, LBitmap::AddFrame, LDialogImage::DoModalAddBorder, Class Members

Topics:

Using Imaging Common Dialog

Example

L_INT ShowAddFrameDlg (HWND hWnd, LBitmap* pBitmap, LPDLGBITMAPLIST pList)
{
   L_INT nRet = 0;
   LDialogImage DlgImage;
   DlgImage.SetBitmap(pBitmap);
   nRet = LDialogImage::Initialize(0);
   if(nRet != SUCCESS)
      return nRet;
   ADDFRAMEDLGPARAMS DlgParams ;
   memset ( &DlgParams, 0, sizeof ( ADDFRAMEDLGPARAMS ) ) ;
   DlgParams.uStructSize = sizeof ( ADDFRAMEDLGPARAMS ) ;
   DlgParams.pBitmapList = pList ;
   DlgImage.EnableCallBack (FALSE);
   DlgImage.EnablePreview(TRUE);
   DlgImage.EnableAutoProcess(TRUE);
   DlgImage.EnableToolbar(TRUE);
   nRet = DlgImage.SetAddFrameParams(&DlgParams) ;
   if(nRet != SUCCESS)
      return nRet;
   nRet = DlgImage.DoModalAddFrame(hWnd);
   if(nRet < 1)
      return nRet;
   // Gets the updated values for the structure
   nRet = DlgImage.GetAddFrameParams(&DlgParams, sizeof(DlgParams)) ;
   if(nRet != SUCCESS)
      return nRet;
   nRet = LDialogImage::Free();
   if(nRet != SUCCESS)
      return nRet;
   return SUCCESS;
}
L_INT LDialogImage_DoModalAddFrameExample( HWND hWnd, LBitmap* pBitmap, L_TCHAR* pszTileImage )
{
   L_INT                nRet;
   DLGBITMAPLISTITEM    Items [ 1 ] ;
   DLGBITMAPLIST        bmplist ;
   LBitmap              FrameBitmap;
   Items [ 0 ].pszDescription  = NULL ;
   Items [ 0 ].pszFileName     = pszTileImage ;
   nRet = FrameBitmap.Initialize ();
   if(nRet != SUCCESS)
      return nRet;
   nRet = FrameBitmap.LoadResize ( Items [ 0 ].pszFileName,
                        100,
                        0,
                        24,
                        0,
                        ORDER_BGR,
                        NULL,
                        NULL ) ;
   if(nRet != SUCCESS)
      return nRet;
   Items [ 0 ].pBitmap = FrameBitmap.GetHandle ();
   bmplist.uStructSize = sizeof ( DLGBITMAPLIST ) ;
   bmplist.pBitmapList = Items ;
   bmplist.nCount      = 1 ;
   nRet = ShowAddFrameDlg ( hWnd, pBitmap, &bmplist ) ;
   if(nRet != SUCCESS)
      return nRet;
   nRet = FrameBitmap.Free ();
   if(nRet != SUCCESS)
      return nRet;
   return SUCCESS;
}