EXTPUSH

typedef struct _EXTPUSH {
    WORD                  cbSize;
    WORD                  Flags;
    LPTSTR                pTitle;
    union {
        DLGPROC           DlgProc;
        FARPROC           pfnCallBack;
    }
    DWORD                 IconID;
    union {
        WORD              DlgTemplateID;
        HANDLE            hDlgTemplate;
    }
    DWORD                 dwReserved[3];
} EXTPUSH, *PEXTPUSH;

The EXTPUSH structure describes the extended push button available on an OPTITEM. Each option item can optionally have one extended push button callback or one extended check box callback.

Members

cbSize
Size of this structure in bytes.
Flags
Bitmask that describes the extended push button. This field can be a bitwise OR of the following values.

Flag

Description

EPF_PUSH_TYPE_DLGPROC

The extended push button has a DLGPROC function associated with it. The CPSUI uses the DlgProc and DlgTemplateID fields.

EPF_INCLUDE_SETUP_TITLE

The CPSUI appends “Setup” to the string to which pTitle points.

EPF_NO_DOT_DOT_DOT

The CPSUI does not append “…” to the string to which pTitle points.

EPF_ICONID_AS_HICON

The CPSUI interprets IconID as a handle to an icon rather than as a resource ID.

EPF_OVERLAY_WARNING_ICON

The CPSUI overlays its IDI_CPSUI_WARNING icon on the icon associated with this push button.

EPF_OVERLAY_STOP_ICON

The CPSUI overlays its IDI_CPSUI_STOP icon on the icon associated with this push button.

EPF_OVERLAY_NO_ICON

The CPSUI overlays its IDI_CPSUI_NO icon on the icon associated with this push button.

EPF_USE_HDLGTEMPLATE

The CPSUI uses the hDlgTemplate field to obtain the dialog box template.

pTitle
Pointer to a null-terminated string to be used as the extended push button title, or a resource ID.
DlgProc
Pointer to a caller-supplied DLGPROC function. The CPSUI calls the Win32 DialogBoxParam function with this function pointer, and passes a pointer to the CPSUICBPARAM structure ¾ with the Reason field set to CPSUICB_REASON_EXTPUSH ¾ to the WM_INITDIALOG message. If DlgProc is null, the CPSUI assumes that the extended push button is disabled. If DlgProc is not null, the CPSUI calls it only when the EPF_PUSH_TYPE_DLGPROC flag is set.
pfnCallBack
Pointer to a _CPSUICALLBACK callback. The CPSUI calls the function to which pfnCallBack points only when the EPF_PUSH_TYPE_DLGPROC flag is not set. The CPSUI passes a pointer to the CPSUICBPARAM structure as the parameter to this callback.
IconID
Identifies the icon to be associated with this push button. This field can be a standard IDI_CPSUI_Xxx icon ID, a caller’s icon resource ID, or, if the EPF_ICONID_AS_HICON bit is set in Flags, a handle to a caller-defined icon. If IconID is zero, the selectable entry does not have an icon associated with it.
DlgTemplateID
Specifies the resource ID for the dialog box.
hDlgTemplate
Handle to the DLGTEMPLATE that the CPSUI uses to display the dialog box.
dwReserved[3]
Reserved; these fields must be set to zero.

Comments

The EXTPUSH structure describes the extended push button available on an OPTITEM.

The pTitle parameter is either a pointer to a null-terminated string or an integer value that specifies a resource identifier. If pTitle specifies a resource identifier, its high-order word must be zero and its low-order word must contain the identifier.

See Also

OPTITEM