## TeplSignalGroup TeplSignalGroup — A group of signal handlers |

## Functions

TeplSignalGroup * | tepl_signal_group_new ()
void | tepl_signal_group_clear ()
void | tepl_signal_group_add ()

## Types and Values

| TeplSignalGroup

## Includes

    #include <tepl/tepl.h>

## Description

TeplSignalGroup is a small utility to disconnect signal handlers without the need to keep around the GObject instance that the signal handlers were connected to.

## Functions

### tepl_signal_group_new ()

    TeplSignalGroup *
    tepl_signal_group_new (GObject *object);

Creates a new TeplSignalGroup for `object` . The TeplSignalGroup will have a weak reference to `object` .

[skip]

#### Parameters

object | a GObject. |

#### Returns

a new TeplSignalGroup for `object` . Free with `tepl_signal_group_clear()` when no longer needed.

[transfer full]

Since: 6.0

### tepl_signal_group_clear ()

    void
    tepl_signal_group_clear (TeplSignalGroup **group_pointer);

Like `g_clear_object()` but for a TeplSignalGroup.

If the GObject instance of the TeplSignalGroup is still alive, this function disconnects all the signal handlers that were added with `tepl_signal_group_add()`.

The TeplSignalGroup, if non-`NULL`, is freed when calling this function.

[skip]

#### Parameters

group_pointer | a pointer to a TeplSignalGroup. |

Since: 6.0

### tepl_signal_group_add ()

    void
    tepl_signal_group_add (TeplSignalGroup *group,
                           gulong signal_handler_id);

Adds a signal handler ID to the TeplSignalGroup. The signal handler must have been connected to the same GObject instance as provided to the `tepl_signal_group_new()` function when creating `group` .

[skip]

#### Parameters

group | a TeplSignalGroup. |
signal_handler_id | a signal handler ID. |

Since: 6.0

## Types and Values

### TeplSignalGroup

    typedef struct _TeplSignalGroup TeplSignalGroup;