]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/locale.tex
Added wxHtmlPrintout::AddFilter so the same filters used for
[wxWidgets.git] / docs / latex / wx / locale.tex
CommitLineData
c1b7dab0
VZ
1\section{\class{wxLocale}}\label{wxlocale}
2
dbdb39b2
JS
3wxLocale class encapsulates all language-dependent settings and is a
4generalization of the C locale concept.
c1b7dab0
VZ
5
6In wxWindows this class manages message catalogs which contain the translations
7of the strings used to the current language.
8
0a67eeac
MB
9\perlnote{In wxPerl you can't use the '\_' function name, so
10the {\tt Wx::Locale} module can export the {\tt gettext} and
11{\tt gettext\_noop} under any given name.
5873607e 12\begin{verbatim}
0a67eeac
MB
13 # this imports gettext ( equivalent to Wx::GetTranslation
14 # and gettext_noop ( a noop )
15 # into your module
16 use Wx::Locale qw(:default);
5873607e
VZ
17
18 # ....
19
0a67eeac
MB
20 # use the functions
21 print gettext( ``Panic!'' );
5873607e 22
0a67eeac
MB
23 button = Wx::Button->new( window, -1, gettext( ``Label'' ) );
24\end{verbatim}
25If you need to translate a lot of strings, then adding gettext( ) around
26each one is a long task ( that is why \_( ) was introduced ), so just choose
27a shorter name for gettext:
28\begin{verbatim}
29 #
30 use Wx::Locale 'gettext' => 't',
31 'gettext_noop' => 'gettext_noop';
32
33 # ...
34
35 # use the functions
36 print t( ``Panic!!'' );
37
38 # ...
5873607e
VZ
39\end{verbatim}
40}
41
c1b7dab0
VZ
42\wxheading{Derived from}
43
44No base class
45
ed93168b
VZ
46\wxheading{See also}
47
5db9e0e8
VZ
48\helpref{Internationalization overview}{internationalization},\\
49\helpref{Internat sample}{sampleinternat}
ed93168b 50
dbdb39b2
JS
51\wxheading{Include files}
52
53<wx/intl.h>
54
8ec77cd7 55
c1b7dab0
VZ
56\latexignore{\rtfignore{\wxheading{Members}}}
57
8ec77cd7
VS
58
59\membersection{Supported languages}\label{wxlanguage}
60
61The following wxLanguage constants may be used to specify the language
62in \helpref{Init}{wxlocaleinit} and are returned by
63\helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}:
64
41780009
VS
65
66
67%% --- --- --- generated code begins here --- --- ---
68
8ec77cd7
VS
69%% This enum is generated by misc/languages/genlang.py
70%% When making changes, please put them into misc/languages/langtabl.txt
71\begin{itemize}\itemsep=0pt
e7240349
GT
72\item wxLANGUAGE\_DEFAULT -- user's default language as obtained from the operating system
73\item wxLANGUAGE\_UNKNOWN -- returned by \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}
8ec77cd7 74if it fails to detect the default language
e7240349 75\item wxLANGUAGE\_USER\_DEFINED -- user defined languages' integer identifiers should start from
8ec77cd7
VS
76this
77\item wxLANGUAGE\_ABKHAZIAN
78\item wxLANGUAGE\_AFAR
79\item wxLANGUAGE\_AFRIKAANS
80\item wxLANGUAGE\_ALBANIAN
81\item wxLANGUAGE\_AMHARIC
82\item wxLANGUAGE\_ARABIC
83\item wxLANGUAGE\_ARABIC\_ALGERIA
84\item wxLANGUAGE\_ARABIC\_BAHRAIN
85\item wxLANGUAGE\_ARABIC\_EGYPT
86\item wxLANGUAGE\_ARABIC\_IRAQ
87\item wxLANGUAGE\_ARABIC\_JORDAN
88\item wxLANGUAGE\_ARABIC\_KUWAIT
89\item wxLANGUAGE\_ARABIC\_LEBANON
90\item wxLANGUAGE\_ARABIC\_LIBYA
91\item wxLANGUAGE\_ARABIC\_MOROCCO
92\item wxLANGUAGE\_ARABIC\_OMAN
93\item wxLANGUAGE\_ARABIC\_QATAR
94\item wxLANGUAGE\_ARABIC\_SAUDI\_ARABIA
95\item wxLANGUAGE\_ARABIC\_SUDAN
96\item wxLANGUAGE\_ARABIC\_SYRIA
97\item wxLANGUAGE\_ARABIC\_TUNISIA
98\item wxLANGUAGE\_ARABIC\_UAE
99\item wxLANGUAGE\_ARABIC\_YEMEN
100\item wxLANGUAGE\_ARMENIAN
101\item wxLANGUAGE\_ASSAMESE
102\item wxLANGUAGE\_AYMARA
103\item wxLANGUAGE\_AZERI
104\item wxLANGUAGE\_AZERI\_CYRILLIC
105\item wxLANGUAGE\_AZERI\_LATIN
106\item wxLANGUAGE\_BASHKIR
107\item wxLANGUAGE\_BASQUE
108\item wxLANGUAGE\_BELARUSIAN
109\item wxLANGUAGE\_BENGALI
110\item wxLANGUAGE\_BHUTANI
111\item wxLANGUAGE\_BIHARI
112\item wxLANGUAGE\_BISLAMA
113\item wxLANGUAGE\_BRETON
114\item wxLANGUAGE\_BULGARIAN
115\item wxLANGUAGE\_BURMESE
116\item wxLANGUAGE\_CAMBODIAN
117\item wxLANGUAGE\_CATALAN
118\item wxLANGUAGE\_CHINESE
119\item wxLANGUAGE\_CHINESE\_SIMPLIFIED
120\item wxLANGUAGE\_CHINESE\_TRADITIONAL
121\item wxLANGUAGE\_CHINESE\_HONGKONG
122\item wxLANGUAGE\_CHINESE\_MACAU
123\item wxLANGUAGE\_CHINESE\_SINGAPORE
124\item wxLANGUAGE\_CHINESE\_TAIWAN
125\item wxLANGUAGE\_CORSICAN
126\item wxLANGUAGE\_CROATIAN
127\item wxLANGUAGE\_CZECH
128\item wxLANGUAGE\_DANISH
129\item wxLANGUAGE\_DUTCH
130\item wxLANGUAGE\_DUTCH\_BELGIAN
131\item wxLANGUAGE\_ENGLISH
132\item wxLANGUAGE\_ENGLISH\_UK
133\item wxLANGUAGE\_ENGLISH\_US
134\item wxLANGUAGE\_ENGLISH\_AUSTRALIA
135\item wxLANGUAGE\_ENGLISH\_BELIZE
136\item wxLANGUAGE\_ENGLISH\_BOTSWANA
137\item wxLANGUAGE\_ENGLISH\_CANADA
138\item wxLANGUAGE\_ENGLISH\_CARIBBEAN
139\item wxLANGUAGE\_ENGLISH\_DENMARK
140\item wxLANGUAGE\_ENGLISH\_EIRE
141\item wxLANGUAGE\_ENGLISH\_JAMAICA
142\item wxLANGUAGE\_ENGLISH\_NEW\_ZEALAND
143\item wxLANGUAGE\_ENGLISH\_PHILIPPINES
144\item wxLANGUAGE\_ENGLISH\_SOUTH\_AFRICA
145\item wxLANGUAGE\_ENGLISH\_TRINIDAD
146\item wxLANGUAGE\_ENGLISH\_ZIMBABWE
147\item wxLANGUAGE\_ESPERANTO
148\item wxLANGUAGE\_ESTONIAN
149\item wxLANGUAGE\_FAEROESE
150\item wxLANGUAGE\_FARSI
151\item wxLANGUAGE\_FIJI
152\item wxLANGUAGE\_FINNISH
153\item wxLANGUAGE\_FRENCH
154\item wxLANGUAGE\_FRENCH\_BELGIAN
155\item wxLANGUAGE\_FRENCH\_CANADIAN
156\item wxLANGUAGE\_FRENCH\_LUXEMBOURG
157\item wxLANGUAGE\_FRENCH\_MONACO
158\item wxLANGUAGE\_FRENCH\_SWISS
159\item wxLANGUAGE\_FRISIAN
160\item wxLANGUAGE\_GALICIAN
161\item wxLANGUAGE\_GEORGIAN
162\item wxLANGUAGE\_GERMAN
163\item wxLANGUAGE\_GERMAN\_AUSTRIAN
164\item wxLANGUAGE\_GERMAN\_BELGIUM
165\item wxLANGUAGE\_GERMAN\_LIECHTENSTEIN
166\item wxLANGUAGE\_GERMAN\_LUXEMBOURG
167\item wxLANGUAGE\_GERMAN\_SWISS
168\item wxLANGUAGE\_GREEK
169\item wxLANGUAGE\_GREENLANDIC
170\item wxLANGUAGE\_GUARANI
171\item wxLANGUAGE\_GUJARATI
172\item wxLANGUAGE\_HAUSA
173\item wxLANGUAGE\_HEBREW
174\item wxLANGUAGE\_HINDI
175\item wxLANGUAGE\_HUNGARIAN
176\item wxLANGUAGE\_ICELANDIC
177\item wxLANGUAGE\_INDONESIAN
178\item wxLANGUAGE\_INTERLINGUA
179\item wxLANGUAGE\_INTERLINGUE
180\item wxLANGUAGE\_INUKTITUT
181\item wxLANGUAGE\_INUPIAK
182\item wxLANGUAGE\_IRISH
183\item wxLANGUAGE\_ITALIAN
184\item wxLANGUAGE\_ITALIAN\_SWISS
185\item wxLANGUAGE\_JAPANESE
186\item wxLANGUAGE\_JAVANESE
187\item wxLANGUAGE\_KANNADA
188\item wxLANGUAGE\_KASHMIRI
189\item wxLANGUAGE\_KASHMIRI\_INDIA
190\item wxLANGUAGE\_KAZAKH
191\item wxLANGUAGE\_KERNEWEK
192\item wxLANGUAGE\_KINYARWANDA
193\item wxLANGUAGE\_KIRGHIZ
194\item wxLANGUAGE\_KIRUNDI
195\item wxLANGUAGE\_KONKANI
196\item wxLANGUAGE\_KOREAN
197\item wxLANGUAGE\_KURDISH
198\item wxLANGUAGE\_LAOTHIAN
199\item wxLANGUAGE\_LATIN
200\item wxLANGUAGE\_LATVIAN
201\item wxLANGUAGE\_LINGALA
202\item wxLANGUAGE\_LITHUANIAN
203\item wxLANGUAGE\_MACEDONIAN
204\item wxLANGUAGE\_MALAGASY
205\item wxLANGUAGE\_MALAY
206\item wxLANGUAGE\_MALAYALAM
207\item wxLANGUAGE\_MALAY\_BRUNEI\_DARUSSALAM
208\item wxLANGUAGE\_MALAY\_MALAYSIA
209\item wxLANGUAGE\_MALTESE
210\item wxLANGUAGE\_MANIPURI
211\item wxLANGUAGE\_MAORI
212\item wxLANGUAGE\_MARATHI
213\item wxLANGUAGE\_MOLDAVIAN
214\item wxLANGUAGE\_MONGOLIAN
215\item wxLANGUAGE\_NAURU
216\item wxLANGUAGE\_NEPALI
217\item wxLANGUAGE\_NEPALI\_INDIA
218\item wxLANGUAGE\_NORWEGIAN\_BOKMAL
219\item wxLANGUAGE\_NORWEGIAN\_NYNORSK
220\item wxLANGUAGE\_OCCITAN
221\item wxLANGUAGE\_ORIYA
222\item wxLANGUAGE\_OROMO
223\item wxLANGUAGE\_PASHTO
224\item wxLANGUAGE\_POLISH
225\item wxLANGUAGE\_PORTUGUESE
226\item wxLANGUAGE\_PORTUGUESE\_BRAZILIAN
227\item wxLANGUAGE\_PUNJABI
228\item wxLANGUAGE\_QUECHUA
229\item wxLANGUAGE\_RHAETO\_ROMANCE
230\item wxLANGUAGE\_ROMANIAN
231\item wxLANGUAGE\_RUSSIAN
232\item wxLANGUAGE\_RUSSIAN\_UKRAINE
233\item wxLANGUAGE\_SAMOAN
234\item wxLANGUAGE\_SANGHO
235\item wxLANGUAGE\_SANSKRIT
236\item wxLANGUAGE\_SCOTS\_GAELIC
237\item wxLANGUAGE\_SERBIAN
238\item wxLANGUAGE\_SERBIAN\_CYRILLIC
239\item wxLANGUAGE\_SERBIAN\_LATIN
240\item wxLANGUAGE\_SERBO\_CROATIAN
241\item wxLANGUAGE\_SESOTHO
242\item wxLANGUAGE\_SETSWANA
243\item wxLANGUAGE\_SHONA
244\item wxLANGUAGE\_SINDHI
245\item wxLANGUAGE\_SINHALESE
246\item wxLANGUAGE\_SISWATI
247\item wxLANGUAGE\_SLOVAK
248\item wxLANGUAGE\_SLOVENIAN
249\item wxLANGUAGE\_SOMALI
250\item wxLANGUAGE\_SPANISH
251\item wxLANGUAGE\_SPANISH\_ARGENTINA
252\item wxLANGUAGE\_SPANISH\_BOLIVIA
253\item wxLANGUAGE\_SPANISH\_CHILE
254\item wxLANGUAGE\_SPANISH\_COLOMBIA
255\item wxLANGUAGE\_SPANISH\_COSTA\_RICA
256\item wxLANGUAGE\_SPANISH\_DOMINICAN\_REPUBLIC
257\item wxLANGUAGE\_SPANISH\_ECUADOR
258\item wxLANGUAGE\_SPANISH\_EL\_SALVADOR
259\item wxLANGUAGE\_SPANISH\_GUATEMALA
260\item wxLANGUAGE\_SPANISH\_HONDURAS
261\item wxLANGUAGE\_SPANISH\_MEXICAN
262\item wxLANGUAGE\_SPANISH\_MODERN
263\item wxLANGUAGE\_SPANISH\_NICARAGUA
264\item wxLANGUAGE\_SPANISH\_PANAMA
265\item wxLANGUAGE\_SPANISH\_PARAGUAY
266\item wxLANGUAGE\_SPANISH\_PERU
267\item wxLANGUAGE\_SPANISH\_PUERTO\_RICO
268\item wxLANGUAGE\_SPANISH\_URUGUAY
269\item wxLANGUAGE\_SPANISH\_US
270\item wxLANGUAGE\_SPANISH\_VENEZUELA
271\item wxLANGUAGE\_SUNDANESE
272\item wxLANGUAGE\_SWAHILI
273\item wxLANGUAGE\_SWEDISH
274\item wxLANGUAGE\_SWEDISH\_FINLAND
275\item wxLANGUAGE\_TAGALOG
276\item wxLANGUAGE\_TAJIK
277\item wxLANGUAGE\_TAMIL
278\item wxLANGUAGE\_TATAR
279\item wxLANGUAGE\_TELUGU
280\item wxLANGUAGE\_THAI
281\item wxLANGUAGE\_TIBETAN
282\item wxLANGUAGE\_TIGRINYA
283\item wxLANGUAGE\_TONGA
284\item wxLANGUAGE\_TSONGA
285\item wxLANGUAGE\_TURKISH
286\item wxLANGUAGE\_TURKMEN
287\item wxLANGUAGE\_TWI
288\item wxLANGUAGE\_UIGHUR
289\item wxLANGUAGE\_UKRAINIAN
290\item wxLANGUAGE\_URDU
291\item wxLANGUAGE\_URDU\_INDIA
292\item wxLANGUAGE\_URDU\_PAKISTAN
293\item wxLANGUAGE\_UZBEK
294\item wxLANGUAGE\_UZBEK\_CYRILLIC
295\item wxLANGUAGE\_UZBEK\_LATIN
296\item wxLANGUAGE\_VIETNAMESE
297\item wxLANGUAGE\_VOLAPUK
298\item wxLANGUAGE\_WELSH
299\item wxLANGUAGE\_WOLOF
300\item wxLANGUAGE\_XHOSA
301\item wxLANGUAGE\_YIDDISH
302\item wxLANGUAGE\_YORUBA
303\item wxLANGUAGE\_ZHUANG
304\item wxLANGUAGE\_ZULU
305\end{itemize}
306
41780009
VS
307%% --- --- --- generated code ends here --- --- ---
308
309
8ec77cd7
VS
310
311
c1b7dab0
VZ
312\membersection{wxLocale::wxLocale}\label{wxlocaledefctor}
313
314\func{}{wxLocale}{\void}
315
316This is the default constructor and it does nothing to initialize the object:
dbdb39b2 317\helpref{Init()}{wxlocaleinit} must be used to do that.
c1b7dab0 318
8ec77cd7
VS
319\func{}{wxLocale}{\param{int }{language}, \param{int }{flags =
320 wxLOCALE\_LOAD\_DEFAULT | wxLOCALE\_CONV\_ENCODING}}
321
322See \helpref{Init()}{wxlocaleinit} for parameters description.
323
cc81d32f 324\func{}{wxLocale}{\param{const char }{*szName}, \param{const char }{*szShort = NULL}, \param{const char }{*szLocale = NULL}, \param{bool }{bLoadDefault = true}, \param{bool }{bConvertEncoding = false}}
c1b7dab0 325
8ec77cd7 326See \helpref{Init()}{wxlocaleinit} for parameters description.
c1b7dab0
VZ
327
328The call of this function has several global side effects which you should
329understand: first of all, the application locale is changed - note that this
330will affect many of standard C library functions such as printf() or strftime().
331Second, this wxLocale object becomes the new current global locale for the
332application and so all subsequent calls to wxGetTranslation() will try to
333translate the messages using the message catalogs for this locale.
334
8ec77cd7 335
c1b7dab0
VZ
336\membersection{wxLocale::\destruct{wxLocale}}\label{wxlocaledtor}
337
338\func{}{\destruct{wxLocale}}{\void}
339
dbdb39b2 340The destructor, like the constructor, also has global side effects: the previously
c1b7dab0
VZ
341set locale is restored and so the changes described in
342\helpref{Init}{wxlocaleinit} documentation are rolled back.
343
c1b7dab0
VZ
344\membersection{wxLocale::AddCatalog}\label{wxlocaleaddcatalog}
345
346\func{bool}{AddCatalog}{\param{const char }{*szDomain}}
347
f6bcfd97 348Add a catalog for use with the current locale: it is searched for in standard
dbdb39b2 349places (current directory first, then the system one), but you may also prepend
c1b7dab0 350additional directories to the search path with
dbdb39b2 351\helpref{AddCatalogLookupPathPrefix()}{wxlocaleaddcataloglookuppathprefix}.
c1b7dab0
VZ
352
353All loaded catalogs will be used for message lookup by GetString() for the
354current locale.
355
cc81d32f 356Returns true if catalog was successfully loaded, false otherwise (which might
c1b7dab0
VZ
357mean that the catalog is not found or that it isn't in the correct format).
358
359\membersection{wxLocale::AddCatalogLookupPathPrefix}\label{wxlocaleaddcataloglookuppathprefix}
360
361\func{void}{AddCatalogLookupPathPrefix}{\param{const wxString\& }{prefix}}
362
363Add a prefix to the catalog lookup path: the message catalog files will be
364looked up under prefix/<lang>/LC\_MESSAGES, prefix/LC\_MESSAGES and prefix
365(in this order).
366
367This only applies to subsequent invocations of AddCatalog()!
368
8ec77cd7
VS
369\membersection{wxLocale::AddLanguage}\label{wxlocaleaddlanguage}
370
41780009 371\func{static void}{AddLanguage}{\param{const wxLanguageInfo\& }{info}}
8ec77cd7
VS
372
373Adds custom, user-defined language to the database of known languages. This
2edb0bde 374database is used in conjunction with the first form of
8ec77cd7
VS
375\helpref{Init}{wxlocaleinit}.
376
377wxLanguageInfo is defined as follows:
378
379\begin{verbatim}
380struct WXDLLEXPORT wxLanguageInfo
381{
382 int Language; // wxLanguage id
383 wxString CanonicalName; // Canonical name, e.g. fr_FR
384#ifdef __WIN32__
385 wxUint32 WinLang, WinSublang; // Win32 language identifiers
386 // (LANG_xxxx, SUBLANG_xxxx)
387#endif
388 wxString Description; // human-readable name of the language
389};
390\end{verbatim}
391
392
393{\it Language} should be greater than wxLANGUAGE\_USER\_DEFINED.
394
0a67eeac
MB
395\perlnote{In wxPerl Wx::LanguageInfo has only one method:\par
396Wx::LanguageInfo->new( language, canonicalName, WinLang, WinSubLang, Description )}
8ec77cd7 397
9d1e1be4
VZ
398\membersection{wxLocale::FindLanguageInfo}{wxlocalefindlanguageinfo}
399
400\constfunc{static wxLanguageInfo *}{FindLanguageInfo}{\param{const wxString\& }{locale}}
401
402This function may be used to find the language description structure for the
403given locale, specified either as a two letter ISO language code (for example,
404"pt"), a language code followed by the country code ("pt\_BR") or a full, human
405readable, language description ("Portuguese-Brazil").
406
407Returns the information for the given language or {\tt NULL} if this language
408is unknown. Note that even if the returned pointer is valid, the caller should
409{\it not} delete it.
410
411\wxheading{See also}
412
413\helpref{GetLanguageInfo}{wxlocalegetlanguageinfo}
8ec77cd7
VS
414
415\membersection{wxLocale::GetCanonicalName}\label{wxlocalegetcanonicalname}
416
417\constfunc{wxString}{GetSysName}{\void}
418
419Returns the canonical form of current locale name. Canonical form is the
420one that is used on UNIX systems: it is a two- or five-letter string in xx or
421xx\_YY format, where xx is ISO 639 code of language and YY is ISO 3166 code of
422the country. Examples are "en", "en\_GB", "en\_US" or "fr\_FR".
423
424This form is internally used when looking up message catalogs.
425
426Compare \helpref{GetSysName}{wxlocalegetsysname}.
427
428
429
430\membersection{wxLocale::GetLanguage}\label{wxlocalegetlanguage}
431
432\constfunc{int}{GetLanguage}{\void}
433
434Returns \helpref{wxLanguage}{wxlanguage} constant of current language.
435Note that you can call this function only if you used the form of
436\helpref{Init}{wxlocaleinit} that takes wxLanguage argument.
437
14f8fa9d
VZ
438\membersection{wxLocale::GetLanguageInfo}\label{wxlocalegetlanguageinfo}
439
440\constfunc{static wxLanguageInfo *}{GetLanguageInfo}{\param{int }{lang}}
441
442Returns a pointer to wxLanguageInfo structure containing information about the
443given language or {\tt NULL} if this language is unknown. Note that even if the
444returned pointer is valid, the caller should {\it not} delete it.
445
446See \helpref{AddLanguage}{wxlocaleaddlanguage} for the wxLanguageInfo
447description.
448
4a6e4a46
VS
449\membersection{wxLocale::GetLanguageName}\label{wxlocalegetlanguagename}
450
451\constfunc{static wxString}{GetLanguageName}{\param{int }{lang}}
452
453Returns English name of the given language or empty string if this
454language is unknown.
455
8ec77cd7 456
3ca6a5f0
BP
457\membersection{wxLocale::GetLocale}\label{wxlocalegetlocale}
458
459\constfunc{const char*}{GetLocale}{\void}
460
461Returns the locale name as passed to the constructor or
8ec77cd7
VS
462\helpref{Init()}{wxlocaleinit}. This is full, human-readable name,
463e.g. "English" or "French".
464
3ca6a5f0
BP
465
466\membersection{wxLocale::GetName}\label{wxlocalegetname}
467
468\constfunc{const wxString\&}{GetName}{\void}
469
470Returns the current short name for the locale (as given to the constructor or
471the Init() function).
472
473\membersection{wxLocale::GetString}\label{wxlocalegetstring}
474
475\constfunc{const char*}{GetString}{\param{const char }{*szOrigString}, \param{const char }{*szDomain = NULL}}
476
477Retrieves the translation for a string in all loaded domains unless the szDomain
478parameter is specified (and then only this catalog/domain is searched).
479
480Returns original string if translation is not available
481(in this case an error message is generated the first time
482a string is not found; use \helpref{wxLogNull}{wxlogoverview} to suppress it).
483
484\wxheading{Remarks}
485
486Domains are searched in the last to first order, i.e. catalogs
487added later override those added before.
488
8ec77cd7
VS
489\membersection{wxLocale::GetSysName}\label{wxlocalegetsysname}
490
491\constfunc{wxString}{GetSysName}{\void}
492
493Returns current platform-specific locale name as passed to setlocale().
494
495Compare \helpref{GetCanonicalName}{wxlocalegetcanonicalname}.
496
497
dccce9ea
VZ
498\membersection{wxLocale::GetSystemEncoding}\label{wxlocalegetsystemencoding}
499
500\constfunc{static wxFontEncoding}{GetSystemEncoding}{\void}
501
502Tries to detect the user's default font encoding.
503Returns \helpref{wxFontEncoding}{wxfont} value or
504{\bf wxFONTENCODING\_SYSTEM} if it couldn't be determined.
505
506\membersection{wxLocale::GetSystemEncodingName}\label{wxlocalegetsystemencodingname}
507
508\constfunc{static wxString}{GetSystemEncodingName}{\void}
509
510Tries to detect the name of the user's default font encoding. This string isn't
511particularly useful for the application as its form is platform-dependent and
512so you should probably use
513\helpref{GetSystemEncoding}{wxlocalegetsystemencoding} instead.
514
515Returns a user-readable string value or an empty string if it couldn't be
516determined.
517
8ec77cd7
VS
518\membersection{wxLocale::GetSystemLanguage}\label{wxlocalegetsystemlanguage}
519
41780009 520\constfunc{static int}{GetSystemLanguage}{\void}
8ec77cd7
VS
521
522Tries to detect the user's default language setting.
523Returns \helpref{wxLanguage}{wxlanguage} value or
524 {\bf wxLANGUAGE\_UNKNOWN} if the language-guessing algorithm failed.
525
526
c1b7dab0
VZ
527\membersection{wxLocale::Init}\label{wxlocaleinit}
528
8ec77cd7
VS
529
530\func{bool}{Init}{\param{int }{language = wxLANGUAGE\_DEFAULT}, \param{int }{flags =
531 wxLOCALE\_LOAD\_DEFAULT | wxLOCALE\_CONV\_ENCODING}}
532
cc81d32f 533\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}}
c1b7dab0 534
8ec77cd7
VS
535The second form is deprecated, use the first one unless you know what you are
536doing.
dbdb39b2 537
8ec77cd7
VS
538
539\wxheading{Parameters}
540
541\docparam{language}{\helpref{wxLanguage}{wxlanguage} identifier of the locale.
542wxLANGUAGE\_DEFAULT has special meaning -- wxLocale will use system's default
543language (see \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}).}
544
545\docparam{flags}{Combination of the following:
546\begin{twocollist}\itemsep=0pt
547\twocolitem{\windowstyle{wxLOCALE\_LOAD\_DEFAULT}}{Load the message catalog
548for the given locale containing the translations of standard wxWindows messages
549automatically.}
550\twocolitem{\windowstyle{wxLOCALE\_CONV\_ENCODING}}{Automatically convert message
ae71a6e8 551catalogs to platform's default encoding. Note that it will do only basic
8ec77cd7
VS
552conversion between well-known pair like iso8859-1 and windows-1252 or
553iso8859-2 and windows-1250. See \helpref{Writing non-English applications}{nonenglishoverview} for detailed
ae71a6e8 554description of this behaviour. Note that this flag is meaningless in Unicode build.}
8ec77cd7
VS
555\end{twocollist}
556}
557
558\docparam{szName}{The name of the locale. Only used in diagnostic messages.}
559
560\docparam{szShort}{The standard 2 letter locale abbreviation and is used as the
561directory prefix when looking for the message catalog files.}
562
563\docparam{szLocale}{The parameter for the call to setlocale(). Note that it is
564platform-specific.}
565
cc81d32f 566\docparam{bLoadDefault}{May be set to false to prevent loading of the message catalog
c1b7dab0 567for the given locale containing the translations of standard wxWindows messages.
8ec77cd7
VS
568This parameter would be rarely used in normal circumstances.}
569
cc81d32f 570\docparam{bConvertEncoding}{May be set to true to do automatic conversion of message
a4313e3b
VS
571catalogs to platform's native encoding. Note that it will do only basic
572conversion between well-known pair like iso8859-1 and windows-1252 or
573iso8859-2 and windows-1250.
574See \helpref{Writing non-English applications}{nonenglishoverview} for detailed
8ec77cd7
VS
575description of this behaviour.}
576
c1b7dab0
VZ
577
578The call of this function has several global side effects which you should
579understand: first of all, the application locale is changed - note that this
580will affect many of standard C library functions such as printf() or strftime().
581Second, this wxLocale object becomes the new current global locale for the
582application and so all subsequent calls to wxGetTranslation() will try to
583translate the messages using the message catalogs for this locale.
584
cc81d32f 585Returns true on success or false if the given locale couldn't be set.
c1b7dab0
VZ
586
587\membersection{wxLocale::IsLoaded}\label{wxlocaleisloaded}
588
dbdb39b2
JS
589\constfunc{bool}{IsLoaded}{\param{const char* }{domain}}
590
cc81d32f 591Check if the given catalog is loaded, and returns true if it is.
c1b7dab0 592
dbdb39b2
JS
593According to GNU gettext tradition, each catalog
594normally corresponds to 'domain' which is more or less the application name.
c1b7dab0
VZ
595
596See also: \helpref{AddCatalog}{wxlocaleaddcatalog}
597
3ca6a5f0 598\membersection{wxLocale::IsOk}\label{wxlocaleisok}
c1b7dab0 599
3ca6a5f0 600\constfunc{bool}{IsOk}{\void}
dbdb39b2 601
cc81d32f 602Returns true if the locale could be set successfully.
dbdb39b2 603