On Tuesday 20 Dec 2005 09:41, Guillaume Laurent wrote:
> Actually I wonder if this isn't what we were looking for in the first
> place, rather than maintaining our own seg buffer update rect :-).

No, they're two separate problems.  You're mixing up modified and exposed 
areas again.

It's easy to get the right update rectangles through to the viewportPaintEvent 
during pointer position changes by the simple (but blunt) expedient of using 
repaints instead of updates.  I tried that last week or whenever it was, and 
reported the results here.  The problem is that if we only had a single flag 
for the fact that something had changed, we still had to recreate the entire 
buffer because we didn't know what that thing was.

You may be able to get around this by assuming that the area needing 
repainting is always a superset of the area that has changed, and always 
recreating all of that.  This assumption is likely to be true, in our case, 
but it's not certain because there's no guarantee that the paint event 
associated with the region for a particular change will be the next paint 
event following that change.  I'm not sure whether that would matter in 
practice, but it certainly breaks the logic.  It would also mean recreating 
quite a lot of buffer areas unnecessarily, and in particular it would be slow 
while the playback pointer was moving, as parts of lots of segments exposed 
under the moving pointer would be constantly redrawn unnecessarily -- 
avoiding this is a large part of why we have this buffer in the first place.


Chris


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to