aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/table/e-table-utils.c')
-rw-r--r--widgets/table/e-table-utils.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/widgets/table/e-table-utils.c b/widgets/table/e-table-utils.c
index 4c84be94ca..a155d49b0a 100644
--- a/widgets/table/e-table-utils.c
+++ b/widgets/table/e-table-utils.c
@@ -71,11 +71,16 @@ et_col_spec_to_col (ETableColumnSpecification *col_spec,
ETableExtras *ete)
{
ETableCol *col = NULL;
- ECell *cell;
- GCompareFunc compare;
+ ECell *cell = NULL;
+ GCompareFunc compare = NULL;
+ ETableSearchFunc search = NULL;
- cell = e_table_extras_get_cell(ete, col_spec->cell);
- compare = e_table_extras_get_compare(ete, col_spec->compare);
+ if (col_spec->cell)
+ cell = e_table_extras_get_cell(ete, col_spec->cell);
+ if (col_spec->compare)
+ compare = e_table_extras_get_compare(ete, col_spec->compare);
+ if (col_spec->search)
+ search = e_table_extras_get_search(ete, col_spec->search);
if (cell && compare) {
if (col_spec->pixbuf && *col_spec->pixbuf) {
@@ -97,6 +102,7 @@ et_col_spec_to_col (ETableColumnSpecification *col_spec,
col_spec->expansion, col_spec->minimum_width,
cell, compare, col_spec->resizable, col_spec->disabled, col_spec->priority);
}
+ col->search = search;
}
return col;
}