From 48007ebc3039525d2ff96dbcf944444009b67537 Mon Sep 17 00:00:00 2001 From: "Robert C. Helling" Date: Tue, 22 Mar 2016 23:44:59 +0100 Subject: Make the reserve gas units aware In the planner, for recreational mode, there is a setting indicating the pressure at which the diver should be back at the surface. This pressure was hardcoded to bar. Fixes #1027 [Dirk Hohndel: small modifications, more reasonable step for psi, more reasonable maxima] Signed-off-by: Robert C. Helling Signed-off-by: Dirk Hohndel --- desktop-widgets/diveplanner.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'desktop-widgets') diff --git a/desktop-widgets/diveplanner.cpp b/desktop-widgets/diveplanner.cpp index e6fe612e0..f4c53d7e8 100644 --- a/desktop-widgets/diveplanner.cpp +++ b/desktop-widgets/diveplanner.cpp @@ -306,7 +306,6 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f) ui.display_runtime->setChecked(prefs.display_runtime); ui.display_transitions->setChecked(prefs.display_transitions); ui.safetystop->setChecked(prefs.safetystop); - ui.reserve_gas->setValue(prefs.reserve_gas / 1000); ui.bottompo2->setValue(prefs.bottompo2 / 1000.0); ui.decopo2->setValue(prefs.decopo2 / 1000.0); ui.backgasBreaks->setChecked(prefs.doo2breaks); @@ -448,6 +447,18 @@ void PlannerSettingsWidget::settingsChanged() ui.bottomSAC->setValue((double) prefs.bottomsac / 1000.0); ui.decoStopSAC->setValue((double) prefs.decosac / 1000.0); } + if(get_units()->pressure == units::BAR) { + ui.reserve_gas->setSuffix(tr("bar")); + ui.reserve_gas->setSingleStep(1); + ui.reserve_gas->setMaximum(100); + ui.reserve_gas->setValue(prefs.reserve_gas / 1000); + } else { + ui.reserve_gas->setSuffix(tr("psi")); + ui.reserve_gas->setSingleStep(10); + ui.reserve_gas->setMaximum(1500); + ui.reserve_gas->setValue(mbar_to_PSI(prefs.reserve_gas)); + } + ui.bottomSAC->blockSignals(false); ui.decoStopSAC->blockSignals(false); updateUnitsUI(); -- cgit v1.2.3-70-g09d2