From c89cfcccbe8700af13554465e4e09b424aa1be00 Mon Sep 17 00:00:00 2001 From: "Robert C. Helling" Date: Sat, 20 Jan 2018 21:39:38 +0100 Subject: Only give ICD warning if pN2 increases as otherwise there are warning on the descent. The ICD line in the info box is generated for all gas switches with decreasing He content. Also change the presentation in the info box to align it with the notes. Signed-off-by: Robert C. Helling --- profile-widget/diveeventitem.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'profile-widget/diveeventitem.cpp') diff --git a/profile-widget/diveeventitem.cpp b/profile-widget/diveeventitem.cpp index e904bbefc..5a5ba15b5 100644 --- a/profile-widget/diveeventitem.cpp +++ b/profile-widget/diveeventitem.cpp @@ -166,6 +166,7 @@ void DiveEventItem::setupToolTipString(struct gasmix *lastgasmix) int type = internalEvent->type; if (event_is_gaschange(internalEvent)) { + struct icd_data icd_data; struct gasmix *mix = get_gasmix_from_event(&displayed_dive, internalEvent); name += ": "; name += gasname(mix); @@ -173,9 +174,13 @@ void DiveEventItem::setupToolTipString(struct gasmix *lastgasmix) /* Do we have an explicit cylinder index? Show it. */ if (internalEvent->gas.index >= 0) name += tr(" (cyl. %1)").arg(internalEvent->gas.index + 1); - icd_data icd_data; - if (isobaric_counterdiffusion(lastgasmix, mix, &icd_data)) - name += tr("\nICD ΔN2/ΔHe=%1/%2=%3%").arg(icd_data.dN2 / 10).arg(-icd_data.dHe / 10).arg((-100 * icd_data.dN2 / icd_data.dHe)); + bool icd = isobaric_counterdiffusion(lastgasmix, mix, &icd_data); + if (icd_data.dHe < 0) { + if (icd) + name += tr("\nICD: ΔHe=%1% ΔN₂=%2%>%3%").arg(icd_data.dHe / 10).arg(icd_data.dN2 / 10).arg(-icd_data.dHe / 50); + else + name += tr("\nICD: ΔHe=%1% ΔN₂=%2%<%3%").arg(icd_data.dHe / 10).arg(icd_data.dN2 / 10).arg(-icd_data.dHe / 50); + } *lastgasmix = *mix; } else if (value) { if (type == SAMPLE_EVENT_PO2 && same_string(internalEvent->name, "SP change")) { -- cgit v1.2.3-70-g09d2