1 #############################################################################
3 ## Purpose: XS for Wx::Locale
4 ## Author: Mattia Barbon
7 ## RCS-ID: $Id: Locale.xs 2166 2007-08-17 18:52:25Z mbarbon $
8 ## Copyright: (c) 2000-2007 Mattia Barbon
9 ## Licence: This program is free software; you can redistribute it and/or
10 ## modify it under the same terms as Perl itself
11 #############################################################################
15 MODULE=Wx PACKAGE=Wx::LanguageInfo
18 wxLanguageInfo::new( language, canonicalName, winLang, winSublang, descr )
20 wxString canonicalName
25 RETVAL = new wxLanguageInfo;
26 RETVAL->Language = language;
27 RETVAL->CanonicalName = canonicalName;
28 #if defined( __WXMSW__ )
29 RETVAL->WinLang = winLang;
30 RETVAL->WinSublang = winSublang;
32 RETVAL->Description = descr;
36 wxLanguageInfo::CLONE()
38 wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
42 wxLanguageInfo::DESTROY()
44 if( wxPli_object_is_deleteable( aTHX_ ST(0) ) )
48 wxLanguageInfo::GetLanguage()
50 RETVAL = THIS->Language;
54 wxLanguageInfo::GetCanonicalName()
56 RETVAL = THIS->CanonicalName;
60 wxLanguageInfo::GetWinLang()
62 #if defined( __WXMSW__ )
63 RETVAL = THIS->WinLang;
70 wxLanguageInfo::GetWinSublang()
72 #if defined( __WXMSW__ )
73 RETVAL = THIS->WinSublang;
79 wxLanguageInfo::GetDescription()
81 RETVAL = THIS->Description;
84 MODULE=Wx PACKAGE=Wx::Locale
87 newLong( name, shorts = NULL, locale = NULL, loaddefault = true, convertencoding = false )
89 const wxChar* shorts = NO_INIT
90 const wxChar* locale = NO_INIT
94 wxString shorts_tmp, locale_tmp;
96 if( items < 2 ) shorts = NULL;
99 WXSTRING_INPUT( shorts_tmp, const char*, ST(1) );
100 shorts = shorts_tmp.c_str();
103 if( items < 3 ) locale = NULL;
106 WXSTRING_INPUT( locale_tmp, const char*, ST(2) );
107 locale = locale_tmp.c_str();
110 RETVAL = new wxLocale( name, shorts,
111 ( locale && wxStrlen( locale ) ) ? locale : NULL,
112 loaddefault, convertencoding );
117 newShort( language, flags = wxLOCALE_LOAD_DEFAULT|wxLOCALE_CONV_ENCODING )
121 RETVAL = new wxLocale( language, flags );
128 wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
134 wxPli_thread_sv_unregister( aTHX_ "Wx::Locale", THIS, ST(0) );
138 wxLocale::AddCatalog( domain )
142 wxLocale::AddCatalogLookupPathPrefix( prefix )
145 #if WXPERL_W_VERSION_GE( 2, 7, 2 )
151 RETVAL = wxLocale::IsAvailable( lang );
160 wxLocale::AddLanguage( *info );
163 wxLocale::GetLocale()
169 wxLocale::GetString( string, domain = NULL )
173 #if WXPERL_W_VERSION_GE( 2, 5, 3 )
176 wxLocale::GetHeaderValue( header, domain = NULL )
185 RETVAL = wxLocale::GetSystemLanguage();
190 wxLocale::GetLanguage()
192 #if WXPERL_W_VERSION_GE( 2, 5, 1 )
195 wxLocale::GetLanguageName( lang )
201 wxLocale::GetSysName()
204 wxLocale::GetCanonicalName()
209 RETVAL = wxLocale::GetSystemEncoding();
214 GetSystemEncodingName()
216 RETVAL = wxLocale::GetSystemEncodingName();
221 wxLocale::IsLoaded( domain )
227 const wxLanguageInfo*
228 FindLanguageInfo( name )
231 RETVAL = wxLocale::FindLanguageInfo( name );
235 wxPli_object_set_deleteable( aTHX_ ST(0), false );
238 wxLocale::Init( language, flags = wxLOCALE_LOAD_DEFAULT|wxLOCALE_CONV_ENCODING )
242 const wxLanguageInfo*
243 GetLanguageInfo( language )
246 RETVAL = wxLocale::GetLanguageInfo( language );
250 wxPli_object_set_deleteable( aTHX_ ST(0), false );
252 MODULE=Wx PACKAGE=Wx PREFIX=wx
255 wxGetTranslation( string )
258 RETVAL = wxGetTranslation( string );