X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4a6e4a46a356e9abf0760e2d481bbec321cc3adf..a2979ead8d5f5f2023d30d05a3c2d55f7804e24a:/docs/latex/wx/locale.tex diff --git a/docs/latex/wx/locale.tex b/docs/latex/wx/locale.tex index ed44298e9e..ba02d62308 100644 --- a/docs/latex/wx/locale.tex +++ b/docs/latex/wx/locale.tex @@ -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} @@ -56,259 +59,15 @@ No base class \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 +80,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 +92,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 +101,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//LC\_MESSAGES, prefix/LC\_MESSAGES and prefix +looked up under prefix//LC\_MESSAGES, prefix/ 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 +182,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 +200,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 +216,7 @@ Compare \helpref{GetSysName}{wxlocalegetsysname}. + \membersection{wxLocale::GetLanguage}\label{wxlocalegetlanguage} \constfunc{int}{GetLanguage}{\void} @@ -435,6 +225,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,6 +237,11 @@ 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}} @@ -453,26 +249,33 @@ description. 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). @@ -481,11 +284,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} @@ -495,6 +321,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} @@ -503,6 +330,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} @@ -515,6 +343,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} @@ -524,13 +353,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. @@ -543,9 +373,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 @@ -555,16 +387,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 @@ -579,11 +411,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}} @@ -595,6 +447,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}