]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/locale.tex
implemented wxNotificationMessage for wxMSW using wxTaskBarIcon and fallback to gener...
[wxWidgets.git] / docs / latex / wx / locale.tex
index d6f8d46d2c6d03f58baf8feb5cc4517b2b4496e4..22f4d123dc658fff531b27c8d570581c7f3b11ee 100644 (file)
@@ -3,12 +3,13 @@
 wxLocale class encapsulates all language-dependent settings and is a
 generalization of the C locale concept.
 
-In wxWindows this class manages message catalogs which contain the translations
+In wxWidgets this class manages message catalogs which contain the translations
 of the strings used to the current language.
 
 \perlnote{In wxPerl you can't use the '\_' function name, so
 the {\tt Wx::Locale} module can export the {\tt gettext} and 
 {\tt gettext\_noop} under any given name. 
+
 \begin{verbatim}
   # this imports gettext ( equivalent to Wx::GetTranslation
   # and gettext_noop ( a noop )
@@ -22,9 +23,11 @@ the {\tt Wx::Locale} module can export the {\tt gettext} and
 
   button = Wx::Button->new( window, -1, gettext( ``Label'' ) );
 \end{verbatim}
+
 If you need to translate a lot of strings, then adding gettext( ) around
 each one is a long task ( that is why \_( ) was introduced ), so just choose
 a shorter name for gettext:
+
 \begin{verbatim}
   #
   use Wx::Locale 'gettext' => 't',
@@ -37,7 +40,7 @@ a shorter name for gettext:
 
   # ...
 \end{verbatim}
-}
+}%
 
 \wxheading{Derived from}
 
@@ -52,263 +55,23 @@ No base class
 
 <wx/intl.h>
 
+\wxheading{Library}
+
+\helpref{wxBase}{librarieslist}
+
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
+
 \membersection{Supported languages}\label{wxlanguage}
 
-The following wxLanguage constants may be used to specify the language
+See \helpref{list of recognized language constants}{languagecodes}.
+These constants may be used to specify the language
 in \helpref{Init}{wxlocaleinit} and are returned by 
 \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}:
 
 
-
-%% --- --- --- generated code begins here --- --- ---
-
-%% This enum is generated by misc/languages/genlang.py
-%% When making changes, please put them into misc/languages/langtabl.txt
-\begin{itemize}\itemsep=0pt
-\item wxLANGUAGE\_DEFAULT -- user's default language as obtained from the operating system 
-\item wxLANGUAGE\_UNKNOWN -- returned by \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}
-if it fails to detect the default language 
-\item wxLANGUAGE\_USER\_DEFINED -- user defined languages' integer identifiers should start from
-this
-\item wxLANGUAGE\_ABKHAZIAN
-\item wxLANGUAGE\_AFAR
-\item wxLANGUAGE\_AFRIKAANS
-\item wxLANGUAGE\_ALBANIAN
-\item wxLANGUAGE\_AMHARIC
-\item wxLANGUAGE\_ARABIC
-\item wxLANGUAGE\_ARABIC\_ALGERIA
-\item wxLANGUAGE\_ARABIC\_BAHRAIN
-\item wxLANGUAGE\_ARABIC\_EGYPT
-\item wxLANGUAGE\_ARABIC\_IRAQ
-\item wxLANGUAGE\_ARABIC\_JORDAN
-\item wxLANGUAGE\_ARABIC\_KUWAIT
-\item wxLANGUAGE\_ARABIC\_LEBANON
-\item wxLANGUAGE\_ARABIC\_LIBYA
-\item wxLANGUAGE\_ARABIC\_MOROCCO
-\item wxLANGUAGE\_ARABIC\_OMAN
-\item wxLANGUAGE\_ARABIC\_QATAR
-\item wxLANGUAGE\_ARABIC\_SAUDI\_ARABIA
-\item wxLANGUAGE\_ARABIC\_SUDAN
-\item wxLANGUAGE\_ARABIC\_SYRIA
-\item wxLANGUAGE\_ARABIC\_TUNISIA
-\item wxLANGUAGE\_ARABIC\_UAE
-\item wxLANGUAGE\_ARABIC\_YEMEN
-\item wxLANGUAGE\_ARMENIAN
-\item wxLANGUAGE\_ASSAMESE
-\item wxLANGUAGE\_AYMARA
-\item wxLANGUAGE\_AZERI
-\item wxLANGUAGE\_AZERI\_CYRILLIC
-\item wxLANGUAGE\_AZERI\_LATIN
-\item wxLANGUAGE\_BASHKIR
-\item wxLANGUAGE\_BASQUE
-\item wxLANGUAGE\_BELARUSIAN
-\item wxLANGUAGE\_BENGALI
-\item wxLANGUAGE\_BHUTANI
-\item wxLANGUAGE\_BIHARI
-\item wxLANGUAGE\_BISLAMA
-\item wxLANGUAGE\_BRETON
-\item wxLANGUAGE\_BULGARIAN
-\item wxLANGUAGE\_BURMESE
-\item wxLANGUAGE\_CAMBODIAN
-\item wxLANGUAGE\_CATALAN
-\item wxLANGUAGE\_CHINESE
-\item wxLANGUAGE\_CHINESE\_SIMPLIFIED
-\item wxLANGUAGE\_CHINESE\_TRADITIONAL
-\item wxLANGUAGE\_CHINESE\_HONGKONG
-\item wxLANGUAGE\_CHINESE\_MACAU
-\item wxLANGUAGE\_CHINESE\_SINGAPORE
-\item wxLANGUAGE\_CHINESE\_TAIWAN
-\item wxLANGUAGE\_CORSICAN
-\item wxLANGUAGE\_CROATIAN
-\item wxLANGUAGE\_CZECH
-\item wxLANGUAGE\_DANISH
-\item wxLANGUAGE\_DUTCH
-\item wxLANGUAGE\_DUTCH\_BELGIAN
-\item wxLANGUAGE\_ENGLISH
-\item wxLANGUAGE\_ENGLISH\_UK
-\item wxLANGUAGE\_ENGLISH\_US
-\item wxLANGUAGE\_ENGLISH\_AUSTRALIA
-\item wxLANGUAGE\_ENGLISH\_BELIZE
-\item wxLANGUAGE\_ENGLISH\_BOTSWANA
-\item wxLANGUAGE\_ENGLISH\_CANADA
-\item wxLANGUAGE\_ENGLISH\_CARIBBEAN
-\item wxLANGUAGE\_ENGLISH\_DENMARK
-\item wxLANGUAGE\_ENGLISH\_EIRE
-\item wxLANGUAGE\_ENGLISH\_JAMAICA
-\item wxLANGUAGE\_ENGLISH\_NEW\_ZEALAND
-\item wxLANGUAGE\_ENGLISH\_PHILIPPINES
-\item wxLANGUAGE\_ENGLISH\_SOUTH\_AFRICA
-\item wxLANGUAGE\_ENGLISH\_TRINIDAD
-\item wxLANGUAGE\_ENGLISH\_ZIMBABWE
-\item wxLANGUAGE\_ESPERANTO
-\item wxLANGUAGE\_ESTONIAN
-\item wxLANGUAGE\_FAEROESE
-\item wxLANGUAGE\_FARSI
-\item wxLANGUAGE\_FIJI
-\item wxLANGUAGE\_FINNISH
-\item wxLANGUAGE\_FRENCH
-\item wxLANGUAGE\_FRENCH\_BELGIAN
-\item wxLANGUAGE\_FRENCH\_CANADIAN
-\item wxLANGUAGE\_FRENCH\_LUXEMBOURG
-\item wxLANGUAGE\_FRENCH\_MONACO
-\item wxLANGUAGE\_FRENCH\_SWISS
-\item wxLANGUAGE\_FRISIAN
-\item wxLANGUAGE\_GALICIAN
-\item wxLANGUAGE\_GEORGIAN
-\item wxLANGUAGE\_GERMAN
-\item wxLANGUAGE\_GERMAN\_AUSTRIAN
-\item wxLANGUAGE\_GERMAN\_BELGIUM
-\item wxLANGUAGE\_GERMAN\_LIECHTENSTEIN
-\item wxLANGUAGE\_GERMAN\_LUXEMBOURG
-\item wxLANGUAGE\_GERMAN\_SWISS
-\item wxLANGUAGE\_GREEK
-\item wxLANGUAGE\_GREENLANDIC
-\item wxLANGUAGE\_GUARANI
-\item wxLANGUAGE\_GUJARATI
-\item wxLANGUAGE\_HAUSA
-\item wxLANGUAGE\_HEBREW
-\item wxLANGUAGE\_HINDI
-\item wxLANGUAGE\_HUNGARIAN
-\item wxLANGUAGE\_ICELANDIC
-\item wxLANGUAGE\_INDONESIAN
-\item wxLANGUAGE\_INTERLINGUA
-\item wxLANGUAGE\_INTERLINGUE
-\item wxLANGUAGE\_INUKTITUT
-\item wxLANGUAGE\_INUPIAK
-\item wxLANGUAGE\_IRISH
-\item wxLANGUAGE\_ITALIAN
-\item wxLANGUAGE\_ITALIAN\_SWISS
-\item wxLANGUAGE\_JAPANESE
-\item wxLANGUAGE\_JAVANESE
-\item wxLANGUAGE\_KANNADA
-\item wxLANGUAGE\_KASHMIRI
-\item wxLANGUAGE\_KASHMIRI\_INDIA
-\item wxLANGUAGE\_KAZAKH
-\item wxLANGUAGE\_KERNEWEK
-\item wxLANGUAGE\_KINYARWANDA
-\item wxLANGUAGE\_KIRGHIZ
-\item wxLANGUAGE\_KIRUNDI
-\item wxLANGUAGE\_KONKANI
-\item wxLANGUAGE\_KOREAN
-\item wxLANGUAGE\_KURDISH
-\item wxLANGUAGE\_LAOTHIAN
-\item wxLANGUAGE\_LATIN
-\item wxLANGUAGE\_LATVIAN
-\item wxLANGUAGE\_LINGALA
-\item wxLANGUAGE\_LITHUANIAN
-\item wxLANGUAGE\_MACEDONIAN
-\item wxLANGUAGE\_MALAGASY
-\item wxLANGUAGE\_MALAY
-\item wxLANGUAGE\_MALAYALAM
-\item wxLANGUAGE\_MALAY\_BRUNEI\_DARUSSALAM
-\item wxLANGUAGE\_MALAY\_MALAYSIA
-\item wxLANGUAGE\_MALTESE
-\item wxLANGUAGE\_MANIPURI
-\item wxLANGUAGE\_MAORI
-\item wxLANGUAGE\_MARATHI
-\item wxLANGUAGE\_MOLDAVIAN
-\item wxLANGUAGE\_MONGOLIAN
-\item wxLANGUAGE\_NAURU
-\item wxLANGUAGE\_NEPALI
-\item wxLANGUAGE\_NEPALI\_INDIA
-\item wxLANGUAGE\_NORWEGIAN\_BOKMAL
-\item wxLANGUAGE\_NORWEGIAN\_NYNORSK
-\item wxLANGUAGE\_OCCITAN
-\item wxLANGUAGE\_ORIYA
-\item wxLANGUAGE\_OROMO
-\item wxLANGUAGE\_PASHTO
-\item wxLANGUAGE\_POLISH
-\item wxLANGUAGE\_PORTUGUESE
-\item wxLANGUAGE\_PORTUGUESE\_BRAZILIAN
-\item wxLANGUAGE\_PUNJABI
-\item wxLANGUAGE\_QUECHUA
-\item wxLANGUAGE\_RHAETO\_ROMANCE
-\item wxLANGUAGE\_ROMANIAN
-\item wxLANGUAGE\_RUSSIAN
-\item wxLANGUAGE\_RUSSIAN\_UKRAINE
-\item wxLANGUAGE\_SAMOAN
-\item wxLANGUAGE\_SANGHO
-\item wxLANGUAGE\_SANSKRIT
-\item wxLANGUAGE\_SCOTS\_GAELIC
-\item wxLANGUAGE\_SERBIAN
-\item wxLANGUAGE\_SERBIAN\_CYRILLIC
-\item wxLANGUAGE\_SERBIAN\_LATIN
-\item wxLANGUAGE\_SERBO\_CROATIAN
-\item wxLANGUAGE\_SESOTHO
-\item wxLANGUAGE\_SETSWANA
-\item wxLANGUAGE\_SHONA
-\item wxLANGUAGE\_SINDHI
-\item wxLANGUAGE\_SINHALESE
-\item wxLANGUAGE\_SISWATI
-\item wxLANGUAGE\_SLOVAK
-\item wxLANGUAGE\_SLOVENIAN
-\item wxLANGUAGE\_SOMALI
-\item wxLANGUAGE\_SPANISH
-\item wxLANGUAGE\_SPANISH\_ARGENTINA
-\item wxLANGUAGE\_SPANISH\_BOLIVIA
-\item wxLANGUAGE\_SPANISH\_CHILE
-\item wxLANGUAGE\_SPANISH\_COLOMBIA
-\item wxLANGUAGE\_SPANISH\_COSTA\_RICA
-\item wxLANGUAGE\_SPANISH\_DOMINICAN\_REPUBLIC
-\item wxLANGUAGE\_SPANISH\_ECUADOR
-\item wxLANGUAGE\_SPANISH\_EL\_SALVADOR
-\item wxLANGUAGE\_SPANISH\_GUATEMALA
-\item wxLANGUAGE\_SPANISH\_HONDURAS
-\item wxLANGUAGE\_SPANISH\_MEXICAN
-\item wxLANGUAGE\_SPANISH\_MODERN
-\item wxLANGUAGE\_SPANISH\_NICARAGUA
-\item wxLANGUAGE\_SPANISH\_PANAMA
-\item wxLANGUAGE\_SPANISH\_PARAGUAY
-\item wxLANGUAGE\_SPANISH\_PERU
-\item wxLANGUAGE\_SPANISH\_PUERTO\_RICO
-\item wxLANGUAGE\_SPANISH\_URUGUAY
-\item wxLANGUAGE\_SPANISH\_US
-\item wxLANGUAGE\_SPANISH\_VENEZUELA
-\item wxLANGUAGE\_SUNDANESE
-\item wxLANGUAGE\_SWAHILI
-\item wxLANGUAGE\_SWEDISH
-\item wxLANGUAGE\_SWEDISH\_FINLAND
-\item wxLANGUAGE\_TAGALOG
-\item wxLANGUAGE\_TAJIK
-\item wxLANGUAGE\_TAMIL
-\item wxLANGUAGE\_TATAR
-\item wxLANGUAGE\_TELUGU
-\item wxLANGUAGE\_THAI
-\item wxLANGUAGE\_TIBETAN
-\item wxLANGUAGE\_TIGRINYA
-\item wxLANGUAGE\_TONGA
-\item wxLANGUAGE\_TSONGA
-\item wxLANGUAGE\_TURKISH
-\item wxLANGUAGE\_TURKMEN
-\item wxLANGUAGE\_TWI
-\item wxLANGUAGE\_UIGHUR
-\item wxLANGUAGE\_UKRAINIAN
-\item wxLANGUAGE\_URDU
-\item wxLANGUAGE\_URDU\_INDIA
-\item wxLANGUAGE\_URDU\_PAKISTAN
-\item wxLANGUAGE\_UZBEK
-\item wxLANGUAGE\_UZBEK\_CYRILLIC
-\item wxLANGUAGE\_UZBEK\_LATIN
-\item wxLANGUAGE\_VIETNAMESE
-\item wxLANGUAGE\_VOLAPUK
-\item wxLANGUAGE\_WELSH
-\item wxLANGUAGE\_WOLOF
-\item wxLANGUAGE\_XHOSA
-\item wxLANGUAGE\_YIDDISH
-\item wxLANGUAGE\_YORUBA
-\item wxLANGUAGE\_ZHUANG
-\item wxLANGUAGE\_ZULU
-\end{itemize}
-
-%% --- --- --- generated code ends here --- --- ---
-
-
-
-
 \membersection{wxLocale::wxLocale}\label{wxlocaledefctor}
 
 \func{}{wxLocale}{\void}
@@ -321,7 +84,7 @@ This is the default constructor and it does nothing to initialize the object:
 
 See \helpref{Init()}{wxlocaleinit} for parameters description.
 
-\func{}{wxLocale}{\param{const char }{*szName}, \param{const char }{*szShort = NULL}, \param{const char }{*szLocale = NULL}, \param{bool }{bLoadDefault = true}, \param{bool }{bConvertEncoding = false}}
+\func{}{wxLocale}{\param{const wxString\& }{name}, \param{const wxString\& }{short = wxEmptyString}, \param{const wxString\& }{locale = wxEmptyString}, \param{bool }{bLoadDefault = true}, \param{bool }{bConvertEncoding = false}}
 
 See \helpref{Init()}{wxlocaleinit} for parameters description.
 
@@ -333,6 +96,7 @@ application and so all subsequent calls to wxGetTranslation() will try to
 translate the messages using the message catalogs for this locale.
 
 
+
 \membersection{wxLocale::\destruct{wxLocale}}\label{wxlocaledtor}
 
 \func{}{\destruct{wxLocale}}{\void}
@@ -341,30 +105,57 @@ The destructor, like the constructor, also has global side effects: the previous
 set locale is restored and so the changes described in 
 \helpref{Init}{wxlocaleinit} documentation are rolled back.
 
+
 \membersection{wxLocale::AddCatalog}\label{wxlocaleaddcatalog}
 
-\func{bool}{AddCatalog}{\param{const char }{*szDomain}}
+\func{bool}{AddCatalog}{\param{const wxString\& }{domain}}
+
+\func{bool}{AddCatalog}{\param{const wxString\& }{domain}, \param{wxLanguage}{msgIdLanguage}, \param{const wxString\& }{msgIdCharset}}
 
 Add a catalog for use with the current locale: it is searched for in standard
 places (current directory first, then the system one), but you may also prepend
 additional directories to the search path with 
 \helpref{AddCatalogLookupPathPrefix()}{wxlocaleaddcataloglookuppathprefix}.
 
-All loaded catalogs will be used for message lookup by GetString() for the
-current locale.
+All loaded catalogs will be used for message lookup by
+\helpref{GetString()}{wxlocalegetstring} for the current locale.
 
 Returns true if catalog was successfully loaded, false otherwise (which might
 mean that the catalog is not found or that it isn't in the correct format).
 
+The second form of this method takes two additional arguments,
+\arg{msgIdLanguage} and \arg{msgIdCharset}.
+
+\arg{msgIdLanguage} specifies the language of "msgid" strings in source code
+(i.e. arguments to \helpref{GetString}{wxlocalegetstring},
+\helpref{wxGetTranslation}{wxgettranslation} and the 
+\helpref{\_()}{underscore} macro). It is used if AddCatalog cannot find any
+catalog for current language: if the language is same as source code language,
+then strings from source code are used instead. 
+
+\arg{msgIdCharset} lets you specify the charset used for msgids in sources
+in case they use 8-bit characters (e.g. German or French strings).  This
+argument has no effect in Unicode build, because literals in sources are
+Unicode strings; you have to use compiler-specific method of setting the right
+charset when compiling with Unicode.
+
+By default (i.e. when you use the first form), msgid strings are assumed
+to be in English and written only using 7-bit ASCII characters.
+
+If you have to deal with non-English strings or 8-bit characters in the source
+code, see the instructions in 
+\helpref{Writing non-English applications}{nonenglishoverview}.
+
+
 \membersection{wxLocale::AddCatalogLookupPathPrefix}\label{wxlocaleaddcataloglookuppathprefix}
 
 \func{void}{AddCatalogLookupPathPrefix}{\param{const wxString\& }{prefix}}
 
 Add a prefix to the catalog lookup path: the message catalog files will be
-looked up under prefix/<lang>/LC\_MESSAGES, prefix/LC\_MESSAGES and prefix
+looked up under prefix/<lang>/LC\_MESSAGES, prefix/<lang> and prefix
 (in this order).
 
-This only applies to subsequent invocations of AddCatalog()!
+This only applies to subsequent invocations of AddCatalog().
 
 \membersection{wxLocale::AddLanguage}\label{wxlocaleaddlanguage}
 
@@ -395,9 +186,10 @@ struct WXDLLEXPORT wxLanguageInfo
 \perlnote{In wxPerl Wx::LanguageInfo has only one method:\par
 Wx::LanguageInfo->new( language, canonicalName, WinLang, WinSubLang, Description )}
 
-\membersection{wxLocale::FindLanguageInfo}{wxlocalefindlanguageinfo}
 
-\constfunc{static wxLanguageInfo *}{FindLanguageInfo}{\param{const wxString\& }{locale}}
+\membersection{wxLocale::FindLanguageInfo}\label{wxlocalefindlanguageinfo}
+
+\func{static wxLanguageInfo *}{FindLanguageInfo}{\param{const wxString\& }{locale}}
 
 This function may be used to find the language description structure for the
 given locale, specified either as a two letter ISO language code (for example,
@@ -412,9 +204,10 @@ is unknown. Note that even if the returned pointer is valid, the caller should
 
 \helpref{GetLanguageInfo}{wxlocalegetlanguageinfo}
 
+
 \membersection{wxLocale::GetCanonicalName}\label{wxlocalegetcanonicalname}
 
-\constfunc{wxString}{GetSysName}{\void}
+\constfunc{wxString}{GetCanonicalName}{\void}
 
 Returns the canonical form of current locale name. Canonical form is the
 one that is used on UNIX systems: it is a two- or five-letter string in xx or
@@ -427,6 +220,7 @@ Compare \helpref{GetSysName}{wxlocalegetsysname}.
 
 
 
+
 \membersection{wxLocale::GetLanguage}\label{wxlocalegetlanguage}
 
 \constfunc{int}{GetLanguage}{\void}
@@ -435,6 +229,7 @@ Returns \helpref{wxLanguage}{wxlanguage} constant of current language.
 Note that you can call this function only if you used the form of
 \helpref{Init}{wxlocaleinit} that takes wxLanguage argument.
 
+
 \membersection{wxLocale::GetLanguageInfo}\label{wxlocalegetlanguageinfo}
 
 \constfunc{static wxLanguageInfo *}{GetLanguageInfo}{\param{int }{lang}}
@@ -446,26 +241,45 @@ returned pointer is valid, the caller should {\it not} delete it.
 See \helpref{AddLanguage}{wxlocaleaddlanguage} for the wxLanguageInfo
 description.
 
+As with \helpref{Init}{wxlocaleinit}, \texttt{wxLANGUAGE\_DEFAULT} has the
+special meaning if passed as an argument to this function and in this case the
+result of \helpref{GetSystemLanguage()}{wxlocalegetsystemlanguage} is used.
+
+
+\membersection{wxLocale::GetLanguageName}\label{wxlocalegetlanguagename}
+
+\constfunc{static wxString}{GetLanguageName}{\param{int }{lang}}
+
+Returns English name of the given language or empty string if this
+language is unknown.
+
+See \helpref{GetLanguageInfo}{wxlocalegetlanguageinfo} for a remark about
+special meaning of \texttt{wxLANGUAGE\_DEFAULT}.
+
 
 \membersection{wxLocale::GetLocale}\label{wxlocalegetlocale}
 
-\constfunc{const char*}{GetLocale}{\void}
+\constfunc{const wxString\& }{GetLocale}{\void}
 
 Returns the locale name as passed to the constructor or 
 \helpref{Init()}{wxlocaleinit}. This is full, human-readable name,
 e.g. "English" or "French".
 
 
+
 \membersection{wxLocale::GetName}\label{wxlocalegetname}
 
-\constfunc{const wxString\&}{GetName}{\void}
+\constfunc{const wxString\& }{GetName}{\void}
 
 Returns the current short name for the locale (as given to the constructor or
 the Init() function).
 
+
 \membersection{wxLocale::GetString}\label{wxlocalegetstring}
 
-\constfunc{const char*}{GetString}{\param{const char }{*szOrigString}, \param{const char }{*szDomain = NULL}}
+\constfunc{const wxString\& }{GetString}{\param{const wxString\& }{origString}, \param{const wxString\& }{domain = wxEmptyString}}
+
+\constfunc{const wxString\& }{GetString}{\param{const wxString\& }{origString}, \param{const wxString\& }{origString2}, \param{size\_t }{n}, \param{const wxString\& }{domain = NULL}}
 
 Retrieves the translation for a string in all loaded domains unless the szDomain
 parameter is specified (and then only this catalog/domain is searched).
@@ -474,11 +288,34 @@ Returns original string if translation is not available
 (in this case an error message is generated the first time
 a string is not found; use \helpref{wxLogNull}{wxlogoverview} to suppress it).
 
+The second form is used when retrieving translation of string that has
+different singular and plural form in English or different plural forms in some
+other language. It takes two extra arguments: \arg{origString}
+parameter must contain the singular form of the string to be converted.
+It is also used as the key for the search in the catalog.
+The \arg{origString2} parameter is the plural form (in English).
+The parameter \arg{n} is used to determine the plural form.  If no
+message catalog is found \arg{origString} is returned if `n == 1',
+otherwise \arg{origString2}.
+See \urlref{GNU gettext manual}{http://www.gnu.org/manual/gettext/html\_chapter/gettext\_10.html\#SEC150} for additional information on plural forms handling.
+
+This method is called by the \helpref{wxGetTranslation}{wxgettranslation}
+function and \helpref{\_()}{underscore} macro.
+
 \wxheading{Remarks}
 
 Domains are searched in the last to first order, i.e. catalogs
 added later override those added before.
 
+
+\membersection{wxLocale::GetHeaderValue}\label{wxlocalegetheadervalue}
+
+\constfunc{wxString}{GetHeaderValue}{\param{const wxString\& }{header}, \param{const wxString\& }{domain = wxEmptyString}}
+
+Returns the header value for header \arg{header}. The search for \arg{header} is case sensitive. If an \arg{domain}
+is passed, this domain is searched. Else all domains will be searched until a header has been found.
+The return value is the value of the header if found. Else this will be empty.
+
 \membersection{wxLocale::GetSysName}\label{wxlocalegetsysname}
 
 \constfunc{wxString}{GetSysName}{\void}
@@ -488,6 +325,7 @@ Returns current platform-specific locale name as passed to setlocale().
 Compare \helpref{GetCanonicalName}{wxlocalegetcanonicalname}.
 
 
+
 \membersection{wxLocale::GetSystemEncoding}\label{wxlocalegetsystemencoding}
 
 \constfunc{static wxFontEncoding}{GetSystemEncoding}{\void}
@@ -496,6 +334,7 @@ Tries to detect the user's default font encoding.
 Returns \helpref{wxFontEncoding}{wxfont} value or 
 {\bf wxFONTENCODING\_SYSTEM} if it couldn't be determined.
 
+
 \membersection{wxLocale::GetSystemEncodingName}\label{wxlocalegetsystemencodingname}
 
 \constfunc{static wxString}{GetSystemEncodingName}{\void}
@@ -508,6 +347,7 @@ so you should probably use
 Returns a user-readable string value or an empty string if it couldn't be
 determined.
 
+
 \membersection{wxLocale::GetSystemLanguage}\label{wxlocalegetsystemlanguage}
 
 \constfunc{static int}{GetSystemLanguage}{\void}
@@ -517,13 +357,14 @@ Returns \helpref{wxLanguage}{wxlanguage} value or
  {\bf wxLANGUAGE\_UNKNOWN} if the language-guessing algorithm failed.
 
 
+
 \membersection{wxLocale::Init}\label{wxlocaleinit}
 
 
 \func{bool}{Init}{\param{int }{language = wxLANGUAGE\_DEFAULT}, \param{int }{flags =
                           wxLOCALE\_LOAD\_DEFAULT | wxLOCALE\_CONV\_ENCODING}}
 
-\func{bool}{Init}{\param{const char }{*szName}, \param{const char }{*szShort = NULL}, \param{const char }{*szLocale = NULL}, \param{bool }{bLoadDefault = true}, \param{bool }{bConvertEncoding = false}}
+\func{bool}{Init}{\param{const wxString\& }{name}, \param{const wxString\& }{short = wxEmptyString}, \param{const wxString\& }{locale = wxEmptyString}, \param{bool }{bLoadDefault = true}, \param{bool }{bConvertEncoding = false}}
 
 The second form is deprecated, use the first one unless you know what you are
 doing. 
@@ -536,9 +377,11 @@ wxLANGUAGE\_DEFAULT has special meaning -- wxLocale will use system's default
 language (see \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}).}
 
 \docparam{flags}{Combination of the following:
+
+
 \begin{twocollist}\itemsep=0pt
 \twocolitem{\windowstyle{wxLOCALE\_LOAD\_DEFAULT}}{Load the message catalog
-for the given locale containing the translations of standard wxWindows messages
+for the given locale containing the translations of standard wxWidgets messages
 automatically.}
 \twocolitem{\windowstyle{wxLOCALE\_CONV\_ENCODING}}{Automatically convert message
 catalogs to platform's default encoding. Note that it will do only basic 
@@ -548,16 +391,16 @@ description of this behaviour. Note that this flag is meaningless in Unicode bui
 \end{twocollist}
 }
 
-\docparam{szName}{The name of the locale. Only used in diagnostic messages.}
+\docparam{name}{The name of the locale. Only used in diagnostic messages.}
 
-\docparam{szShort}{The standard 2 letter locale abbreviation and is used as the
+\docparam{short}{The standard 2 letter locale abbreviation; it is used as the
 directory prefix when looking for the message catalog files.}
 
-\docparam{szLocale}{The parameter for the call to setlocale(). Note that it is
+\docparam{locale}{The parameter for the call to setlocale(). Note that it is
 platform-specific.}
 
 \docparam{bLoadDefault}{May be set to false to prevent loading of the message catalog
-for the given locale containing the translations of standard wxWindows messages.
+for the given locale containing the translations of standard wxWidgets messages.
 This parameter would be rarely used in normal circumstances.}
 
 \docparam{bConvertEncoding}{May be set to true to do automatic conversion of message
@@ -572,11 +415,31 @@ The call of this function has several global side effects which you should
 understand: first of all, the application locale is changed - note that this
 will affect many of standard C library functions such as printf() or strftime().
 Second, this wxLocale object becomes the new current global locale for the
-application and so all subsequent calls to wxGetTranslation() will try to
+application and so all subsequent calls to
+\helpref{wxGetTranslation()}{wxgettranslation} will try to
 translate the messages using the message catalogs for this locale.
 
 Returns true on success or false if the given locale couldn't be set.
 
+
+\membersection{wxLocale::IsAvailable}\label{wxlocaleisavailable}
+
+\func{static bool}{IsAvailable}{\param{int }{lang}}
+
+Check whether the operating system and/or C run time environment supports
+this locale. For example in Windows 2000 and Windows XP, support for many
+locales is not installed by default. Returns \true if the locale is
+supported.
+
+The argument \arg{lang} is the wxLanguage identifier. To obtain this for a
+given a two letter ISO language code, use 
+\helpref{FindLanguageInfo}{wxlocalefindlanguageinfo} to obtain its
+wxLanguageInfo structure. See \helpref{AddLanguage}{wxlocaleaddlanguage} for
+the wxLanguageInfo description.
+
+\newsince{2.7.1}. 
+
+
 \membersection{wxLocale::IsLoaded}\label{wxlocaleisloaded}
 
 \constfunc{bool}{IsLoaded}{\param{const char* }{domain}}
@@ -588,6 +451,7 @@ normally corresponds to 'domain' which is more or less the application name.
 
 See also: \helpref{AddCatalog}{wxlocaleaddcatalog}
 
+
 \membersection{wxLocale::IsOk}\label{wxlocaleisok}
 
 \constfunc{bool}{IsOk}{\void}