Listview T4
Dimitrie O. Paun
dpaun at rogers.com
Fri Oct 18 15:27:27 CDT 2002
I've changed my mind: this one should solve Rizsanyi's
"Properties" problems. ;)
ChangeLog
Inspect style bits independently on style change.
--- dlls/comctl32/listview.c.T3 Fri Oct 18 16:04:21 2002
+++ dlls/comctl32/listview.c Fri Oct 18 16:22:33 2002
@@ -8182,18 +8182,22 @@
hl.pwpos = ℘
Header_Layout(infoPtr->hwndHeader, &hl);
SetWindowPos(infoPtr->hwndHeader, infoPtr->hwndSelf, wp.x, wp.y, wp.cx, wp.cy, wp.flags);
- if (!(LVS_NOCOLUMNHEADER & lpss->styleNew))
- ShowWindow(infoPtr->hwndHeader, SW_SHOWNORMAL);
}
infoPtr->nItemWidth = LISTVIEW_CalculateMaxWidth(infoPtr);
infoPtr->nItemHeight = LISTVIEW_CalculateMaxHeight(infoPtr);
-
- if (uNewView == LVS_ICON || uNewView == LVS_SMALLICON)
- {
- if (lpss->styleNew & LVS_ALIGNLEFT) LISTVIEW_AlignLeft(infoPtr);
- else LISTVIEW_AlignTop(infoPtr);
- }
+ }
+
+ if (uNewView == LVS_REPORT)
+ ShowWindow(infoPtr->hwndHeader, (LVS_NOCOLUMNHEADER & lpss->styleNew) ? SW_HIDE : SW_SHOWNORMAL);
+
+ if ( (uNewView == LVS_ICON || uNewView == LVS_SMALLICON) &&
+ (uNewView != uOldView || ((lpss->styleNew ^ lpss->styleOld) & LVS_ALIGNMASK)) )
+ {
+ if (infoPtr->dwStyle & LVS_ALIGNLEFT)
+ LISTVIEW_AlignLeft(infoPtr);
+ else
+ LISTVIEW_AlignTop(infoPtr);
}
/* update the size of the client area */
More information about the wine-patches
mailing list