[PATCH 1/3] Add helper to parse pressure strings.

Joakim Bygdell j.bygdell at gmail.com
Tue Feb 9 10:25:50 PST 2016


> On 09 Feb 2016, at 19:21, Dirk Hohndel <dirk at hohndel.org> wrote:
> 
> On Tue, Feb 09, 2016 at 06:03:23PM +0100, Joakim Bygdell wrote:
>> Signed-off-by: Joakim Bygdell <j.bygdell at gmail.com>
>> ---
>> subsurface-core/helpers.h    |  1 +
>> subsurface-core/qthelper.cpp | 21 +++++++++++++++++++++
>> 2 files changed, 22 insertions(+)
>> 
>> diff --git a/subsurface-core/helpers.h b/subsurface-core/helpers.h
>> index b88230c..7537818 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 6adb06b..b091109 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::KG:
>> +		mbar = rint(number * 1000);
>> +		break;
>> +	case units::LBS:
>> +		mbar = psi_to_mbar(number);
>> +		break;
> 
> Hmm - that seems wrong. Shouldn't you switch on the pressure units instead
> of on the weight units???
*facepalm* I blame low blood suger at the time of writing.

> 
> /D

/Jocke



More information about the subsurface mailing list