g_signal_connect_object (
  GObjectTypeInstance* instance,
  const gchar* detailed_signal,
  GCallback c_handler,
  GObject* gobject,
  GConnectFlags connect_flags


This is similar to g_signal_connect_data(), but uses a closure which ensures that the gobject stays alive during the call to c_handler by temporarily adding a reference count to gobject.

When the gobject is destroyed the signal handler will be automatically disconnected. Note that this is not currently threadsafe (ie: emitting a signal while gobject is being destroyed in another thread is not safe).


instance GTypeInstance

The instance to connect to.

 The data is owned by the caller of the function.
detailed_signal const gchar*

A string of the form “signal-name::detail”.

 The data is owned by the caller of the function.
 The value is a NUL terminated UTF-8 string.
c_handler GCallback

The GCallback to connect.

gobject GObject

The object to pass as data to c_handler.

 The argument can be NULL.
 The data is owned by the caller of the function.
connect_flags GConnectFlags

A combination of GConnectFlags.

Return value

Returns: gulong

The handler id.