From ac7def3e9d77081212b6a0537fa86e2172701634 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Tue, 9 May 2000 17:17:34 +0000 Subject: Fixed etssv_remove. 2000-05-09 Christopher James Lahey * e-table-subset-variable.c: Fixed etssv_remove. svn path=/trunk/; revision=2951 --- widgets/e-table/ChangeLog | 4 ++++ widgets/e-table/e-table-subset-variable.c | 13 +++++++++++-- widgets/table/e-table-subset-variable.c | 13 +++++++++++-- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/widgets/e-table/ChangeLog b/widgets/e-table/ChangeLog index 150496f4bf..2f0457a3ff 100644 --- a/widgets/e-table/ChangeLog +++ b/widgets/e-table/ChangeLog @@ -1,3 +1,7 @@ +2000-05-09 Christopher James Lahey + + * e-table-subset-variable.c: Fixed etssv_remove. + 2000-05-08 Christopher James Lahey * e-cell-text.c: Make multi-line texts display properly. Fixed diff --git a/widgets/e-table/e-table-subset-variable.c b/widgets/e-table/e-table-subset-variable.c index c42d53842b..a8948c5e68 100644 --- a/widgets/e-table/e-table-subset-variable.c +++ b/widgets/e-table/e-table-subset-variable.c @@ -68,6 +68,7 @@ etssv_remove (ETableSubsetVariable *etssv, ETableModel *etm = E_TABLE_MODEL(etssv); ETableSubset *etss = E_TABLE_SUBSET(etssv); int i; + int ret_val = FALSE; for (i = 0; i < etss->n_map; i++){ if (etss->map_table[i] == row) { @@ -75,10 +76,18 @@ etssv_remove (ETableSubsetVariable *etssv, etss->n_map --; if (!etm->frozen) e_table_model_changed (etm); - return TRUE; + ret_val = TRUE; + break; } } - return FALSE; + + for (i = 0; i < etss->n_map; i++){ + if (etss->map_table[i] > row) { + etss->map_table[i] --; + } + } + + return ret_val; } static void diff --git a/widgets/table/e-table-subset-variable.c b/widgets/table/e-table-subset-variable.c index c42d53842b..a8948c5e68 100644 --- a/widgets/table/e-table-subset-variable.c +++ b/widgets/table/e-table-subset-variable.c @@ -68,6 +68,7 @@ etssv_remove (ETableSubsetVariable *etssv, ETableModel *etm = E_TABLE_MODEL(etssv); ETableSubset *etss = E_TABLE_SUBSET(etssv); int i; + int ret_val = FALSE; for (i = 0; i < etss->n_map; i++){ if (etss->map_table[i] == row) { @@ -75,10 +76,18 @@ etssv_remove (ETableSubsetVariable *etssv, etss->n_map --; if (!etm->frozen) e_table_model_changed (etm); - return TRUE; + ret_val = TRUE; + break; } } - return FALSE; + + for (i = 0; i < etss->n_map; i++){ + if (etss->map_table[i] > row) { + etss->map_table[i] --; + } + } + + return ret_val; } static void -- cgit v1.2.3