Commit 4bc8e87a authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

comctl32/listview: Add tests for LVS_NOSORTHEADER switchover.

parent 5123ffc3
......@@ -9631,8 +9631,6 @@ static INT LISTVIEW_StyleChanged(LISTVIEW_INFO *infoPtr, WPARAM wStyleType,
wStyleType, lpss->styleOld, lpss->styleNew);
if (wStyleType != GWL_STYLE) return 0;
/* FIXME: if LVS_NOSORTHEADER changed, update header */
infoPtr->dwStyle = lpss->styleNew;
......
......@@ -2027,6 +2027,47 @@ static void test_norecompute(void)
DestroyWindow(hwnd);
}
static void test_nosortheader(void)
{
HWND hwnd, header;
LONG_PTR style;
hwnd = create_listview_control(0);
ok(hwnd != NULL, "failed to create a listview window\n");
header = (HWND)SendMessageA(hwnd, LVM_GETHEADER, 0, 0);
ok(IsWindow(header), "header expected\n");
style = GetWindowLongPtr(header, GWL_STYLE);
ok(style & HDS_BUTTONS, "expected header to have HDS_BUTTONS\n");
style = GetWindowLongPtr(hwnd, GWL_STYLE);
SetWindowLongPtr(hwnd, GWL_STYLE, style | LVS_NOSORTHEADER);
/* HDS_BUTTONS retained */
style = GetWindowLongPtr(header, GWL_STYLE);
ok(style & HDS_BUTTONS, "expected header to retain HDS_BUTTONS\n");
DestroyWindow(hwnd);
/* create with LVS_NOSORTHEADER */
hwnd = create_listview_control(LVS_NOSORTHEADER);
ok(hwnd != NULL, "failed to create a listview window\n");
header = (HWND)SendMessageA(hwnd, LVM_GETHEADER, 0, 0);
ok(IsWindow(header), "header expected\n");
style = GetWindowLongPtr(header, GWL_STYLE);
ok(!(style & HDS_BUTTONS), "expected header to have no HDS_BUTTONS\n");
style = GetWindowLongPtr(hwnd, GWL_STYLE);
SetWindowLongPtr(hwnd, GWL_STYLE, style & ~LVS_NOSORTHEADER);
/* not changed here */
style = GetWindowLongPtr(header, GWL_STYLE);
ok(!(style & HDS_BUTTONS), "expected header to have no HDS_BUTTONS\n");
DestroyWindow(hwnd);
}
START_TEST(listview)
{
HMODULE hComctl32;
......@@ -2068,4 +2109,5 @@ START_TEST(listview)
test_sorting();
test_ownerdata();
test_norecompute();
test_nosortheader();
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment