summaryrefslogtreecommitdiffstats
path: root/qt-ui
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui')
-rw-r--r--qt-ui/diveplanner.cpp20
-rw-r--r--qt-ui/diveplanner.h2
-rw-r--r--qt-ui/models.cpp4
-rw-r--r--qt-ui/plannerSettings.ui46
4 files changed, 50 insertions, 22 deletions
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp
index 1ba00a7f9..57438eb39 100644
--- a/qt-ui/diveplanner.cpp
+++ b/qt-ui/diveplanner.cpp
@@ -347,6 +347,8 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f)
ui.ascRateStops->setValue(prefs.ascratestops / UNIT_FACTOR);
ui.ascRateLast6m->setValue(prefs.ascratelast6m / UNIT_FACTOR);
ui.descRate->setValue(prefs.descrate / UNIT_FACTOR);
+ ui.bottompo2->setValue(prefs.bottompo2 / 1000.0);
+ ui.decopo2->setValue(prefs.decopo2 / 1000.0);
connect(ui.lastStop, SIGNAL(toggled(bool)), plannerModel, SLOT(setLastStop6m(bool)));
connect(ui.verbatim_plan, SIGNAL(toggled(bool)), plannerModel, SLOT(setVerbatim(bool)));
@@ -363,6 +365,8 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f)
connect(ui.ascRateLast6m, SIGNAL(valueChanged(int)), plannerModel, SLOT(emitDataChanged()));
connect(ui.descRate, SIGNAL(valueChanged(int)), this, SLOT(setDescRate(int)));
connect(ui.descRate, SIGNAL(valueChanged(int)), plannerModel, SLOT(emitDataChanged()));
+ connect(ui.bottompo2, SIGNAL(valueChanged(double)), this, SLOT(setBottomPo2(double)));
+ connect(ui.decopo2, SIGNAL(valueChanged(double)), this, SLOT(setDecoPo2(double)));
setMinimumWidth(0);
setMinimumHeight(0);
@@ -413,6 +417,17 @@ void PlannerSettingsWidget::setDescRate(int rate)
prefs.descrate = rate * UNIT_FACTOR;
}
+void PlannerSettingsWidget::setBottomPo2(double po2)
+{
+ prefs.bottompo2 = (int) (po2 * 1000.0);
+}
+
+void PlannerSettingsWidget::setDecoPo2(double po2)
+{
+ prefs.decopo2 = (int) (po2 * 1000.0);
+}
+
+
void DivePlannerPointsModel::setPlanMode(Mode m)
{
mode = m;
@@ -678,8 +693,9 @@ bool DivePlannerPointsModel::addGas(struct gasmix mix)
/* The depth to change to that gas is given by the depth where its pO₂ is 1.6 bar.
* The user should be able to change this depth manually. */
pressure_t modpO2;
- modpO2.mbar = 1600;
- cyl->depth = gas_mod(&mix, modpO2);
+ modpO2.mbar = prefs.decopo2;
+ cyl->depth = gas_mod(&mix, modpO2, 3000);
+
CylindersModel::instance()->setDive(stagingDive);
return true;
}
diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h
index 9f6052b4a..5955a5a8f 100644
--- a/qt-ui/diveplanner.h
+++ b/qt-ui/diveplanner.h
@@ -164,6 +164,8 @@ slots:
void setAscRateStops(int rate);
void setAscRateLast6m(int rate);
void setDescRate(int rate);
+ void setBottomPo2(double po2);
+ void setDecoPo2(double po2);
private:
Ui::plannerSettingsWidget ui;
diff --git a/qt-ui/models.cpp b/qt-ui/models.cpp
index 167f54813..a5a1f5bff 100644
--- a/qt-ui/models.cpp
+++ b/qt-ui/models.cpp
@@ -250,8 +250,8 @@ bool CylindersModel::setData(const QModelIndex &index, const QVariant &value, in
if (CHANGED()) {
cyl->gasmix.o2 = string_to_fraction(vString.toUtf8().data());
pressure_t modpO2;
- modpO2.mbar = 1600;
- cyl->depth = gas_mod(&cyl->gasmix, modpO2);
+ modpO2.mbar = prefs.decopo2;
+ cyl->depth = gas_mod(&cyl->gasmix, modpO2, 3000);
changed = true;
}
break;
diff --git a/qt-ui/plannerSettings.ui b/qt-ui/plannerSettings.ui
index 519f3ea7c..57814eabb 100644
--- a/qt-ui/plannerSettings.ui
+++ b/qt-ui/plannerSettings.ui
@@ -72,16 +72,6 @@
</property>
</widget>
</item>
- <item row="1" column="1">
- <widget class="QPlainTextEdit" name="bottompo2">
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>20</height>
- </size>
- </property>
- </widget>
- </item>
<item row="2" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
@@ -90,12 +80,34 @@
</widget>
</item>
<item row="2" column="1">
- <widget class="QPlainTextEdit" name="decopo2">
- <property name="maximumSize">
- <size>
- <width>16777215</width>
- <height>20</height>
- </size>
+ <widget class="QDoubleSpinBox" name="decopo2">
+ <property name="suffix">
+ <string>bar</string>
+ </property>
+ <property name="maximum">
+ <double>2.000000000000000</double>
+ </property>
+ <property name="singleStep">
+ <double>0.100000000000000</double>
+ </property>
+ <property name="value">
+ <double>1.600000000000000</double>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QDoubleSpinBox" name="bottompo2">
+ <property name="suffix">
+ <string>bar</string>
+ </property>
+ <property name="maximum">
+ <double>2.000000000000000</double>
+ </property>
+ <property name="singleStep">
+ <double>0.100000000000000</double>
+ </property>
+ <property name="value">
+ <double>1.400000000000000</double>
</property>
</widget>
</item>
@@ -299,8 +311,6 @@
<tabstop>display_transitions</tabstop>
<tabstop>lastStop</tabstop>
<tabstop>backgasBreaks</tabstop>
- <tabstop>bottompo2</tabstop>
- <tabstop>decopo2</tabstop>
<tabstop>descRate</tabstop>
</tabstops>
<resources/>