Martin can you try this patch to see if it helps ?

Maxime

PS: Apply it against the current cvs

On Fri, 2003-08-15 at 11:11, Maxime Bellengé wrote:
> The callbackMask is used to determine if a style that a program want to
> modify is handled by a callback. In this case there is no reason to do
> something.
> 
>      NMTVDISPINFOA callback;
>      HWND hwnd = infoPtr->hwnd;
>   
> -    mask &= wineItem->callbackMask;
> +    mask &= ~wineItem->callbackMask;
>   
>      if (mask == 0) return;
> 
> My 1 line patch changes the test in TREEVIEW_UpdateDispInfo.
> mask is a flag with the properties you want to change, callbackMask is a
> flag with the properties handled with a callback. So in my opinion this
> test was wrong.
> 
> The change I made fixes eMule, now the statistical treeview displays
> correctly.
> 
> So I think my fix triggered another bug now rather than it being wrong.
> 
> Max
> 
> 
> On Fri, 2003-08-15 at 10:44, Martin Fuchs wrote:
> > On Wed 13. August 2003 14:58, Maxime Bellengé wrote:
> > > In TREEVIEW_UpdateDispInfo, a test is made to determine if the property
> > > we want to change is handled by a callback. If so, the change is
> > > dropped.
> > > But that test was done incorrectly.
> > >
> > > Now the treeview in the statistical page of eMule displays correctly.
> > >
> > > Changelog:
> > >   * Fix for TREEVIEW_UpdateDispInfo to test with the correct
> > > callbackMask
> > 
> > This patch, which is now commited leads to problems for me.
> > Now the labels in the tree fiew of some explorer test programs remain empty.
> > May be this callback mask has to adjusted at some more points in the code. But 
> > I don't know, what it's used exactly for.
> > Anyone any ideas?
-- 
Maxime Bellengé <[EMAIL PROTECTED]>
Index: wine/dlls/comctl32/treeview.c
===================================================================
RCS file: /home/wine/wine/dlls/comctl32/treeview.c,v
retrieving revision 1.121
diff -u -r1.121 treeview.c
--- wine/dlls/comctl32/treeview.c	13 Aug 2003 19:37:12 -0000	1.121
+++ wine/dlls/comctl32/treeview.c	15 Aug 2003 09:44:44 -0000
@@ -683,7 +683,7 @@
     NMTVDISPINFOA callback;
     HWND hwnd = infoPtr->hwnd;
 
-    mask &= ~wineItem->callbackMask;
+    mask &= wineItem->callbackMask;
 
     if (mask == 0) return;
 
@@ -1151,6 +1151,9 @@
 	      tvItem->stateMask);
 	wineItem->state &= ~tvItem->stateMask;
 	wineItem->state |= (tvItem->state & tvItem->stateMask);
+
+	if (tvItem->stateMask & TVIS_BOLD)
+	  callbackSet |= TVIF_TEXT;
     }
 
     wineItem->callbackMask |= callbackSet;

Reply via email to