diff options
Diffstat (limited to 'widgets/table/e-table-memory-store.c')
-rw-r--r-- | widgets/table/e-table-memory-store.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/widgets/table/e-table-memory-store.c b/widgets/table/e-table-memory-store.c index a16bb104b1..e36a0e1558 100644 --- a/widgets/table/e-table-memory-store.c +++ b/widgets/table/e-table-memory-store.c @@ -372,7 +372,7 @@ e_table_memory_store_insert (ETableMemoryStore *etms, int row, gpointer data, .. } void -e_table_memory_store_insert_adopt (ETableMemoryStore *etms, int row, void **store, gpointer data) +e_table_memory_store_insert_adopt_array (ETableMemoryStore *etms, int row, void **store, gpointer data) { int row_count; int i; @@ -393,6 +393,26 @@ e_table_memory_store_insert_adopt (ETableMemoryStore *etms, int row, void **stor } void +e_table_memory_store_insert_adopt (ETableMemoryStore *etms, int row, gpointer data, ...) +{ + void **store; + va_list args; + int i; + + store = g_new (void *, etms->priv->col_count + 1); + + va_start (args, data); + for (i = 0; i < etms->priv->col_count; i++) { + store[i] = va_arg (args, void *); + } + va_end (args); + + e_table_memory_store_insert_adopt_array (etms, row, store, data); + + g_free (store); +} + +void e_table_memory_store_remove (ETableMemoryStore *etms, int row) { int row_count; |