Module: wine Branch: refs/heads/master Commit: aa57ad373d50caf3d48c22a814ead474098cba32 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=aa57ad373d50caf3d48c22a8...
Author: James Hawkins truiken@gmail.com Date: Thu Mar 23 00:07:10 2006 -0600
comctl32: A couple fixes for tab icon offsets.
- Shift selected icons up and non-selected icons down. - Add the top or left draw rect to the vertical offset, because it may not be zero.
---
dlls/comctl32/tab.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/comctl32/tab.c b/dlls/comctl32/tab.c index 5c9443c..fa02477 100644 --- a/dlls/comctl32/tab.c +++ b/dlls/comctl32/tab.c @@ -1747,14 +1747,20 @@ TAB_DrawItemInterior if(lStyle & TCS_VERTICAL) { center_offset_h = ((drawRect->bottom - drawRect->top) - (cy + infoPtr->uHItemPadding + (rcText.right - rcText.left))) / 2; - center_offset_v = ((drawRect->right - drawRect->left) - (cx + infoPtr->uVItemPadding)) / 2; + center_offset_v = (drawRect->left + (drawRect->right - drawRect->left) - cx) / 2; } else { center_offset_h = ((drawRect->right - drawRect->left) - (cx + infoPtr->uHItemPadding + (rcText.right - rcText.left))) / 2; - center_offset_v = ((drawRect->bottom - drawRect->top) - (cy + infoPtr->uVItemPadding)) / 2; + center_offset_v = (drawRect->top + (drawRect->bottom - drawRect->top) - cy) / 2; }
+ /* if an item is selected, the icon is shifted up instead of down */ + if (iItem == infoPtr->iSelected) + center_offset_v -= infoPtr->uVItemPadding / 2; + else + center_offset_v += infoPtr->uVItemPadding / 2; + if (lStyle & TCS_FIXEDWIDTH && lStyle & (TCS_FORCELABELLEFT | TCS_FORCEICONLEFT)) center_offset_h = infoPtr->uHItemPadding;