Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » U++ Library support » U++ Widgets - General questions or Mixed problems » ScrollView() invalidated area
Re: ScrollView() invalidated area [message #8487 is a reply to message #8477] Tue, 13 March 2007 16:01 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 13976
Registered: November 2005
Ultimate Member
Tom1 wrote on Tue, 13 March 2007 08:18

Update to the above:

Did some further digging...

It appears to me that the Ctrl::ScrollView() invalidates the rectangle once and then when the WM_PAINT comes, the Ctrl::SyncScroll() causes the invalidated rectangle to be scrolled effectively doubling the invalidated area.

I think the ScrollView should not invalidate the area but wait for the SyncScroll to do it. Or are there side effects to this approach?

Any ideas...?

-- Tom


Well, there is one important thing to understand here:

ScrollView is just a form of Refresh. There is no guarantee about what is the invalidated area.

ScrollView basically says that the area *CAN* be repainted while reusing existing content and moving it somehow. Implementation can but does not need to use this knowledge.

This all was decided to resolve problem with combined scrolls, scrolling child widgets and many other issues. Current implementation is maybe a little bit too conservative as it sometimes repaints bigger areas than needed (but in practice, this is little problem).

Mirek

[Updated on: Tue, 13 March 2007 16:01]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Previous Topic: CtrlLib and making new iml objects
Next Topic: MenuBar theming bug in Ubuntu
Goto Forum:
  


Current Time: Sun May 12 02:28:00 CEST 2024

Total time taken to generate the page: 0.01993 seconds