From 4d6682e21158a3df939d59387cfff6d119acd9e2 Mon Sep 17 00:00:00 2001 From: Gabriel Ozouf Date: Mon, 6 Jul 2020 16:25:02 +0200 Subject: [PATCH] [poincare/unit] Added imperial units The new units are : distance mile, yard, foot, inch mass pound, ounce volume gallon, quart, pint, cup, fluid ounce table spoon, tea spoon Change-Id: I6864067a1822a077764ed3b61fc46004732e9447 --- apps/math_toolbox.cpp | 43 +++++++++++++++++++--- apps/shared.universal.i18n | 15 ++++++++ apps/toolbox.de.i18n | 16 +++++++++ apps/toolbox.en.i18n | 16 +++++++++ apps/toolbox.es.i18n | 16 +++++++++ apps/toolbox.fr.i18n | 16 +++++++++ apps/toolbox.it.i18n | 16 +++++++++ apps/toolbox.nl.i18n | 16 +++++++++ apps/toolbox.pt.i18n | 16 +++++++++ poincare/include/poincare/unit.h | 61 +++++++++++++++++++++++++++----- 10 files changed, 219 insertions(+), 12 deletions(-) diff --git a/apps/math_toolbox.cpp b/apps/math_toolbox.cpp index ec1d8a8cc..852459638 100644 --- a/apps/math_toolbox.cpp +++ b/apps/math_toolbox.cpp @@ -117,14 +117,22 @@ const ToolboxMessageTree unitDistanceMeterChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceMeterPicoSymbol, I18n::Message::UnitDistanceMeterPico), }; +const ToolboxMessageTree unitDistanceImperialChildren[] = { + ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceMileSymbol, I18n::Message::UnitDistanceMile), + ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceYardSymbol, I18n::Message::UnitDistanceYard), + ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceFootSymbol, I18n::Message::UnitDistanceFoot), + ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceInchSymbol, I18n::Message::UnitDistanceInch), +}; + const ToolboxMessageTree unitDistanceChildren[] = { ToolboxMessageTree::Node(I18n::Message::UnitDistanceMeterMenu, unitDistanceMeterChildren), + ToolboxMessageTree::Node(I18n::Message::UnitImperialMenu, unitDistanceImperialChildren), ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceAstronomicalUnitSymbol, I18n::Message::UnitDistanceAstronomicalUnit), ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceLightYearSymbol, I18n::Message::UnitDistanceLightYear), - ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceParsecSymbol, I18n::Message::UnitDistanceParsec)}; + ToolboxMessageTree::Leaf(I18n::Message::UnitDistanceParsecSymbol, I18n::Message::UnitDistanceParsec), +}; -const ToolboxMessageTree unitMassChildren[] = { - ToolboxMessageTree::Leaf(I18n::Message::UnitMassTonneSymbol, I18n::Message::UnitMassTonne), +const ToolboxMessageTree unitMassGramChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitMassGramKiloSymbol, I18n::Message::UnitMassGramKilo), ToolboxMessageTree::Leaf(I18n::Message::UnitMassGramSymbol, I18n::Message::UnitMassGram), ToolboxMessageTree::Leaf(I18n::Message::UnitMassGramMilliSymbol, I18n::Message::UnitMassGramMilli), @@ -132,6 +140,17 @@ const ToolboxMessageTree unitMassChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitMassGramNanoSymbol, I18n::Message::UnitMassGramNano), }; +const ToolboxMessageTree unitMassImperialChildren[] = { + ToolboxMessageTree::Leaf(I18n::Message::UnitMassPoundSymbol, I18n::Message::UnitMassPound), + ToolboxMessageTree::Leaf(I18n::Message::UnitMassOunceSymbol, I18n::Message::UnitMassOunce), +}; + +const ToolboxMessageTree unitMassChildren[] = { + ToolboxMessageTree::Node(I18n::Message::UnitMassGram, unitMassGramChildren), + ToolboxMessageTree::Node(I18n::Message::UnitImperialMenu, unitMassImperialChildren), + ToolboxMessageTree::Leaf(I18n::Message::UnitMassTonneSymbol, I18n::Message::UnitMassTonne), +}; + const ToolboxMessageTree unitCurrentAmpereChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitCurrentAmpereSymbol, I18n::Message::UnitCurrentAmpere), ToolboxMessageTree::Leaf(I18n::Message::UnitCurrentAmpereMilliSymbol, I18n::Message::UnitCurrentAmpereMilli), @@ -228,6 +247,7 @@ const ToolboxMessageTree unitInductanceChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitInductanceHenrySymbol, I18n::Message::UnitInductanceHenry)}; const ToolboxMessageTree unitSurfaceChildren[] = { + ToolboxMessageTree::Leaf(I18n::Message::UnitSurfaceAcreSymbol, I18n::Message::UnitSurfaceAcre), ToolboxMessageTree::Leaf(I18n::Message::UnitSurfaceHectarSymbol, I18n::Message::UnitSurfaceHectar)}; const ToolboxMessageTree unitVolumeLiterChildren[] = { @@ -237,11 +257,26 @@ const ToolboxMessageTree unitVolumeLiterChildren[] = { ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeLiterMilliSymbol, I18n::Message::UnitVolumeLiterMilli), }; +const ToolboxMessageTree unitVolumeImperialChildren[] = { + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeGallonSymbol, I18n::Message::UnitVolumeGallon), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeQuartSymbol, I18n::Message::UnitVolumeQuart), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumePintSymbol, I18n::Message::UnitVolumePint), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeCupSymbol, I18n::Message::UnitVolumeCup), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeFluidOunceSymbol, I18n::Message::UnitVolumeFluidOunce), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeTablespoonSymbol, I18n::Message::UnitVolumeTablespoon), + ToolboxMessageTree::Leaf(I18n::Message::UnitVolumeTeaspoonSymbol, I18n::Message::UnitVolumeTeaspoon), +}; + +const ToolboxMessageTree unitVolumeChildren[] = { + ToolboxMessageTree::Node(I18n::Message::UnitVolumeLiter, unitVolumeLiterChildren), + ToolboxMessageTree::Node(I18n::Message::UnitImperialMenu, unitVolumeImperialChildren), +}; + const ToolboxMessageTree unitChildren[] = { ToolboxMessageTree::Node(I18n::Message::UnitTimeMenu, unitTimeChildren), ToolboxMessageTree::Node(I18n::Message::UnitDistanceMenu, unitDistanceChildren), ToolboxMessageTree::Node(I18n::Message::UnitSurfaceMenu, unitSurfaceChildren), - ToolboxMessageTree::Node(I18n::Message::UnitVolumeMenu, unitVolumeLiterChildren), + ToolboxMessageTree::Node(I18n::Message::UnitVolumeMenu, unitVolumeChildren), ToolboxMessageTree::Node(I18n::Message::UnitMassMenu, unitMassChildren), ToolboxMessageTree::Node(I18n::Message::UnitCurrentMenu, unitCurrentAmpereChildren), ToolboxMessageTree::Node(I18n::Message::UnitTemperatureMenu, unitTemperatureChildren), diff --git a/apps/shared.universal.i18n b/apps/shared.universal.i18n index 7542b995e..68b7a3e3f 100644 --- a/apps/shared.universal.i18n +++ b/apps/shared.universal.i18n @@ -14,6 +14,10 @@ UnitDistanceMeterMilliSymbol = "_mm" UnitDistanceMeterMicroSymbol = "_μm" UnitDistanceMeterNanoSymbol = "_nm" UnitDistanceMeterPicoSymbol = "_pm" +UnitDistanceMileSymbol = "_mi" +UnitDistanceYardSymbol = "_yd" +UnitDistanceFootSymbol = "_ft" +UnitDistanceInchSymbol = "_in" UnitDistanceAstronomicalUnitSymbol = "_au" UnitDistanceLightYearSymbol = "_ly" UnitDistanceParsecSymbol = "_pc" @@ -23,6 +27,9 @@ UnitMassGramMilliSymbol = "_mg" UnitMassGramMicroSymbol = "_μg" UnitMassGramNanoSymbol = "_ng" UnitMassTonneSymbol = "_t" +UnitMassOunceSymbol = "_oz" +UnitMassPoundSymbol = "_lb" +UnitMassShortTonSymbol = "_ton" UnitCurrentAmpereSymbol = "_A" UnitCurrentAmpereMilliSymbol = "_mA" UnitCurrentAmpereMicroSymbol = "_μA" @@ -69,11 +76,19 @@ UnitConductanceSiemensSymbol = "_S" UnitConductanceSiemensMilliSymbol = "_mS" UnitMagneticFieldTeslaSymbol = "_T" UnitInductanceHenrySymbol = "_H" +UnitSurfaceAcreSymbol = "_acre" UnitSurfaceHectarSymbol = "_ha" UnitVolumeLiterSymbol = "_L" UnitVolumeLiterDeciSymbol = "_dL" UnitVolumeLiterCentiSymbol = "_cL" UnitVolumeLiterMilliSymbol = "_mL" +UnitVolumeTeaspoonSymbol = "_tsp" +UnitVolumeTablespoonSymbol = "_Tbsp" +UnitVolumeFluidOunceSymbol = "_floz" +UnitVolumeCupSymbol = "_cp" +UnitVolumePintSymbol = "_pt" +UnitVolumeQuartSymbol = "_qt" +UnitVolumeGallonSymbol = "_gal" A = "a" AbsCommandWithArg = "abs(x)" AcoshCommandWithArg = "acosh(x)" diff --git a/apps/toolbox.de.i18n b/apps/toolbox.de.i18n index 8e410a7f1..16359e367 100644 --- a/apps/toolbox.de.i18n +++ b/apps/toolbox.de.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Pikometer" UnitDistanceAstronomicalUnit = "Astronomische Einheit" UnitDistanceLightYear = "Lichtjahr" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Masse" UnitMassGramKilo = "Kilogramm" UnitMassGram = "Gramm" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligramm" UnitMassGramMicro = "Mikrogramm" UnitMassGramNano = "Nanogramm" UnitMassTonne = "Tonne" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Elektrischer Strom" UnitCurrentAmpere = "Ampere" UnitCurrentAmpereMilli = "Milliampere" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Elektrische Induktivität" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Fläche" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hektar" UnitVolumeMenu = "Volumen" UnitVolumeLiter = "Liter" UnitVolumeLiterDeci = "Deziliter" UnitVolumeLiterCenti = "Centiliter" UnitVolumeLiterMilli = "Milliliter" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Werkzeugkasten" AbsoluteValue = "Betragsfunktion" NthRoot = "n-te Wurzel" diff --git a/apps/toolbox.en.i18n b/apps/toolbox.en.i18n index c8c295608..af73af4da 100644 --- a/apps/toolbox.en.i18n +++ b/apps/toolbox.en.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picometer" UnitDistanceAstronomicalUnit = "Astronomical unit" UnitDistanceLightYear = "Light year" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Mass" UnitMassGramKilo = "Kilogram" UnitMassGram = "Gram" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligram" UnitMassGramMicro = "Microgram" UnitMassGramNano = "Nanogram" UnitMassTonne = "Tonne" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Electric current" UnitCurrentAmpere = "Ampere" UnitCurrentAmpereMilli = "Milliampere" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Electrical inductance" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Area" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hectare" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Liter" UnitVolumeLiterDeci = "Deciliter" UnitVolumeLiterCenti = "Centiliter" UnitVolumeLiterMilli = "Milliliter" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Toolbox" AbsoluteValue = "Absolute value" NthRoot = "nth-root" diff --git a/apps/toolbox.es.i18n b/apps/toolbox.es.i18n index 73410e367..549aaef5a 100644 --- a/apps/toolbox.es.i18n +++ b/apps/toolbox.es.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picometer" UnitDistanceAstronomicalUnit = "Astronomical unit" UnitDistanceLightYear = "Light year" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Mass" UnitMassGramKilo = "Kilogram" UnitMassGram = "Gram" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligram" UnitMassGramMicro = "Microgram" UnitMassGramNano = "Nanogram" UnitMassTonne = "Tonne" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Electric current" UnitCurrentAmpere = "Ampere" UnitCurrentAmpereMilli = "Milliampere" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Electrical inductance" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Area" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hectare" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Liter" UnitVolumeLiterDeci = "Deciliter" UnitVolumeLiterCenti = "Centiliter" UnitVolumeLiterMilli = "Milliliter" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Caja de herramientas" AbsoluteValue = "Valor absoluto" NthRoot = "Raíz enesima" diff --git a/apps/toolbox.fr.i18n b/apps/toolbox.fr.i18n index 88b640b11..425159d40 100644 --- a/apps/toolbox.fr.i18n +++ b/apps/toolbox.fr.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picomètre" UnitDistanceAstronomicalUnit = "Unité astronomique" UnitDistanceLightYear = "Année-lumière" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Masse" UnitMassGramKilo = "Kilogramme" UnitMassGram = "Gramme" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligramme" UnitMassGramMicro = "Microgramme" UnitMassGramNano = "Nanogramme" UnitMassTonne = "Tonne" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Intensité du courant électrique" UnitCurrentAmpere = "Ampère" UnitCurrentAmpereMilli = "Milliampère" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Inductance" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Superficie" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hectare" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Litre" UnitVolumeLiterDeci = "Décilitre" UnitVolumeLiterCenti = "Centilitre" UnitVolumeLiterMilli = "Millilitre" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Boîte à outils" AbsoluteValue = "Valeur absolue" NthRoot = "Racine n-ième" diff --git a/apps/toolbox.it.i18n b/apps/toolbox.it.i18n index 1790bed86..eabeccbc1 100644 --- a/apps/toolbox.it.i18n +++ b/apps/toolbox.it.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picometro" UnitDistanceAstronomicalUnit = "Unità astronomica" UnitDistanceLightYear = "Anno luce" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Massa" UnitMassGramKilo = "Kilogrammo" UnitMassGram = "Grammo" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligrammo" UnitMassGramMicro = "Microgrammo" UnitMassGramNano = "Nanogrammo" UnitMassTonne = "Tonnellata" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Intensità di corrente elettrica" UnitCurrentAmpere = "Ampere" UnitCurrentAmpereMilli = "Milliampere" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Induttanza" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Superficie" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Ettaro" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Litro" UnitVolumeLiterDeci = "Decilitro" UnitVolumeLiterCenti = "Centilitro" UnitVolumeLiterMilli = "Millilitro" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Toolbox" AbsoluteValue = "Valore assoluto" NthRoot = "Radice n-esima" diff --git a/apps/toolbox.nl.i18n b/apps/toolbox.nl.i18n index 02be8f21b..ce8da3c1c 100644 --- a/apps/toolbox.nl.i18n +++ b/apps/toolbox.nl.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picometer" UnitDistanceAstronomicalUnit = "Astronomische eenheid" UnitDistanceLightYear = "Lichtjaar" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Massa" UnitMassGramKilo = "Kilogram" UnitMassGram = "Gram" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Milligram" UnitMassGramMicro = "Microgram" UnitMassGramNano = "Nanogram" UnitMassTonne = "Ton" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Elektrische stroom" UnitCurrentAmpere = "Ampère" UnitCurrentAmpereMilli = "Milliampère" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Zelfinductie" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Oppervlakte" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hectare" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Liter" UnitVolumeLiterDeci = "Deciliter" UnitVolumeLiterCenti = "Centiliter" UnitVolumeLiterMilli = "Milliliter" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Toolbox" AbsoluteValue = "Absolute waarde" NthRoot = "n-de-machtswortel" diff --git a/apps/toolbox.pt.i18n b/apps/toolbox.pt.i18n index 54f95ee42..64df135f5 100644 --- a/apps/toolbox.pt.i18n +++ b/apps/toolbox.pt.i18n @@ -22,6 +22,10 @@ UnitDistanceMeterPico = "Picómetro" UnitDistanceAstronomicalUnit = "Unidade astronómica" UnitDistanceLightYear = "Ano-luz" UnitDistanceParsec = "Parsec" +UnitDistanceMile = "Mile" +UnitDistanceYard = "Yard" +UnitDistanceFoot = "Foot" +UnitDistanceInch = "Inch" UnitMassMenu = "Massa" UnitMassGramKilo = "Quilograma" UnitMassGram = "Grama" @@ -29,6 +33,9 @@ UnitMassGramMilli = "Miligrama" UnitMassGramMicro = "Micrograma" UnitMassGramNano = "Nanograma" UnitMassTonne = "Tonelada" +UnitMassOunce = "Ounce" +UnitMassPound = "Pound" +UnitMassShortTon = "Short Ton" UnitCurrentMenu = "Intensidade da corrente elétrica" UnitCurrentAmpere = "Ampere" UnitCurrentAmpereMilli = "Miliampere" @@ -94,12 +101,21 @@ UnitMagneticFieldTesla = "Tesla" InductanceMenu = "Indutância" UnitInductanceHenry = "Henry" UnitSurfaceMenu = "Área" +UnitSurfaceAcre = "Acre" UnitSurfaceHectar = "Hectare" UnitVolumeMenu = "Volume" UnitVolumeLiter = "Litro" UnitVolumeLiterDeci = "Decilitro" UnitVolumeLiterCenti = "Centilitro" UnitVolumeLiterMilli = "Mililitro" +UnitVolumeTeaspoon = "Teaspoon" +UnitVolumeTablespoon= "Tablespoon" +UnitVolumeFluidOunce = "Fluid Ounce" +UnitVolumeCup = "Cup" +UnitVolumePint = "Pint" +UnitVolumeQuart = "Quart" +UnitVolumeGallon = "Gallon" +UnitImperialMenu = "Imperial" Toolbox = "Caixa de ferramentas" AbsoluteValue = "Valor absoluto" NthRoot = "Raiz de índice n" diff --git a/poincare/include/poincare/unit.h b/poincare/include/poincare/unit.h index 9109eff03..f2b741674 100644 --- a/poincare/include/poincare/unit.h +++ b/poincare/include/poincare/unit.h @@ -285,32 +285,53 @@ public: NoPrefix), }, DistanceRepresentatives[] = { - Representative("m", nullptr, + Representative("m", nullptr, Representative::Prefixable::Yes, LongScalePrefixes), Representative("au", "149597870700*_m", Representative::Prefixable::No, NoPrefix), - Representative("ly", "299792458*_m/_s*_year", + Representative("ly", "299792458*_m/_s*_year", Representative::Prefixable::No, NoPrefix), - Representative("pc", "180*60*60/π*_au", + Representative("pc", "180*60*60/π*_au", + Representative::Prefixable::No, + NoPrefix), + Representative("in", "0.0254*_m", + Representative::Prefixable::No, + NoPrefix), + Representative("ft", "12*_in", + Representative::Prefixable::No, + NoPrefix), + Representative("yd", "3*_ft", + Representative::Prefixable::No, + NoPrefix), + Representative("mi", "1760*_yd", Representative::Prefixable::No, NoPrefix), }, MassRepresentatives[] = { - Representative("kg", nullptr, + Representative("kg", nullptr, Representative::Prefixable::No, NoPrefix), - Representative("g", "0.001_kg", + Representative("g", "0.001_kg", Representative::Prefixable::Yes, NegativeLongScalePrefixes), - Representative("t", "1000_kg", + Representative("t", "1000_kg", Representative::Prefixable::Yes, NoPrefix), - Representative("Da", "(6.02214076*10^23*1000)^-1*_kg", + Representative("Da", "(6.02214076*10^23*1000)^-1*_kg", Representative::Prefixable::Yes, NoPrefix), + Representative("oz", "0.028349523125*_kg", + Representative::Prefixable::No, + NoPrefix), + Representative("lb", "16*_oz", + Representative::Prefixable::No, + NoPrefix), + Representative("ton", "2000*_lb", + Representative::Prefixable::No, + NoPrefix), }, CurrentRepresentatives[] = { Representative("A", nullptr, @@ -415,11 +436,35 @@ public: Representative("ha", "10^4*_m^2", Representative::Prefixable::No, NoPrefix), + Representative("acre", "43560*_ft^2", + Representative::Prefixable::No, + NoPrefix), }, VolumeRepresentatives[] = { - Representative("L", "10^-3*_m^3", + Representative("L", "10^-3*_m^3", Representative::Prefixable::Yes, NegativePrefixes), + Representative("tsp", "4.92892159375*_mL", + Representative::Prefixable::No, + NoPrefix), + Representative("Tbsp", "3*_tsp", + Representative::Prefixable::No, + NoPrefix), + Representative("floz", "0.0295735295625*_L", + Representative::Prefixable::No, + NoPrefix), + Representative("cp", "8*_floz", + Representative::Prefixable::No, + NoPrefix), + Representative("pt", "2*_cp", + Representative::Prefixable::No, + NoPrefix), + Representative("qt", "4*_cp", + Representative::Prefixable::No, + NoPrefix), + Representative("gal", "4*_qt", + Representative::Prefixable::No, + NoPrefix), }; // TODO: find a better way to define these pointers static_assert(sizeof(TimeRepresentatives)/sizeof(Representative) == 7, "The Unit::SecondRepresentative, Unit::HourRepresentative and so on might require to be fixed if the TimeRepresentatives table was changed.");