Hi Paolo,
here is the patch for signal disconnection support for Gtk.
Cheers,
Gwen
diff --git a/packages/gtk/MoreFuncs.st b/packages/gtk/MoreFuncs.st
index 6444179..a8a8322 100644
--- a/packages/gtk/MoreFuncs.st
+++ b/packages/gtk/MoreFuncs.st
@@ -59,18 +59,24 @@ GObject extend [
connectSignal: name to: handler selector: sel userData: userData [
<category: 'C call-outs'>
- <cCall: 'gstGtkConnectSignal' returning: #void
+ <cCall: 'gstGtkConnectSignal' returning: #int
args: #(#selfSmalltalk #string #smalltalk #smalltalk #smalltalk )>
]
connectSignal: name to: handler selector: sel [
<category: 'C call-outs'>
- <cCall: 'gstGtkConnectSignalNoUserData' returning: #void
+ <cCall: 'gstGtkConnectSignalNoUserData' returning: #int
args: #(#selfSmalltalk #string #smalltalk #smalltalk )>
]
+ disconnect: anInteger [
+ <category: 'C call-outs'>
+ <cCall: 'g_signal_handler_disconnect' returning: #void
+ args: #(#self #int )>
+ ]
+
narrow [
<category: 'C call-outs'>
<cCall: 'gstGtkNarrowGObjectOOP' returning: #smalltalk
diff --git a/packages/gtk/gst-gtk.c b/packages/gtk/gst-gtk.c
index bcc19fa..a400aa1 100644
--- a/packages/gtk/gst-gtk.c
+++ b/packages/gtk/gst-gtk.c
@@ -647,8 +647,7 @@ connect_signal (OOP widget,
closure = create_smalltalk_closure (receiver, selector, user_data,
widget, n_params);
- g_signal_connect_closure (cWidget, event_name, closure, FALSE);
- return (0);
+ return g_signal_connect_closure (cWidget, event_name, closure, FALSE);
}
int
_______________________________________________
help-smalltalk mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-smalltalk