From 46f211579d1dfd60147099942b40c9697796e7c8 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 19 May 2000 18:47:16 +0000 Subject: Added initialize_value and value_is_empty callbacks. 2000-05-19 Christopher James Lahey * e-table-example-1.c, e-table-example-2.c, e-table-simple.c, e-table-simple.h, e-table-size-test.c, test-check.c, test-cols.c, test-table.c: Added initialize_value and value_is_empty callbacks. * e-table-model.c, e-table-model.h: Added initialize_value and value_is_callback virtual functions to the ETableModel class. * e-table-subset.c: Perpetuate the initialize_value and value_is_empty methods. svn path=/trunk/; revision=3138 --- widgets/e-table/e-table-model.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'widgets/e-table/e-table-model.h') diff --git a/widgets/e-table/e-table-model.h b/widgets/e-table/e-table-model.h index e542754f22..0c8d51b882 100644 --- a/widgets/e-table/e-table-model.h +++ b/widgets/e-table/e-table-model.h @@ -28,8 +28,14 @@ typedef struct { void (*set_value_at) (ETableModel *etm, int col, int row, const void *value); gboolean (*is_cell_editable) (ETableModel *etm, int col, int row); - void *(*duplicate_value) (ETableModel *etm, int col, const void *value); - void (*free_value) (ETableModel *etm, int col, void *value); + /* Allocate a copy of the given value. */ + void *(*duplicate_value) (ETableModel *etm, int col, const void *value); + /* Free an allocated value. */ + void (*free_value) (ETableModel *etm, int col, void *value); + /* Return an allocated empty value. */ + void *(*initialize_value) (ETableModel *etm, int col); + /* Return TRUE if value is equivalent to an empty cell. */ + gboolean (*value_is_empty) (ETableModel *etm, int col, const void *value); void (*thaw) (ETableModel *etm); /* @@ -62,6 +68,8 @@ gboolean e_table_model_is_cell_editable (ETableModel *e_table_model, int col, void *e_table_model_duplicate_value (ETableModel *e_table_model, int col, const void *value); void e_table_model_free_value (ETableModel *e_table_model, int col, void *value); +void *e_table_model_initialize_value (ETableModel *e_table_model, int col); +gboolean e_table_model_value_is_empty (ETableModel *e_table_model, int col, const void *value); void e_table_model_freeze (ETableModel *e_table_model); void e_table_model_thaw (ETableModel *e_table_model); -- cgit v1.2.3