diff options
Diffstat (limited to 'e-util/e-table-sort-info.c')
-rw-r--r-- | e-util/e-table-sort-info.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/e-util/e-table-sort-info.c b/e-util/e-table-sort-info.c index 3f1f928e74..047e31da6c 100644 --- a/e-util/e-table-sort-info.c +++ b/e-util/e-table-sort-info.c @@ -345,6 +345,25 @@ e_table_sort_info_sorting_get_count (ETableSortInfo *sort_info) } /** + * e_table_sort_info_sorting_remove: + * @sort_info: an #ETableSortInfo + * @n: the index of the element to remove + * + * Removes the sorting element at the given index. The following sorting + * elements are moved down one place. + **/ +void +e_table_sort_info_sorting_remove (ETableSortInfo *sort_info, + guint n) +{ + g_return_if_fail (E_IS_TABLE_SORT_INFO (sort_info)); + + g_array_remove_index (sort_info->priv->sortings, n); + + g_signal_emit (sort_info, signals[SORT_INFO_CHANGED], 0); +} + +/** * e_table_sort_info_sorting_truncate: * @sort_info: an #ETableSortInfo * @length: position where the truncation happens. |