## dzl-binding-group

dzl-binding-group

## Functions

DzlBindingGroup * | dzl_binding_group_new ()
GObject * | dzl_binding_group_get_source ()
void | dzl_binding_group_set_source ()
void | dzl_binding_group_bind ()
void | dzl_binding_group_bind_full ()
void | dzl_binding_group_bind_with_closures ()

## Properties

GObject * | source | Read / Write

## Types and Values

#define | DZL_TYPE_BINDING_GROUP
| DzlBindingGroup

## Object Hierarchy

        GObject
        ╰── DzlBindingGroup

## Description

## Functions

### dzl_binding_group_new ()

    DzlBindingGroup *
    dzl_binding_group_new (void);

Creates a new DzlBindingGroup.

#### Returns

a new DzlBindingGroup

### dzl_binding_group_get_source ()

    GObject *
    dzl_binding_group_get_source (DzlBindingGroup *self);

Gets the source object used for binding properties.

#### Parameters

self | the DzlBindingGroup |

#### Returns

the source object.

[transfer none][nullable]

### dzl_binding_group_set_source ()

    void
    dzl_binding_group_set_source (DzlBindingGroup *self,
                                  gpointer source);

Sets `source` as the source object used for creating property bindings. If there is already a source object all bindings from it will be removed.

Note: All properties that have been bound must exist on `source` .

#### Parameters

self | the DzlBindingGroup |
source | the source GObject. | [type GObject][nullable]

### dzl_binding_group_bind ()

    void
    dzl_binding_group_bind (DzlBindingGroup *self,
                            const gchar *source_property,
                            gpointer target,
                            const gchar *target_property,
                            GBindingFlags flags);

Creates a binding between `source_property` on the source object and `target_property` on `target` . Whenever the `source_property` is changed the `target_property` is updated using the same value. The binding flags G_BINDING_SYNC_CREATE is automatically specified.

See: `g_object_bind_property()`.

#### Parameters

self | the DzlBindingGroup |
source_property | the property on the source to bind |
target | the target GObject. | [type GObject]
target_property | the property on `target` to bind |
flags | the flags used to create the GBinding |

### dzl_binding_group_bind_full ()

    void
    dzl_binding_group_bind_full (DzlBindingGroup *self,
                                 const gchar *source_property,
                                 gpointer target,
                                 const gchar *target_property,
                                 GBindingFlags flags,
                                 GBindingTransformFunc transform_to,
                                 GBindingTransformFunc transform_from,
                                 gpointer user_data,
                                 GDestroyNotify user_data_destroy);

Creates a binding between `source_property` on the source object and `target_property` on `target` , allowing you to set the transformation functions to be used by the binding. The binding flags G_BINDING_SYNC_CREATE is automatically specified.

See: `g_object_bind_property_full()`.

#### Parameters

self | the DzlBindingGroup |
source_property | the property on the source to bind |
target | the target GObject. | [type GObject]
target_property | the property on `target` to bind |
flags | the flags used to create the GBinding |
transform_to | the transformation function from the source object to the `target` , or `NULL` to use the default. | [scope notified][nullable]
transform_from | the transformation function from the `target` to the source object, or `NULL` to use the default. | [scope notified][nullable]
user_data | custom data to be passed to the transformation functions, or `NULL` |
user_data_destroy | function to be called when disposing the binding, to free the resources used by the transformation functions |

### dzl_binding_group_bind_with_closures ()

    void
    dzl_binding_group_bind_with_closures (DzlBindingGroup *self,
                                          const gchar *source_property,
                                          gpointer target,
                                          const gchar *target_property,
                                          GBindingFlags flags,
                                          GClosure *transform_to,
                                          GClosure *transform_from);

Creates a binding between `source_property` on the source object and `target_property` on `target` , allowing you to set the transformation functions to be used by the binding. The binding flags G_BINDING_SYNC_CREATE is automatically specified.

This function is the language bindings friendly version of `dzl_binding_group_bind_property_full()`, using GClosures instead of function pointers.

See: `g_object_bind_property_with_closures()`.

[rename-to dzl_binding_group_bind_full]

#### Parameters

self | the DzlBindingGroup |
source_property | the property on the source to bind |
target | the target GObject. | [type GObject]
target_property | the property on `target` to bind |
flags | the flags used to create the GBinding |
transform_to | a GClosure wrapping the transformation function from the source object to the `target` , or `NULL` to use the default. | [nullable]
transform_from | a GClosure wrapping the transformation function from the `target` to the source object, or `NULL` to use the default. | [nullable]

## Types and Values

### DZL_TYPE_BINDING_GROUP

    #define DZL_TYPE_BINDING_GROUP (dzl_binding_group_get_type())

### DzlBindingGroup

    typedef struct _DzlBindingGroup DzlBindingGroup;

## Property Details

### The `“source”` property

      “source”                   GObject *

The source object used for binding properties.

Owner: DzlBindingGroup

Flags: Read / Write