aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-example-1.c
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@helixcode.com>2000-05-20 02:47:16 +0800
committerChris Lahey <clahey@src.gnome.org>2000-05-20 02:47:16 +0800
commit46f211579d1dfd60147099942b40c9697796e7c8 (patch)
tree5f8e8027e3e378bd2c8061ecf10061f4609ab02e /widgets/table/e-table-example-1.c
parentae208c7e8ff0463666c52392553af2572a8ee9b5 (diff)
downloadgsoc2013-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.c18
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