From 1cd47c2dd4fad6907d839c4dda06858ad4183f00 Mon Sep 17 00:00:00 2001 From: Ladislav Michl Date: Wed, 27 Aug 2025 14:20:10 +0200 Subject: [PATCH] Base: add back Imperial for Civil Engineering unit conversions Fixes: 1155f0d75281 ("Base: simplify UnitsSchemas management") --- src/Base/UnitsSchemasData.h | 11 +++++++++-- tests/src/Base/SchemaTests.cpp | 4 ++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/Base/UnitsSchemasData.h b/src/Base/UnitsSchemasData.h index 718e145162..6f595d38eb 100644 --- a/src/Base/UnitsSchemasData.h +++ b/src/Base/UnitsSchemasData.h @@ -628,9 +628,16 @@ inline const UnitsSchemaSpec s8 }; inline const UnitsSchemaSpec s9 -{ 7, "ImperialCivil", "ft", false, true, QT_TRANSLATE_NOOP("UnitsApi", "Imperial for Civil Eng (ft, ft/s)"), false, +{ 7, "ImperialCivil", "ft", false, true, QT_TRANSLATE_NOOP("UnitsApi", "Imperial for Civil Eng (ft, lb, mph)"), false, { - { "Angle" , {{ 0 , "toDMS" , 0 }}} // <== ! + { "Length" , {{ 0 , "ft" , 12 * 25.4 }}}, + { "Area" , {{ 0 , "ft^2" , 92'903.04 }}}, + { "Volume" , {{ 0 , "ft^3" , 28'316'846.592 }}}, + { "Mass" , {{ 0 , "lb" , 0.45359237 }}}, + { "Pressure" , {{ 0 , "psi" , 6.894744825494 }}}, + { "Stiffness", {{ 0 , "lbf/in", 4.448222 / 0.0254 }}}, + { "Velocity" , {{ 0 , "mph" , 447.04 }}}, + { "Angle" , {{ 0 , "toDMS" , 0 }}} // <== ! } }; diff --git a/tests/src/Base/SchemaTests.cpp b/tests/src/Base/SchemaTests.cpp index bb4e5c14d0..2151751727 100644 --- a/tests/src/Base/SchemaTests.cpp +++ b/tests/src/Base/SchemaTests.cpp @@ -298,7 +298,7 @@ TEST_F(SchemaTest, imperial_decimal_0_mm_precision_1) TEST_F(SchemaTest, imperial_civil_0_mm_precision_0) { const std::string result = setWithPrecision("ImperialCivil", 0.0, Unit::Length, 0); - const auto expect {"0 mm"}; + const auto expect {"0 ft"}; EXPECT_EQ(result, expect); } @@ -306,7 +306,7 @@ TEST_F(SchemaTest, imperial_civil_0_mm_precision_0) TEST_F(SchemaTest, imperial_civil_0_mm_precision_1) { const std::string result = setWithPrecision("ImperialCivil", 0.0, Unit::Length, 1); - const auto expect {"0.0 mm"}; + const auto expect {"0.0 ft"}; EXPECT_EQ(result, expect); }