comctl32/taskdialog: Add support for TDN_HELP.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zhiyi Zhang 2018-05-17 00:18:06 +03:00 committed by Alexandre Julliard
parent c5b469f7ab
commit 7dcaade498
2 changed files with 36 additions and 0 deletions

View File

@ -561,6 +561,9 @@ static INT_PTR CALLBACK taskdialog_proc(HWND hwnd, UINT msg, WPARAM wParam, LPAR
break;
}
return FALSE;
case WM_HELP:
taskdialog_notify(dialog_info, TDN_HELP, 0, 0);
break;
case WM_DESTROY:
taskdialog_notify(dialog_info, TDN_DESTROYED, 0, 0);
RemovePropW(hwnd, taskdialog_info_propnameW);

View File

@ -121,6 +121,26 @@ static const struct message_info msg_return_press_custom10[] =
{ 0 }
};
static const struct message_info msg_send_click_ok[] =
{
{ TDM_CLICK_BUTTON, IDOK, 0 },
{ 0 }
};
static const struct message_info msg_send_f1[] =
{
{ WM_KEYF1, 0, 0, 0},
{ 0 }
};
static const struct message_info msg_got_tdn_help[] =
{
{ TDN_CREATED, 0, 0, S_OK, msg_send_f1 },
{ TDN_HELP, 0, 0, S_OK, msg_send_click_ok },
{ TDN_BUTTON_CLICKED, IDOK, 0, S_OK, NULL },
{ 0 }
};
static void init_test_message(UINT message, WPARAM wParam, LPARAM lParam, struct message *msg)
{
msg->message = WM_TD_CALLBACK;
@ -291,6 +311,18 @@ static void test_buttons(void)
run_test(&info, ID_START_BUTTON + 3, msg_return_press_custom4, "default button: valid default - 2");
}
static void test_help(void)
{
TASKDIALOGCONFIG info = {0};
info.cbSize = sizeof(TASKDIALOGCONFIG);
info.pfCallback = taskdialog_callback_proc;
info.lpCallbackData = test_ref_data;
info.dwCommonButtons = TDCBF_OK_BUTTON;
run_test(&info, IDOK, msg_got_tdn_help, "send f1");
}
START_TEST(taskdialog)
{
ULONG_PTR ctx_cookie;
@ -327,6 +359,7 @@ START_TEST(taskdialog)
test_invalid_parameters();
test_callback();
test_buttons();
test_help();
unload_v6_module(ctx_cookie, hCtx);
}