### Function

# EDataServer binding_bind_property_with_closures

since: 3.16

#### Declaration [src]

    GBinding*
    e_binding_bind_property_with_closures (
      GObject* source,
      const gchar* source_property,
      GObject* target,
      const gchar* target_property,
      GBindingFlags flags,
      GClosure* transform_to,
      GClosure* transform_from
    )

#### Description [src]

Thread safe variant of g_object_bind_property_with_closures(). See its documentation for more information on arguments and return value.

Available since: 3.16

This function is renamed to `e_binding_bind_property_full()` in language bindings.

#### Parameters

`source`

  Type: `GObject`

  The source `GObject`.

  The data is owned by the caller of the function.

`source_property`

  Type: `const gchar*`

  The property on `source` to bind.

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

`target`

  Type: `GObject`

  The target `GObject`.

  The data is owned by the caller of the function.

`target_property`

  Type: `const gchar*`

  The property on `target` to bind.

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

`flags`

  Type: `GBindingFlags`

  Flags to pass to `GBinding`.

`transform_to`

  Type: `GClosure`

  A `GClosure` wrapping the transformation function from the `source` to the `target`, or `NULL` to use the default.

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

`transform_from`

  Type: `GClosure`

  A `GClosure` wrapping the transformation function from the `target` to the `source`, or `NULL` to use the default.

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

#### Return value

Type: `GBinding`

The `GBinding` instance representing the binding between the two `GObject` instances. The binding is released whenever the `GBinding` reference count reaches zero.

The data is owned by the called function.