debian/tmp/usr/include/KWWidgets/vtkKWLanguage.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Module:    $RCSfile: vtkKWLanguage.h,v $
00004 
00005   Copyright (c) Kitware, Inc.
00006   All rights reserved.
00007   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00008 
00009      This software is distributed WITHOUT ANY WARRANTY; without even
00010      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00011      PURPOSE.  See the above copyright notice for more information.
00012 
00013 =========================================================================*/
00014 // .NAME vtkKWLanguage - language support.
00015 // .SECTION Description
00016 // vtkKWLanguage provides methods to refer to common languages, as well
00017 // as set the current language.
00018 
00019 #ifndef __vtkKWLanguage_h
00020 #define __vtkKWLanguage_h
00021 
00022 #include "vtkObject.h"
00023 #include "vtkKWWidgets.h" // Needed for export symbols directives
00024 
00025 class KWWidgets_EXPORT vtkKWLanguage : public vtkObject
00026 {
00027 public:
00028   static vtkKWLanguage* New();
00029   vtkTypeRevisionMacro(vtkKWLanguage,vtkObject);
00030   void PrintSelf(ostream& os, vtkIndent indent);
00031 
00032   // Description:
00033   // List of languages IDs.
00034   //BTX
00035   enum
00036   {
00037     ABKHAZIAN = 0,
00038     AFAR,
00039     AFRIKAANS,
00040     ALBANIAN,
00041     AMHARIC,
00042     ARABIC,
00043     ARABIC_ALGERIA,
00044     ARABIC_BAHRAIN,
00045     ARABIC_EGYPT,
00046     ARABIC_IRAQ,
00047     ARABIC_JORDAN,
00048     ARABIC_KUWAIT,
00049     ARABIC_LEBANON,
00050     ARABIC_LIBYA,
00051     ARABIC_MOROCCO,
00052     ARABIC_OMAN,
00053     ARABIC_QATAR,
00054     ARABIC_SAUDI_ARABIA,
00055     ARABIC_SUDAN,
00056     ARABIC_SYRIA,
00057     ARABIC_TUNISIA,
00058     ARABIC_UAE,
00059     ARABIC_YEMEN,
00060     ARMENIAN,
00061     ASSAMESE,
00062     AYMARA,
00063     AZERI,
00064     AZERI_CYRILLIC,
00065     AZERI_LATIN,
00066     BASHKIR,
00067     BASQUE,
00068     BELARUSIAN,
00069     BENGALI,
00070     BHUTANI,
00071     BIHARI,
00072     BISLAMA,
00073     BRETON,
00074     BULGARIAN,
00075     BURMESE,
00076     CAMBODIAN,
00077     CATALAN,
00078     CHINESE,
00079     CHINESE_SIMPLIFIED,
00080     CHINESE_TRADITIONAL,
00081     CHINESE_HONGKONG,
00082     CHINESE_MACAU,
00083     CHINESE_SINGAPORE,
00084     CHINESE_TAIWAN,
00085     CORSICAN,
00086     CROATIAN,
00087     CZECH,
00088     DANISH,
00089     DUTCH,
00090     DUTCH_BELGIAN,
00091     ENGLISH,
00092     ENGLISH_UK,
00093     ENGLISH_US,
00094     ENGLISH_AUSTRALIA,
00095     ENGLISH_BELIZE,
00096     ENGLISH_BOTSWANA,
00097     ENGLISH_CANADA,
00098     ENGLISH_CARIBBEAN,
00099     ENGLISH_DENMARK,
00100     ENGLISH_EIRE,
00101     ENGLISH_JAMAICA,
00102     ENGLISH_NEW_ZEALAND,
00103     ENGLISH_PHILIPPINES,
00104     ENGLISH_SOUTH_AFRICA,
00105     ENGLISH_TRINIDAD,
00106     ENGLISH_ZIMBABWE,
00107     ESPERANTO,
00108     ESTONIAN,
00109     FAEROESE,
00110     FARSI,
00111     FIJI,
00112     FINNISH,
00113     FRENCH,
00114     FRENCH_BELGIAN,
00115     FRENCH_CANADIAN,
00116     FRENCH_LUXEMBOURG,
00117     FRENCH_MONACO,
00118     FRENCH_SWISS,
00119     FRISIAN,
00120     GALICIAN,
00121     GEORGIAN,
00122     GERMAN,
00123     GERMAN_AUSTRIAN,
00124     GERMAN_BELGIUM,
00125     GERMAN_LIECHTENSTEIN,
00126     GERMAN_LUXEMBOURG,
00127     GERMAN_SWISS,
00128     GREEK,
00129     GREENLANDIC,
00130     GUARANI,
00131     GUJARATI,
00132     HAUSA,
00133     HEBREW,
00134     HINDI,
00135     HUNGARIAN,
00136     ICELANDIC,
00137     INDONESIAN,
00138     INTERLINGUA,
00139     INTERLINGUE,
00140     INUKTITUT,
00141     INUPIAK,
00142     IRISH,
00143     ITALIAN,
00144     ITALIAN_SWISS,
00145     JAPANESE,
00146     JAVANESE,
00147     KANNADA,
00148     KASHMIRI,
00149     KASHMIRI_INDIA,
00150     KAZAKH,
00151     KERNEWEK,
00152     KINYARWANDA,
00153     KIRGHIZ,
00154     KIRUNDI,
00155     KONKANI,
00156     KOREAN,
00157     KURDISH,
00158     LAOTHIAN,
00159     LATIN,
00160     LATVIAN,
00161     LINGALA,
00162     LITHUANIAN,
00163     MACEDONIAN,
00164     MALAGASY,
00165     MALAY,
00166     MALAYALAM,
00167     MALAY_BRUNEI_DARUSSALAM,
00168     MALAY_MALAYSIA,
00169     MALTESE,
00170     MANIPURI,
00171     MAORI,
00172     MARATHI,
00173     MOLDAVIAN,
00174     MONGOLIAN,
00175     NAURU,
00176     NEPALI,
00177     NEPALI_INDIA,
00178     NORWEGIAN_BOKMAL,
00179     NORWEGIAN_NYNORSK,
00180     OCCITAN,
00181     ORIYA,
00182     OROMO,
00183     PASHTO,
00184     POLISH,
00185     PORTUGUESE,
00186     PORTUGUESE_BRAZILIAN,
00187     PUNJABI,
00188     QUECHUA,
00189     RHAETO_ROMANCE,
00190     ROMANIAN,
00191     RUSSIAN,
00192     RUSSIAN_UKRAINE,
00193     SAMOAN,
00194     SANGHO,
00195     SANSKRIT,
00196     SCOTS_GAELIC,
00197     SERBIAN,
00198     SERBIAN_CYRILLIC,
00199     SERBIAN_LATIN,
00200     SERBO_CROATIAN,
00201     SESOTHO,
00202     SETSWANA,
00203     SHONA,
00204     SINDHI,
00205     SINHALESE,
00206     SISWATI,
00207     SLOVAK,
00208     SLOVENIAN,
00209     SOMALI,
00210     SPANISH,
00211     SPANISH_ARGENTINA,
00212     SPANISH_BOLIVIA,
00213     SPANISH_CHILE,
00214     SPANISH_COLOMBIA,
00215     SPANISH_COSTA_RICA,
00216     SPANISH_DOMINICAN_REPUBLIC,
00217     SPANISH_ECUADOR,
00218     SPANISH_EL_SALVADOR,
00219     SPANISH_GUATEMALA,
00220     SPANISH_HONDURAS,
00221     SPANISH_MEXICAN,
00222     SPANISH_MODERN,
00223     SPANISH_NICARAGUA,
00224     SPANISH_PANAMA,
00225     SPANISH_PARAGUAY,
00226     SPANISH_PERU,
00227     SPANISH_PUERTO_RICO,
00228     SPANISH_URUGUAY,
00229     SPANISH_US,
00230     SPANISH_VENEZUELA,
00231     SUNDANESE,
00232     SWAHILI,
00233     SWEDISH,
00234     SWEDISH_FINLAND,
00235     TAGALOG,
00236     TAJIK,
00237     TAMIL,
00238     TATAR,
00239     TELUGU,
00240     THAI,
00241     TIBETAN,
00242     TIGRINYA,
00243     TONGA,
00244     TSONGA,
00245     TURKISH,
00246     TURKMEN,
00247     TWI,
00248     UIGHUR,
00249     UKRAINIAN,
00250     URDU,
00251     URDU_INDIA,
00252     URDU_PAKISTAN,
00253     UZBEK,
00254     UZBEK_CYRILLIC,
00255     UZBEK_LATIN,
00256     VIETNAMESE,
00257     VOLAPUK,
00258     WELSH,
00259     WOLOF,
00260     XHOSA,
00261     YIDDISH,
00262     YORUBA,
00263     ZHUANG,
00264     ZULU,
00265     UNKNOWN // should be the last one
00266   };
00267   //ETX
00268 
00269   // Description:
00270   // Set/Get the current language. Setting the language is done by setting 
00271   // the LC_MESSAGES locale as well as setting the LC_MESSAGES environment 
00272   // variable. On Windows platform where LC_MESSAGES is not supported, a 
00273   // call to SetThreadLocale() will change the language accordingly.
00274   static void SetCurrentLanguage(int lang);
00275   static int GetCurrentLanguage();
00276 
00277   // Description:
00278   // Get short English name of language (or NULL if unknown/error).
00279   static const char* GetLanguageName(int lang);
00280 
00281   // Description:
00282   // Get XPG syntax (language[_territory[.codeset]][@modifier]) from language.
00283   // Return XPG description on success, NULL on error or if there is
00284   // no known XPG syntax for this language ID.
00285   static const char* GetXPGFromLanguage(int lang);
00286 
00287   // Description:
00288   // Get language from XPG (language[_territory[.codeset]][@modifier]).
00289   // Return language ID on success, vtkKWLanguage::UNKNOWN on error or if 
00290   // there is no known language ID for this XPG syntax.
00291   static int GetLanguageFromXPG(const char *xpg);
00292 
00293   // Description:
00294   // Get Win32 LANGID from language.
00295   // Return the output of MAKELANGID using the primary and secondary
00296   // language identifier corresponding to the language passed as parameter,
00297   // or MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT) if no match was found.
00298   // (note that MAKELANGID returns a WORD, which is cast here to an int
00299   // for wrapping purposes).
00300   static int GetWin32LANGIDFromLanguage(int lang);
00301 
00302   // Description:
00303   // Get language from Win32 LANGID.
00304   // Return the language id matching the Win32 primary and secondary language
00305   // identifier that were output by MAKELANGID, or vtkKWLanguage::UNKNOWN on
00306   // error or if there is no known language ID for this LANGID.
00307   // (note that MAKELANGID returns a WORD, but it is accepted here as an int
00308   // for wrapping purposes).
00309   static int GetLanguageFromWin32LANGID(int win32langid);
00310 
00311 protected:
00312   vtkKWLanguage() {};
00313   ~vtkKWLanguage() {};
00314 
00315   // Description:
00316   // Get language from XPG (language[_territory[.codeset]][@modifier]).
00317   // Return language ID on success, vtkKWLanguage::UNKNOWN on error or if 
00318   // there is no known language ID for this XPG syntax.
00319   // This is a stricter version GetLanguageFromXPG since it does not try
00320   // to find the language if the territory was missing.
00321   static int GetLanguageFromXPGStrict(const char *xpg);
00322 
00323 private:
00324   vtkKWLanguage(const vtkKWLanguage&); // Not implemented
00325   void operator=(const vtkKWLanguage&); // Not implemented
00326 };
00327 
00328 #endif
00329 

Generated on Sat Dec 12 16:04:54 2009 for KWWidgets by  doxygen 1.6.1