### Function

# GObject signal_connect_closure_by_id

since: 2.0

#### Declaration

    gulong
    g_signal_connect_closure_by_id (
      GObject* instance,
      guint signal_id,
      GQuark detail,
      GClosure* closure,
      gboolean after
    )

#### Description

Connects a closure to a signal for a particular object.

If `closure` is a floating reference (see g_closure_sink()), this function takes ownership of `closure`.

This function cannot fail. If the given signal doesn’t exist, a critical warning is emitted.

Available since: 2.0

#### Parameters

`instance`

  Type: `GObject`

  The instance to connect to.

  The data is owned by the caller of the function.

`signal_id`

  Type: `guint`

  The id of the signal.

`detail`

  Type: `GQuark`

  The detail.

`closure`

  Type: `GClosure`

  The closure to connect.

  The data is owned by the caller of the function.

`after`

  Type: `gboolean`

  Whether the handler should be called before or after the default handler of the signal.

#### Return value

Type: `gulong`

The handler ID (always greater than 0)