Re: redraw again.

Marc Strämke <[email protected]> Sat, 13 Sep 2003 15:05:17 +0200
Newsgroups gmane.comp.embedded.stk.gui.devel
Message-ID <[email protected]>
I've commited some variation of this to the cvs repo, please check it 
for error *test it and break it*. I still think this solution is a bit 
hackish, we should think about a cleaner one really imo! (had to get the 
stuff to work today though, so my time is limited)

Marc Strämke wrote:
> I've implemented a work around for now, i substract rect().position from 
>  the position of the rect given to redraw, this makes widget's redraw 
> routine behave like before, i didnt do that for container's though, so 
> if we use redraw in a container we have to use local coordinates
> 
> Marc Strämke wrote:
> 
>> Hi team,
>> while coding on my uber application i've stumbled across some more 
>> redraw problems :)
>> Many widgets call redraw(rect()); The problem is that, when we specify 
>> that redraw uses local coordinates, the call parent->redraw(rect()); 
>> would be appropiate, because rect() is relative to the parent's 
>> coordinate system where redraw is not. IMO it is not possible to get 
>> redraw work in parent's coordinate system without introducing a second 
>> redraw function for the upcall. My proposal is that we introduce a 
>> second overload in widget for redraw without parameters, which calls 
>> parent->redraw(rect); and in situations where the widget wants to be 
>> only partly redrawn it has to call parent->redraw with the appropiate 
>> coordinates. If you've got any other good idea how to handle this, 
>> pleas   let me know :)
>