### Constructor

# Gcr FilterCollection new_with_callback

#### Declaration [src]

    GcrCollection*
    gcr_filter_collection_new_with_callback (
      GcrCollection* underlying,
      GcrFilterCollectionFunc callback,
      gpointer user_data,
      GDestroyNotify destroy_func
    )

#### Description [src]

Create a new `GcrFilterCollection`.

The callback should return `TRUE` if an object should appear in the filtered collection.

If a `NULL` callback is set, then all underlynig objects will appear in the filtered collection.

#### Parameters

`underlying` | `GcrCollection`
| The underlying collection.
| The data is owned by the caller of the function.
`callback` | `GcrFilterCollectionFunc`
| Function to call for each object.
| The argument can be `NULL`.
`user_data` | `gpointer`
| Data to pass to the callback.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`destroy_func` | `GDestroyNotify`
| Called for user_data when it is no longer needed.

#### Return value

Returns: | `GcrFilterCollection`
| A newly allocated filtered collection, which should be freed with `g_object_unref()`
| The caller of the function takes ownership of the data, and is responsible for freeing it.