Module: wine Branch: master Commit: cd8609597a9822e7fe2c6870fbfcabfea7bef58e URL: http://source.winehq.org/git/wine.git/?a=commit;h=cd8609597a9822e7fe2c6870fb...
Author: Daniel Jelinski djelinski1@gmail.com Date: Mon Apr 2 22:30:04 2012 +0200
comctl32/tests: Added tests for treeview TVM_HITTEST message.
---
dlls/comctl32/tests/treeview.c | 42 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-)
diff --git a/dlls/comctl32/tests/treeview.c b/dlls/comctl32/tests/treeview.c index 61a3ce6..2246c79 100644 --- a/dlls/comctl32/tests/treeview.c +++ b/dlls/comctl32/tests/treeview.c @@ -1788,6 +1788,47 @@ static void test_TVM_GETNEXTITEM(void) DestroyWindow(hTree); }
+static void test_TVM_HITTEST(void) +{ + HWND hTree; + LRESULT ret; + RECT rc; + TVHITTESTINFO ht; + + hTree = create_treeview_control(0); + fill_tree(hTree); + + *(HTREEITEM*)&rc = hRoot; + ret = SendMessage(hTree, TVM_GETITEMRECT, TRUE, (LPARAM)&rc); + expect(TRUE, (BOOL)ret); + + ht.pt.x = rc.left-1; + ht.pt.y = rc.top; + + ret = SendMessage(hTree, TVM_HITTEST, 0, (LPARAM)&ht); + ok((HTREEITEM)ret == hRoot, "got %p, expected %p\n", (HTREEITEM)ret, hRoot); + ok(ht.hItem == hRoot, "got %p, expected %p\n", ht.hItem, hRoot); + ok(ht.flags == TVHT_ONITEMBUTTON, "got %d, expected %d\n", ht.flags, TVHT_ONITEMBUTTON); + + ret = SendMessageA(hTree, TVM_EXPAND, TVE_EXPAND, (LPARAM)hRoot); + expect(TRUE, (BOOL)ret); + + *(HTREEITEM*)&rc = hChild; + ret = SendMessage(hTree, TVM_GETITEMRECT, TRUE, (LPARAM)&rc); + expect(TRUE, (BOOL)ret); + + ht.pt.x = rc.left-1; + ht.pt.y = rc.top; + + ret = SendMessage(hTree, TVM_HITTEST, 0, (LPARAM)&ht); + ok((HTREEITEM)ret == hChild, "got %p, expected %p\n", (HTREEITEM)ret, hChild); + ok(ht.hItem == hChild, "got %p, expected %p\n", ht.hItem, hChild); + /* Wine returns item button here, but this item has no button */ + todo_wine ok(ht.flags == TVHT_ONITEMINDENT, "got %d, expected %d\n", ht.flags, TVHT_ONITEMINDENT); + + DestroyWindow(hTree); +} + START_TEST(treeview) { HMODULE hComctl32; @@ -1859,6 +1900,7 @@ START_TEST(treeview) test_htreeitem_layout(); test_TVS_CHECKBOXES(); test_TVM_GETNEXTITEM(); + test_TVM_HITTEST();
if (!load_v6_module(&ctx_cookie, &hCtx)) {