#if !defined(TASKDIALOGCONFIG_X_52DD9F63_F838_11D4_B292_444553540000) #define TASKDIALOGCONFIG_X_52DD9F63_F838_11D4_B292_444553540000 /**Added by Erich Willems to support mixed pushnuttons(commandbuttons not only for common but also for cunstom pushbuttons*/ struct TASKDIALOGCONFIG_X : public TASKDIALOGCONFIG { typedef TASKDIALOGCONFIG_X Tp; typedef TASKDIALOGCONFIG TpCtx; UINT cbSize_X; UINT SzPushButtons; //explicit pushbuttons also if command_link is set const TASKDIALOG_BUTTON* PushButtons; TASKDIALOGCONFIG_X() { cbSize =sizeof(TASKDIALOGCONFIG); hwndParent =0; hInstance =0; dwFlags =0; dwCommonButtons =0; pszWindowTitle =0; hMainIcon =0; pszMainInstruction =0; pszContent =0; cButtons =0; pButtons =0; nDefaultButton =0; cRadioButtons =0; pRadioButtons =0; nDefaultRadioButton =0; pszVerificationText =0; pszExpandedInformation =0; pszExpandedControlText =0; pszCollapsedControlText =0; hFooterIcon =0; pszFooter =0; pfCallback =0; lpCallbackData =0; cxWidth =0; cbSize_X =sizeof(TASKDIALOGCONFIG_X); SzPushButtons =0; PushButtons =0; } TASKDIALOGCONFIG_X(const Tp& src) { cbSize =(src.cbSize ); hwndParent =(src.hwndParent ); hInstance =(src.hInstance ); dwFlags =(src.dwFlags ); dwCommonButtons =(src.dwCommonButtons ); pszWindowTitle =(src.pszWindowTitle ); hMainIcon =(src.hMainIcon ); pszMainInstruction =(src.pszMainInstruction ); pszContent =(src.pszContent ); cButtons =(src.cButtons ); pButtons =(src.pButtons ); nDefaultButton =(src.nDefaultButton ); cRadioButtons =(src.cRadioButtons ); pRadioButtons =(src.pRadioButtons ); nDefaultRadioButton =(src.nDefaultRadioButton ); pszVerificationText =(src.pszVerificationText ); pszExpandedInformation =(src.pszExpandedInformation ); pszExpandedControlText =(src.pszExpandedControlText ); pszCollapsedControlText =(src.pszCollapsedControlText); hFooterIcon =(src.hFooterIcon ); pszFooter =(src.pszFooter ); pfCallback =(src.pfCallback ); lpCallbackData =(src.lpCallbackData ); cxWidth =(src.cxWidth ); cbSize_X =(src.cbSize_X ); SzPushButtons =(src.SzPushButtons ); PushButtons =(src.PushButtons ); }; TASKDIALOGCONFIG_X(const TpCtx& src){ cbSize =(src.cbSize ); hwndParent =(src.hwndParent ); hInstance =(src.hInstance ); dwFlags =(src.dwFlags ); dwCommonButtons =(src.dwCommonButtons ); pszWindowTitle =(src.pszWindowTitle ); hMainIcon =(src.hMainIcon ); pszMainInstruction =(src.pszMainInstruction ); pszContent =(src.pszContent ); cButtons =(src.cButtons ); pButtons =(src.pButtons ); nDefaultButton =(src.nDefaultButton ); cRadioButtons =(src.cRadioButtons ); pRadioButtons =(src.pRadioButtons ); nDefaultRadioButton =(src.nDefaultRadioButton ); pszVerificationText =(src.pszVerificationText ); pszExpandedInformation =(src.pszExpandedInformation ); pszExpandedControlText =(src.pszExpandedControlText ); pszCollapsedControlText =(src.pszCollapsedControlText); hFooterIcon =(src.hFooterIcon ); pszFooter =(src.pszFooter ); pfCallback =(src.pfCallback ); lpCallbackData =(src.lpCallbackData ); cxWidth =(src.cxWidth ); cbSize_X =(sizeof(Tp) ); SzPushButtons =(0 ); PushButtons =(NULL ); }; Tp& operator=(const Tp& src) { cbSize =(src.cbSize ); hwndParent =(src.hwndParent ); hInstance =(src.hInstance ); dwFlags =(src.dwFlags ); dwCommonButtons =(src.dwCommonButtons ); pszWindowTitle =(src.pszWindowTitle ); hMainIcon =(src.hMainIcon ); pszMainInstruction =(src.pszMainInstruction ); pszContent =(src.pszContent ); cButtons =(src.cButtons ); pButtons =(src.pButtons ); nDefaultButton =(src.nDefaultButton ); cRadioButtons =(src.cRadioButtons ); pRadioButtons =(src.pRadioButtons ); nDefaultRadioButton =(src.nDefaultRadioButton ); pszVerificationText =(src.pszVerificationText ); pszExpandedInformation =(src.pszExpandedInformation ); pszExpandedControlText =(src.pszExpandedControlText ); pszCollapsedControlText =(src.pszCollapsedControlText); hFooterIcon =(src.hFooterIcon ); pszFooter =(src.pszFooter ); pfCallback =(src.pfCallback ); lpCallbackData =(src.lpCallbackData ); cxWidth =(src.cxWidth ); cbSize_X =(src.cbSize_X ); SzPushButtons =(src.SzPushButtons ); PushButtons =(src.PushButtons ); return *this; }; Tp& operator=(const TpCtx& src) { cbSize =(src.cbSize ); hwndParent =(src.hwndParent ); hInstance =(src.hInstance ); dwFlags =(src.dwFlags ); dwCommonButtons =(src.dwCommonButtons ); pszWindowTitle =(src.pszWindowTitle ); hMainIcon =(src.hMainIcon ); pszMainInstruction =(src.pszMainInstruction ); pszContent =(src.pszContent ); cButtons =(src.cButtons ); pButtons =(src.pButtons ); nDefaultButton =(src.nDefaultButton ); cRadioButtons =(src.cRadioButtons ); pRadioButtons =(src.pRadioButtons ); nDefaultRadioButton =(src.nDefaultRadioButton ); pszVerificationText =(src.pszVerificationText ); pszExpandedInformation =(src.pszExpandedInformation ); pszExpandedControlText =(src.pszExpandedControlText ); pszCollapsedControlText =(src.pszCollapsedControlText); hFooterIcon =(src.hFooterIcon ); pszFooter =(src.pszFooter ); pfCallback =(src.pfCallback ); lpCallbackData =(src.lpCallbackData ); cxWidth =(src.cxWidth ); cbSize_X =(sizeof(Tp) ); SzPushButtons =(0 ); PushButtons =(NULL ); return *this; }; }; #endif // !defined(TASKDIALOGCONFIG_X_52DD9F63_F838_11D4_B292_444553540000)