PUNCHDLGPARAMS

typedef struct _PUNCHDLGPARAMS
{
   L_UINT uStructSize;
   pBITMAPHANDLE pBitmap;
   L_BOOL bZoomToFit;
   L_UINT uStress;
   L_INT nValue;
   POINT ptCenter;
   COLORREF crFill;
   L_UINT uPunchFlags;
   L_UINT32 uDlgFlags;
   LTCOMMDLGHELPCB pfnHelpCallback;
   L_VOID  *pHelpCallBackUserData;
} PUNCHDLGPARAMS,  * LPPUNCHDLGPARAMS;

The PUNCHDLGPARAMS structure provides information used to initialize the dialog box created by the LDialogImageEffect::DoModalPunch function. After the user closes the dialog box, this structure is updated with information about the user's selections.

Member

Description

uStructSize

Size of this structure, in bytes. Use the sizeof operator to calculate this value.

pBitmap

Ignored.

bZoomToFit

Flag that indicates the initial zoom level for previewing the image. Possible values are:

 

Value

Meaning

 

TRUE

Set the initial zoom level to "Zoom to fit".

 

FALSE

Set the initial zoom level to "Normal (1:1)".

 

uStress

Amount of punching intensity. This value is ignored when nValue is less than 0. Valid values range from 0 to 1000.

nValue

Amount of stretching, where positive values pinch the image toward its center and negative values expand the image away from its center. Valid values range from –500 to 500.

ptCenter

POINT structure that contains the point around which the image will be pinched or punched. The center point must be defined inside the bitmap or inside the region, if the bitmap has a region.

crFill

The COLORREF value that specifies the fill color for any exposed areas. You can specify a COLORREF value, such as the return value of the Windows RGB macro, or you can use the PALETTEINDEX macro to specify a palette color.

uPunchFlags

Flags that indicate how to handle exposed areas, both centrally and peripherally. You can use a bitwise OR (|) to specify one flag from each group. The following are the flags that indicate how to handle peripherally exposed areas:

 

Value

Meaning

 

FILL_CLR

[0x0000] fill exposed areas with the color in crFill.

 

FILL_RPT

[0x0001] stretch the edges of the image to fill exposed areas.

 

FILL_NOCHG

[0x0002] do not change or process exposed areas.

 

The following are the flags that indicate how to handle centrally exposed areas:

 

Value

Meaning

 

FILL_ROT

[0x0000] Rotate the image inside the pinch pattern.

 

FILL_WOUTROT

[0x0010] Fill the exposed center the same way the peripherally exposed areas are filled.

 

This flag is ignored if the nValue is positive.

 

uDlgFlags

User interface flags for this dialog, which determine the layout and action of the dialog. Possible values are:

 

Value

Meaning

 

DLG_PUNCH_SHOW_CONTEXTHELP

[0x00000002] dialog should contain a context sensitive help icon.

 

DLG_PUNCH_SHOW_APPLY

[0x00000080] Show the Apply button in the dialog. The dialog will not apply any effect unless the user presses the Apply button.

pfnHelpCallback

Ignored.

pHelpCallBackUserData

Ignored.