summaryrefslogtreecommitdiffstats
path: root/qt-ui
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui')
-rw-r--r--qt-ui/maintab.cpp32
1 files changed, 17 insertions, 15 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index 075bfb734..ed65a1943 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -472,28 +472,30 @@ void MainTab::updateDiveInfo(bool clear)
ui.airTemperatureText->setText(get_temperature_string(displayed_dive.airtemp, true));
volume_t gases[MAX_CYLINDERS] = {};
get_gas_used(&displayed_dive, gases);
- QString volumes = get_volume_string(gases[0], true);
+ QString volumes;
int mean[MAX_CYLINDERS], duration[MAX_CYLINDERS];
per_cylinder_mean_depth(&displayed_dive, select_dc(&displayed_dive), mean, duration);
volume_t sac;
- QString SACs;
- if (mean[0] && duration[0] && gases[0].mliter) {
- sac.mliter = gases[0].mliter / (depth_to_atm(mean[0], &displayed_dive) * duration[0] / 60.0);
- SACs = get_volume_string(sac, true).append(tr("/min"));
- } else {
- SACs = QString(tr("unknown"));
- }
- for (int i = 1; i < MAX_CYLINDERS && gases[i].mliter != 0; i++) {
- volumes.append("\n" + get_volume_string(gases[i], true));
- if (duration[i] && gases[i].mliter) {
+ QString gaslist, SACs, separator;
+
+ gaslist = ""; SACs = ""; volumes = ""; separator = "";
+ for (int i = 0; i < MAX_CYLINDERS; i++) {
+ if (!is_cylinder_used(&displayed_dive, i))
+ continue;
+ gaslist.append(separator); volumes.append(separator); SACs.append(separator);
+ separator = "\n";
+
+ gaslist.append(gasname(&displayed_dive.cylinder[i].gasmix));
+ if (!gases[i].mliter)
+ continue;
+ volumes.append(get_volume_string(gases[i], true));
+ if (duration[i]) {
sac.mliter = gases[i].mliter / (depth_to_atm(mean[i], &displayed_dive) * duration[i] / 60);
- SACs.append("\n" + get_volume_string(sac, true).append(tr("/min")));
- } else {
- SACs.append("\n");
+ SACs.append(get_volume_string(sac, true).append(tr("/min")));
}
}
ui.gasUsedText->setText(volumes);
- ui.oxygenHeliumText->setText(get_gaslist(&displayed_dive));
+ ui.oxygenHeliumText->setText(gaslist);
ui.dateText->setText(get_short_dive_date_string(displayed_dive.when));
ui.diveTimeText->setText(QString::number((int)((displayed_dive.duration.seconds + 30) / 60)));
if (prevd)