]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/locale.tex
added wxHtmlHelpController::AddBook(wxFileName)
[wxWidgets.git] / docs / latex / wx / locale.tex
index 0fdbc1af91e43e3935f1c2173678881d9c614db6..fe0dc4deb2d6b1185ac53ce413d5bcc20f7130f9 100644 (file)
@@ -6,16 +6,36 @@ generalization of the C locale concept.
 In wxWindows this class manages message catalogs which contain the translations
 of the strings used to the current language.
 
-\perlnote{In wxPerl the {\tt Wx} module exports a '_' function
-that corresponds to the '_' C++ macro.
+\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}
-  use Wx qw(_);
+  # this imports gettext ( equivalent to Wx::GetTranslation
+  # and gettext_noop ( a noop )
+  # into your module
+  use Wx::Locale qw(:default);
 
   # ....
 
-  print _( ``Panic!'' );
+  # use the functions
+  print gettext( ``Panic!'' ); 
 
-  my( \$button ) = Wx::Button->new( \$window, -1, _( ``Label'' ) );
+  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',
+                 'gettext_noop' => 'gettext_noop';
+
+  # ...
+
+  # use the functions
+  print t( ``Panic!!'' );
+
+  # ...
 \end{verbatim}
 }
 
@@ -25,7 +45,8 @@ No base class
 
 \wxheading{See also}
 
-\helpref{I18n overview}{internationalization}
+\helpref{Internationalization overview}{internationalization},\\
+\helpref{Internat sample}{sampleinternat}
 
 \wxheading{Include files}
 
@@ -350,7 +371,7 @@ This only applies to subsequent invocations of AddCatalog()!
 \func{static void}{AddLanguage}{\param{const wxLanguageInfo\& }{info}}
 
 Adds custom, user-defined language to the database of known languages. This
-database is used in conjuction with the first form of 
+database is used in conjunction with the first form of 
 \helpref{Init}{wxlocaleinit}. 
 
 wxLanguageInfo is defined as follows:
@@ -371,6 +392,8 @@ struct WXDLLEXPORT wxLanguageInfo
 
 {\it Language} should be greater than wxLANGUAGE\_USER\_DEFINED.
 
+\perlnote{In wxPerl Wx::LanguageInfo has only one method:\par
+Wx::LanguageInfo->new( language, canonicalName, WinLang, WinSubLang, Description )}
 
 
 \membersection{wxLocale::GetCanonicalName}\label{wxlocalegetcanonicalname}
@@ -396,6 +419,17 @@ 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}}
+
+Returns a pointer to wxLanguageInfo structure containing information about the
+given language or {\tt NULL} if this language is unknown. Note that even if the
+returned pointer is valid, the caller should {\it not} delete it.
+
+See \helpref{AddLanguage}{wxlocaleaddlanguage} for the wxLanguageInfo
+description.
+
 
 \membersection{wxLocale::GetLocale}\label{wxlocalegetlocale}
 
@@ -438,6 +472,26 @@ Returns current platform-specific locale name as passed to setlocale().
 Compare \helpref{GetCanonicalName}{wxlocalegetcanonicalname}.
 
 
+\membersection{wxLocale::GetSystemEncoding}\label{wxlocalegetsystemencoding}
+
+\constfunc{static wxFontEncoding}{GetSystemEncoding}{\void}
+
+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}
+
+Tries to detect the name of the user's default font encoding. This string isn't
+particularly useful for the application as its form is platform-dependent and
+so you should probably use 
+\helpref{GetSystemEncoding}{wxlocalegetsystemencoding} instead.
+
+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}
@@ -471,10 +525,10 @@ language (see \helpref{GetSystemLanguage}{wxlocalegetsystemlanguage}).}
 for the given locale containing the translations of standard wxWindows messages
 automatically.}
 \twocolitem{\windowstyle{wxLOCALE\_CONV\_ENCODING}}{Automatically convert message
-catalogs to platform's native encoding. Note that it will do only basic 
+catalogs to platform's default encoding. Note that it will do only basic 
 conversion between well-known pair like iso8859-1 and windows-1252 or
 iso8859-2 and windows-1250. See \helpref{Writing non-English applications}{nonenglishoverview} for detailed
-description of this behaviour.}
+description of this behaviour. Note that this flag is meaningless in Unicode build.}
 \end{twocollist}
 }