From afea30fd8a40c16bada295b9b6a89e72d1abe607 Mon Sep 17 00:00:00 2001 From: Joakim Bygdell Date: Thu, 9 Apr 2015 17:41:41 +0200 Subject: Recmode: Allow the user to specify gas reserve. Since most regulators have an intermediate pressure of 10bar the minimum value is 10 while the max is 99. Signed-off-by: Joakim Bygdell Signed-off-by: Dirk Hohndel --- qt-ui/diveplanner.cpp | 10 ++++++++++ qt-ui/diveplanner.h | 1 + qt-ui/plannerSettings.ui | 44 +++++++++++++++++++++++++++++++++++--------- 3 files changed, 46 insertions(+), 9 deletions(-) (limited to 'qt-ui') diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index 40ec3986f..b21f7f945 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -395,6 +395,7 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f) prefs.display_transitions = s.value("display_transitions", prefs.display_transitions).toBool(); prefs.recreational_mode = s.value("recreational_mode", prefs.recreational_mode).toBool(); prefs.safetystop = s.value("safetystop", prefs.safetystop).toBool(); + prefs.reserve_gas = s.value("reserve_gas", prefs.reserve_gas).toInt(); prefs.ascrate75 = s.value("ascrate75", prefs.ascrate75).toInt(); prefs.ascrate50 = s.value("ascrate50", prefs.ascrate50).toInt(); prefs.ascratestops = s.value("ascratestops", prefs.ascratestops).toInt(); @@ -418,6 +419,7 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f) ui.display_transitions->setChecked(prefs.display_transitions); ui.recreational_mode->setChecked(prefs.recreational_mode); 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); @@ -433,6 +435,7 @@ PlannerSettingsWidget::PlannerSettingsWidget(QWidget *parent, Qt::WindowFlags f) connect(ui.display_transitions, SIGNAL(toggled(bool)), plannerModel, SLOT(setDisplayTransitions(bool))); connect(ui.safetystop, SIGNAL(toggled(bool)), plannerModel, SLOT(setSafetyStop(bool))); connect(ui.recreational_mode, SIGNAL(toggled(bool)), plannerModel, SLOT(setRecreationalMode(bool))); + connect(ui.reserve_gas, SIGNAL(valueChanged(int)), plannerModel, SLOT(setReserveGas(int))); connect(ui.ascRate75, SIGNAL(valueChanged(int)), this, SLOT(setAscRate75(int))); connect(ui.ascRate75, SIGNAL(valueChanged(int)), plannerModel, SLOT(emitDataChanged())); connect(ui.ascRate50, SIGNAL(valueChanged(int)), this, SLOT(setAscRate50(int))); @@ -482,6 +485,7 @@ PlannerSettingsWidget::~PlannerSettingsWidget() s.setValue("display_transitions", prefs.display_transitions); s.setValue("recreational_mode", prefs.recreational_mode); s.setValue("safetystop", prefs.safetystop); + s.setValue("reserve_gas", prefs.reserve_gas); s.setValue("ascrate75", prefs.ascrate75); s.setValue("ascrate50", prefs.ascrate50); s.setValue("ascratestops", prefs.ascratestops); @@ -881,6 +885,12 @@ void DivePlannerPointsModel::setSafetyStop(bool value) emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS -1)); } +void DivePlannerPointsModel::setReserveGas(int reserve) +{ + prefs.reserve_gas = reserve * 1000; + emit dataChanged(createIndex(0, 0), createIndex(rowCount() - 1, COLUMNS - 1)); +} + void DivePlannerPointsModel::setDropStoneMode(bool value) { prefs.drop_stone_mode = value; diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index a4752b502..6cfcc5efb 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -93,6 +93,7 @@ slots: void loadFromDive(dive *d); void emitDataChanged(); void setRebreatherMode(int mode); + void setReserveGas(int reserve); signals: void planCreated(); diff --git a/qt-ui/plannerSettings.ui b/qt-ui/plannerSettings.ui index 961dce914..02d829c42 100644 --- a/qt-ui/plannerSettings.ui +++ b/qt-ui/plannerSettings.ui @@ -262,21 +262,21 @@ 2 - + GF high - + Plan backgas breaks - + % @@ -289,14 +289,14 @@ - + Last stop at 6m - + @@ -306,7 +306,7 @@ - + % @@ -319,14 +319,14 @@ - + Drop to first depth - + Qt::Vertical @@ -339,7 +339,7 @@ - + GF low @@ -363,6 +363,32 @@ + + + + Reserve gas + + + + + + + bar + + + + + + 10 + + + 99 + + + 40 + + + -- cgit v1.2.3-70-g09d2