// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
+// WARNING: Parts of this file are generated. See misc/languages/README for
+// details.
+
#ifndef _WX_INTL_H_
#define _WX_INTL_H_
// --keyword="_" --keyword="wxPLURAL:1,2" options
// to extract the strings from the sources)
#ifndef WXINTL_NO_GETTEXT_MACRO
- #define _(s) wxGetTranslation(_T(s))
- #define wxPLURAL(sing, plur, n) wxGetTranslation(_T(sing), _T(plur), n)
+ #define _(s) wxGetTranslation((s))
+ #define wxPLURAL(sing, plur, n) wxGetTranslation((sing), (plur), n)
#endif
// another one which just marks the strings for extraction, but doesn't
// perform the translation (use -kwxTRANSLATE with xgettext!)
-#define wxTRANSLATE(str) _T(str)
+#define wxTRANSLATE(str) str
// ----------------------------------------------------------------------------
// forward decls
// ----------------------------------------------------------------------------
-class WXDLLIMPEXP_BASE wxLocale;
-class WXDLLIMPEXP_BASE wxLanguageInfoArray;
+class WXDLLIMPEXP_FWD_BASE wxLocale;
+class WXDLLIMPEXP_FWD_BASE wxLanguageInfoArray;
class wxMsgCatalog;
// ============================================================================
wxLANGUAGE_ROMANIAN,
wxLANGUAGE_RUSSIAN,
wxLANGUAGE_RUSSIAN_UKRAINE,
+ wxLANGUAGE_SAMI,
wxLANGUAGE_SAMOAN,
wxLANGUAGE_SANGHO,
wxLANGUAGE_SANSKRIT,
wxLANGUAGE_UZBEK,
wxLANGUAGE_UZBEK_CYRILLIC,
wxLANGUAGE_UZBEK_LATIN,
+ wxLANGUAGE_VALENCIAN,
wxLANGUAGE_VIETNAMESE,
wxLANGUAGE_VOLAPUK,
wxLANGUAGE_WELSH,
{
int Language; // wxLanguage id
wxString CanonicalName; // Canonical name, e.g. fr_FR
-#ifdef __WIN32__
+#ifdef __WXMSW__
wxUint32 WinLang, // Win32 language identifiers
WinSublang;
-#endif // __WIN32__
+#endif // __WXMSW__
wxString Description; // human-readable name of the language
wxLayoutDirection LayoutDirection;
+
+#ifdef __WXMSW__
+ // return the LCID corresponding to this language
+ wxUint32 GetLCID() const;
+#endif // __WXMSW__
+
+ // return the locale name corresponding to this language usable with
+ // setlocale() on the current system
+ wxString GetLocaleName() const;
};
+// for Unix systems GetLocaleName() is trivial so implement it inline here, for
+// MSW it's implemented in intl.cpp
+#ifndef __WXMSW__
+inline wxString wxLanguageInfo::GetLocaleName() const { return CanonicalName; }
+#endif // !__WXMSW__
+
// ----------------------------------------------------------------------------
// wxLocaleCategory: the category of locale settings
// ----------------------------------------------------------------------------
m_strShort; // short name for the locale
int m_language; // this locale wxLanguage value
- const wxChar *m_pszOldLocale; // previous locale from setlocale()
+ const char *m_pszOldLocale; // previous locale from setlocale()
wxLocale *m_pOldLocale; // previous wxLocale
wxMsgCatalog *m_pMsgCat; // pointer to linked list of catalogs
#if !defined(WXINTL_NO_GETTEXT_MACRO)
#if !defined(_)
- #define _(s) (_T(s))
+ #define _(s) (s)
#endif
- #define wxPLURAL(sing, plur, n) ((n) == 1 ? _T(sing) : _T(plur))
+ #define wxPLURAL(sing, plur, n) ((n) == 1 ? (sing) : (plur))
#endif
-#define wxTRANSLATE(str) _T(str)
+#define wxTRANSLATE(str) str
// NB: we use a template here in order to avoid using
// wxLocale::GetUntranslatedString() above, which would be required if
// wxTRANSLATE) too
#if !defined(WXINTL_NO_GETTEXT_MACRO)
#if !defined(gettext_noop)
- #define gettext_noop(str) _T(str)
+ #define gettext_noop(str) (str)
#endif
#if !defined(N_)
- #define N_(s) _T(s)
+ #define N_(s) (s)
#endif
#endif