SHAPEDLGPARAMS

typedef struct _SHAPEDLGPARAMS
{
   L_UINT uStructSize;
   pBITMAPHANDLE pBitmap;
   pBITMAPHANDLE pBackgroundBitmap;
   L_UINT uShape;
   COLORREF crBack;
   L_UINT uBackStyle;
   COLORREF crFill;
   L_UINT uFillStyle;
   COLORREF crBorder;
   L_UINT uBorderStyle;
   L_UINT uBorderWidth;
   COLORREF crInnerHilite;
   COLORREF crInnerShadow;
   L_UINT uInnerStyle;
   L_UINT uInnerWidth;
   COLORREF crOuterHilite;
   COLORREF crOuterShadow;
   L_UINT uOuterStyle;
   L_UINT uOuterWidth;
   L_INT nShadowX;
   L_INT nShadowY;
   COLORREF crShadow;
   L_UINT32 uDlgFlags;
   LTCOMMDLGHELPCB pfnHelpCallback;
   L_VOID L_FAR *pHelpCallBackUserData;
} SHAPEDLGPARAMS, L_FAR * LPSHAPEDLGPARAMS;

The SHAPEDLGPARAMS structure provides information used to initialize the dialog box created by the L_DlgGetShape 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

Pointer to the bitmap handle that references the 1-bit bitmap used for preview or processing.

pBackgroundBitmap

Pointer to the bitmap to be used for the background of the shape. This bitmap will be updated if the user chooses a new image using the Browse Image button. If you pass NULL, the "Tiled Image" and "Translucent Tiled Image" options will not appear in the BackStyle combo-box. The caller is responsible for freeing this bitmap when it is no longer needed.

uShape

The shape to use.

crback

The background color. 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.

uBackStyle

The background style.

crFill

The foreground color. 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.

uFillStyle

The foreground style.

crBorder

The border color. 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.

uBorderStyle

The border style.

uBorderWidth

The border width.

crInnerHilite

The inner band hilite color. 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.

crInnerShadow

The inner band shadow color. 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.

uInnerStyle

The inner band style.

uInnerWidth

The inner band width.

crOuterHilite

The outer band hilite color. 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.

crOuterShadow

The outer band shadow color.

uOuterStyle

The outer band style.

uOuterWidth

The outer band width.

nShadowX

The horizontal position of the shadow.

nShadowY

The vertical position of the shadow.

crShadow

The shadow color. 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.

uDlgFlags

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

 

Value

Meaning

 

DLG_SHAPE_SHOW_CONTEXTHELP

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

 

DLG_SHAPE_AUTOPREVIEW

[0x00000002] auto preview when options change

 

DLG_SHAPE_SHOW_PREVIEW

[0x00000004] show a preview of the image in the dialog. The pBitmap member of this structure should contain a valid bitmap.

 

DLG_SHAPE_BACKSTYLE

[0x00000008] back style is an option

 

DLG_SHAPE_FILLSTYLE

[0x00000010] fill style is an option

 

DLG_SHAPE_FORE_BACK_COLOR

[0x00000020] fore and back colors are options

 

DLG_SHAPE_BORDERSTYLE

[0x00000040] border style is an option

 

DLG_SHAPE_BORDERWIDTH

[0x00000080] border width is an option

 

DLG_SHAPE_BORDERCOLOR

[0x00000100] border color is an option

 

DLG_SHAPE_INNERSTYLE

[0x00000200] inner band style is an option

 

DLG_SHAPE_INNERWIDTH

[0x00000400] inner band width is an option

 

DLG_SHAPE_INNER_HILITE_SHADOW

[0x00000800] inner band colors are options

 

DLG_SHAPE_OUTERSTYLE

[0x00001000] outer band style is an option

 

DLG_SHAPE_OUTERWIDTH

[0x00002000] outer band width is an option

 

DLG_SHAPE_OUTER_HILITE_SHADOW

[0x00004000] outer band colors are options

 

DLG_SHAPE_SHADOWCOLOR

[0x00008000] shadow color is an option

 

DLG_SHAPE_SHADOW_X_Y

[0x00010000] shadow x and y are options

 

DLG_SHAPE_BROWSEIMAGE

[0x00020000] browse image button is an option

 

DLG_SHAPE_NO_TREEVIEW

[0x00040000] DO NOT use the TreeView

 

DLG_SHAPE_CLASS_SQUARE

[0x00080000] squares are options

 

DLG_SHAPE_CLASS_RECTANGLE

[0x00100000] rectangles are options

 

DLG_SHAPE_CLASS_PARALLELOGRAM

[0x00200000] parallelograms are options

 

DLG_SHAPE_CLASS_TRAPEZOID

[0x00400000] trapezoids are options

 

DLG_SHAPE_CLASS_TRIANGLE

[0x00800000] triangles are options

 

DLG_SHAPE_CLASS_OTHER

[0x01000000] other polygons are options

 

DLG_SHAPE_CLASS_CIRCLE

[0x02000000] circles are options

 

DLG_SHAPE_CLASS_ELLIPSE

[0x04000000] ellipses are options

 

DLG_SHAPE_CLASS_STAR

[0x08000000] stars are options

 

DLG_SHAPE_CLASS_CROSS

[0x10000000] crosses are options

 

DLG_SHAPE_CLASS_ARROW

[0x20000000] arrows are options

pfnHelpCallback

Pointer to an optional help callback function. If you do not wish to provide help to this dialog, use NULL as the value of this parameter. To provide help to this dialog, use the function pointer as the value of this parameter. The callback function must adhere to the prototype described in LTCOMMDLGHELPCB.

pHelpCallBackUserData

Void pointer that you can use to pass one or more additional parameters that the callback function needs. To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID L_FAR *. The callback function, which receives the address in its own pHelpCallBackUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure. If the additional parameters are not needed, you can pass NULL in this parameter.