Re: signals connection
- From: Tristan Van Berkom <vantr touchtunes com>
- To: Evan Martin <martine cs washington edu>
- Cc: Axel <axel azerty netcourrier com>, gtk-list gnome org, gtk-app-devel-list gnome org
- Subject: Re: signals connection
- Date: Thu, 20 Mar 2003 15:37:59 -0500
wait a second :S
this is the prototype for g_free:
void g_free (gpointer mem);
and this is the `catch all function pointer' GCallback
void (*GCallback) (void);
so far so good....
but when it comes down to marshalling the signals
stack garbage will be collected as a return values
from `g_free' in consequence stopping signal emmision
(in most cases you wont have `0' sitting on the stack
at that spot).
I'm not sure if that _completely_ stops the emission
of *that* signal or if it just stops signal emission
of that "stage" (stage 2 or 4).
http://developer.gnome.org/doc/API/2.0/gobject/gobject-Signals.html
(see "Description")
is not clear on that point IMHO.
Anyhow; its just food for thought ;-)
Cheers,
-Tristan
Evan Martin wrote:
On Thu, Mar 20, 2003 at 09:54:09AM -0500, Tristan Van Berkom wrote:
Hmmm... it seems to mean that the callback will be called like this:
c_handler(G_OBJECT(data), detail, (gpointer) instance);
instead of
c_handler(G_OBJECT(instance), detail, (gpointer) data);
(I guess where detail is often something like GdkEvent)
I can't think of a practical reason for having such a
function but if its there; theres a good chance that its
usefull for something ;-)
To simply destroy "someobject" when "window" is destroyed, you can do
this:
g_signal_connect_swapped(G_OBJECT(window), "destroy",
G_CALLBACK(g_free), someobject);
Because of the _swapped, "someobject" will be passed as the first
argument to g_free() so you can use g_free as a callback directly
instead of another function which would just call g_free anyway.
--
Evan Martin
martine cs washington edu
http://neugierig.org
_______________________________________________
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]