Module: wine Branch: master Commit: bdd1206ca5ea4e73e73df3f876dd07c37f94f255 URL: http://source.winehq.org/git/wine.git/?a=commit;h=bdd1206ca5ea4e73e73df3f876...
Author: Nikolay Sivov bunglehead@gmail.com Date: Mon Mar 23 16:12:51 2009 -0400
comctl32/listview: Some tests for LVM_GETSUBITEMRECT.
---
dlls/comctl32/tests/listview.c | 57 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 57 insertions(+), 0 deletions(-)
diff --git a/dlls/comctl32/tests/listview.c b/dlls/comctl32/tests/listview.c index 4562f2e..813d9bb 100644 --- a/dlls/comctl32/tests/listview.c +++ b/dlls/comctl32/tests/listview.c @@ -1222,6 +1222,62 @@ static void test_multiselect(void) DestroyWindow(hwnd); }
+static void test_subitem_rect(void) +{ + HWND hwnd; + DWORD r; + LVCOLUMN col; + RECT rect; + + /* test LVM_GETSUBITEMRECT for header */ + hwnd = create_listview_control(); + ok(hwnd != NULL, "failed to create a listview window\n"); + /* add some columns */ + memset(&col, 0, sizeof(LVCOLUMN)); + col.mask = LVCF_WIDTH; + col.cx = 100; + r = -1; + r = SendMessage(hwnd, LVM_INSERTCOLUMN, 0, (LPARAM)&col); + expect(0, r); + col.cx = 150; + r = -1; + r = SendMessage(hwnd, LVM_INSERTCOLUMN, 1, (LPARAM)&col); + expect(1, r); + col.cx = 200; + r = -1; + r = SendMessage(hwnd, LVM_INSERTCOLUMN, 2, (LPARAM)&col); + expect(2, r); + /* item = -1 means header, subitem index is 1 based */ + rect.left = LVIR_BOUNDS; + rect.top = 0; + rect.right = rect.bottom = 0; + r = SendMessage(hwnd, LVM_GETSUBITEMRECT, -1, (LPARAM)&rect); + expect(0, r); + + rect.left = LVIR_BOUNDS; + rect.top = 1; + rect.right = rect.bottom = 0; + r = SendMessage(hwnd, LVM_GETSUBITEMRECT, -1, (LPARAM)&rect); +todo_wine{ + ok(r != 0, "Expected not-null LRESULT\n"); + expect(100, rect.left); + expect(250, rect.right); + expect(3, rect.top); +} + rect.left = LVIR_BOUNDS; + rect.top = 2; + rect.right = rect.bottom = 0; + r = SendMessage(hwnd, LVM_GETSUBITEMRECT, -1, (LPARAM)&rect); +todo_wine{ + ok(r != 0, "Expected not-null LRESULT\n"); + expect(250, rect.left); + expect(450, rect.right); + expect(3, rect.top); +} + + DestroyWindow(hwnd); +} + START_TEST(listview) { HMODULE hComctl32; @@ -1259,4 +1315,5 @@ START_TEST(listview) test_columns(); test_getorigin(); test_multiselect(); + test_subitem_rect(); }