Muffling widget repaints

2004-08-21 Thread Stephen Bach
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

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Muffling widget repaints

2004-08-21 Thread Stephen Bach
BTW, I'm writing towards GTK+ 2.4.

On Sat, Aug 21, 2004 at 02:16:52PM -0400, Stephen Bach wrote:
 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
 
 ___
 gtk-list mailing list
 [EMAIL PROTECTED]
 http://mail.gnome.org/mailman/listinfo/gtk-list
 
 
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Muffling widget repaints

2004-08-21 Thread Paul Davis
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.

by repaint do you mean an expose signal? you should only be
drawing within an expose handler (there is one exception: drawing into
an off-screen drawable, typically a pixmap). drawing at any other time
is just not the correct model.

--p

___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Re: Muffling widget repaints

2004-08-21 Thread Stephen Bach
When I say repaint I just mean that the there is a visible change in the
widget.  I guess I'm not using the word in its conventional GTK sense.

FWIW, I did connect to the expose signal of the container and found that it's
only called once, after the widget switchover is finished.  Which I guess is
ideal.  But the container still appears to be being updated (repainted in
my incorrect terminology) many times during the switchover.  For example, I
can sometimes see the the container's children repositioning themselves.

On Sat, Aug 21, 2004 at 02:22:56PM -0400, Paul Davis wrote:
 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.
 
 by repaint do you mean an expose signal? you should only be
 drawing within an expose handler (there is one exception: drawing into
 an off-screen drawable, typically a pixmap). drawing at any other time
 is just not the correct model.
 
 --p
 
 
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list


Help installing GTK+-2.0 v 2.4.6

2004-08-21 Thread Jeff Lane
Hello all,

I am trying to get GTK+-2.0 installed on a Red Hat AS3 machine.

I downloaded ATK, GTK+, glib, and pango from gtk.org and began the
installation process.

I ran through the configure, make and install of ATK and it worked
perfectly.  I then did glib-2.4.6.  That SEEMED to have gone well, but
I ran into problems when configuring pango.

running configure on pango errors when it gets to glib.  Originally,
it could not find glib at all... so I did this:

#export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/:$PKG_CONFIG_PATH

and reran configure.  This time it got a bit further and complained
about finding the correct version numbers, but then finding glib
version 2.2.3 instead.  SO, I uninstalled 2.2.3 and reran pango
config.

This time, I get this error:

checking for pkg-config... (cached) /usr/bin/pkg-config
checking for GLIB - version = 2.4.0... no
*** Could not run GLIB test program, checking why...
*** The test program compiled, but did not run. This usually means
*** that the run-time linker is not finding GLIB or finding the wrong
*** version of GLIB. If it is not finding GLIB, you'll need to set your
*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point
*** to the installed location  Also, make sure you have run ldconfig if that
*** is required on your system
***
*** If you have an old version installed, it is best to remove it, although
*** you may also be able to get things to work by modifying LD_LIBRARY_PATH
configure: error:
*** Glib 2.4.0 or better is required. The latest version of
*** Glib is always available from ftp://ftp.gtk.org/.
[EMAIL PROTECTED] pango-1.4.1]#

I am not quite sure what to export to LD_LIBRARY_PATH, or what to add
or change to /etc/ld.so.conf to get pango to config.

pango is the last thign I need to start compiling gtk+-2... so could
someome please give me a whack with the cluestick and help me get
pango and gtk+-2 compiled and installed??

Thanks
Jeff
-- 
-- Jeffrey Lane - W4KDH ---
  www.jefflane.org
Yet another IT Ronin

The internet has no government, no constitution, no laws, no
rights, no police, no courts.  Don't talk about fairness or
innocence, and don't talk about what should be done.  Instead,
talk about what is being done and what will be done by the
amorphous unreachable undefinable blob called the internet
user base. -Paul Vixie
___
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list