info.c: add a method to clear all GtkListStore allocations

Add a new method in info.c called info_widget_destroy(), which
clears all GtkListStore instances. The method is exposed via
display-gtk.h and called from gtk-gui.c:on_destroy().

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Lubomir I. Ivanov 2013-02-21 03:07:20 +02:00 committed by Dirk Hohndel
parent 0b4dfd6cff
commit 61698b9f55
3 changed files with 10 additions and 0 deletions

View file

@ -64,6 +64,7 @@ extern GtkWidget *total_stats_widget(void);
extern GtkWidget *dive_list_create(void);
extern void dive_list_destroy(void);
extern void info_widget_destroy(void);
extern GdkPixbuf *get_gps_icon(void);
/* Helper functions for gtk combo boxes */

View file

@ -336,6 +336,7 @@ gboolean on_delete(GtkWidget* w, gpointer data)
static void on_destroy(GtkWidget* w, gpointer data)
{
dive_list_destroy();
info_widget_destroy();
gtk_main_quit();
}

8
info.c
View file

@ -1261,3 +1261,11 @@ GtkWidget *extended_dive_info_widget(void)
notes = text_view(vbox, _("Notes"), READ_ONLY);
return vbox;
}
void info_widget_destroy(void)
{
g_object_unref(people_list);
g_object_unref(location_list);
g_object_unref(star_list);
g_object_unref(suit_list);
}