{
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__
};
// ----------------------------------------------------------------------------
// implementation
// ============================================================================
+// ----------------------------------------------------------------------------
+// wxLanguageInfo
+// ----------------------------------------------------------------------------
+
+#ifdef __WXMSW__
+
+wxUint32 wxLanguageInfo::GetLCID() const
+{
+ return MAKELCID(MAKELANGID(WinLang, WinSublang), SORT_DEFAULT);
+}
+
+#endif // __WXMSW__
+
// ----------------------------------------------------------------------------
// wxMsgCatalogFile class
// ----------------------------------------------------------------------------
= -1
#endif
;
- wxUint32 lcid = MAKELCID(MAKELANGID(info->WinLang, info->WinSublang),
- SORT_DEFAULT);
+ const wxUint32 lcid = info->GetLCID();
+
// FIXME
#ifndef __WXWINCE__
SetThreadLocale(lcid);
if ( !info->WinLang )
return false;
- if ( !::IsValidLocale
- (
- MAKELCID(MAKELANGID(info->WinLang, info->WinSublang),
- SORT_DEFAULT),
- LCID_INSTALLED
- ) )
+ if ( !::IsValidLocale(info->GetLCID(), LCID_INSTALLED) )
return false;
#elif defined(__UNIX__)
if (wxGetLocale())
{
const wxLanguageInfo *info = GetLanguageInfo(wxGetLocale()->GetLanguage());
- if (info)
- { ;
- lcid = MAKELCID(MAKELANGID(info->WinLang, info->WinSublang),
- SORT_DEFAULT);
- }
+ if ( info )
+ lcid = info->GetLCID();
}
wxString str;