Nikolay Sivov : comctl32/listview: Improve item position calculating in LVS_REPORT.

Alexandre Julliard julliard at winehq.org
Tue May 26 09:24:54 CDT 2009


Module: wine
Branch: master
Commit: 2a32ce744c43cfaf664e998d0604eaff5933df48
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=2a32ce744c43cfaf664e998d0604eaff5933df48

Author: Nikolay Sivov <bunglehead at gmail.com>
Date:   Tue May 26 04:04:36 2009 +0400

comctl32/listview: Improve item position calculating in LVS_REPORT.

---

 dlls/comctl32/listview.c       |    5 ++++-
 dlls/comctl32/tests/listview.c |    2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/dlls/comctl32/listview.c b/dlls/comctl32/listview.c
index f9b4983..79ac0e3 100644
--- a/dlls/comctl32/listview.c
+++ b/dlls/comctl32/listview.c
@@ -1920,7 +1920,10 @@ static void LISTVIEW_GetItemOrigin(const LISTVIEW_INFO *infoPtr, INT nItem, LPPO
     }
     else /* LVS_REPORT */
     {
-	lpptPosition->x = 0;
+	lpptPosition->x = REPORT_MARGINX;
+	/* item is always at zero indexed column */
+	if (DPA_GetPtrCount(infoPtr->hdpaColumns) > 0)
+	    lpptPosition->x += LISTVIEW_GetColumnInfo(infoPtr, 0)->rcHeader.left;
 	lpptPosition->y = nItem * infoPtr->nItemHeight;
     }
 }
diff --git a/dlls/comctl32/tests/listview.c b/dlls/comctl32/tests/listview.c
index 1a1ae06..47477a4 100644
--- a/dlls/comctl32/tests/listview.c
+++ b/dlls/comctl32/tests/listview.c
@@ -2538,7 +2538,7 @@ static void test_getitemposition(void)
     memset(&rect, 0, sizeof(rect));
     SendMessage(header, HDM_GETITEMRECT, 0, (LPARAM)&rect);
     /* some padding? */
-    todo_wine expect(2, pt.x);
+    expect(2, pt.x);
     /* offset by header height */
     expect(rect.bottom - rect.top, pt.y);
 




More information about the wine-cvs mailing list