James Hawkins : comctl32: A couple fixes for tab icon offsets.
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Mar 23 13:50:21 CST 2006
Module: wine
Branch: refs/heads/master
Commit: aa57ad373d50caf3d48c22a814ead474098cba32
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=aa57ad373d50caf3d48c22a814ead474098cba32
Author: James Hawkins <truiken at 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;
More information about the wine-cvs
mailing list