diff options
author | Joakim Bygdell <j.bygdell@gmail.com> | 2016-02-09 19:52:02 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2016-02-09 12:10:36 -0800 |
commit | 9c5b97e6cfe738fe2ac9f2b3f72ed624230aef0a (patch) | |
tree | 1f6c7c46fd27b99b4abc62ad48ae1dad5451f81c /subsurface-core | |
parent | bc84d280b863c4cd67c8986357e55bcffc674e13 (diff) | |
download | subsurface-9c5b97e6cfe738fe2ac9f2b3f72ed624230aef0a.tar.gz |
Add helper to parse pressure strings.
Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'subsurface-core')
-rw-r--r-- | subsurface-core/helpers.h | 1 | ||||
-rw-r--r-- | subsurface-core/qthelper.cpp | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/subsurface-core/helpers.h b/subsurface-core/helpers.h index b88230c67..7537818f2 100644 --- a/subsurface-core/helpers.h +++ b/subsurface-core/helpers.h @@ -35,6 +35,7 @@ int gettimezoneoffset(timestamp_t when = 0); int parseLengthToMm(const QString &text); int parseTemperatureToMkelvin(const QString &text); int parseWeightToGrams(const QString &text); +int parsePressureToMbar(const QString &text); QString get_dive_duration_string(timestamp_t when, QString hourText, QString minutesText); QString get_dive_date_string(timestamp_t when); QString get_short_dive_date_string(timestamp_t when); diff --git a/subsurface-core/qthelper.cpp b/subsurface-core/qthelper.cpp index 6adb06bfb..f2fc7e879 100644 --- a/subsurface-core/qthelper.cpp +++ b/subsurface-core/qthelper.cpp @@ -850,6 +850,27 @@ int parseWeightToGrams(const QString &text) return grams; } +int parsePressureToMbar(const QString &text) +{ + int mbar; + QString numOnly = text; + numOnly.replace(",", ".").remove(QRegExp("[^0-9.]")); + if (numOnly.isEmpty()) + return 0; + double number = numOnly.toDouble(); + switch (prefs.units.pressure) { + case units::BAR: + mbar = rint(number * 1000); + break; + case units::PSI: + mbar = psi_to_mbar(number); + break; + default: + mbar = 0; + } + return mbar; +} + QString get_dive_duration_string(timestamp_t when, QString hourText, QString minutesText) { int hrs, mins; |