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