KUnitConversion
length.cpp
Go to the documentation of this file.
00001 /* 00002 * Copyright (C) 2007-2009 Petri Damstén <damu@iki.fi> 00003 * 00004 * This program is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU Library General Public License as 00006 * published by the Free Software Foundation; either version 2, or 00007 * (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details 00013 * 00014 * You should have received a copy of the GNU Library General Public 00015 * License along with this program; if not, write to the 00016 * Free Software Foundation, Inc., 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00018 */ 00019 00020 #include "length.h" 00021 #include "converter.h" 00022 #include <klocale.h> 00023 00024 using namespace KUnitConversion; 00025 00026 Length::Length() : UnitCategory(LengthCategory) 00027 { 00028 setName(i18n("Length")); 00029 setSymbolStringFormat(ki18nc("%1 value, %2 unit symbol (length", "%1 %2")); 00030 00031 U(Yottameter, 1e+24, 00032 i18nc("length unit symbol", "Ym"), 00033 i18nc("unit description in lists", "yottameters"), 00034 i18nc("unit synonyms for matching user input", "yottameter;yottameters;Ym"), 00035 ki18nc("amount in units (real)", "%1 yottameters"), 00036 ki18ncp("amount in units (integer)", "%1 yottameter", "%1 yottameters") 00037 ); 00038 U(Zettameter, 1e+21, 00039 i18nc("length unit symbol", "Zm"), 00040 i18nc("unit description in lists", "zettameters"), 00041 i18nc("unit synonyms for matching user input", "zettameter;zettameters;Zm"), 00042 ki18nc("amount in units (real)", "%1 zettameters"), 00043 ki18ncp("amount in units (integer)", "%1 zettameter", "%1 zettameters") 00044 ); 00045 U(Exameter, 1e+18, 00046 i18nc("length unit symbol", "Em"), 00047 i18nc("unit description in lists", "exameters"), 00048 i18nc("unit synonyms for matching user input", "exameter;exameters;Em"), 00049 ki18nc("amount in units (real)", "%1 exameters"), 00050 ki18ncp("amount in units (integer)", "%1 exameter", "%1 exameters") 00051 ); 00052 U(Petameter, 1e+15, 00053 i18nc("length unit symbol", "Pm"), 00054 i18nc("unit description in lists", "petameters"), 00055 i18nc("unit synonyms for matching user input", "petameter;petameters;Pm"), 00056 ki18nc("amount in units (real)", "%1 petameters"), 00057 ki18ncp("amount in units (integer)", "%1 petameter", "%1 petameters") 00058 ); 00059 U(Terameter, 1e+12, 00060 i18nc("length unit symbol", "Tm"), 00061 i18nc("unit description in lists", "terameters"), 00062 i18nc("unit synonyms for matching user input", "terameter;terameters;Tm"), 00063 ki18nc("amount in units (real)", "%1 terameters"), 00064 ki18ncp("amount in units (integer)", "%1 terameter", "%1 terameters") 00065 ); 00066 U(Gigameter, 1e+09, 00067 i18nc("length unit symbol", "Gm"), 00068 i18nc("unit description in lists", "gigameters"), 00069 i18nc("unit synonyms for matching user input", "gigameter;gigameters;Gm"), 00070 ki18nc("amount in units (real)", "%1 gigameters"), 00071 ki18ncp("amount in units (integer)", "%1 gigameter", "%1 gigameters") 00072 ); 00073 U(Megameter, 1e+06, 00074 i18nc("length unit symbol", "Mm"), 00075 i18nc("unit description in lists", "megameters"), 00076 i18nc("unit synonyms for matching user input", "megameter;megameters;Mm"), 00077 ki18nc("amount in units (real)", "%1 megameters"), 00078 ki18ncp("amount in units (integer)", "%1 megameter", "%1 megameters") 00079 ); 00080 U(Kilometer, 1000, 00081 i18nc("length unit symbol", "km"), 00082 i18nc("unit description in lists", "kilometers"), 00083 i18nc("unit synonyms for matching user input", "kilometer;kilometers;km"), 00084 ki18nc("amount in units (real)", "%1 kilometers"), 00085 ki18ncp("amount in units (integer)", "%1 kilometer", "%1 kilometers") 00086 ); 00087 U(Hectometer, 100, 00088 i18nc("length unit symbol", "hm"), 00089 i18nc("unit description in lists", "hectometers"), 00090 i18nc("unit synonyms for matching user input", "hectometer;hectometers;hm"), 00091 ki18nc("amount in units (real)", "%1 hectometers"), 00092 ki18ncp("amount in units (integer)", "%1 hectometer", "%1 hectometers") 00093 ); 00094 U(Decameter, 10, 00095 i18nc("length unit symbol", "dam"), 00096 i18nc("unit description in lists", "decameters"), 00097 i18nc("unit synonyms for matching user input", "decameter;decameters;dam"), 00098 ki18nc("amount in units (real)", "%1 decameters"), 00099 ki18ncp("amount in units (integer)", "%1 decameter", "%1 decameters") 00100 ); 00101 setDefaultUnit(UP(Meter, 1, 00102 i18nc("length unit symbol", "m"), 00103 i18nc("unit description in lists", "meters"), 00104 i18nc("unit synonyms for matching user input", "meter;meters;m"), 00105 ki18nc("amount in units (real)", "%1 meters"), 00106 ki18ncp("amount in units (integer)", "%1 meter", "%1 meters") 00107 )); 00108 U(Decimeter, 0.1, 00109 i18nc("length unit symbol", "dm"), 00110 i18nc("unit description in lists", "decimeters"), 00111 i18nc("unit synonyms for matching user input", "decimeter;decimeters;dm"), 00112 ki18nc("amount in units (real)", "%1 decimeters"), 00113 ki18ncp("amount in units (integer)", "%1 decimeter", "%1 decimeters") 00114 ); 00115 U(Centimeter, 0.01, 00116 i18nc("length unit symbol", "cm"), 00117 i18nc("unit description in lists", "centimeters"), 00118 i18nc("unit synonyms for matching user input", "centimeter;centimeters;cm"), 00119 ki18nc("amount in units (real)", "%1 centimeters"), 00120 ki18ncp("amount in units (integer)", "%1 centimeter", "%1 centimeters") 00121 ); 00122 U(Millimeter, 0.001, 00123 i18nc("length unit symbol", "mm"), 00124 i18nc("unit description in lists", "millimeters"), 00125 i18nc("unit synonyms for matching user input", "millimeter;millimeters;mm"), 00126 ki18nc("amount in units (real)", "%1 millimeters"), 00127 ki18ncp("amount in units (integer)", "%1 millimeter", "%1 millimeters") 00128 ); 00129 U(Micrometer, 1e-06, 00130 i18nc("length unit symbol", "µm"), 00131 i18nc("unit description in lists", "micrometers"), 00132 i18nc("unit synonyms for matching user input", "micrometer;micrometers;µm;um"), 00133 ki18nc("amount in units (real)", "%1 micrometers"), 00134 ki18ncp("amount in units (integer)", "%1 micrometer", "%1 micrometers") 00135 ); 00136 U(Nanometer, 1e-09, 00137 i18nc("length unit symbol", "nm"), 00138 i18nc("unit description in lists", "nanometers"), 00139 i18nc("unit synonyms for matching user input", "nanometer;nanometers;nm"), 00140 ki18nc("amount in units (real)", "%1 nanometers"), 00141 ki18ncp("amount in units (integer)", "%1 nanometer", "%1 nanometers") 00142 ); 00143 U(Picometer, 1e-12, 00144 i18nc("length unit symbol", "pm"), 00145 i18nc("unit description in lists", "picometers"), 00146 i18nc("unit synonyms for matching user input", "picometer;picometers;pm"), 00147 ki18nc("amount in units (real)", "%1 picometers"), 00148 ki18ncp("amount in units (integer)", "%1 picometer", "%1 picometers") 00149 ); 00150 U(Femtometer, 1e-15, 00151 i18nc("length unit symbol", "fm"), 00152 i18nc("unit description in lists", "femtometers"), 00153 i18nc("unit synonyms for matching user input", "femtometer;femtometers;fm"), 00154 ki18nc("amount in units (real)", "%1 femtometers"), 00155 ki18ncp("amount in units (integer)", "%1 femtometer", "%1 femtometers") 00156 ); 00157 U(Attometer, 1e-18, 00158 i18nc("length unit symbol", "am"), 00159 i18nc("unit description in lists", "attometers"), 00160 i18nc("unit synonyms for matching user input", "attometer;attometers;am"), 00161 ki18nc("amount in units (real)", "%1 attometers"), 00162 ki18ncp("amount in units (integer)", "%1 attometer", "%1 attometers") 00163 ); 00164 U(Zeptometer, 1e-21, 00165 i18nc("length unit symbol", "zm"), 00166 i18nc("unit description in lists", "zeptometers"), 00167 i18nc("unit synonyms for matching user input", "zeptometer;zeptometers;zm"), 00168 ki18nc("amount in units (real)", "%1 zeptometers"), 00169 ki18ncp("amount in units (integer)", "%1 zeptometer", "%1 zeptometers") 00170 ); 00171 U(Yoctometer, 1e-24, 00172 i18nc("length unit symbol", "ym"), 00173 i18nc("unit description in lists", "yoctometers"), 00174 i18nc("unit synonyms for matching user input", "yoctometer;yoctometers;ym"), 00175 ki18nc("amount in units (real)", "%1 yoctometers"), 00176 ki18ncp("amount in units (integer)", "%1 yoctometer", "%1 yoctometers") 00177 ); 00178 U(Inch, 0.0254, 00179 i18nc("length unit symbol", "in"), 00180 i18nc("unit description in lists", "inches"), 00181 i18nc("unit synonyms for matching user input", "inch;inches;in;\""), 00182 ki18nc("amount in units (real)", "%1 inches"), 00183 ki18ncp("amount in units (integer)", "%1 inch", "%1 inches") 00184 ); 00185 U(Thou, 0.0000254, 00186 i18nc("length unit symbol", "thou"), 00187 i18nc("unit description in lists", "thousandths of an inch"), 00188 i18nc("unit synonyms for matching user input", "thou;mil;point;thousandth of an inch;thousandths of an inch"), 00189 ki18nc("amount in units (real)", "%1 thousandths of an inch"), 00190 ki18ncp("amount in units (integer)", "%1 thousandth of an inch", "%1 thousandths of an inch") 00191 ); 00192 U(Foot, 0.3048, 00193 i18nc("length unit symbol", "ft"), 00194 i18nc("unit description in lists", "feet"), 00195 i18nc("unit synonyms for matching user input", "foot;feet;ft"), 00196 ki18nc("amount in units (real)", "%1 feet"), 00197 ki18ncp("amount in units (integer)", "%1 foot", "%1 feet") 00198 ); 00199 U(Yard, 0.9144, 00200 i18nc("length unit symbol", "yd"), 00201 i18nc("unit description in lists", "yards"), 00202 i18nc("unit synonyms for matching user input", "yard;yards;yd"), 00203 ki18nc("amount in units (real)", "%1 yards"), 00204 ki18ncp("amount in units (integer)", "%1 yard", "%1 yards") 00205 ); 00206 U(Mile, 1609.34, 00207 i18nc("length unit symbol", "mi"), 00208 i18nc("unit description in lists", "miles"), 00209 i18nc("unit synonyms for matching user input", "mile;miles;mi"), 00210 ki18nc("amount in units (real)", "%1 miles"), 00211 ki18ncp("amount in units (integer)", "%1 mile", "%1 miles") 00212 ); 00213 U(NauticalMile, 1852, 00214 i18nc("length unit symbol", "nmi"), 00215 i18nc("unit description in lists", "nautical miles"), 00216 i18nc("unit synonyms for matching user input", "nautical mile;nautical miles;nmi"), 00217 ki18nc("amount in units (real)", "%1 nautical miles"), 00218 ki18ncp("amount in units (integer)", "%1 nautical mile", "%1 nautical miles") 00219 ); 00220 U(LightYear, 9.46073e+15, 00221 i18nc("length unit symbol", "ly"), 00222 i18nc("unit description in lists", "light-years"), 00223 i18nc("unit synonyms for matching user input", 00224 "light-year;light-years;ly;lightyear;lightyears"), 00225 ki18nc("amount in units (real)", "%1 light-years"), 00226 ki18ncp("amount in units (integer)", "%1 light-year", "%1 light-years") 00227 ); 00228 U(Parsec, 3.08568e+16, 00229 i18nc("length unit symbol", "pc"), 00230 i18nc("unit description in lists", "parsecs"), 00231 i18nc("unit synonyms for matching user input", "parsec;parsecs;pc"), 00232 ki18nc("amount in units (real)", "%1 parsecs"), 00233 ki18ncp("amount in units (integer)", "%1 parsec", "%1 parsecs") 00234 ); 00235 U(AstronomicalUnit, 1.49598e+11, 00236 i18nc("length unit symbol", "au"), 00237 i18nc("unit description in lists", "astronomical units"), 00238 i18nc("unit synonyms for matching user input", "astronomical unit;astronomical units;au"), 00239 ki18nc("amount in units (real)", "%1 astronomical units"), 00240 ki18ncp("amount in units (integer)", "%1 astronomical unit", "%1 astronomical units") 00241 ); 00242 00243 setMostCommonUnits(QList<int>() << 00244 Kilometer << Meter << Centimeter << Millimeter << Mile << Yard << Foot << Inch); 00245 } 00246
KDE 4.6 API Reference