Muffling widget repaints



Hello,

I have a container which periodically loses some of its widgets and gains
others, sometimes on the order of hundreds.  The changeover happens all at
once (i.e. there's a big loop which does all the adding and destroying), but
it's still pretty ugly and slow because sometimes many repaints are done.  I
only care about the final repaint.

Is there some way that I can prevent the intervening repaints from happening?
I've tested hiding and reshowing the container, and it is indeed much faster,
but of course I don't want the user to see the container disappear.  Ideally
I'd have the "before" painting sit until the widget switch-over is done, and
then display the "after" painting.

I was hoping gdk_window_freeze_updates() and gdk_window_thaw_updates() would
help, but they don't seem to do anything.  As a test I even tried freezing
the root gdk window right before calling gtk_main() (and after showing its
widget), but the program proceeded normally.  Maybe I'm not understanding
what these functions are for.

Any insight would be very welcome.

Thanks




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