Hello,

As requested, I will try to � illuminate � this callback connection topic 
:

1/ Generally (but pending on considered signal), callback functions 
prototype is fnct_callback (GtkObject *object, gpointer data) 

2/ gtk_signal_connect (GtkObject *object, const gchar *signal_name, 
GtkSignalFunc fnct_callback, gpointer data) allows you to run a callback 
function as described above, once the specified signal is emitted (eg. a 
mouse click) :
- the GtkObject address transmitted to the callback function is the 
widget which emits the signal (eg. the button to click)
- the gpointer data allows data transmission to the callback function 
(eg. an array to be displayed, ...)

3/ gtk_signal_connect_object (GtkObject *object, const gchar 
*signal_name, GtkSignalFunc fnct_callback, GtkObject *target) allows you 
to run a callback function once the specified signal is emitted (eg. a 
mouse click). In that case, the GtkObject address transmitted to the 
callback function is the object you've specified as target


Example :
------- 
Imagine you wish to destroy a window (called � dialog �) once the button 
� button_destroy � is clicked, using the � gtk_widget_destroy � standard 
gtk function as callback function :

- gtk_signal_connect (GTK_OBJECT(button_destroy), � clicked �, 
(GtkSignalFunc)gtk_widget_destroy, NULL) will result in the � 
button_destroy � widget destruction instead of the window, because the 
pointer to � button_destroy � is transmitted to � gtk_widget_destroy � 
function
- gtk_signal_connect_object (GTK_OBJECT(button_destroy), � clicked �, 
(GtkSignalFunc) gtk_widget_destroy, GTK_OBJECT(dialog)) is the correct 
way to act : destruction of the � dialog � window, because the pointer to 
� dialog � is transmitted to � gtk_widget_destroy � function

Am I clear ?
_______________________________________________
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to