Re: Double-buffering and request caching




Derek Simkowiak <dereks@kd-dev.com> writes:

>      All,
> 	I'm not up on the current state of Gtk+ development, so my
> apologies if this is out of place.
> 
> 	But I thought I read some discussion about using double-buffering
> in a future version of Gtk+.
> 
> 	Below is a mail I got from a Tk (as in Tcl/Tk) developer.
> Appearantly, all Tk widgets are double-buffered (using a Pixmap), but more
> interestingly, they also cache redraw requests to the server and send the 
> requests when they are idle.

GTK+ has done updates in the idle loop since 1997. The gtk-no-flicker
branch in CVS is even more aggressive about doing updates in the 
idle loop and has a pretty slick framework for double-buffered 
drawing.
 
> 	I just thought I'd offer submit it for your review.  The Tk
> toolkit seems to have several interesting ideas in its framework, and
> is worthy of study...

Yes, it is generally a well thought-out toolkit (except for the Tcl
dependency), and also has excellently commented code. I borrowed a
number of ideas from Tk for implementing the selection-handling code
in GTK+ and the Plug/Socket widgets.

And of course, GnomeCanvas was originally based on the TkCanvas,
though GnomeCanvas is now quite a ways ahead of the TkCanvas in a
number of areas (canvas groups, custom items, object orientation,
antialiased drawing, micro-tile based update queueing.)

Regards,
                                             Owen



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]