Module: wine Branch: master Commit: 25d916e73a454da0d6fd8ea4f7a8b4927e10047b URL: http://source.winehq.org/git/wine.git/?a=commit;h=25d916e73a454da0d6fd8ea4f7...
Author: Nikolay Sivov bunglehead@gmail.com Date: Sun Jun 21 01:25:03 2009 +0400
comctl32/header: Add support for HDS_FLAT style.
---
dlls/comctl32/header.c | 30 +++++++++++++++++++----------- 1 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c index fed582d..1486a8a 100644 --- a/dlls/comctl32/header.c +++ b/dlls/comctl32/header.c @@ -329,18 +329,21 @@ HEADER_DrawItem (HEADER_INFO *infoPtr, HDC hdc, INT iItem, BOOL bHotTrack, LRESU } else { HBRUSH hbr; - - if (infoPtr->dwStyle & HDS_BUTTONS) { - if (phdi->bDown) { - DrawEdge (hdc, &r, BDR_RAISEDOUTER, - BF_RECT | BF_FLAT | BF_MIDDLE | BF_ADJUST); + + if (!(infoPtr->dwStyle & HDS_FLAT)) + { + if (infoPtr->dwStyle & HDS_BUTTONS) { + if (phdi->bDown) { + DrawEdge (hdc, &r, BDR_RAISEDOUTER, + BF_RECT | BF_FLAT | BF_MIDDLE | BF_ADJUST); + } + else + DrawEdge (hdc, &r, EDGE_RAISED, + BF_RECT | BF_SOFT | BF_MIDDLE | BF_ADJUST); } else - DrawEdge (hdc, &r, EDGE_RAISED, - BF_RECT | BF_SOFT | BF_MIDDLE | BF_ADJUST); + DrawEdge (hdc, &r, EDGE_ETCHED, BF_BOTTOM | BF_RIGHT | BF_ADJUST); } - else - DrawEdge (hdc, &r, EDGE_ETCHED, BF_BOTTOM | BF_RIGHT | BF_ADJUST);
hbr = CreateSolidBrush(GetBkColor(hdc)); FillRect(hdc, &r, hbr); @@ -547,14 +550,19 @@ HEADER_Refresh (HEADER_INFO *infoPtr, HDC hdc) if (theme != NULL) { DrawThemeBackground(theme, hdc, HP_HEADERITEM, HIS_NORMAL, &rcRest, NULL); } - else { + else if (infoPtr->dwStyle & HDS_FLAT) { + hbrBk = GetSysColorBrush(COLOR_3DFACE); + FillRect(hdc, &rcRest, hbrBk); + } + else + { if (infoPtr->dwStyle & HDS_BUTTONS) DrawEdge (hdc, &rcRest, EDGE_RAISED, BF_TOP|BF_LEFT|BF_BOTTOM|BF_SOFT|BF_MIDDLE); else DrawEdge (hdc, &rcRest, EDGE_ETCHED, BF_BOTTOM|BF_MIDDLE); } } - + if (infoPtr->iHotDivider != -1) HEADER_DrawHotDivider(infoPtr, hdc);