### Method

# Gio ListStore splice

since: 2.44

#### Declaration

    void
    g_list_store_splice (
      GListStore* store,
      guint position,
      guint n_removals,
      gpointer* additions,
      guint n_additions
    )

#### Description

Changes `store` by removing `n_removals` items and adding `n_additions` items to it. `additions` must contain `n_additions` items of type `GListStore:item-type`. `NULL` is not permitted.

This function is more efficient than `g_list_store_insert()` and g_list_store_remove(), because it only emits `GListModel::items-changed` once for the change.

This function takes a ref on each item in `additions`.

The parameters `position` and `n_removals` must be correct (ie: `position` + `n_removals` must be less than or equal to the length of the list at the time this function is called).

Available since: 2.44

#### Parameters

`position`

  Type: `guint`

  The position at which to make the change.

`n_removals`

  Type: `guint`

  The number of items to remove.

`additions`

  Type: An array of `GObject*`

  The items to add.

  The length of the array is specified in the `n_additions` argument.
  The data is owned by the caller of the method.

`n_additions`

  Type: `guint`

  The number of items to add.