### Function Macro

# GObject signal_connect

#### Declaration [src]

    #define g_signal_connect (
      instance,
      detailed_signal,
      c_handler,
      data
    )

#### Description [src]

Connects a `GCallback` function to a signal for a particular object.

The handler will be called synchronously, before the default handler of the signal. `g_signal_emit()` will not return control until all handlers are called.

See memory management of signal handlers for details on how to handle the return value and memory management of `data`.

This function cannot fail. If the given signal name doesn’t exist, a critical warning is emitted. No validation is performed on the ‘detail’ string when specified in `detailed_signal`, other than a non-empty check.

Refer to the signals documentation for more details.

This function is not directly available to language bindings.

#### Parameters

`instance`

  Type: `-`

  The instance to connect to.

`detailed_signal`

  Type: `-`

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

`c_handler`

  Type: `-`

  The `GCallback` to connect.

`data`

  Type: `-`

  Data to pass to `c_handler` calls.