X-Git-Url: http://git.maemo.org/git/?p=gonvert;a=blobdiff_plain;f=src%2Funit_data.py;h=65400e36595e04f8538f52d1dab4356cc1fa283e;hp=07149729ca2d20d48d9c2e64a9c4f803de0479d8;hb=2b8c6ea724c7073ab8190341e2aeaa38c4441b5e;hpb=b5484e1b85026102f0e4fe5f645381c8379f13c2 diff --git a/src/unit_data.py b/src/unit_data.py index 0714972..65400e3 100644 --- a/src/unit_data.py +++ b/src/unit_data.py @@ -1,9 +1,14 @@ import math -import gettext import converters -_ = gettext.gettext +try: + raise ImportError() + import gettext +except ImportError: + _ = lambda x: x +else: + _ = gettext.gettext @@ -100,13 +105,13 @@ UNIT_DESCRIPTIONS = { _(u"Area"): { ".base_unit": _(u"square meter"), _(u"meter diameter circle"): - [(converters.f, ('pi*(x/2.0)**2', '2.0*(x/pi)**(0.5)')), "m dia.", _(u"Type the diameter of the circle in meters to find its area displayed in other fields.")], + [(converters.f, ('math.pi*(x/2.0)**2', '2.0*(x/math.pi)**(0.5)')), "m dia.", _(u"Type the diameter of the circle in meters to find its area displayed in other fields.")], _(u"centimeter diameter circle"): - [(converters.f, ('pi*(x/200.0)**2', '200.0*(x/pi)**(0.5)')), "cm dia.", _(u"Type the diameter of the circle in centimeters to find its area displayed in other fields.")], + [(converters.f, ('math.pi*(x/200.0)**2', '200.0*(x/math.pi)**(0.5)')), "cm dia.", _(u"Type the diameter of the circle in centimeters to find its area displayed in other fields.")], _(u"inch diameter circle"): - [(converters.f, ('pi*(((x*(25.4/1000))/2.0) )**2', '1000/25.4 * 2.0*(x/pi)**(0.5)')), "in dia.", _(u"Type the diameter of the circle in inches to find its area displayed in other fields.")], + [(converters.f, ('math.pi*(((x*(25.4/1000))/2.0) )**2', '1000/25.4 * 2.0*(x/math.pi)**(0.5)')), "in dia.", _(u"Type the diameter of the circle in inches to find its area displayed in other fields.")], _(u"foot diameter circle"): - [(converters.f, ('pi*(((x*((12*25.4)/1000))/2.0) )**2', '1000/(12*25.4) * 2.0*(x/pi)**(0.5)')), "ft dia.", _(u"Type the diameter of the circle in feet to find its area displayed in other fields.")], + [(converters.f, ('math.pi*(((x*((12*25.4)/1000))/2.0) )**2', '1000/(12*25.4) * 2.0*(x/math.pi)**(0.5)')), "ft dia.", _(u"Type the diameter of the circle in feet to find its area displayed in other fields.")], _(u"are"): [(converters.m, 100.0), '', _(u"The unit of superficial measure, being a square of which each side is ten meters in length; 100 square meters, or about 119.6 square yards.")], _(u"acre"): @@ -2184,14 +2189,40 @@ _(u"Electrical Voltage"): {".base_unit": _(u"volt"), _(u"pony"): [(converters.m, 25.0), "", """Equal to twenty five pounds sterling"""], }, + + _(u"Radioactivity"): { + ".base_unit": "becquerel", + _(u"becquerel"): + [(converters.m, 1.0), u"Bq", 'The SI derived unit of radioactivity.'], + _(u"curie"): + [(converters.m, 3.7e10), u"Ci", 'Roughly the activity of 1 gram of the radium isotope 226 Ra.'], + _(u"pico curie"): + [(converters.m, 3.7e-2), u"pCi", ''], + }, + + _(u"Radiation dose"): { + ".base_unit": "Sievert", + _(u"Sievert"): + [(converters.m, 1.0), u"Sv", ''], + _(u"milli Sievert"): + [(converters.m, 1.0e-3), u"mSv", ''], + _(u"micro Sievert"): + [(converters.m, 1.0e-6), u"\xb5Sv", ''], + _(u"rem"): + [(converters.m, 0.01), u"rem", ''], + _(u"milli rem"): + [(converters.m, 1.0e-5), u"mrem", ''], + _(u"roentgen"): + [(converters.m, 1/1.07185e2), u"R", ''], + }, } UNIT_CATEGORIES = sorted(UNIT_DESCRIPTIONS.iterkeys()) -def get_units(category): - units = sorted(UNIT_DESCRIPTIONS[category].iterkeys()) +def get_units(categoryName): + units = sorted(UNIT_DESCRIPTIONS[categoryName].iterkeys()) # do not display .base_unit description key del units[0] @@ -2199,6 +2230,23 @@ def get_units(category): return units +def get_units_from_category(category): + units = sorted(category.iterkeys()) + + # do not display .base_unit description key + del units[0] + + return units + + +def get_base_unit(categoryName): + return UNIT_DESCRIPTIONS[categoryName][".base_unit"] + + +def get_base_unit_from_category(category): + return category[".base_unit"] + + future_dic = { _(u"Wire Gauge"): { ".base_unit": "circular mils",