mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
core: add cast_int<> function
We had a pattern where doubles were converted to long with lrint() and then down-cast to a narrower int type. Because this is unwieldy, introduce a function encapsulating this. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
110e64bc66
commit
77b12bbccf
10 changed files with 34 additions and 23 deletions
|
@ -1170,13 +1170,13 @@ static weight_t parseWeight(const QString &text)
|
|||
return {};
|
||||
double number = numOnly.toDouble();
|
||||
if (text.contains(gettextFromC::tr("kg"), Qt::CaseInsensitive)) {
|
||||
return { .grams = static_cast<int>(lrint(number * 1000)) };
|
||||
return { .grams = int_cast<int>(number * 1000) };
|
||||
} else if (text.contains(gettextFromC::tr("lbs"), Qt::CaseInsensitive)) {
|
||||
return { .grams = lbs_to_grams(number) };
|
||||
} else {
|
||||
switch (prefs.units.weight) {
|
||||
case units::KG:
|
||||
return { .grams = static_cast<int>(lrint(number * 1000)) };
|
||||
return { .grams = int_cast<int>(number * 1000) };
|
||||
case units::LBS:
|
||||
return { .grams = lbs_to_grams(number) };
|
||||
default:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue