Le 13 sept. 11 à 17:01, Christian Schmitz a écrit:
>
> Am 13.09.2011 um 16:40 schrieb Arnaud Nicolet:
>
>> c.drawPicture pict, CGMakeRectMBS(0, 0, pict.width, pict.height)
>
> so after this method you can call c.flush.
> And maybe also self.InvalidateShadowMBS
Ok, but then from my method 1 (the not-paint event method), I must
call self.refresh to invoke the paint event.
Now, my code for changing the picture, which still doesn't work, looks
like this (only most useful bits):
Method 1 (init):
DisableScreenUpdatesMBS
Pict=CGCreateImageMBS(p,q)
me.Refresh 'Call the paint event to flush
self.InvalidateShadowMBS
EnableScreenUpdatesMBS
Method 2 (paint event):
dim c as CGContextMBS
c=self.CGContextMBS
c.ClearRect CGMakeRectMBS(0, 0, g.width, g.height)
c.drawPicture pict, CGMakeRectMBS(0, 0, pict.width, pict.height)
c.Flush
In execution order, it's like that:
DisableScreenUpdatesMBS
Pict=CGCreateImageMBS(p,q)
self.CGContextMBS.drawPicture pict, CGMakeRectMBS(0, 0,
pict.width, pict.height)
self.CGContextMBS.Flush
self.InvalidateShadowMBS
EnableScreenUpdatesMBS
So all steps are there (disable screen updates, draw, flush,
invalidate shadows and enable back screen updates) but the shadows are
still not correctly updated.
Ok, we may give up about this, but there's still the InvalidateShadow
that seems broken.
Thanks for your help!
_______________________________________________
Mbsplugins_monkeybreadsoftware.info mailing list
[email protected]
https://ml01.ispgateway.de/mailman/listinfo/mbsplugins_monkeybreadsoftware.info