HALFTONEDLGPARAMS

typedef struct _HALFTONEDLGPARAMS
{
   L_UINT uStructSize;
   pBITMAPHANDLE pBitmap;
   L_BOOL bZoomToFit;
   L_UINT uDim;
   L_INT nAngle;
   L_UINT32 uType;
   LPDLGBITMAPLIST pBitmapList ;
   L_UINT L_FAR* puInListIndexes ;
   L_INT32 nInCount ;
   HBITMAPLIST hList ;
   L_UINT32 uDlgFlags;
   LTCOMMDLGHELPCB pfnHelpCallback;
   L_VOID L_FAR *pHelpCallBackUserData;
} HALFTONEDLGPARAMS, L_FAR * LPHALFTONEDLGPARAMS;

The HALFTONEDLGPARAMS structure provides information used to initialize the dialog box created by the L_DlgHalftone function. After the user closes the dialog box, information about the user's selections are updated in this structure.

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 bitmap used for preview or processing.

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)".

 

uDim

Value that indicates the size of the grain. Possible values range form 2 to 100. This value is ignored if uType is HT_VIEW or HT_PRINT. If uType is not HT_VIEW or HT_PRINT, uDim should be >= 1.

nAngle

The angle of rotation, expressed in hundredths of degrees. Possible values range from -36000 to 36000. A value of 0 produces a horizontal halftone pattern. This parameter specifies the number of degrees to change the pattern. Positive values rotate the pattern clockwise; negative values rotate the pattern counterclockwise. This value is ignored if uType is HT_RECT, HT_CIRC, HT_RAND or HT_USERDEF.

uType

Value that represents the halftone pattern. Possible values are:

 

Value

Meaning

 

HT_PRINT

[0x0000] Halftone for printing

 

HT_VIEW

[0x0001] Halftone for display

 

HT_RECT

[0x0002] Rectangular halftone

 

HT_CIRC

[0x0003] Circular halftone

 

HT_ELLIPS

[0x0004] Elliptical halftone

 

HT_RAND

[0x0005] Random halftone

 

HT_LINEAR

[0x0006] Linear halftone

 

HT_USERDEF

[0x0007] User defined halftone

pBitmapList

Pointer to a DLGBITMAPLIST structure that contains the bitmaps to halftone. Setting this before calling the L_DlgHalftone function will initialize the "Available List" in the dialog. The pszDescription member of the DLGBITMAPLIST structure will be used to fill the "Available List" field(s) and the pszFileName member of the DLGBITMAPLIST structure is ignored. If NULL the HT_USERDEF and controls releated to this option will be hidden.

puInListIndexes

An array of indexes into the pBitmapList array of bitmaps. (The value in puInListIndexes[i] is the index into the pBitmapList array.) The bitmaps referenced by the indexes in this list will be included in the "Selected List" when the Halftone Dialog is first displayed. If you pass NULL "Selected List" will be empty.

nInCount

Number of items in the puInListIndexes array.

hList

Handle to the list of bitmaps which will contains all the bitmaps in the "Selected List" and that will be used in half toning if the HT_USERDEF option is selected, this member should be created throw L_CreateBitmapList before calling the dialog, and it is the user responsibility to destroy this list.

Note: This member will be ignored if the pBitmapList value NULL.

uDlgFlags

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

 

Value

Meaning

 

DLG_HALFTONE_AUTOPROCESS

[0x00000001] process the image on OK. The pBitmap member of this structure should contain a valid bitmap.

 

DLG_HALFTONE_SHOW_CONTEXTHELP

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

 

DLG_HALFTONE_SHOW_PREVIEW

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

 

DLG_HALFTONE_SHOW_TOOL_ZOOMLEVEL

[0x00000008] show the "Zoom to fit" and "Zoom Normal" toolbar buttons. The DLG_HALFTONE_SHOW_PREVIEW flag must be set in order to show these buttons.

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.