]> git.tdb.fi Git - ext/subsurface.git/blobdiff - divelist.c
Oops, fix typo. EAN, not EAD
[ext/subsurface.git] / divelist.c
index d215fd23651c6e2737e0b671cfe97d5de22cd5e6..f390b49ea519f78404193e0ab0efd7b857afe72c 100644 (file)
@@ -232,23 +232,14 @@ static void get_sac(struct dive *dive, int *val, char **str)
        *str = strdup(buffer);
 }
 
-static gboolean set_one_dive(GtkTreeModel *model,
-                            GtkTreePath *path,
-                            GtkTreeIter *iter,
-                            gpointer data)
+static void fill_one_dive(struct dive *dive,
+                         GtkTreeModel *model,
+                         GtkTreeIter *iter)
 {
-       GValue value = {0, };
-       struct dive *dive;
        int date, depth, duration, temp, nitrox, sac;
        char *datestr, *depthstr, *durationstr, *tempstr, *nitroxstr, *sacstr;
        char *location;
 
-       /* Get the dive number */
-       gtk_tree_model_get_value(model, iter, DIVE_INDEX, &value);
-       dive = get_dive(g_value_get_int(&value));
-       if (!dive)
-               return TRUE;
-
        get_date(dive, &date, &datestr);
        get_depth(dive, &depth, &depthstr);
        get_duration(dive, &duration, &durationstr);
@@ -273,8 +264,33 @@ static gboolean set_one_dive(GtkTreeModel *model,
                DIVE_SACSTR, sacstr,
                DIVE_SAC, sac,
                -1);
+}
+
+static gboolean set_one_dive(GtkTreeModel *model,
+                            GtkTreePath *path,
+                            GtkTreeIter *iter,
+                            gpointer data)
+{
+       GValue value = {0, };
+       struct dive *dive;
+
+       /* Get the dive number */
+       gtk_tree_model_get_value(model, iter, DIVE_INDEX, &value);
+       dive = get_dive(g_value_get_int(&value));
+       if (!dive)
+               return TRUE;
+       if (data && dive != data)
+               return FALSE;
+
+       fill_one_dive(dive, model, iter);
+       return dive == data;
+}
+
+void flush_divelist(struct DiveList *dive_list, struct dive *dive)
+{
+       GtkTreeModel *model = GTK_TREE_MODEL(dive_list->model);
 
-       return FALSE;
+       gtk_tree_model_foreach(model, set_one_dive, dive);
 }
 
 void update_dive_list_units(struct DiveList *dive_list)
@@ -407,7 +423,7 @@ struct DiveList dive_list_create(void)
 
        renderer = gtk_cell_renderer_text_new();
        dive_list.nitrox = col = gtk_tree_view_column_new();
-       gtk_tree_view_column_set_title(col, "EAD");
+       gtk_tree_view_column_set_title(col, "O2%");
        gtk_tree_view_column_set_sort_column_id(col, DIVE_NITROX);
        gtk_tree_view_column_pack_start(col, renderer, FALSE);
        gtk_tree_view_column_add_attribute(col, renderer, "text", DIVE_NITROXSTR);