I just added a public property called Hwnd.GraphicsContext that is a cached Graphics we keep around for measuring and such. If you don't need a specific Graphics, you can just use this one.
Jon Carlos Alberto Cortez wrote: > Hey Chris, > > Attached is an updated patch that basically incorporates all the things > you mentioned in your last mail: > > * Determines the visible rectangle, and intersects it with the required > area (this is, we copy only the visible area). > - First by determining the visible area based on its size and its > parents. > - Second, by looking for toplevel windows that intersect the window, > and excluding that area. > > * Then compute the destination rectangle, by applying the > XAmount/YAmount values and intersecting it with the area passed to > ScrollWindow (thus we clip it as needed). This is the way Gdk does it. > > * Finally, exclude the destination rectangle from the total requested > area, and pass it to AddExpose method. > > With this patch everyting is working as expected, but I have some > issues: > > * Region needs a Graphics instance to return its Bounds, which *could* > be expensive. > * After taking a look at the way scrolling is done in Gdk, it *seems* > that the Region implementation lack some of the functionality we need > (like, returning in a simple operation the Rectangles describing the > region). > > Comments? > > Carlos. > > > ------------------------------------------------------------------------ > > _______________________________________________ > Mono-winforms-list maillist - [email protected] > http://lists.ximian.com/mailman/listinfo/mono-winforms-list _______________________________________________ Mono-winforms-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-winforms-list
