aboutsummaryrefslogtreecommitdiffstats
path: root/desktop-widgets/preferences
diff options
context:
space:
mode:
authorGravatar Willem Ferguson <willemferguson@zoology.up.ac.za>2018-03-14 17:13:37 +0200
committerGravatar Lubomir I. Ivanov <neolit123@gmail.com>2018-04-28 20:11:22 +0300
commit81a812539c95f2e709995d446065803c09e9136a (patch)
treee75422bbd34a909e3f897e3200e6624ad83e6b9a /desktop-widgets/preferences
parente9fd4cb7dca13c01f85ad63b667100ee15d7dc6d (diff)
downloadsubsurface-81a812539c95f2e709995d446065803c09e9136a.tar.gz
Plot OC-pO2 graph for SCR dives
This commit allows plotting the OC-equivalent pO2 graph for PSCR dives. This happens in both the cases where there is no external O2-monitoring AND when there is external pO2 monitoring. The calculations are only done for PSCR dives and is achieved as follows: 1) Within plot-info create a pressure-t called OC_pO2 in profile.h and populate this variable with the open-circuit pO2 values in profile.c. 2) Create a new partialPressureGasItem ocpo2GasItem in profilewidget2.h and, in profilewidget2.cpp, initialise it to read the plot-info OC_pO2 values and enable its display by using the setVisible method. The diveplotdatamodel was also touched in order to achieve this. 3) Create a pref button that controls the display of OC-pO2 for SCR dives 4) Change the colour of the OC-pO2 grpah to orange 5) Change the connection of the crr_OC_pO2 signal to be appropriate 6) rename the OC_pO2 attribute to scr_OC-pO2 Signed-off-by: Willem Ferguson <willemferguson@zoology.up.ac.za>
Diffstat (limited to 'desktop-widgets/preferences')
-rw-r--r--desktop-widgets/preferences/preferences_graph.cpp2
-rw-r--r--desktop-widgets/preferences/preferences_graph.ui113
2 files changed, 63 insertions, 52 deletions
diff --git a/desktop-widgets/preferences/preferences_graph.cpp b/desktop-widgets/preferences/preferences_graph.cpp
index ccc9aee65..91cd773d8 100644
--- a/desktop-widgets/preferences/preferences_graph.cpp
+++ b/desktop-widgets/preferences/preferences_graph.cpp
@@ -40,6 +40,7 @@ void PreferencesGraph::refreshSettings()
ui->vpmb_conservatism->setValue(prefs.vpmb_conservatism);
ui->show_ccr_setpoint->setChecked(prefs.show_ccr_setpoint);
ui->show_ccr_sensors->setChecked(prefs.show_ccr_sensors);
+ ui->show_scr_ocpo2->setChecked(prefs.show_scr_ocpo2);
ui->defaultSetpoint->setValue((double)prefs.defaultsetpoint / 1000.0);
ui->psro2rate->setValue(prefs.o2consumption / 1000.0);
ui->pscrfactor->setValue(lrint(1000.0 / prefs.pscr_ratio));
@@ -71,6 +72,7 @@ void PreferencesGraph::syncSettings()
tech->setVpmbConservatism(ui->vpmb_conservatism->value());
tech->setShowCCRSetpoint(ui->show_ccr_setpoint->isChecked());
tech->setShowCCRSensors(ui->show_ccr_sensors->isChecked());
+ tech->setShowSCROCpO2(ui->show_scr_ocpo2->isChecked());
tech->setDisplayUnusedTanks(ui->display_unused_tanks->isChecked());
tech->setShowAverageDepth(ui->show_average_depth->isChecked());
tech->setShowIcd(ui->show_icd->isChecked());
diff --git a/desktop-widgets/preferences/preferences_graph.ui b/desktop-widgets/preferences/preferences_graph.ui
index e711ea1c7..020ae498f 100644
--- a/desktop-widgets/preferences/preferences_graph.ui
+++ b/desktop-widgets/preferences/preferences_graph.ui
@@ -158,18 +158,72 @@
<item row="5" column="1" colspan="2">
<widget class="QCheckBox" name="show_ccr_sensors">
<property name="text">
- <string>Show individual O₂ sensor values when viewing pO₂</string>
+ <string>Show O₂ sensor values when viewing pO₂</string>
</property>
</widget>
</item>
<item row="6" column="1" colspan="2">
<widget class="QCheckBox" name="show_ccr_setpoint">
<property name="text">
- <string>Show setpoints when viewing pO₂</string>
+ <string>Show CCR setpoints when viewing pO₂</string>
</property>
</widget>
</item>
<item row="7" column="0">
+ <widget class="QLabel" name="pSCR">
+ <property name="text">
+ <string>pSCR options:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="1">
+ <widget class="QLabel" name="MetabolicRate">
+ <property name="text">
+ <string>pSCR metabolic rate O₂</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="2">
+ <widget class="QDoubleSpinBox" name="psro2rate">
+ <property name="suffix">
+ <string>ℓ/min</string>
+ </property>
+ <property name="decimals">
+ <number>3</number>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="3">
+ <widget class="QLabel" name="label_28">
+ <property name="text">
+ <string>Dilution ratio</string>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="4">
+ <widget class="QSpinBox" name="pscrfactor">
+ <property name="suffix">
+ <string/>
+ </property>
+ <property name="prefix">
+ <string>1:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="1">
+ <widget class="QCheckBox" name="show_scr_ocpo2">
+ <property name="text">
+ <string>Show equivalent OC pO₂ with pSCR pO₂</string>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="0">
<widget class="QCheckBox" name="show_icd">
<property name="text">
<string>Show warnings for isobaric counterdiffusion</string>
@@ -195,16 +249,6 @@
</property>
</widget>
</item>
- <item row="4" column="4">
- <widget class="QSpinBox" name="pscrfactor">
- <property name="suffix">
- <string/>
- </property>
- <property name="prefix">
- <string>1:</string>
- </property>
- </widget>
- </item>
<item row="3" column="0">
<widget class="QRadioButton" name="buehlmann">
<property name="text">
@@ -225,16 +269,6 @@
</property>
</widget>
</item>
- <item row="4" column="3">
- <widget class="QLabel" name="label_28">
- <property name="text">
- <string>Dilution ratio</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
<item row="3" column="2">
<widget class="QSpinBox" name="gflow">
<property name="suffix">
@@ -271,16 +305,6 @@
</property>
</widget>
</item>
- <item row="4" column="1">
- <widget class="QLabel" name="MetabolicRate">
- <property name="text">
- <string>Metabolic rate O₂</string>
- </property>
- <property name="alignment">
- <set>Qt::AlignCenter</set>
- </property>
- </widget>
- </item>
<item row="0" column="0" colspan="2">
<widget class="QCheckBox" name="red_ceiling">
<property name="enabled">
@@ -291,16 +315,6 @@
</property>
</widget>
</item>
- <item row="4" column="2">
- <widget class="QDoubleSpinBox" name="psro2rate">
- <property name="suffix">
- <string>ℓ/min</string>
- </property>
- <property name="decimals">
- <number>3</number>
- </property>
- </widget>
- </item>
<item row="2" column="0">
<widget class="QRadioButton" name="vpmb">
<property name="text">
@@ -321,13 +335,6 @@
</property>
</widget>
</item>
- <item row="4" column="0">
- <widget class="QLabel" name="pSCR">
- <property name="text">
- <string>pSCR options:</string>
- </property>
- </widget>
- </item>
<item row="3" column="1">
<widget class="QLabel" name="label_GFlow">
<property name="text">
@@ -386,16 +393,18 @@
<tabstop>pheThreshold</tabstop>
<tabstop>maxpo2</tabstop>
<tabstop>defaultSetpoint</tabstop>
- <tabstop>show_ccr_setpoint</tabstop>
<tabstop>show_ccr_sensors</tabstop>
+ <tabstop>show_ccr_setpoint</tabstop>
+ <tabstop>psro2rate</tabstop>
+ <tabstop>pscrfactor</tabstop>
+ <tabstop>show_scr_ocpo2</tabstop>
+ <tabstop>show_icd</tabstop>
<tabstop>red_ceiling</tabstop>
<tabstop>vpmb</tabstop>
<tabstop>vpmb_conservatism</tabstop>
<tabstop>buehlmann</tabstop>
<tabstop>gflow</tabstop>
<tabstop>gfhigh</tabstop>
- <tabstop>psro2rate</tabstop>
- <tabstop>pscrfactor</tabstop>
<tabstop>display_unused_tanks</tabstop>
<tabstop>show_average_depth</tabstop>
</tabstops>