aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-state.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/table/e-table-state.c')
-rw-r--r--widgets/table/e-table-state.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/widgets/table/e-table-state.c b/widgets/table/e-table-state.c
index b36bbf41c7..5bfc9c390b 100644
--- a/widgets/table/e-table-state.c
+++ b/widgets/table/e-table-state.c
@@ -18,6 +18,8 @@
#define PARENT_TYPE (gtk_object_get_type())
+#define STATE_VERSION 0.1
+
static GtkObjectClass *etst_parent_class;
static void
@@ -83,8 +85,11 @@ e_table_state_load_from_node (ETableState *state,
{
xmlNode *children;
GList *list = NULL, *iterator;
+ gdouble state_version;
int i;
+ state_version = e_xml_get_double_prop_by_name_with_default(node, "state-version", STATE_VERSION);
+
if (state->sort_info)
gtk_object_unref(GTK_OBJECT(state->sort_info));
state->sort_info = NULL;
@@ -97,7 +102,7 @@ e_table_state_load_from_node (ETableState *state,
list = g_list_append(list, column);
} else if (state->sort_info == NULL && !strcmp(children->name, "grouping")) {
state->sort_info = e_table_sort_info_new();
- e_table_sort_info_load_from_node(state->sort_info, children);
+ e_table_sort_info_load_from_node(state->sort_info, children, state_version);
}
}
g_free(state->columns);
@@ -151,7 +156,7 @@ e_table_state_save_to_node (ETableState *state,
else
node = xmlNewNode (NULL, "ETableState");
- e_xml_set_double_prop_by_name(node, "state-version", 0.0);
+ e_xml_set_double_prop_by_name(node, "state-version", STATE_VERSION);
for (i = 0; i < state->col_count; i++) {
int column = state->columns[i];