From c44198513ebe9cea0fdb6041d8890ec0beeb55ae Mon Sep 17 00:00:00 2001 From: JP Rosevear Date: Mon, 22 Oct 2001 15:12:40 +0000 Subject: we don't need to save the state 2001-10-22 JP Rosevear * gui/dialogs/meeting-page.c (meeting_page_destroy): we don't need to save the state * gui/e-meeting-time-sel.c (e_meeting_time_selector_destroy): ditto * gui/e-meeting-model.c (build_etable): listen for the etable being destroyed (table_destroy_cb): save the state when the etable is destroyed svn path=/trunk/; revision=13872 --- calendar/gui/e-meeting-model.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) (limited to 'calendar/gui/e-meeting-model.c') diff --git a/calendar/gui/e-meeting-model.c b/calendar/gui/e-meeting-model.c index 472c12ce4e..0271d7bd0c 100644 --- a/calendar/gui/e-meeting-model.c +++ b/calendar/gui/e-meeting-model.c @@ -116,6 +116,8 @@ static void invite_entry_changed_cb (BonoboListener *listener, CORBA_Environment *ev, gpointer data); +static void table_destroy_cb (ETableScrolled *etable, gpointer data); + static ETableModelClass *parent_class = NULL; GtkType @@ -747,10 +749,11 @@ build_etable (ETableModel *model, const gchar *spec_file, const gchar *state_fil #if 0 gtk_signal_connect (GTK_OBJECT (real_table), "right_click", GTK_SIGNAL_FUNC (right_click_cb), mpage); - gtk_signal_connect (GTK_OBJECT (real_table->sort_info), - "sort_info_changed", GTK_SIGNAL_FUNC (sort_info_changed_cb), mts); #endif + gtk_signal_connect (GTK_OBJECT (etable), "destroy", + GTK_SIGNAL_FUNC (table_destroy_cb), g_strdup (state_file)); + gtk_object_unref (GTK_OBJECT (extras)); return E_TABLE_SCROLLED (etable); @@ -1494,3 +1497,16 @@ attendee_changed_cb (EMeetingAttendee *ia, gpointer data) e_table_model_row_changed (E_TABLE_MODEL (im), row); } + +static void +table_destroy_cb (ETableScrolled *etable, gpointer data) +{ + ETable *real_table; + char *filename = data; + + real_table = e_table_scrolled_get_table (etable); + e_table_save_state (real_table, filename); + + g_free (data); +} + -- cgit v1.2.3