Re: How to do a graphic overlay?
- From: John Stebbins <stebbins jetheaddev com>
- To: gtk-app-devel-list gnome org
- Subject: Re: How to do a graphic overlay?
- Date: Thu, 03 Sep 2009 07:52:50 -0700
Only certain widgets have their own GdkWindow. GtkDrawingArea,
GtkWindow and GtkEventBox do. Pretty much all others don't. I don't
know whether goocanvas does or not. But if it doesn't, then you would
have really been drawing on one of it's ancestors GdkWindow. According
to the GooCanvas documentation, it is a subclass of GtkContainer, which
indicates to me that it probably doesn't have it's own GdkWindow. My
guess is that what you are drawing is getting overwritten by the other
widgets that share that window. Since GooCanvas is a container, it
should work to put a GtkEventBox (also a container) or GtkDrawingArea in
it and draw into that widgets GdkWindow. The GdkWindow documentation has
an example of how set set up an eventbox for composited windows which is
not quite what you are attempting, but similar.
http://library.gnome.org/devel/gdk/2.16/gdk-Windows.html#composited-window-example
On 09/02/2009 12:21 PM, Till Harbaum / Lists wrote:
Hi,
i'd like to do some graphic overlay. In this particular case i'd like to put two buttons on top of a
goocanvas.
I tried to hook into the expose event and just draw something to the gdkwindow of the widget. That simply
doesn't work. It works with a gtkdrawingarea, but not with the goocanvas.
What can prevent me from drawing to the gdkwindow of a widget? I also tried to use a seperate window, but
that's pretty difficult to handle since you e.g. have to move those windows when you move the main window etc
etc. So just painting their seems simpler ... but unfortunately doesn't work ....
Till
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]