summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar jan Iversen <jan@casacondor.com>2020-01-19 18:19:14 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-01-20 15:41:21 -0800
commit851ab68aa27107901c56a2088fdb0df57b11df49 (patch)
tree77d8df81e3dda48790f92db3ebf28fbc0f82a9b3
parent917e3ff0a215835687738ca4e611fc234848dc2e (diff)
downloadsubsurface-851ab68aa27107901c56a2088fdb0df57b11df49.tar.gz
qt-models: add getters to diveplanner model
diveplannermodel already contains set_<asc/desc> function that convert from screen value to real value; this adds get functions that convert real value to screen value, so now all conversions are done in one place. Use prefix Display to identify this is values prepared for the UI (both desktop and QML). Signed-off-by: jan Iversen <jan@casacondor.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--qt-models/diveplannermodel.cpp20
-rw-r--r--qt-models/diveplannermodel.h7
2 files changed, 27 insertions, 0 deletions
diff --git a/qt-models/diveplannermodel.cpp b/qt-models/diveplannermodel.cpp
index c19f9bc68..d3f9c4c6c 100644
--- a/qt-models/diveplannermodel.cpp
+++ b/qt-models/diveplannermodel.cpp
@@ -520,30 +520,50 @@ void DivePlannerPointsModel::setAscrate75(int rate)
qPrefDivePlanner::set_ascrate75(lrint(rate * UNIT_FACTOR));
emitDataChanged();
}
+int DivePlannerPointsModel::ascrate75Display()
+{
+ return lrint((float)prefs.ascrate75 / UNIT_FACTOR);
+}
void DivePlannerPointsModel::setAscrate50(int rate)
{
qPrefDivePlanner::set_ascrate50(lrint(rate * UNIT_FACTOR));
emitDataChanged();
}
+int DivePlannerPointsModel::ascrate50Display()
+{
+ return lrint((float)prefs.ascrate50 / UNIT_FACTOR);
+}
void DivePlannerPointsModel::setAscratestops(int rate)
{
qPrefDivePlanner::set_ascratestops(lrint(rate * UNIT_FACTOR));
emitDataChanged();
}
+int DivePlannerPointsModel::ascratestopsDisplay()
+{
+ return lrint((float)prefs.ascratestops / UNIT_FACTOR);
+}
void DivePlannerPointsModel::setAscratelast6m(int rate)
{
qPrefDivePlanner::set_ascratelast6m(lrint(rate * UNIT_FACTOR));
emitDataChanged();
}
+int DivePlannerPointsModel::ascratelast6mDisplay()
+{
+ return lrint((float)prefs.ascratelast6m / UNIT_FACTOR);
+}
void DivePlannerPointsModel::setDescrate(int rate)
{
qPrefDivePlanner::set_descrate(lrint(rate * UNIT_FACTOR));
emitDataChanged();
}
+int DivePlannerPointsModel::descrateDisplay()
+{
+ return lrint((float)prefs.descrate / UNIT_FACTOR);
+}
void DivePlannerPointsModel::setVerbatim(bool value)
{
diff --git a/qt-models/diveplannermodel.h b/qt-models/diveplannermodel.h
index 2a2aaa64d..88cca5879 100644
--- a/qt-models/diveplannermodel.h
+++ b/qt-models/diveplannermodel.h
@@ -47,6 +47,13 @@ public:
bool tankInUse(int cylinderid);
void setupCylinders();
bool updateMaxDepth();
+
+ int ascrate75Display();
+ int ascrate50Display();
+ int ascratestopsDisplay();
+ int ascratelast6mDisplay();
+ int descrateDisplay();
+
/**
* @return the row number.
*/