From abdee5b1b8a97c641bca9bc2ebac9555c3e2ea54 Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Sat, 19 Nov 2011 12:47:07 -0800 Subject: [PATCH] Correctly plot the tank end pressure if it was set manually While printing the last pressure in the calculated sequence may seem more logical, given that the discrete series will create some amount of error this simply looks wrong. Instead we pick the end pressure that was manually set. Signed-off-by: Dirk Hohndel --- profile.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/profile.c b/profile.c index 9fab8b2..df1b22b 100644 --- a/profile.c +++ b/profile.c @@ -717,7 +717,7 @@ static void plot_pressure_value(struct graphics_context *gc, int mbar, int sec, plot_text(gc, &tro, sec, mbar, "%d %s", pressure, unit); } -static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot_info *pi) +static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot_info *pi, struct dive *dive) { int i; int mbar, cyl; @@ -763,7 +763,10 @@ static void plot_cylinder_pressure_text(struct graphics_context *gc, struct plot for (cyl = 0; cyl < MAX_CYLINDERS; cyl++) { if (last_time[cyl]) { - plot_pressure_value(gc, last_pressure[cyl], last_time[cyl], CENTER, TOP); + if (dive->cylinder[cyl].end.mbar) + plot_pressure_value(gc, dive->cylinder[cyl].end.mbar, last_time[cyl], CENTER, TOP); + else + plot_pressure_value(gc, last_pressure[cyl], last_time[cyl], CENTER, TOP); } } } @@ -1322,7 +1325,7 @@ void plot(struct graphics_context *gc, cairo_rectangle_int_t *drawing_area, stru /* Text on top of all graphs.. */ plot_temperature_text(gc, pi); plot_depth_text(gc, pi); - plot_cylinder_pressure_text(gc, pi); + plot_cylinder_pressure_text(gc, pi, dive); /* Bounding box last */ gc->leftx = 0; gc->rightx = 1.0; -- 2.45.2