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 » Could anyone create a small example with the new ScrollArea?
Re: Could anyone create a small example with the new ScrollArea? [message #3013 is a reply to message #3009] Wed, 03 May 2006 12:44 Go to previous messageGo to previous message
mirek is currently offline  mirek
Messages: 14261
Registered: November 2005
Ultimate Member
fudadmin wrote on Wed, 03 May 2006 05:14

Then I would kindly to ask you a brief description of how to use those methods in Ctrl.h
	void        ScrollView(const Rect& r, int dx, int dy);
	void        ScrollView(int x, int y, int cx, int cy, int dx, int dy);
	void        ScrollView(int dx, int dy);
	void        ScrollView(const Rect& r, Size delta)    { ScrollView(r, delta.cx, delta.cy); }
	void        ScrollView(Size delta)                   { ScrollView(delta.cx, delta.cy); }




I guess they are quite obvious after explaining one fundamental thing:

All those functions should be considered as variant of Refresh. Means, they are optimized Refresh where programmer asserts that portion of view area can be obtained by scrolling the current content.

CtrlCore then decides what to do. In fact, it can and does perform simple Refresh instead of scrolling if it fits better.

(BTW, there is still one important unimplemented optimization regarding child Ctrl move / view scroll....)

(BTW2, maybe we should also consider detection of "pane move" and implement it using scrolling optimization where possible).

Mirek
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Borderless always-on-top non-modal window
Next Topic: how to add runtime StaticText and hook mouse events for it
Goto Forum:
  


Current Time: Sat Jun 07 01:14:25 CEST 2025

Total time taken to generate the page: 0.05213 seconds