diff options
author | Christopher James Lahey <clahey@helixcode.com> | 2000-05-20 02:47:16 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2000-05-20 02:47:16 +0800 |
commit | 46f211579d1dfd60147099942b40c9697796e7c8 (patch) | |
tree | 5f8e8027e3e378bd2c8061ecf10061f4609ab02e /widgets/table/e-table-example-1.c | |
parent | ae208c7e8ff0463666c52392553af2572a8ee9b5 (diff) | |
download | gsoc2013-evolution-46f211579d1dfd60147099942b40c9697796e7c8.tar.gz gsoc2013-evolution-46f211579d1dfd60147099942b40c9697796e7c8.tar.zst gsoc2013-evolution-46f211579d1dfd60147099942b40c9697796e7c8.zip |
Added initialize_value and value_is_empty callbacks.
2000-05-19 Christopher James Lahey <clahey@helixcode.com>
* 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
Diffstat (limited to 'widgets/table/e-table-example-1.c')
-rw-r--r-- | widgets/table/e-table-example-1.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/widgets/table/e-table-example-1.c b/widgets/table/e-table-example-1.c index 70689c2953..fbaa3389a2 100644 --- a/widgets/table/e-table-example-1.c +++ b/widgets/table/e-table-example-1.c @@ -157,6 +157,20 @@ my_free_value (ETableModel *etc, int col, void *value, void *data) g_free (value); } +/* This function creates an empty value. */ +static void * +my_initialize_value (ETableModel *etc, int col, void *data) +{ + return g_strdup (""); +} + +/* This function reports if a value is empty. */ +static gboolean +my_value_is_empty (ETableModel *etc, int col, const void *value, void *data) +{ + return !(value && *(char *)value); +} + /* This function is for when the model is unfrozen. This can mostly be ignored for simple models. */ static void @@ -184,7 +198,9 @@ create_table (void) e_table_model = e_table_simple_new ( my_col_count, my_row_count, my_value_at, my_set_value_at, my_is_cell_editable, - my_duplicate_value, my_free_value, my_thaw, NULL); + my_duplicate_value, my_free_value, + my_initialize_value, my_value_is_empty, + my_thaw, NULL); /* * Next we create a header. The ETableHeader is used in two * different way. The first is the full_header. This is the |