X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=divelist.c;h=4ab61997cfc4e71c374b0f6606708e760377e14d;hb=7b5874ead7c9115f8e20025ad29733d9e4293d70;hp=f664cde49cf6f0c8f725a8d3f681402a277a7abc;hpb=d3f1a30364878d0eb155a7d9ab7a58419e8690a3;p=ext%2Fsubsurface.git diff --git a/divelist.c b/divelist.c index f664cde..4ab6199 100644 --- a/divelist.c +++ b/divelist.c @@ -244,7 +244,7 @@ static void get_dive_gas(struct dive *dive, int *o2, int *he, int *o2low) if (cylinder_none(cyl)) continue; if (!o2) - o2 = 209; + o2 = AIR_PERMILLE; if (o2 < mino2) mino2 = o2; if (he > maxhe) @@ -258,7 +258,7 @@ newmax: maxo2 = o2; } /* All air? Show/sort as "air"/zero */ - if (!maxhe && maxo2 == 209 && mino2 == maxo2) + if (!maxhe && maxo2 == AIR_PERMILLE && mino2 == maxo2) maxo2 = mino2 = 0; *o2 = maxo2; *he = maxhe; @@ -292,6 +292,8 @@ static gint nitrox_sort_func(GtkTreeModel *model, return a_he - b_he; } +#define UTF8_ELLIPSIS "\xE2\x80\xA6" + static void nitrox_data_func(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, @@ -315,7 +317,7 @@ static void nitrox_data_func(GtkTreeViewColumn *col, if (o2 == o2low) snprintf(buffer, sizeof(buffer), "%d", o2); else - snprintf(buffer, sizeof(buffer), "%d-%d", o2low, o2); + snprintf(buffer, sizeof(buffer), "%d" UTF8_ELLIPSIS "%d", o2low, o2); else strcpy(buffer, "air"); @@ -390,8 +392,10 @@ static int calculate_otu(struct dive *dive) struct sample *sample = dive->sample + i; struct sample *psample = sample - 1; t = sample->time.seconds - psample->time.seconds; - po2 = dive->cylinder[sample->cylinderindex].gasmix.o2.permille / 1000.0 * - (sample->depth.mm + 10000) / 10000.0; + int o2 = dive->cylinder[sample->cylinderindex].gasmix.o2.permille; + if (!o2) + o2 = AIR_PERMILLE; + po2 = o2 / 1000.0 * (sample->depth.mm + 10000) / 10000.0; if (po2 >= 0.5) otu += pow(po2 - 0.5, 0.83) * t / 30.0; }