Moved GClosure code
[cl-gtk2.git] / glib / gobject.foreign-gobject.lisp
index 15fa956..244e664 100644 (file)
 (defmethod set-gvalue-for-type (gvalue-ptr (type-numeric (eql +g-type-interface+)) value)
   (set-gvalue-object gvalue-ptr value))
 
+(defun g-signal-connect (object signal handler &key after)
+  "Deprecated alias for @fun{connect-signal}"
+  (connect-signal object signal handler :after after))
+
+(defun connect-signal (object signal handler &key after)
+  "Connects the function to a signal for a particular object.
+If @code{after} is true, then the function will be called after the default handler of the signal.
+
+@arg[object]{an instance of @class{gobject}}
+@arg[signal]{a string; names the signal}
+@arg[handler]{a function; handles the signal. Number (and type) of arguments and return value type depends on the signal}
+@arg[after]{a boolean}"
+  (g-signal-connect-closure (ensure-object-pointer object)
+                            signal
+                            (create-g-closure handler)
+                            after))
+
 (defun emit-signal (object signal-name &rest args)
   "Emits the signal.
 @arg[object]{an instance of @class{g-object}. Signal is emitted on this object}