From: Fabian Maurer Subject: [PATCH 17/18] comctl32: TaskDialog - Implement TDM_HELP and add tests Message-Id: <20170225160146.32556-17-dark.shadow4@web.de> Date: Sat, 25 Feb 2017 17:01:45 +0100 In-Reply-To: <20170225160146.32556-1-dark.shadow4@web.de> References: <20170225160146.32556-1-dark.shadow4@web.de> Signed-off-by: Fabian Maurer --- dlls/comctl32/taskdialog.c | 3 +++ dlls/comctl32/tests/taskdialog.c | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/dlls/comctl32/taskdialog.c b/dlls/comctl32/taskdialog.c index ff0d0530c3..fefdf37efd 100644 --- a/dlls/comctl32/taskdialog.c +++ b/dlls/comctl32/taskdialog.c @@ -395,6 +395,9 @@ static INT_PTR CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARA return TRUE; } break; + case WM_HELP: + callback(dialog, TDN_HELP, 0, 0); + return TRUE; /* Custom messages*/ diff --git a/dlls/comctl32/tests/taskdialog.c b/dlls/comctl32/tests/taskdialog.c index ebaa3f070d..e439471548 100644 --- a/dlls/comctl32/tests/taskdialog.c +++ b/dlls/comctl32/tests/taskdialog.c @@ -128,6 +128,15 @@ static const message_data mes_button_clicked_custom4[] = { { TDN_NO_MORE_MESSAGES } }; +static const message_data mes_help[] = { + { TDN_DIALOG_CONSTRUCTED, 0, 0 }, + { TDN_CREATED, 0, 0 }, + { TDN_HELP, 0, 0 }, + { TDN_BUTTON_CLICKED, IDOK, 0 }, + { TDN_DESTROYED, 0, 0 }, + { TDN_NO_MORE_MESSAGES } +}; + /* Message lists to send */ static const message_send_data mes_send_return[] = { @@ -186,6 +195,12 @@ static const message_send_data mes_send_disable_single3[] = { { 0 } }; +static const message_send_data mes_send_F1[] = { + { WM_HELP, 0, 0, NULL, SEND_MAINTHREAD }, + { TDM_CLICK_BUTTON, IDOK, 0 }, + { 0 } +}; + /* Our only way to get a button handle, since GetDlgItem and FindWindowEx don't work for the official taskdialog */ static HWND taskdialog_child; @@ -512,6 +527,10 @@ static void test_TaskDialogIndirect(void) /* Send disable message that's not true or false */ run_test(&info, IDOK, 0, 0, mes_button_clicked_ok, mes_send_disable_single3); + + /* Test TDM_HELP */ + + run_test(&info, IDOK, 0, 0, mes_help, mes_send_F1); } START_TEST(taskdialog) -- 2.12.0