[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: Re: Functionalities for backbuffering GtkWidgets drawing?? help!!
- From: <crypto_stonelock sympatico ca>
- To: Tristan Van Berkom <vantr touchtunes com>
- Cc: Jan-Marek Glogowski <glogow fbihome de>, gtk-app-devel-list gnome org
- Subject: Re: Re: Functionalities for backbuffering GtkWidgets drawing?? help!!
- Date: Thu, 29 Jul 2004 11:25:26 -0400
>
> From: Tristan Van Berkom <vantr touchtunes com>
> Date: 2004/07/29 Thu AM 10:22:15 EST
> To: crypto_stonelock sympatico ca
> CC: Jan-Marek Glogowski <glogow fbihome de>,
> gtk-app-devel-list gnome org
> Subject: Re: Functionalities for backbuffering GtkWidgets drawing?? help!!
>
> crypto_stonelock sympatico ca wrote:
> [...]
> > Jan-Marek gave me a few ideas but i'm still having trouble finding what I need.
> > Does anybody know If anything similar to this bit of code would work?
> > I know this doesn't work but im looking for the code equivalent using
> > GTK instead of GDK. GDK has all I need but I'm using GTK for my widgets...
> > i'm not directly drawing around in a drawable widget. The
> > gdk_window_begin_paint_region function draws to a backbuffer and then when
> > gdk_window_end_paint is called, the backbuffer is drawn on screen.
> > GtkWindow doesn't seem to offer these functionalities. Where should I look?
>
> There is nothing wrong with using gdk in conjunction with gtk,
> GtkWindow is a GtkWidget, and (as seen in your code snippet) every
> GtkWidget has a (GdkWindow *)GTK_WIDGET(wid)->window (unless ofcourse
> it is GTK_NO_WINDOW).
>
> So the code doesn't work you say ?, maybe all expose events need to
> be handled before calling gdk_window_end_paint(), you could accomplish
> this with either:
> A.)
> while (gtk_events_pending())
> gtk_main_itteration_do(FALSE);
>
> or probably:
> B.)
> gdk_window_process_all_updates();
> (not sure about this one ...)
>
> Good luck, and please let me know if it worked ;-)
Hmmm, there seems to be a slight change in behavior but there is still massive flickering. I wonder though, the window gets updated even when I tell it not to with gdk_window_freeze_updates() without its thaw counterpart. Is this supposed to happen? Is it reseted in the gtk main loop? I guess the easiest solution might be to change container. Is there any container that does exactly the same job as GtkList? That allows for me to stick boxes into listItems? I have to stick like 14 widgets per item including some labels and entries I think the CList doesnt allow for you to stick boxes into it. If it does, I don't understand how.
I've seen gtk_clist_freeze and gtk_clist_thaw which is a good sign but.... :).
aXoneX
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]