[PATCH 1/2] comctl32/tests: Basic test for TVS_FULLROWSELECT style bit

Nikolay Sivov nsivov at codeweavers.com
Mon Aug 8 02:57:15 CDT 2016


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/comctl32/tests/treeview.c | 25 +++++++++++++++++++++++++
 include/commctrl.h             |  2 +-
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/dlls/comctl32/tests/treeview.c b/dlls/comctl32/tests/treeview.c
index 7e6c731..e2fb443 100644
--- a/dlls/comctl32/tests/treeview.c
+++ b/dlls/comctl32/tests/treeview.c
@@ -2369,6 +2369,30 @@ static void test_WM_KEYDOWN(void)
     DestroyWindow(hwnd);
 }
 
+static void test_TVS_FULLROWSELECT(void)
+{
+    DWORD style;
+    HWND hwnd;
+
+    /* try to create both with TVS_HASLINES and TVS_FULLROWSELECT */
+    hwnd = create_treeview_control(TVS_FULLROWSELECT);
+
+    style = GetWindowLongA(hwnd, GWL_STYLE);
+    ok((style & (TVS_FULLROWSELECT | TVS_HASLINES)) == (TVS_FULLROWSELECT | TVS_HASLINES), "got style 0x%08x\n", style);
+
+    DestroyWindow(hwnd);
+
+    /* create just with TVS_HASLINES, try to enable TVS_FULLROWSELECT later */
+    hwnd = create_treeview_control(0);
+
+    style = GetWindowLongA(hwnd, GWL_STYLE);
+    SetWindowLongA(hwnd, GWL_STYLE, style | TVS_FULLROWSELECT);
+    style = GetWindowLongA(hwnd, GWL_STYLE);
+    ok(style & TVS_FULLROWSELECT, "got style 0x%08x\n", style);
+
+    DestroyWindow(hwnd);
+}
+
 START_TEST(treeview)
 {
     HMODULE hComctl32;
@@ -2444,6 +2468,7 @@ START_TEST(treeview)
     test_WM_GETDLGCODE();
     test_customdraw();
     test_WM_KEYDOWN();
+    test_TVS_FULLROWSELECT();
 
     if (!load_v6_module(&ctx_cookie, &hCtx))
     {
diff --git a/include/commctrl.h b/include/commctrl.h
index 7d6f5c5..dde038b 100644
--- a/include/commctrl.h
+++ b/include/commctrl.h
@@ -2400,7 +2400,7 @@ static const WCHAR WC_TREEVIEWW[] = { 'S','y','s',
 #define TVHT_ONITEMBUTTON     0x0010
 #define TVHT_ONITEMRIGHT      0x0020
 #define TVHT_ONITEMSTATEICON  0x0040
-#define TVHT_ONITEM           0x0046
+#define TVHT_ONITEM           (TVHT_ONITEMICON | TVHT_ONITEMLABEL | TVHT_ONITEMSTATEICON)
 #define TVHT_ABOVE            0x0100
 #define TVHT_BELOW            0x0200
 #define TVHT_TORIGHT          0x0400
-- 
2.8.1




More information about the wine-patches mailing list