aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/calendar-model.c
diff options
context:
space:
mode:
authorDamon Chaplin <damon@ximian.com>2001-12-04 06:59:20 +0800
committerDamon Chaplin <damon@src.gnome.org>2001-12-04 06:59:20 +0800
commit86755b7d11c4773744cf42ed75667c7cc6aff0c7 (patch)
treeefc12944c08f64a4b585cb86d832524a0e3c62f9 /calendar/gui/calendar-model.c
parent35b2f0ce2aded8fc002d76cff57e09aaa9836775 (diff)
downloadgsoc2013-evolution-86755b7d11c4773744cf42ed75667c7cc6aff0c7.tar.gz
gsoc2013-evolution-86755b7d11c4773744cf42ed75667c7cc6aff0c7.tar.zst
gsoc2013-evolution-86755b7d11c4773744cf42ed75667c7cc6aff0c7.zip
make sure we call e_table_model_pre_change() before changing the model.
2001-12-03 Damon Chaplin <damon@ximian.com> * gui/e-meeting-model.c: * gui/calendar-model.c: make sure we call e_table_model_pre_change() before changing the model. * gui/calendar-config.c (calendar_config_configure_e_calendar_table): removed call to e_table_model_changed(). calendar_model_refresh() results in that anyway. svn path=/trunk/; revision=14854
Diffstat (limited to 'calendar/gui/calendar-model.c')
-rw-r--r--calendar/gui/calendar-model.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/calendar/gui/calendar-model.c b/calendar/gui/calendar-model.c
index e0e4f97d7e..f2b9d8b428 100644
--- a/calendar/gui/calendar-model.c
+++ b/calendar/gui/calendar-model.c
@@ -1773,6 +1773,8 @@ query_obj_updated_cb (CalQuery *query, const char *uid,
model = CALENDAR_MODEL (data);
priv = model->priv;
+ e_table_model_pre_change (E_TABLE_MODEL (model));
+
orig_idx = remove_object (model, uid);
status = cal_client_get_object (priv->client, uid, &new_comp);
@@ -1836,6 +1838,8 @@ query_obj_updated_cb (CalQuery *query, const char *uid,
*/
if (orig_idx != -1)
e_table_model_row_deleted (E_TABLE_MODEL (model), orig_idx);
+ else
+ e_table_model_no_change (E_TABLE_MODEL (model));
break;
@@ -1845,6 +1849,8 @@ query_obj_updated_cb (CalQuery *query, const char *uid,
/* Same notification as above */
if (orig_idx != -1)
e_table_model_row_deleted (E_TABLE_MODEL (model), orig_idx);
+ else
+ e_table_model_no_change (E_TABLE_MODEL (model));
break;
@@ -1862,10 +1868,14 @@ query_obj_removed_cb (CalQuery *query, const char *uid, gpointer data)
model = CALENDAR_MODEL (data);
+ e_table_model_pre_change (E_TABLE_MODEL (model));
+
idx = remove_object (model, uid);
if (idx != -1)
e_table_model_row_deleted (E_TABLE_MODEL (model), idx);
+ else
+ e_table_model_no_change (E_TABLE_MODEL (model));
}
/* Callback used when a query ends */