merge of RTL changes (with many modifications) from SOC2006_RTL branch

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2006-09-04 13:35:13 +00:00
parent ca8d899fcb
commit 978af86426
24 changed files with 946 additions and 475 deletions

View File

@@ -57,6 +57,7 @@ All:
All (GUI):
- Support for right-to-left text layout (Diaa Sami during Google Summer of Code)
- Added wxID_PAGE_SETUP standard id
wxMac:

View File

@@ -27,6 +27,7 @@
#include "wx/build.h"
#include "wx/init.h" // we must declare wxEntry()
#include "wx/intl.h"
class WXDLLIMPEXP_BASE wxAppConsole;
class WXDLLIMPEXP_BASE wxAppTraits;
@@ -113,6 +114,9 @@ public:
// Called from wxExit() function, should terminate the application a.s.a.p.
virtual void Exit();
// Return the layout direction for the current locale
virtual wxLayoutDirection GetLayoutDirection() const;
// application info: name, description, vendor
// -------------------------------------------

View File

@@ -37,6 +37,11 @@ public:
virtual void SetLabelTop( size_t pos, const wxString& label );
virtual wxString GetLabelTop( size_t pos ) const;
void SetLayoutDirection(wxLayoutDirection dir);
wxLayoutDirection GetLayoutDirection() const;
void Attach(wxFrame *frame);
// implementation only from now on
void SetInvokingWindow( wxWindow *win );
void UnsetInvokingWindow( wxWindow *win );
@@ -69,6 +74,11 @@ public:
virtual ~wxMenu();
void Attach(wxMenuBarBase *menubar);
void SetLayoutDirection(const wxLayoutDirection dir);
wxLayoutDirection GetLayoutDirection() const;
// TODO: virtual void SetTitle(const wxString& title);
// implementation

View File

@@ -113,6 +113,9 @@ public:
virtual void AddChild( wxWindowBase *child );
virtual void RemoveChild( wxWindowBase *child );
virtual void SetLayoutDirection(wxLayoutDirection dir);
virtual wxLayoutDirection GetLayoutDirection() const;
// currently wxGTK2-only
void SetDoubleBuffered(bool on);
@@ -172,6 +175,10 @@ public:
// base version just does GetEventHandler()->ProcessEvent()
virtual bool GTKProcessEvent(wxEvent& event) const;
// Map GTK widget direction of the given widget to/from wxLayoutDirection
static wxLayoutDirection GTKGetLayout(GtkWidget *widget);
static void GTKSetLayout(GtkWidget *widget, wxLayoutDirection dir);
protected:
// Override GTKWidgetNeedsMnemonic and return true if your
// needs to set its mnemonic widget, such as for a

View File

@@ -302,6 +302,13 @@ enum wxLanguage
// --- --- --- generated code ends here --- --- ---
enum wxLayoutDirection
{
wxLayout_Default,
wxLayout_LeftToRight,
wxLayout_RightToLeft
};
// ----------------------------------------------------------------------------
// wxLanguageInfo: encapsulates wxLanguage to OS native lang.desc.
// translation information
@@ -316,6 +323,7 @@ struct WXDLLIMPEXP_BASE wxLanguageInfo
WinSublang;
#endif // __WIN32__
wxString Description; // human-readable name of the language
wxLayoutDirection LayoutDirection;
};
// ----------------------------------------------------------------------------

View File

@@ -56,6 +56,8 @@ public:
virtual void SetIcons(const wxIconBundle& icons );
virtual void Restore();
virtual void SetLayoutDirection(wxLayoutDirection dir);
#ifndef __WXWINCE__
virtual bool SetShape(const wxRegion& region);
#endif // __WXWINCE__

View File

@@ -110,6 +110,12 @@ public:
virtual bool ScrollLines(int lines);
virtual bool ScrollPages(int pages);
virtual void SetLayoutDirection(wxLayoutDirection dir);
virtual wxLayoutDirection GetLayoutDirection() const;
virtual wxCoord AdjustForLayoutDirection(wxCoord x,
wxCoord width,
wxCoord widthTotal) const;
#if wxUSE_DRAG_AND_DROP
virtual void SetDropTarget( wxDropTarget *dropTarget );
#endif // wxUSE_DRAG_AND_DROP

View File

@@ -25,6 +25,7 @@
#include "wx/colour.h"
#include "wx/region.h"
#include "wx/utils.h"
#include "wx/intl.h"
#include "wx/validate.h" // for wxDefaultValidator (always include it)
@@ -180,9 +181,10 @@ public:
virtual void SetName( const wxString &name ) { m_windowName = name; }
virtual wxString GetName() const { return m_windowName; }
// sets the window variant, calls internally DoSetVariant if variant has changed
void SetWindowVariant( wxWindowVariant variant ) ;
wxWindowVariant GetWindowVariant() const { return m_windowVariant ; }
// sets the window variant, calls internally DoSetVariant if variant
// has changed
void SetWindowVariant(wxWindowVariant variant);
wxWindowVariant GetWindowVariant() const { return m_windowVariant; }
// window id uniquely identifies the window among its siblings unless
@@ -190,6 +192,19 @@ public:
void SetId( wxWindowID winid ) { m_windowId = winid; }
wxWindowID GetId() const { return m_windowId; }
// get or change the layout direction (LTR or RTL) for this window,
// wxLayout_Default is returned if layout direction is not supported
virtual wxLayoutDirection GetLayoutDirection() const
{ return wxLayout_Default; }
virtual void SetLayoutDirection(wxLayoutDirection WXUNUSED(dir))
{ }
// mirror coordinates for RTL layout if this window uses it and if the
// mirroring is not done automatically like Win32
virtual wxCoord AdjustForLayoutDirection(wxCoord x,
wxCoord width,
wxCoord widthTotal) const;
// generate a control id for the controls which were not given one by
// user
static int NewControlId() { return --ms_lastControlId; }

View File

@@ -12,7 +12,7 @@ def ReadTable():
f = open('langtabl.txt')
for i in f.readlines():
ispl = i.split()
table.append((ispl[0], ispl[1], ispl[2], ispl[3], string.join(ispl[4:])))
table.append((ispl[0], ispl[1], ispl[2], ispl[3], ispl[4], string.join(ispl[5:])))
f.close()
return table
@@ -87,8 +87,14 @@ def GenTable(table):
if ilang == '-': ilang = '0'
isublang = i[3]
if isublang == '-': isublang = '0'
lngtable += ' LNG(%-38s %-7s, %-15s, %-34s, %s)\n' % \
((i[0]+','), ican, ilang, isublang, i[4])
if (i[4] == "LTR") :
ilayout = "wxLayout_LeftToRight"
elif (i[4] == "RTL"):
ilayout = "wxLayout_RightToLeft"
else:
print "ERROR: Invalid value for the layout direction";
lngtable += ' LNG(%-38s %-7s, %-15s, %-34s, %s, %s)\n' % \
((i[0]+','), ican, ilang, isublang, ilayout, i[5])
if ilang not in all_langs: all_langs.append(ilang)
if isublang not in all_sublangs: all_sublangs.append(isublang)
@@ -119,10 +125,11 @@ def GenTable(table):
#endif // __WIN32__
#define LNG(wxlang, canonical, winlang, winsublang, desc) \\
#define LNG(wxlang, canonical, winlang, winsublang, layout, desc) \\
info.Language = wxlang; \\
info.CanonicalName = wxT(canonical); \\
info.Description = desc; \\
info.LayoutDirection = layout; \\
info.Description = wxT(desc); \\
SETWINLANG(info, winlang, winsublang) \\
AddLanguage(info);

View File

@@ -1,227 +1,227 @@
wxLANGUAGE_ABKHAZIAN ab - - "Abkhazian"
wxLANGUAGE_AFAR aa - - "Afar"
wxLANGUAGE_AFRIKAANS af_ZA LANG_AFRIKAANS SUBLANG_DEFAULT "Afrikaans"
wxLANGUAGE_ALBANIAN sq_AL LANG_ALBANIAN SUBLANG_DEFAULT "Albanian"
wxLANGUAGE_AMHARIC am - - "Amharic"
wxLANGUAGE_ARABIC ar LANG_ARABIC SUBLANG_DEFAULT "Arabic"
wxLANGUAGE_ARABIC_ALGERIA ar_DZ LANG_ARABIC SUBLANG_ARABIC_ALGERIA "Arabic (Algeria)"
wxLANGUAGE_ARABIC_BAHRAIN ar_BH LANG_ARABIC SUBLANG_ARABIC_BAHRAIN "Arabic (Bahrain)"
wxLANGUAGE_ARABIC_EGYPT ar_EG LANG_ARABIC SUBLANG_ARABIC_EGYPT "Arabic (Egypt)"
wxLANGUAGE_ARABIC_IRAQ ar_IQ LANG_ARABIC SUBLANG_ARABIC_IRAQ "Arabic (Iraq)"
wxLANGUAGE_ARABIC_JORDAN ar_JO LANG_ARABIC SUBLANG_ARABIC_JORDAN "Arabic (Jordan)"
wxLANGUAGE_ARABIC_KUWAIT ar_KW LANG_ARABIC SUBLANG_ARABIC_KUWAIT "Arabic (Kuwait)"
wxLANGUAGE_ARABIC_LEBANON ar_LB LANG_ARABIC SUBLANG_ARABIC_LEBANON "Arabic (Lebanon)"
wxLANGUAGE_ARABIC_LIBYA ar_LY LANG_ARABIC SUBLANG_ARABIC_LIBYA "Arabic (Libya)"
wxLANGUAGE_ARABIC_MOROCCO ar_MA LANG_ARABIC SUBLANG_ARABIC_MOROCCO "Arabic (Morocco)"
wxLANGUAGE_ARABIC_OMAN ar_OM LANG_ARABIC SUBLANG_ARABIC_OMAN "Arabic (Oman)"
wxLANGUAGE_ARABIC_QATAR ar_QA LANG_ARABIC SUBLANG_ARABIC_QATAR "Arabic (Qatar)"
wxLANGUAGE_ARABIC_SAUDI_ARABIA ar_SA LANG_ARABIC SUBLANG_ARABIC_SAUDI_ARABIA "Arabic (Saudi Arabia)"
wxLANGUAGE_ARABIC_SUDAN ar_SD - - "Arabic (Sudan)"
wxLANGUAGE_ARABIC_SYRIA ar_SY LANG_ARABIC SUBLANG_ARABIC_SYRIA "Arabic (Syria)"
wxLANGUAGE_ARABIC_TUNISIA ar_TN LANG_ARABIC SUBLANG_ARABIC_TUNISIA "Arabic (Tunisia)"
wxLANGUAGE_ARABIC_UAE ar_AE LANG_ARABIC SUBLANG_ARABIC_UAE "Arabic (Uae)"
wxLANGUAGE_ARABIC_YEMEN ar_YE LANG_ARABIC SUBLANG_ARABIC_YEMEN "Arabic (Yemen)"
wxLANGUAGE_ARMENIAN hy LANG_ARMENIAN SUBLANG_DEFAULT "Armenian"
wxLANGUAGE_ASSAMESE as LANG_ASSAMESE SUBLANG_DEFAULT "Assamese"
wxLANGUAGE_AYMARA ay - - "Aymara"
wxLANGUAGE_AZERI az LANG_AZERI SUBLANG_DEFAULT "Azeri"
wxLANGUAGE_AZERI_CYRILLIC az LANG_AZERI SUBLANG_AZERI_CYRILLIC "Azeri (Cyrillic)"
wxLANGUAGE_AZERI_LATIN az LANG_AZERI SUBLANG_AZERI_LATIN "Azeri (Latin)"
wxLANGUAGE_BASHKIR ba - - "Bashkir"
wxLANGUAGE_BASQUE eu_ES LANG_BASQUE SUBLANG_DEFAULT "Basque"
wxLANGUAGE_BELARUSIAN be_BY LANG_BELARUSIAN SUBLANG_DEFAULT "Belarusian"
wxLANGUAGE_BENGALI bn LANG_BENGALI SUBLANG_DEFAULT "Bengali"
wxLANGUAGE_BHUTANI dz - - "Bhutani"
wxLANGUAGE_BIHARI bh - - "Bihari"
wxLANGUAGE_BISLAMA bi - - "Bislama"
wxLANGUAGE_BRETON br - - "Breton"
wxLANGUAGE_BULGARIAN bg_BG LANG_BULGARIAN SUBLANG_DEFAULT "Bulgarian"
wxLANGUAGE_BURMESE my - - "Burmese"
wxLANGUAGE_CAMBODIAN km - - "Cambodian"
wxLANGUAGE_CATALAN ca_ES LANG_CATALAN SUBLANG_DEFAULT "Catalan"
wxLANGUAGE_CHINESE zh_TW LANG_CHINESE SUBLANG_DEFAULT "Chinese"
wxLANGUAGE_CHINESE_SIMPLIFIED zh_CN LANG_CHINESE SUBLANG_CHINESE_SIMPLIFIED "Chinese (Simplified)"
wxLANGUAGE_CHINESE_TRADITIONAL zh_TW LANG_CHINESE SUBLANG_CHINESE_TRADITIONAL "Chinese (Traditional)"
wxLANGUAGE_CHINESE_HONGKONG zh_HK LANG_CHINESE SUBLANG_CHINESE_HONGKONG "Chinese (Hongkong)"
wxLANGUAGE_CHINESE_MACAU zh_MO LANG_CHINESE SUBLANG_CHINESE_MACAU "Chinese (Macau)"
wxLANGUAGE_CHINESE_SINGAPORE zh_SG LANG_CHINESE SUBLANG_CHINESE_SINGAPORE "Chinese (Singapore)"
wxLANGUAGE_CHINESE_TAIWAN zh_TW LANG_CHINESE SUBLANG_CHINESE_TRADITIONAL "Chinese (Taiwan)"
wxLANGUAGE_CORSICAN co - - "Corsican"
wxLANGUAGE_CROATIAN hr_HR LANG_CROATIAN SUBLANG_DEFAULT "Croatian"
wxLANGUAGE_CZECH cs_CZ LANG_CZECH SUBLANG_DEFAULT "Czech"
wxLANGUAGE_DANISH da_DK LANG_DANISH SUBLANG_DEFAULT "Danish"
wxLANGUAGE_DUTCH nl_NL LANG_DUTCH SUBLANG_DUTCH "Dutch"
wxLANGUAGE_DUTCH_BELGIAN nl_BE LANG_DUTCH SUBLANG_DUTCH_BELGIAN "Dutch (Belgian)"
wxLANGUAGE_ENGLISH en_GB LANG_ENGLISH SUBLANG_ENGLISH_UK "English"
wxLANGUAGE_ENGLISH_UK en_GB LANG_ENGLISH SUBLANG_ENGLISH_UK "English (U.K.)"
wxLANGUAGE_ENGLISH_US en_US LANG_ENGLISH SUBLANG_ENGLISH_US "English (U.S.)"
wxLANGUAGE_ENGLISH_AUSTRALIA en_AU LANG_ENGLISH SUBLANG_ENGLISH_AUS "English (Australia)"
wxLANGUAGE_ENGLISH_BELIZE en_BZ LANG_ENGLISH SUBLANG_ENGLISH_BELIZE "English (Belize)"
wxLANGUAGE_ENGLISH_BOTSWANA en_BW - - "English (Botswana)"
wxLANGUAGE_ENGLISH_CANADA en_CA LANG_ENGLISH SUBLANG_ENGLISH_CAN "English (Canada)"
wxLANGUAGE_ENGLISH_CARIBBEAN en_CB LANG_ENGLISH SUBLANG_ENGLISH_CARIBBEAN "English (Caribbean)"
wxLANGUAGE_ENGLISH_DENMARK en_DK - - "English (Denmark)"
wxLANGUAGE_ENGLISH_EIRE en_IE LANG_ENGLISH SUBLANG_ENGLISH_EIRE "English (Eire)"
wxLANGUAGE_ENGLISH_JAMAICA en_JM LANG_ENGLISH SUBLANG_ENGLISH_JAMAICA "English (Jamaica)"
wxLANGUAGE_ENGLISH_NEW_ZEALAND en_NZ LANG_ENGLISH SUBLANG_ENGLISH_NZ "English (New Zealand)"
wxLANGUAGE_ENGLISH_PHILIPPINES en_PH LANG_ENGLISH SUBLANG_ENGLISH_PHILIPPINES "English (Philippines)"
wxLANGUAGE_ENGLISH_SOUTH_AFRICA en_ZA LANG_ENGLISH SUBLANG_ENGLISH_SOUTH_AFRICA "English (South Africa)"
wxLANGUAGE_ENGLISH_TRINIDAD en_TT LANG_ENGLISH SUBLANG_ENGLISH_TRINIDAD "English (Trinidad)"
wxLANGUAGE_ENGLISH_ZIMBABWE en_ZW LANG_ENGLISH SUBLANG_ENGLISH_ZIMBABWE "English (Zimbabwe)"
wxLANGUAGE_ESPERANTO eo - - "Esperanto"
wxLANGUAGE_ESTONIAN et_EE LANG_ESTONIAN SUBLANG_DEFAULT "Estonian"
wxLANGUAGE_FAEROESE fo_FO LANG_FAEROESE SUBLANG_DEFAULT "Faeroese"
wxLANGUAGE_FARSI fa_IR LANG_FARSI SUBLANG_DEFAULT "Farsi"
wxLANGUAGE_FIJI fj - - "Fiji"
wxLANGUAGE_FINNISH fi_FI LANG_FINNISH SUBLANG_DEFAULT "Finnish"
wxLANGUAGE_FRENCH fr_FR LANG_FRENCH SUBLANG_FRENCH "French"
wxLANGUAGE_FRENCH_BELGIAN fr_BE LANG_FRENCH SUBLANG_FRENCH_BELGIAN "French (Belgian)"
wxLANGUAGE_FRENCH_CANADIAN fr_CA LANG_FRENCH SUBLANG_FRENCH_CANADIAN "French (Canadian)"
wxLANGUAGE_FRENCH_LUXEMBOURG fr_LU LANG_FRENCH SUBLANG_FRENCH_LUXEMBOURG "French (Luxembourg)"
wxLANGUAGE_FRENCH_MONACO fr_MC LANG_FRENCH SUBLANG_FRENCH_MONACO "French (Monaco)"
wxLANGUAGE_FRENCH_SWISS fr_CH LANG_FRENCH SUBLANG_FRENCH_SWISS "French (Swiss)"
wxLANGUAGE_FRISIAN fy - - "Frisian"
wxLANGUAGE_GALICIAN gl_ES - - "Galician"
wxLANGUAGE_GEORGIAN ka LANG_GEORGIAN SUBLANG_DEFAULT "Georgian"
wxLANGUAGE_GERMAN de_DE LANG_GERMAN SUBLANG_GERMAN "German"
wxLANGUAGE_GERMAN_AUSTRIAN de_AT LANG_GERMAN SUBLANG_GERMAN_AUSTRIAN "German (Austrian)"
wxLANGUAGE_GERMAN_BELGIUM de_BE - - "German (Belgium)"
wxLANGUAGE_GERMAN_LIECHTENSTEIN de_LI LANG_GERMAN SUBLANG_GERMAN_LIECHTENSTEIN "German (Liechtenstein)"
wxLANGUAGE_GERMAN_LUXEMBOURG de_LU LANG_GERMAN SUBLANG_GERMAN_LUXEMBOURG "German (Luxembourg)"
wxLANGUAGE_GERMAN_SWISS de_CH LANG_GERMAN SUBLANG_GERMAN_SWISS "German (Swiss)"
wxLANGUAGE_GREEK el_GR LANG_GREEK SUBLANG_DEFAULT "Greek"
wxLANGUAGE_GREENLANDIC kl_GL - - "Greenlandic"
wxLANGUAGE_GUARANI gn - - "Guarani"
wxLANGUAGE_GUJARATI gu LANG_GUJARATI SUBLANG_DEFAULT "Gujarati"
wxLANGUAGE_HAUSA ha - - "Hausa"
wxLANGUAGE_HEBREW he_IL LANG_HEBREW SUBLANG_DEFAULT "Hebrew"
wxLANGUAGE_HINDI hi_IN LANG_HINDI SUBLANG_DEFAULT "Hindi"
wxLANGUAGE_HUNGARIAN hu_HU LANG_HUNGARIAN SUBLANG_DEFAULT "Hungarian"
wxLANGUAGE_ICELANDIC is_IS LANG_ICELANDIC SUBLANG_DEFAULT "Icelandic"
wxLANGUAGE_INDONESIAN id_ID LANG_INDONESIAN SUBLANG_DEFAULT "Indonesian"
wxLANGUAGE_INTERLINGUA ia - - "Interlingua"
wxLANGUAGE_INTERLINGUE ie - - "Interlingue"
wxLANGUAGE_INUKTITUT iu - - "Inuktitut"
wxLANGUAGE_INUPIAK ik - - "Inupiak"
wxLANGUAGE_IRISH ga_IE - - "Irish"
wxLANGUAGE_ITALIAN it_IT LANG_ITALIAN SUBLANG_ITALIAN "Italian"
wxLANGUAGE_ITALIAN_SWISS it_CH LANG_ITALIAN SUBLANG_ITALIAN_SWISS "Italian (Swiss)"
wxLANGUAGE_JAPANESE ja_JP LANG_JAPANESE SUBLANG_DEFAULT "Japanese"
wxLANGUAGE_JAVANESE jw - - "Javanese"
wxLANGUAGE_KANNADA kn LANG_KANNADA SUBLANG_DEFAULT "Kannada"
wxLANGUAGE_KASHMIRI ks LANG_KASHMIRI SUBLANG_DEFAULT "Kashmiri"
wxLANGUAGE_KASHMIRI_INDIA ks_IN LANG_KASHMIRI SUBLANG_KASHMIRI_INDIA "Kashmiri (India)"
wxLANGUAGE_KAZAKH kk LANG_KAZAK SUBLANG_DEFAULT "Kazakh"
wxLANGUAGE_KERNEWEK kw_GB - - "Kernewek"
wxLANGUAGE_KINYARWANDA rw - - "Kinyarwanda"
wxLANGUAGE_KIRGHIZ ky - - "Kirghiz"
wxLANGUAGE_KIRUNDI rn - - "Kirundi"
wxLANGUAGE_KONKANI - LANG_KONKANI SUBLANG_DEFAULT "Konkani"
wxLANGUAGE_KOREAN ko_KR LANG_KOREAN SUBLANG_KOREAN "Korean"
wxLANGUAGE_KURDISH ku - - "Kurdish"
wxLANGUAGE_LAOTHIAN lo - - "Laothian"
wxLANGUAGE_LATIN la - - "Latin"
wxLANGUAGE_LATVIAN lv_LV LANG_LATVIAN SUBLANG_DEFAULT "Latvian"
wxLANGUAGE_LINGALA ln - - "Lingala"
wxLANGUAGE_LITHUANIAN lt_LT LANG_LITHUANIAN SUBLANG_LITHUANIAN "Lithuanian"
wxLANGUAGE_MACEDONIAN mk_MK LANG_MACEDONIAN SUBLANG_DEFAULT "Macedonian"
wxLANGUAGE_MALAGASY mg - - "Malagasy"
wxLANGUAGE_MALAY ms_MY LANG_MALAY SUBLANG_DEFAULT "Malay"
wxLANGUAGE_MALAYALAM ml LANG_MALAYALAM SUBLANG_DEFAULT "Malayalam"
wxLANGUAGE_MALAY_BRUNEI_DARUSSALAM ms_BN LANG_MALAY SUBLANG_MALAY_BRUNEI_DARUSSALAM "Malay (Brunei Darussalam)"
wxLANGUAGE_MALAY_MALAYSIA ms_MY LANG_MALAY SUBLANG_MALAY_MALAYSIA "Malay (Malaysia)"
wxLANGUAGE_MALTESE mt_MT - - "Maltese"
wxLANGUAGE_MANIPURI - LANG_MANIPURI SUBLANG_DEFAULT "Manipuri"
wxLANGUAGE_MAORI mi - - "Maori"
wxLANGUAGE_MARATHI mr_IN LANG_MARATHI SUBLANG_DEFAULT "Marathi"
wxLANGUAGE_MOLDAVIAN mo - - "Moldavian"
wxLANGUAGE_MONGOLIAN mn - - "Mongolian"
wxLANGUAGE_NAURU na - - "Nauru"
wxLANGUAGE_NEPALI ne LANG_NEPALI SUBLANG_DEFAULT "Nepali"
wxLANGUAGE_NEPALI_INDIA ne_IN LANG_NEPALI SUBLANG_NEPALI_INDIA "Nepali (India)"
wxLANGUAGE_NORWEGIAN_BOKMAL nb_NO LANG_NORWEGIAN SUBLANG_NORWEGIAN_BOKMAL "Norwegian (Bokmal)"
wxLANGUAGE_NORWEGIAN_NYNORSK nn_NO LANG_NORWEGIAN SUBLANG_NORWEGIAN_NYNORSK "Norwegian (Nynorsk)"
wxLANGUAGE_OCCITAN oc - - "Occitan"
wxLANGUAGE_ORIYA or LANG_ORIYA SUBLANG_DEFAULT "Oriya"
wxLANGUAGE_OROMO om - - "(Afan) Oromo"
wxLANGUAGE_PASHTO ps - - "Pashto, Pushto"
wxLANGUAGE_POLISH pl_PL LANG_POLISH SUBLANG_DEFAULT "Polish"
wxLANGUAGE_PORTUGUESE pt_PT LANG_PORTUGUESE SUBLANG_PORTUGUESE "Portuguese"
wxLANGUAGE_PORTUGUESE_BRAZILIAN pt_BR LANG_PORTUGUESE SUBLANG_PORTUGUESE_BRAZILIAN "Portuguese (Brazilian)"
wxLANGUAGE_PUNJABI pa LANG_PUNJABI SUBLANG_DEFAULT "Punjabi"
wxLANGUAGE_QUECHUA qu - - "Quechua"
wxLANGUAGE_RHAETO_ROMANCE rm - - "Rhaeto-Romance"
wxLANGUAGE_ROMANIAN ro_RO LANG_ROMANIAN SUBLANG_DEFAULT "Romanian"
wxLANGUAGE_RUSSIAN ru_RU LANG_RUSSIAN SUBLANG_DEFAULT "Russian"
wxLANGUAGE_RUSSIAN_UKRAINE ru_UA - - "Russian (Ukraine)"
wxLANGUAGE_SAMOAN sm - - "Samoan"
wxLANGUAGE_SANGHO sg - - "Sangho"
wxLANGUAGE_SANSKRIT sa LANG_SANSKRIT SUBLANG_DEFAULT "Sanskrit"
wxLANGUAGE_SCOTS_GAELIC gd - - "Scots Gaelic"
wxLANGUAGE_SERBIAN_CYRILLIC sr_YU LANG_SERBIAN SUBLANG_SERBIAN_CYRILLIC "Serbian (Cyrillic)"
wxLANGUAGE_SERBIAN_LATIN sr_YU LANG_SERBIAN SUBLANG_SERBIAN_LATIN "Serbian (Latin)"
wxLANGUAGE_SERBO_CROATIAN sh - - "Serbo-Croatian"
wxLANGUAGE_SESOTHO st - - "Sesotho"
wxLANGUAGE_SETSWANA tn - - "Setswana"
wxLANGUAGE_SHONA sn - - "Shona"
wxLANGUAGE_SINDHI sd LANG_SINDHI SUBLANG_DEFAULT "Sindhi"
wxLANGUAGE_SINHALESE si - - "Sinhalese"
wxLANGUAGE_SISWATI ss - - "Siswati"
wxLANGUAGE_SLOVAK sk_SK LANG_SLOVAK SUBLANG_DEFAULT "Slovak"
wxLANGUAGE_SLOVENIAN sl_SI LANG_SLOVENIAN SUBLANG_DEFAULT "Slovenian"
wxLANGUAGE_SOMALI so - - "Somali"
wxLANGUAGE_SPANISH es_ES LANG_SPANISH SUBLANG_SPANISH "Spanish"
wxLANGUAGE_SPANISH_ARGENTINA es_AR LANG_SPANISH SUBLANG_SPANISH_ARGENTINA "Spanish (Argentina)"
wxLANGUAGE_SPANISH_BOLIVIA es_BO LANG_SPANISH SUBLANG_SPANISH_BOLIVIA "Spanish (Bolivia)"
wxLANGUAGE_SPANISH_CHILE es_CL LANG_SPANISH SUBLANG_SPANISH_CHILE "Spanish (Chile)"
wxLANGUAGE_SPANISH_COLOMBIA es_CO LANG_SPANISH SUBLANG_SPANISH_COLOMBIA "Spanish (Colombia)"
wxLANGUAGE_SPANISH_COSTA_RICA es_CR LANG_SPANISH SUBLANG_SPANISH_COSTA_RICA "Spanish (Costa Rica)"
wxLANGUAGE_SPANISH_DOMINICAN_REPUBLIC es_DO LANG_SPANISH SUBLANG_SPANISH_DOMINICAN_REPUBLIC "Spanish (Dominican republic)"
wxLANGUAGE_SPANISH_ECUADOR es_EC LANG_SPANISH SUBLANG_SPANISH_ECUADOR "Spanish (Ecuador)"
wxLANGUAGE_SPANISH_EL_SALVADOR es_SV LANG_SPANISH SUBLANG_SPANISH_EL_SALVADOR "Spanish (El Salvador)"
wxLANGUAGE_SPANISH_GUATEMALA es_GT LANG_SPANISH SUBLANG_SPANISH_GUATEMALA "Spanish (Guatemala)"
wxLANGUAGE_SPANISH_HONDURAS es_HN LANG_SPANISH SUBLANG_SPANISH_HONDURAS "Spanish (Honduras)"
wxLANGUAGE_SPANISH_MEXICAN es_MX LANG_SPANISH SUBLANG_SPANISH_MEXICAN "Spanish (Mexican)"
wxLANGUAGE_SPANISH_MODERN es_ES LANG_SPANISH SUBLANG_SPANISH_MODERN "Spanish (Modern)"
wxLANGUAGE_SPANISH_NICARAGUA es_NI LANG_SPANISH SUBLANG_SPANISH_NICARAGUA "Spanish (Nicaragua)"
wxLANGUAGE_SPANISH_PANAMA es_PA LANG_SPANISH SUBLANG_SPANISH_PANAMA "Spanish (Panama)"
wxLANGUAGE_SPANISH_PARAGUAY es_PY LANG_SPANISH SUBLANG_SPANISH_PARAGUAY "Spanish (Paraguay)"
wxLANGUAGE_SPANISH_PERU es_PE LANG_SPANISH SUBLANG_SPANISH_PERU "Spanish (Peru)"
wxLANGUAGE_SPANISH_PUERTO_RICO es_PR LANG_SPANISH SUBLANG_SPANISH_PUERTO_RICO "Spanish (Puerto Rico)"
wxLANGUAGE_SPANISH_URUGUAY es_UY LANG_SPANISH SUBLANG_SPANISH_URUGUAY "Spanish (Uruguay)"
wxLANGUAGE_SPANISH_US es_US - - "Spanish (U.S.)"
wxLANGUAGE_SPANISH_VENEZUELA es_VE LANG_SPANISH SUBLANG_SPANISH_VENEZUELA "Spanish (Venezuela)"
wxLANGUAGE_SUNDANESE su - - "Sundanese"
wxLANGUAGE_SWAHILI sw_KE LANG_SWAHILI SUBLANG_DEFAULT "Swahili"
wxLANGUAGE_SWEDISH sv_SE LANG_SWEDISH SUBLANG_SWEDISH "Swedish"
wxLANGUAGE_SWEDISH_FINLAND sv_FI LANG_SWEDISH SUBLANG_SWEDISH_FINLAND "Swedish (Finland)"
wxLANGUAGE_TAGALOG tl_PH - - "Tagalog"
wxLANGUAGE_TAJIK tg - - "Tajik"
wxLANGUAGE_TAMIL ta LANG_TAMIL SUBLANG_DEFAULT "Tamil"
wxLANGUAGE_TATAR tt LANG_TATAR SUBLANG_DEFAULT "Tatar"
wxLANGUAGE_TELUGU te LANG_TELUGU SUBLANG_DEFAULT "Telugu"
wxLANGUAGE_THAI th_TH LANG_THAI SUBLANG_DEFAULT "Thai"
wxLANGUAGE_TIBETAN bo - - "Tibetan"
wxLANGUAGE_TIGRINYA ti - - "Tigrinya"
wxLANGUAGE_TONGA to - - "Tonga"
wxLANGUAGE_TSONGA ts - - "Tsonga"
wxLANGUAGE_TURKISH tr_TR LANG_TURKISH SUBLANG_DEFAULT "Turkish"
wxLANGUAGE_TURKMEN tk - - "Turkmen"
wxLANGUAGE_TWI tw - - "Twi"
wxLANGUAGE_UIGHUR ug - - "Uighur"
wxLANGUAGE_UKRAINIAN uk_UA LANG_UKRAINIAN SUBLANG_DEFAULT "Ukrainian"
wxLANGUAGE_URDU ur LANG_URDU SUBLANG_DEFAULT "Urdu"
wxLANGUAGE_URDU_INDIA ur_IN LANG_URDU SUBLANG_URDU_INDIA "Urdu (India)"
wxLANGUAGE_URDU_PAKISTAN ur_PK LANG_URDU SUBLANG_URDU_PAKISTAN "Urdu (Pakistan)"
wxLANGUAGE_UZBEK uz LANG_UZBEK SUBLANG_DEFAULT "Uzbek"
wxLANGUAGE_UZBEK_CYRILLIC uz LANG_UZBEK SUBLANG_UZBEK_CYRILLIC "Uzbek (Cyrillic)"
wxLANGUAGE_UZBEK_LATIN uz LANG_UZBEK SUBLANG_UZBEK_LATIN "Uzbek (Latin)"
wxLANGUAGE_VIETNAMESE vi_VN LANG_VIETNAMESE SUBLANG_DEFAULT "Vietnamese"
wxLANGUAGE_VOLAPUK vo - - "Volapuk"
wxLANGUAGE_WELSH cy - - "Welsh"
wxLANGUAGE_WOLOF wo - - "Wolof"
wxLANGUAGE_XHOSA xh - - "Xhosa"
wxLANGUAGE_YIDDISH yi - - "Yiddish"
wxLANGUAGE_YORUBA yo - - "Yoruba"
wxLANGUAGE_ZHUANG za - - "Zhuang"
wxLANGUAGE_ZULU zu - - "Zulu"
wxLANGUAGE_ABKHAZIAN ab - - LTR "Abkhazian"
wxLANGUAGE_AFAR aa - - LTR "Afar"
wxLANGUAGE_AFRIKAANS af_ZA LANG_AFRIKAANS SUBLANG_DEFAULT LTR "Afrikaans"
wxLANGUAGE_ALBANIAN sq_AL LANG_ALBANIAN SUBLANG_DEFAULT LTR "Albanian"
wxLANGUAGE_AMHARIC am - - LTR "Amharic"
wxLANGUAGE_ARABIC ar LANG_ARABIC SUBLANG_DEFAULT RTL "Arabic"
wxLANGUAGE_ARABIC_ALGERIA ar_DZ LANG_ARABIC SUBLANG_ARABIC_ALGERIA RTL "Arabic (Algeria)"
wxLANGUAGE_ARABIC_BAHRAIN ar_BH LANG_ARABIC SUBLANG_ARABIC_BAHRAIN RTL "Arabic (Bahrain)"
wxLANGUAGE_ARABIC_EGYPT ar_EG LANG_ARABIC SUBLANG_ARABIC_EGYPT RTL "Arabic (Egypt)"
wxLANGUAGE_ARABIC_IRAQ ar_IQ LANG_ARABIC SUBLANG_ARABIC_IRAQ RTL "Arabic (Iraq)"
wxLANGUAGE_ARABIC_JORDAN ar_JO LANG_ARABIC SUBLANG_ARABIC_JORDAN RTL "Arabic (Jordan)"
wxLANGUAGE_ARABIC_KUWAIT ar_KW LANG_ARABIC SUBLANG_ARABIC_KUWAIT RTL "Arabic (Kuwait)"
wxLANGUAGE_ARABIC_LEBANON ar_LB LANG_ARABIC SUBLANG_ARABIC_LEBANON RTL "Arabic (Lebanon)"
wxLANGUAGE_ARABIC_LIBYA ar_LY LANG_ARABIC SUBLANG_ARABIC_LIBYA RTL "Arabic (Libya)"
wxLANGUAGE_ARABIC_MOROCCO ar_MA LANG_ARABIC SUBLANG_ARABIC_MOROCCO RTL "Arabic (Morocco)"
wxLANGUAGE_ARABIC_OMAN ar_OM LANG_ARABIC SUBLANG_ARABIC_OMAN RTL "Arabic (Oman)"
wxLANGUAGE_ARABIC_QATAR ar_QA LANG_ARABIC SUBLANG_ARABIC_QATAR RTL "Arabic (Qatar)"
wxLANGUAGE_ARABIC_SAUDI_ARABIA ar_SA LANG_ARABIC SUBLANG_ARABIC_SAUDI_ARABIA RTL "Arabic (Saudi Arabia)"
wxLANGUAGE_ARABIC_SUDAN ar_SD - - RTL "Arabic (Sudan)"
wxLANGUAGE_ARABIC_SYRIA ar_SY LANG_ARABIC SUBLANG_ARABIC_SYRIA RTL "Arabic (Syria)"
wxLANGUAGE_ARABIC_TUNISIA ar_TN LANG_ARABIC SUBLANG_ARABIC_TUNISIA RTL "Arabic (Tunisia)"
wxLANGUAGE_ARABIC_UAE ar_AE LANG_ARABIC SUBLANG_ARABIC_UAE RTL "Arabic (Uae)"
wxLANGUAGE_ARABIC_YEMEN ar_YE LANG_ARABIC SUBLANG_ARABIC_YEMEN RTL "Arabic (Yemen)"
wxLANGUAGE_ARMENIAN hy LANG_ARMENIAN SUBLANG_DEFAULT LTR "Armenian"
wxLANGUAGE_ASSAMESE as LANG_ASSAMESE SUBLANG_DEFAULT LTR "Assamese"
wxLANGUAGE_AYMARA ay - - LTR "Aymara"
wxLANGUAGE_AZERI az LANG_AZERI SUBLANG_DEFAULT LTR "Azeri"
wxLANGUAGE_AZERI_CYRILLIC az LANG_AZERI SUBLANG_AZERI_CYRILLIC LTR "Azeri (Cyrillic)"
wxLANGUAGE_AZERI_LATIN az LANG_AZERI SUBLANG_AZERI_LATIN LTR "Azeri (Latin)"
wxLANGUAGE_BASHKIR ba - - LTR "Bashkir"
wxLANGUAGE_BASQUE eu_ES LANG_BASQUE SUBLANG_DEFAULT LTR "Basque"
wxLANGUAGE_BELARUSIAN be_BY LANG_BELARUSIAN SUBLANG_DEFAULT LTR "Belarusian"
wxLANGUAGE_BENGALI bn LANG_BENGALI SUBLANG_DEFAULT LTR "Bengali"
wxLANGUAGE_BHUTANI dz - - LTR "Bhutani"
wxLANGUAGE_BIHARI bh - - LTR "Bihari"
wxLANGUAGE_BISLAMA bi - - LTR "Bislama"
wxLANGUAGE_BRETON br - - LTR "Breton"
wxLANGUAGE_BULGARIAN bg_BG LANG_BULGARIAN SUBLANG_DEFAULT LTR "Bulgarian"
wxLANGUAGE_BURMESE my - - LTR "Burmese"
wxLANGUAGE_CAMBODIAN km - - LTR "Cambodian"
wxLANGUAGE_CATALAN ca_ES LANG_CATALAN SUBLANG_DEFAULT LTR "Catalan"
wxLANGUAGE_CHINESE zh_TW LANG_CHINESE SUBLANG_DEFAULT LTR "Chinese"
wxLANGUAGE_CHINESE_SIMPLIFIED zh_CN LANG_CHINESE SUBLANG_CHINESE_SIMPLIFIED LTR "Chinese (Simplified)"
wxLANGUAGE_CHINESE_TRADITIONAL zh_TW LANG_CHINESE SUBLANG_CHINESE_TRADITIONAL LTR "Chinese (Traditional)"
wxLANGUAGE_CHINESE_HONGKONG zh_HK LANG_CHINESE SUBLANG_CHINESE_HONGKONG LTR "Chinese (Hongkong)"
wxLANGUAGE_CHINESE_MACAU zh_MO LANG_CHINESE SUBLANG_CHINESE_MACAU LTR "Chinese (Macau)"
wxLANGUAGE_CHINESE_SINGAPORE zh_SG LANG_CHINESE SUBLANG_CHINESE_SINGAPORE LTR "Chinese (Singapore)"
wxLANGUAGE_CHINESE_TAIWAN zh_TW LANG_CHINESE SUBLANG_CHINESE_TRADITIONAL LTR "Chinese (Taiwan)"
wxLANGUAGE_CORSICAN co - - LTR "Corsican"
wxLANGUAGE_CROATIAN hr_HR LANG_CROATIAN SUBLANG_DEFAULT LTR "Croatian"
wxLANGUAGE_CZECH cs_CZ LANG_CZECH SUBLANG_DEFAULT LTR "Czech"
wxLANGUAGE_DANISH da_DK LANG_DANISH SUBLANG_DEFAULT LTR "Danish"
wxLANGUAGE_DUTCH nl_NL LANG_DUTCH SUBLANG_DUTCH LTR "Dutch"
wxLANGUAGE_DUTCH_BELGIAN nl_BE LANG_DUTCH SUBLANG_DUTCH_BELGIAN LTR "Dutch (Belgian)"
wxLANGUAGE_ENGLISH en_GB LANG_ENGLISH SUBLANG_ENGLISH_UK LTR "English"
wxLANGUAGE_ENGLISH_UK en_GB LANG_ENGLISH SUBLANG_ENGLISH_UK LTR "English (U.K.)"
wxLANGUAGE_ENGLISH_US en_US LANG_ENGLISH SUBLANG_ENGLISH_US LTR "English (U.S.)"
wxLANGUAGE_ENGLISH_AUSTRALIA en_AU LANG_ENGLISH SUBLANG_ENGLISH_AUS LTR "English (Australia)"
wxLANGUAGE_ENGLISH_BELIZE en_BZ LANG_ENGLISH SUBLANG_ENGLISH_BELIZE LTR "English (Belize)"
wxLANGUAGE_ENGLISH_BOTSWANA en_BW - - LTR "English (Botswana)"
wxLANGUAGE_ENGLISH_CANADA en_CA LANG_ENGLISH SUBLANG_ENGLISH_CAN LTR "English (Canada)"
wxLANGUAGE_ENGLISH_CARIBBEAN en_CB LANG_ENGLISH SUBLANG_ENGLISH_CARIBBEAN LTR "English (Caribbean)"
wxLANGUAGE_ENGLISH_DENMARK en_DK - - LTR "English (Denmark)"
wxLANGUAGE_ENGLISH_EIRE en_IE LANG_ENGLISH SUBLANG_ENGLISH_EIRE LTR "English (Eire)"
wxLANGUAGE_ENGLISH_JAMAICA en_JM LANG_ENGLISH SUBLANG_ENGLISH_JAMAICA LTR "English (Jamaica)"
wxLANGUAGE_ENGLISH_NEW_ZEALAND en_NZ LANG_ENGLISH SUBLANG_ENGLISH_NZ LTR "English (New Zealand)"
wxLANGUAGE_ENGLISH_PHILIPPINES en_PH LANG_ENGLISH SUBLANG_ENGLISH_PHILIPPINES LTR "English (Philippines)"
wxLANGUAGE_ENGLISH_SOUTH_AFRICA en_ZA LANG_ENGLISH SUBLANG_ENGLISH_SOUTH_AFRICA LTR "English (South Africa)"
wxLANGUAGE_ENGLISH_TRINIDAD en_TT LANG_ENGLISH SUBLANG_ENGLISH_TRINIDAD LTR "English (Trinidad)"
wxLANGUAGE_ENGLISH_ZIMBABWE en_ZW LANG_ENGLISH SUBLANG_ENGLISH_ZIMBABWE LTR "English (Zimbabwe)"
wxLANGUAGE_ESPERANTO eo - - LTR "Esperanto"
wxLANGUAGE_ESTONIAN et_EE LANG_ESTONIAN SUBLANG_DEFAULT LTR "Estonian"
wxLANGUAGE_FAEROESE fo_FO LANG_FAEROESE SUBLANG_DEFAULT LTR "Faeroese"
wxLANGUAGE_FARSI fa_IR LANG_FARSI SUBLANG_DEFAULT LTR "Farsi"
wxLANGUAGE_FIJI fj - - LTR "Fiji"
wxLANGUAGE_FINNISH fi_FI LANG_FINNISH SUBLANG_DEFAULT LTR "Finnish"
wxLANGUAGE_FRENCH fr_FR LANG_FRENCH SUBLANG_FRENCH LTR "French"
wxLANGUAGE_FRENCH_BELGIAN fr_BE LANG_FRENCH SUBLANG_FRENCH_BELGIAN LTR "French (Belgian)"
wxLANGUAGE_FRENCH_CANADIAN fr_CA LANG_FRENCH SUBLANG_FRENCH_CANADIAN LTR "French (Canadian)"
wxLANGUAGE_FRENCH_LUXEMBOURG fr_LU LANG_FRENCH SUBLANG_FRENCH_LUXEMBOURG LTR "French (Luxembourg)"
wxLANGUAGE_FRENCH_MONACO fr_MC LANG_FRENCH SUBLANG_FRENCH_MONACO LTR "French (Monaco)"
wxLANGUAGE_FRENCH_SWISS fr_CH LANG_FRENCH SUBLANG_FRENCH_SWISS LTR "French (Swiss)"
wxLANGUAGE_FRISIAN fy - - LTR "Frisian"
wxLANGUAGE_GALICIAN gl_ES - - LTR "Galician"
wxLANGUAGE_GEORGIAN ka LANG_GEORGIAN SUBLANG_DEFAULT LTR "Georgian"
wxLANGUAGE_GERMAN de_DE LANG_GERMAN SUBLANG_GERMAN LTR "German"
wxLANGUAGE_GERMAN_AUSTRIAN de_AT LANG_GERMAN SUBLANG_GERMAN_AUSTRIAN LTR "German (Austrian)"
wxLANGUAGE_GERMAN_BELGIUM de_BE - - LTR "German (Belgium)"
wxLANGUAGE_GERMAN_LIECHTENSTEIN de_LI LANG_GERMAN SUBLANG_GERMAN_LIECHTENSTEIN LTR "German (Liechtenstein)"
wxLANGUAGE_GERMAN_LUXEMBOURG de_LU LANG_GERMAN SUBLANG_GERMAN_LUXEMBOURG LTR "German (Luxembourg)"
wxLANGUAGE_GERMAN_SWISS de_CH LANG_GERMAN SUBLANG_GERMAN_SWISS LTR "German (Swiss)"
wxLANGUAGE_GREEK el_GR LANG_GREEK SUBLANG_DEFAULT LTR "Greek"
wxLANGUAGE_GREENLANDIC kl_GL - - LTR "Greenlandic"
wxLANGUAGE_GUARANI gn - - LTR "Guarani"
wxLANGUAGE_GUJARATI gu LANG_GUJARATI SUBLANG_DEFAULT LTR "Gujarati"
wxLANGUAGE_HAUSA ha - - LTR "Hausa"
wxLANGUAGE_HEBREW he_IL LANG_HEBREW SUBLANG_DEFAULT RTL "Hebrew"
wxLANGUAGE_HINDI hi_IN LANG_HINDI SUBLANG_DEFAULT LTR "Hindi"
wxLANGUAGE_HUNGARIAN hu_HU LANG_HUNGARIAN SUBLANG_DEFAULT LTR "Hungarian"
wxLANGUAGE_ICELANDIC is_IS LANG_ICELANDIC SUBLANG_DEFAULT LTR "Icelandic"
wxLANGUAGE_INDONESIAN id_ID LANG_INDONESIAN SUBLANG_DEFAULT LTR "Indonesian"
wxLANGUAGE_INTERLINGUA ia - - LTR "Interlingua"
wxLANGUAGE_INTERLINGUE ie - - LTR "Interlingue"
wxLANGUAGE_INUKTITUT iu - - LTR "Inuktitut"
wxLANGUAGE_INUPIAK ik - - LTR "Inupiak"
wxLANGUAGE_IRISH ga_IE - - LTR "Irish"
wxLANGUAGE_ITALIAN it_IT LANG_ITALIAN SUBLANG_ITALIAN LTR "Italian"
wxLANGUAGE_ITALIAN_SWISS it_CH LANG_ITALIAN SUBLANG_ITALIAN_SWISS LTR "Italian (Swiss)"
wxLANGUAGE_JAPANESE ja_JP LANG_JAPANESE SUBLANG_DEFAULT LTR "Japanese"
wxLANGUAGE_JAVANESE jw - - LTR "Javanese"
wxLANGUAGE_KANNADA kn LANG_KANNADA SUBLANG_DEFAULT LTR "Kannada"
wxLANGUAGE_KASHMIRI ks LANG_KASHMIRI SUBLANG_DEFAULT LTR "Kashmiri"
wxLANGUAGE_KASHMIRI_INDIA ks_IN LANG_KASHMIRI SUBLANG_KASHMIRI_INDIA LTR "Kashmiri (India)"
wxLANGUAGE_KAZAKH kk LANG_KAZAK SUBLANG_DEFAULT LTR "Kazakh"
wxLANGUAGE_KERNEWEK kw_GB - - LTR "Kernewek"
wxLANGUAGE_KINYARWANDA rw - - LTR "Kinyarwanda"
wxLANGUAGE_KIRGHIZ ky - - LTR "Kirghiz"
wxLANGUAGE_KIRUNDI rn - - LTR "Kirundi"
wxLANGUAGE_KONKANI - LANG_KONKANI SUBLANG_DEFAULT LTR "Konkani"
wxLANGUAGE_KOREAN ko_KR LANG_KOREAN SUBLANG_KOREAN LTR "Korean"
wxLANGUAGE_KURDISH ku - - LTR "Kurdish"
wxLANGUAGE_LAOTHIAN lo - - LTR "Laothian"
wxLANGUAGE_LATIN la - - LTR "Latin"
wxLANGUAGE_LATVIAN lv_LV LANG_LATVIAN SUBLANG_DEFAULT LTR "Latvian"
wxLANGUAGE_LINGALA ln - - LTR "Lingala"
wxLANGUAGE_LITHUANIAN lt_LT LANG_LITHUANIAN SUBLANG_LITHUANIAN LTR "Lithuanian"
wxLANGUAGE_MACEDONIAN mk_MK LANG_MACEDONIAN SUBLANG_DEFAULT LTR "Macedonian"
wxLANGUAGE_MALAGASY mg - - LTR "Malagasy"
wxLANGUAGE_MALAY ms_MY LANG_MALAY SUBLANG_DEFAULT LTR "Malay"
wxLANGUAGE_MALAYALAM ml LANG_MALAYALAM SUBLANG_DEFAULT LTR "Malayalam"
wxLANGUAGE_MALAY_BRUNEI_DARUSSALAM ms_BN LANG_MALAY SUBLANG_MALAY_BRUNEI_DARUSSALAM LTR "Malay (Brunei Darussalam)"
wxLANGUAGE_MALAY_MALAYSIA ms_MY LANG_MALAY SUBLANG_MALAY_MALAYSIA LTR "Malay (Malaysia)"
wxLANGUAGE_MALTESE mt_MT - - LTR "Maltese"
wxLANGUAGE_MANIPURI - LANG_MANIPURI SUBLANG_DEFAULT LTR "Manipuri"
wxLANGUAGE_MAORI mi - - LTR "Maori"
wxLANGUAGE_MARATHI mr_IN LANG_MARATHI SUBLANG_DEFAULT LTR "Marathi"
wxLANGUAGE_MOLDAVIAN mo - - LTR "Moldavian"
wxLANGUAGE_MONGOLIAN mn - - LTR "Mongolian"
wxLANGUAGE_NAURU na - - LTR "Nauru"
wxLANGUAGE_NEPALI ne LANG_NEPALI SUBLANG_DEFAULT LTR "Nepali"
wxLANGUAGE_NEPALI_INDIA ne_IN LANG_NEPALI SUBLANG_NEPALI_INDIA LTR "Nepali (India)"
wxLANGUAGE_NORWEGIAN_BOKMAL nb_NO LANG_NORWEGIAN SUBLANG_NORWEGIAN_BOKMAL LTR "Norwegian (Bokmal)"
wxLANGUAGE_NORWEGIAN_NYNORSK nn_NO LANG_NORWEGIAN SUBLANG_NORWEGIAN_NYNORSK LTR "Norwegian (Nynorsk)"
wxLANGUAGE_OCCITAN oc - - LTR "Occitan"
wxLANGUAGE_ORIYA or LANG_ORIYA SUBLANG_DEFAULT LTR "Oriya"
wxLANGUAGE_OROMO om - - LTR "(Afan) Oromo"
wxLANGUAGE_PASHTO ps - - LTR "Pashto, Pushto"
wxLANGUAGE_POLISH pl_PL LANG_POLISH SUBLANG_DEFAULT LTR "Polish"
wxLANGUAGE_PORTUGUESE pt_PT LANG_PORTUGUESE SUBLANG_PORTUGUESE LTR "Portuguese"
wxLANGUAGE_PORTUGUESE_BRAZILIAN pt_BR LANG_PORTUGUESE SUBLANG_PORTUGUESE_BRAZILIAN LTR "Portuguese (Brazilian)"
wxLANGUAGE_PUNJABI pa LANG_PUNJABI SUBLANG_DEFAULT LTR "Punjabi"
wxLANGUAGE_QUECHUA qu - - LTR "Quechua"
wxLANGUAGE_RHAETO_ROMANCE rm - - LTR "Rhaeto-Romance"
wxLANGUAGE_ROMANIAN ro_RO LANG_ROMANIAN SUBLANG_DEFAULT LTR "Romanian"
wxLANGUAGE_RUSSIAN ru_RU LANG_RUSSIAN SUBLANG_DEFAULT LTR "Russian"
wxLANGUAGE_RUSSIAN_UKRAINE ru_UA - - LTR "Russian (Ukraine)"
wxLANGUAGE_SAMOAN sm - - LTR "Samoan"
wxLANGUAGE_SANGHO sg - - LTR "Sangho"
wxLANGUAGE_SANSKRIT sa LANG_SANSKRIT SUBLANG_DEFAULT LTR "Sanskrit"
wxLANGUAGE_SCOTS_GAELIC gd - - LTR "Scots Gaelic"
wxLANGUAGE_SERBIAN_CYRILLIC sr_YU LANG_SERBIAN SUBLANG_SERBIAN_CYRILLIC LTR "Serbian (Cyrillic)"
wxLANGUAGE_SERBIAN_LATIN sr_YU LANG_SERBIAN SUBLANG_SERBIAN_LATIN LTR "Serbian (Latin)"
wxLANGUAGE_SERBO_CROATIAN sh - - LTR "Serbo-Croatian"
wxLANGUAGE_SESOTHO st - - LTR "Sesotho"
wxLANGUAGE_SETSWANA tn - - LTR "Setswana"
wxLANGUAGE_SHONA sn - - LTR "Shona"
wxLANGUAGE_SINDHI sd LANG_SINDHI SUBLANG_DEFAULT LTR "Sindhi"
wxLANGUAGE_SINHALESE si - - LTR "Sinhalese"
wxLANGUAGE_SISWATI ss - - LTR "Siswati"
wxLANGUAGE_SLOVAK sk_SK LANG_SLOVAK SUBLANG_DEFAULT LTR "Slovak"
wxLANGUAGE_SLOVENIAN sl_SI LANG_SLOVENIAN SUBLANG_DEFAULT LTR "Slovenian"
wxLANGUAGE_SOMALI so - - LTR "Somali"
wxLANGUAGE_SPANISH es_ES LANG_SPANISH SUBLANG_SPANISH LTR "Spanish"
wxLANGUAGE_SPANISH_ARGENTINA es_AR LANG_SPANISH SUBLANG_SPANISH_ARGENTINA LTR "Spanish (Argentina)"
wxLANGUAGE_SPANISH_BOLIVIA es_BO LANG_SPANISH SUBLANG_SPANISH_BOLIVIA LTR "Spanish (Bolivia)"
wxLANGUAGE_SPANISH_CHILE es_CL LANG_SPANISH SUBLANG_SPANISH_CHILE LTR "Spanish (Chile)"
wxLANGUAGE_SPANISH_COLOMBIA es_CO LANG_SPANISH SUBLANG_SPANISH_COLOMBIA LTR "Spanish (Colombia)"
wxLANGUAGE_SPANISH_COSTA_RICA es_CR LANG_SPANISH SUBLANG_SPANISH_COSTA_RICA LTR "Spanish (Costa Rica)"
wxLANGUAGE_SPANISH_DOMINICAN_REPUBLIC es_DO LANG_SPANISH SUBLANG_SPANISH_DOMINICAN_REPUBLIC LTR "Spanish (Dominican republic)"
wxLANGUAGE_SPANISH_ECUADOR es_EC LANG_SPANISH SUBLANG_SPANISH_ECUADOR LTR "Spanish (Ecuador)"
wxLANGUAGE_SPANISH_EL_SALVADOR es_SV LANG_SPANISH SUBLANG_SPANISH_EL_SALVADOR LTR "Spanish (El Salvador)"
wxLANGUAGE_SPANISH_GUATEMALA es_GT LANG_SPANISH SUBLANG_SPANISH_GUATEMALA LTR "Spanish (Guatemala)"
wxLANGUAGE_SPANISH_HONDURAS es_HN LANG_SPANISH SUBLANG_SPANISH_HONDURAS LTR "Spanish (Honduras)"
wxLANGUAGE_SPANISH_MEXICAN es_MX LANG_SPANISH SUBLANG_SPANISH_MEXICAN LTR "Spanish (Mexican)"
wxLANGUAGE_SPANISH_MODERN es_ES LANG_SPANISH SUBLANG_SPANISH_MODERN LTR "Spanish (Modern)"
wxLANGUAGE_SPANISH_NICARAGUA es_NI LANG_SPANISH SUBLANG_SPANISH_NICARAGUA LTR "Spanish (Nicaragua)"
wxLANGUAGE_SPANISH_PANAMA es_PA LANG_SPANISH SUBLANG_SPANISH_PANAMA LTR "Spanish (Panama)"
wxLANGUAGE_SPANISH_PARAGUAY es_PY LANG_SPANISH SUBLANG_SPANISH_PARAGUAY LTR "Spanish (Paraguay)"
wxLANGUAGE_SPANISH_PERU es_PE LANG_SPANISH SUBLANG_SPANISH_PERU LTR "Spanish (Peru)"
wxLANGUAGE_SPANISH_PUERTO_RICO es_PR LANG_SPANISH SUBLANG_SPANISH_PUERTO_RICO LTR "Spanish (Puerto Rico)"
wxLANGUAGE_SPANISH_URUGUAY es_UY LANG_SPANISH SUBLANG_SPANISH_URUGUAY LTR "Spanish (Uruguay)"
wxLANGUAGE_SPANISH_US es_US - - LTR "Spanish (U.S.)"
wxLANGUAGE_SPANISH_VENEZUELA es_VE LANG_SPANISH SUBLANG_SPANISH_VENEZUELA LTR "Spanish (Venezuela)"
wxLANGUAGE_SUNDANESE su - - LTR "Sundanese"
wxLANGUAGE_SWAHILI sw_KE LANG_SWAHILI SUBLANG_DEFAULT LTR "Swahili"
wxLANGUAGE_SWEDISH sv_SE LANG_SWEDISH SUBLANG_SWEDISH LTR "Swedish"
wxLANGUAGE_SWEDISH_FINLAND sv_FI LANG_SWEDISH SUBLANG_SWEDISH_FINLAND LTR "Swedish (Finland)"
wxLANGUAGE_TAGALOG tl_PH - - LTR "Tagalog"
wxLANGUAGE_TAJIK tg - - LTR "Tajik"
wxLANGUAGE_TAMIL ta LANG_TAMIL SUBLANG_DEFAULT LTR "Tamil"
wxLANGUAGE_TATAR tt LANG_TATAR SUBLANG_DEFAULT LTR "Tatar"
wxLANGUAGE_TELUGU te LANG_TELUGU SUBLANG_DEFAULT LTR "Telugu"
wxLANGUAGE_THAI th_TH LANG_THAI SUBLANG_DEFAULT LTR "Thai"
wxLANGUAGE_TIBETAN bo - - LTR "Tibetan"
wxLANGUAGE_TIGRINYA ti - - LTR "Tigrinya"
wxLANGUAGE_TONGA to - - LTR "Tonga"
wxLANGUAGE_TSONGA ts - - LTR "Tsonga"
wxLANGUAGE_TURKISH tr_TR LANG_TURKISH SUBLANG_DEFAULT LTR "Turkish"
wxLANGUAGE_TURKMEN tk - - LTR "Turkmen"
wxLANGUAGE_TWI tw - - LTR "Twi"
wxLANGUAGE_UIGHUR ug - - LTR "Uighur"
wxLANGUAGE_UKRAINIAN uk_UA LANG_UKRAINIAN SUBLANG_DEFAULT LTR "Ukrainian"
wxLANGUAGE_URDU ur LANG_URDU SUBLANG_DEFAULT LTR "Urdu"
wxLANGUAGE_URDU_INDIA ur_IN LANG_URDU SUBLANG_URDU_INDIA LTR "Urdu (India)"
wxLANGUAGE_URDU_PAKISTAN ur_PK LANG_URDU SUBLANG_URDU_PAKISTAN LTR "Urdu (Pakistan)"
wxLANGUAGE_UZBEK uz LANG_UZBEK SUBLANG_DEFAULT LTR "Uzbek"
wxLANGUAGE_UZBEK_CYRILLIC uz LANG_UZBEK SUBLANG_UZBEK_CYRILLIC LTR "Uzbek (Cyrillic)"
wxLANGUAGE_UZBEK_LATIN uz LANG_UZBEK SUBLANG_UZBEK_LATIN LTR "Uzbek (Latin)"
wxLANGUAGE_VIETNAMESE vi_VN LANG_VIETNAMESE SUBLANG_DEFAULT LTR "Vietnamese"
wxLANGUAGE_VOLAPUK vo - - LTR "Volapuk"
wxLANGUAGE_WELSH cy - - LTR "Welsh"
wxLANGUAGE_WOLOF wo - - LTR "Wolof"
wxLANGUAGE_XHOSA xh - - LTR "Xhosa"
wxLANGUAGE_YIDDISH yi - - LTR "Yiddish"
wxLANGUAGE_YORUBA yo - - LTR "Yoruba"
wxLANGUAGE_ZHUANG za - - LTR "Zhuang"
wxLANGUAGE_ZULU zu - - LTR "Zulu"

BIN
samples/internat/ar/internat.mo Executable file

Binary file not shown.

160
samples/internat/ar/internat.po Executable file
View File

@@ -0,0 +1,160 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: Internationalization wxWidgets sample\n"
"PO-Revision-Date: 2006-08-11 21:20+0200\n"
"Last-Translator: Diaa Sami <diaasami@yahoo.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%100 >= 11 && n%100 <= 99) ? 3 : n==2 ? 1 : (n >= 3 && n <= 10 ? 2 : 0);\n"
"X-Poedit-Language: Arabic\n"
"POT-Creation-Date: \n"
#: ../internat.cpp:200
msgid "&About..."
msgstr "&عن البرنامج..."
#: ../internat.cpp:202
msgid "E&xit"
msgstr "&خروج"
#: ../internat.cpp:205
msgid "&Open bogus file"
msgstr "افتح &ملف غير موجود"
#: ../internat.cpp:206
msgid "&Play a game"
msgstr "العب لعبة"
#: ../internat.cpp:208
msgid "&1 _() (gettext)"
msgstr "&1 _() (gettext)"
#: ../internat.cpp:209
msgid "&2 _N() (ngettext)"
msgstr "&2 _N() (ngettext)"
#: ../internat.cpp:210
msgid "&3 wxTRANSLATE() (gettext_noop)"
msgstr "&3 wxTRANSLATE() (gettext_noop)"
#: ../internat.cpp:213
msgid "&File"
msgstr "&ملف"
#: ../internat.cpp:214
msgid "&Test"
msgstr "&اختبار"
#: ../internat.cpp:232
msgid "International wxWidgets App"
msgstr "‎تطبيق wxWidgets الدولي"
#: ../internat.cpp:252
msgid ""
"Language: %s\n"
"System locale name:\n"
"%s\n"
"Canonical locale name: %s\n"
msgstr ""
"اللغة: %s\n"
"اسم المحل الخاص بالنظام: %s\n"
"اسم المحل الرسمي: %s\n"
#: ../internat.cpp:258
msgid ""
"I18n sample\n"
"(c) 1998, 1999 Vadim Zeitlin and Julian Smart"
msgstr ""
"نموذج I18n\n"
"(c) 1998, 1999 Vadim Zeitlin i Julian Smart"
#: ../internat.cpp:261
msgid "About Internat"
msgstr "عن Internat"
#: ../internat.cpp:270
msgid "Enter your number:"
msgstr "ادخل رقما"
#: ../internat.cpp:271
msgid "Try to guess my number!"
msgstr "حاول ان تحزر رقما"
#: ../internat.cpp:285
msgid "You've probably entered an invalid number."
msgstr "لقد ادخلت رقما خاطئا"
#: ../internat.cpp:299
msgid "Congratulations! you've won. Here is the magic phrase:"
msgstr "تهانينا! لقد ربحت. الجملة السحرية هي:"
#: ../internat.cpp:300
#, c-format
msgid "cannot create fifo `%s'"
msgstr "لم يمكن خلق fifo `%s'"
#: ../internat.cpp:311
msgid "Result"
msgstr "النتيجة"
#: ../internat.cpp:323
msgid "Testing _() (gettext)"
msgstr "اختبار _() (gettext)"
#: ../internat.cpp:324
msgid "Please enter text to translate"
msgstr "من فضلك ادخل جملة لتتم ترجمتها"
#: ../internat.cpp:338
msgid "Testing _N() (ngettext)"
msgstr "اختبار _N() (ngettext)"
#: ../internat.cpp:340
msgid "Please enter range for plural forms of \"n files deleted\" phrase"
msgstr "من فضلك ادخل مدي رقميا لصيغ الجمع لجملة \"س ملفات محذوفة\""
#: ../internat.cpp:366
msgid "Testing wxTRANSLATE() (gettext_noop)"
msgstr "اختبار wxTRANSLATE() (gettext_noop)"
#: ../internat.cpp:310
msgid "Bad luck! try again..."
msgstr "حظ سيئ، حاول مرة اخرى"
#: ../internat.cpp:327
msgid "default value"
msgstr "القيمة الافتراضية"
#: ../internat.cpp:364
msgid "line 1"
msgstr "السطر 1"
#: ../internat.cpp:365
msgid "line 2"
msgstr "السطر 2"
#: ../internat.cpp:366
msgid "line 3"
msgstr "السطر 3"
# Four plural forms in arabic:
# 1st: anything that doesn't fit below (like 0 1 100 1000 2000 3000 ...)
# 2nd: 2
# 3rd: 3-10
# 4th: ends with 11-99(like 11, 125, 1055, etc ...)
#: ../internat.cpp:353
msgid "file deleted"
msgid_plural "files deleted"
msgstr[0] "ملف محذوف"
msgstr[1] "ملفين محذوف"
msgstr[2] "ملفات محذوف"
msgstr[3] "ملفاً محذوفاً"

View File

@@ -16,6 +16,7 @@
<files>internat.po internat.mo</files>
</template>
<wx-data id="ar" template="catalog"/>
<wx-data id="bg" template="catalog"/>
<wx-data id="cs" template="catalog"/>
<wx-data id="de" template="catalog"/>

View File

@@ -102,7 +102,9 @@ static const wxLanguage langIds[] =
#if wxUSE_UNICODE
wxLANGUAGE_GEORGIAN,
wxLANGUAGE_ENGLISH,
wxLANGUAGE_ENGLISH_US
wxLANGUAGE_ENGLISH_US,
wxLANGUAGE_ARABIC,
wxLANGUAGE_ARABIC_EGYPT
#endif
};
@@ -124,7 +126,9 @@ const wxString langNames[] =
#if wxUSE_UNICODE
_T("Georgian"),
_T("English"),
_T("English (U.S.)")
_T("English (U.S.)"),
_T("Arabic"),
_T("Arabic (Egypt)")
#endif
};
@@ -253,7 +257,13 @@ MyFrame::MyFrame(wxLocale& locale)
_("International wxWidgets App")),
m_locale(locale)
{
// Empty
// this demonstrates RTL layout mirroring for Arabic locales
wxSizer *sizer = new wxBoxSizer(wxHORIZONTAL);
sizer->Add(new wxStaticText(this, wxID_ANY, _("First")),
wxSizerFlags().Border());
sizer->Add(new wxStaticText(this, wxID_ANY, _("Second")),
wxSizerFlags().Border());
SetSizer(sizer);
}
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event) )

View File

@@ -216,6 +216,24 @@ void wxAppConsole::Exit()
exit(-1);
}
wxLayoutDirection wxAppConsole::GetLayoutDirection() const
{
#if wxUSE_INTL
const wxLocale *const locale = wxGetLocale();
if ( locale )
{
const wxLanguageInfo *const
info = wxLocale::GetLanguageInfo(locale->GetLanguage());
if ( info )
return info->LayoutDirection;
}
#endif // wxUSE_INTL
// we don't know
return wxLayout_Default;
}
// ----------------------------------------------------------------------------
// traits stuff
// ----------------------------------------------------------------------------

View File

@@ -3388,9 +3388,10 @@ IMPLEMENT_DYNAMIC_CLASS(wxLocaleModule, wxModule)
#endif // __WIN32__
#define LNG(wxlang, canonical, winlang, winsublang, desc) \
#define LNG(wxlang, canonical, winlang, winsublang, layout, desc) \
info.Language = wxlang; \
info.CanonicalName = wxT(canonical); \
info.LayoutDirection = layout; \
info.Description = wxT(desc); \
SETWINLANG(info, winlang, winsublang) \
AddLanguage(info);
@@ -3400,234 +3401,233 @@ void wxLocale::InitLanguagesDB()
wxLanguageInfo info;
wxStringTokenizer tkn;
LNG(wxLANGUAGE_ABKHAZIAN, "ab" , 0 , 0 , "Abkhazian")
LNG(wxLANGUAGE_AFAR, "aa" , 0 , 0 , "Afar")
LNG(wxLANGUAGE_AFRIKAANS, "af_ZA", LANG_AFRIKAANS , SUBLANG_DEFAULT , "Afrikaans")
LNG(wxLANGUAGE_ALBANIAN, "sq_AL", LANG_ALBANIAN , SUBLANG_DEFAULT , "Albanian")
LNG(wxLANGUAGE_AMHARIC, "am" , 0 , 0 , "Amharic")
LNG(wxLANGUAGE_ARABIC, "ar" , LANG_ARABIC , SUBLANG_DEFAULT , "Arabic")
LNG(wxLANGUAGE_ARABIC_ALGERIA, "ar_DZ", LANG_ARABIC , SUBLANG_ARABIC_ALGERIA , "Arabic (Algeria)")
LNG(wxLANGUAGE_ARABIC_BAHRAIN, "ar_BH", LANG_ARABIC , SUBLANG_ARABIC_BAHRAIN , "Arabic (Bahrain)")
LNG(wxLANGUAGE_ARABIC_EGYPT, "ar_EG", LANG_ARABIC , SUBLANG_ARABIC_EGYPT , "Arabic (Egypt)")
LNG(wxLANGUAGE_ARABIC_IRAQ, "ar_IQ", LANG_ARABIC , SUBLANG_ARABIC_IRAQ , "Arabic (Iraq)")
LNG(wxLANGUAGE_ARABIC_JORDAN, "ar_JO", LANG_ARABIC , SUBLANG_ARABIC_JORDAN , "Arabic (Jordan)")
LNG(wxLANGUAGE_ARABIC_KUWAIT, "ar_KW", LANG_ARABIC , SUBLANG_ARABIC_KUWAIT , "Arabic (Kuwait)")
LNG(wxLANGUAGE_ARABIC_LEBANON, "ar_LB", LANG_ARABIC , SUBLANG_ARABIC_LEBANON , "Arabic (Lebanon)")
LNG(wxLANGUAGE_ARABIC_LIBYA, "ar_LY", LANG_ARABIC , SUBLANG_ARABIC_LIBYA , "Arabic (Libya)")
LNG(wxLANGUAGE_ARABIC_MOROCCO, "ar_MA", LANG_ARABIC , SUBLANG_ARABIC_MOROCCO , "Arabic (Morocco)")
LNG(wxLANGUAGE_ARABIC_OMAN, "ar_OM", LANG_ARABIC , SUBLANG_ARABIC_OMAN , "Arabic (Oman)")
LNG(wxLANGUAGE_ARABIC_QATAR, "ar_QA", LANG_ARABIC , SUBLANG_ARABIC_QATAR , "Arabic (Qatar)")
LNG(wxLANGUAGE_ARABIC_SAUDI_ARABIA, "ar_SA", LANG_ARABIC , SUBLANG_ARABIC_SAUDI_ARABIA , "Arabic (Saudi Arabia)")
LNG(wxLANGUAGE_ARABIC_SUDAN, "ar_SD", 0 , 0 , "Arabic (Sudan)")
LNG(wxLANGUAGE_ARABIC_SYRIA, "ar_SY", LANG_ARABIC , SUBLANG_ARABIC_SYRIA , "Arabic (Syria)")
LNG(wxLANGUAGE_ARABIC_TUNISIA, "ar_TN", LANG_ARABIC , SUBLANG_ARABIC_TUNISIA , "Arabic (Tunisia)")
LNG(wxLANGUAGE_ARABIC_UAE, "ar_AE", LANG_ARABIC , SUBLANG_ARABIC_UAE , "Arabic (Uae)")
LNG(wxLANGUAGE_ARABIC_YEMEN, "ar_YE", LANG_ARABIC , SUBLANG_ARABIC_YEMEN , "Arabic (Yemen)")
LNG(wxLANGUAGE_ARMENIAN, "hy" , LANG_ARMENIAN , SUBLANG_DEFAULT , "Armenian")
LNG(wxLANGUAGE_ASSAMESE, "as" , LANG_ASSAMESE , SUBLANG_DEFAULT , "Assamese")
LNG(wxLANGUAGE_AYMARA, "ay" , 0 , 0 , "Aymara")
LNG(wxLANGUAGE_AZERI, "az" , LANG_AZERI , SUBLANG_DEFAULT , "Azeri")
LNG(wxLANGUAGE_AZERI_CYRILLIC, "az" , LANG_AZERI , SUBLANG_AZERI_CYRILLIC , "Azeri (Cyrillic)")
LNG(wxLANGUAGE_AZERI_LATIN, "az" , LANG_AZERI , SUBLANG_AZERI_LATIN , "Azeri (Latin)")
LNG(wxLANGUAGE_BASHKIR, "ba" , 0 , 0 , "Bashkir")
LNG(wxLANGUAGE_BASQUE, "eu_ES", LANG_BASQUE , SUBLANG_DEFAULT , "Basque")
LNG(wxLANGUAGE_BELARUSIAN, "be_BY", LANG_BELARUSIAN, SUBLANG_DEFAULT , "Belarusian")
LNG(wxLANGUAGE_BENGALI, "bn" , LANG_BENGALI , SUBLANG_DEFAULT , "Bengali")
LNG(wxLANGUAGE_BHUTANI, "dz" , 0 , 0 , "Bhutani")
LNG(wxLANGUAGE_BIHARI, "bh" , 0 , 0 , "Bihari")
LNG(wxLANGUAGE_BISLAMA, "bi" , 0 , 0 , "Bislama")
LNG(wxLANGUAGE_BRETON, "br" , 0 , 0 , "Breton")
LNG(wxLANGUAGE_BULGARIAN, "bg_BG", LANG_BULGARIAN , SUBLANG_DEFAULT , "Bulgarian")
LNG(wxLANGUAGE_BURMESE, "my" , 0 , 0 , "Burmese")
LNG(wxLANGUAGE_CAMBODIAN, "km" , 0 , 0 , "Cambodian")
LNG(wxLANGUAGE_CATALAN, "ca_ES", LANG_CATALAN , SUBLANG_DEFAULT , "Catalan")
LNG(wxLANGUAGE_CHINESE, "zh_TW", LANG_CHINESE , SUBLANG_DEFAULT , "Chinese")
LNG(wxLANGUAGE_CHINESE_SIMPLIFIED, "zh_CN", LANG_CHINESE , SUBLANG_CHINESE_SIMPLIFIED , "Chinese (Simplified)")
LNG(wxLANGUAGE_CHINESE_TRADITIONAL, "zh_TW", LANG_CHINESE , SUBLANG_CHINESE_TRADITIONAL , "Chinese (Traditional)")
LNG(wxLANGUAGE_CHINESE_HONGKONG, "zh_HK", LANG_CHINESE , SUBLANG_CHINESE_HONGKONG , "Chinese (Hongkong)")
LNG(wxLANGUAGE_CHINESE_MACAU, "zh_MO", LANG_CHINESE , SUBLANG_CHINESE_MACAU , "Chinese (Macau)")
LNG(wxLANGUAGE_CHINESE_SINGAPORE, "zh_SG", LANG_CHINESE , SUBLANG_CHINESE_SINGAPORE , "Chinese (Singapore)")
LNG(wxLANGUAGE_CHINESE_TAIWAN, "zh_TW", LANG_CHINESE , SUBLANG_CHINESE_TRADITIONAL , "Chinese (Taiwan)")
LNG(wxLANGUAGE_CORSICAN, "co" , 0 , 0 , "Corsican")
LNG(wxLANGUAGE_CROATIAN, "hr_HR", LANG_CROATIAN , SUBLANG_DEFAULT , "Croatian")
LNG(wxLANGUAGE_CZECH, "cs_CZ", LANG_CZECH , SUBLANG_DEFAULT , "Czech")
LNG(wxLANGUAGE_DANISH, "da_DK", LANG_DANISH , SUBLANG_DEFAULT , "Danish")
LNG(wxLANGUAGE_DUTCH, "nl_NL", LANG_DUTCH , SUBLANG_DUTCH , "Dutch")
LNG(wxLANGUAGE_DUTCH_BELGIAN, "nl_BE", LANG_DUTCH , SUBLANG_DUTCH_BELGIAN , "Dutch (Belgian)")
LNG(wxLANGUAGE_ENGLISH, "en_GB", LANG_ENGLISH , SUBLANG_ENGLISH_UK , "English")
LNG(wxLANGUAGE_ENGLISH_UK, "en_GB", LANG_ENGLISH , SUBLANG_ENGLISH_UK , "English (U.K.)")
LNG(wxLANGUAGE_ENGLISH_US, "en_US", LANG_ENGLISH , SUBLANG_ENGLISH_US , "English (U.S.)")
LNG(wxLANGUAGE_ENGLISH_AUSTRALIA, "en_AU", LANG_ENGLISH , SUBLANG_ENGLISH_AUS , "English (Australia)")
LNG(wxLANGUAGE_ENGLISH_BELIZE, "en_BZ", LANG_ENGLISH , SUBLANG_ENGLISH_BELIZE , "English (Belize)")
LNG(wxLANGUAGE_ENGLISH_BOTSWANA, "en_BW", 0 , 0 , "English (Botswana)")
LNG(wxLANGUAGE_ENGLISH_CANADA, "en_CA", LANG_ENGLISH , SUBLANG_ENGLISH_CAN , "English (Canada)")
LNG(wxLANGUAGE_ENGLISH_CARIBBEAN, "en_CB", LANG_ENGLISH , SUBLANG_ENGLISH_CARIBBEAN , "English (Caribbean)")
LNG(wxLANGUAGE_ENGLISH_DENMARK, "en_DK", 0 , 0 , "English (Denmark)")
LNG(wxLANGUAGE_ENGLISH_EIRE, "en_IE", LANG_ENGLISH , SUBLANG_ENGLISH_EIRE , "English (Eire)")
LNG(wxLANGUAGE_ENGLISH_JAMAICA, "en_JM", LANG_ENGLISH , SUBLANG_ENGLISH_JAMAICA , "English (Jamaica)")
LNG(wxLANGUAGE_ENGLISH_NEW_ZEALAND, "en_NZ", LANG_ENGLISH , SUBLANG_ENGLISH_NZ , "English (New Zealand)")
LNG(wxLANGUAGE_ENGLISH_PHILIPPINES, "en_PH", LANG_ENGLISH , SUBLANG_ENGLISH_PHILIPPINES , "English (Philippines)")
LNG(wxLANGUAGE_ENGLISH_SOUTH_AFRICA, "en_ZA", LANG_ENGLISH , SUBLANG_ENGLISH_SOUTH_AFRICA , "English (South Africa)")
LNG(wxLANGUAGE_ENGLISH_TRINIDAD, "en_TT", LANG_ENGLISH , SUBLANG_ENGLISH_TRINIDAD , "English (Trinidad)")
LNG(wxLANGUAGE_ENGLISH_ZIMBABWE, "en_ZW", LANG_ENGLISH , SUBLANG_ENGLISH_ZIMBABWE , "English (Zimbabwe)")
LNG(wxLANGUAGE_ESPERANTO, "eo" , 0 , 0 , "Esperanto")
LNG(wxLANGUAGE_ESTONIAN, "et_EE", LANG_ESTONIAN , SUBLANG_DEFAULT , "Estonian")
LNG(wxLANGUAGE_FAEROESE, "fo_FO", LANG_FAEROESE , SUBLANG_DEFAULT , "Faeroese")
LNG(wxLANGUAGE_FARSI, "fa_IR", LANG_FARSI , SUBLANG_DEFAULT , "Farsi")
LNG(wxLANGUAGE_FIJI, "fj" , 0 , 0 , "Fiji")
LNG(wxLANGUAGE_FINNISH, "fi_FI", LANG_FINNISH , SUBLANG_DEFAULT , "Finnish")
LNG(wxLANGUAGE_FRENCH, "fr_FR", LANG_FRENCH , SUBLANG_FRENCH , "French")
LNG(wxLANGUAGE_FRENCH_BELGIAN, "fr_BE", LANG_FRENCH , SUBLANG_FRENCH_BELGIAN , "French (Belgian)")
LNG(wxLANGUAGE_FRENCH_CANADIAN, "fr_CA", LANG_FRENCH , SUBLANG_FRENCH_CANADIAN , "French (Canadian)")
LNG(wxLANGUAGE_FRENCH_LUXEMBOURG, "fr_LU", LANG_FRENCH , SUBLANG_FRENCH_LUXEMBOURG , "French (Luxembourg)")
LNG(wxLANGUAGE_FRENCH_MONACO, "fr_MC", LANG_FRENCH , SUBLANG_FRENCH_MONACO , "French (Monaco)")
LNG(wxLANGUAGE_FRENCH_SWISS, "fr_CH", LANG_FRENCH , SUBLANG_FRENCH_SWISS , "French (Swiss)")
LNG(wxLANGUAGE_FRISIAN, "fy" , 0 , 0 , "Frisian")
LNG(wxLANGUAGE_GALICIAN, "gl_ES", 0 , 0 , "Galician")
LNG(wxLANGUAGE_GEORGIAN, "ka" , LANG_GEORGIAN , SUBLANG_DEFAULT , "Georgian")
LNG(wxLANGUAGE_GERMAN, "de_DE", LANG_GERMAN , SUBLANG_GERMAN , "German")
LNG(wxLANGUAGE_GERMAN_AUSTRIAN, "de_AT", LANG_GERMAN , SUBLANG_GERMAN_AUSTRIAN , "German (Austrian)")
LNG(wxLANGUAGE_GERMAN_BELGIUM, "de_BE", 0 , 0 , "German (Belgium)")
LNG(wxLANGUAGE_GERMAN_LIECHTENSTEIN, "de_LI", LANG_GERMAN , SUBLANG_GERMAN_LIECHTENSTEIN , "German (Liechtenstein)")
LNG(wxLANGUAGE_GERMAN_LUXEMBOURG, "de_LU", LANG_GERMAN , SUBLANG_GERMAN_LUXEMBOURG , "German (Luxembourg)")
LNG(wxLANGUAGE_GERMAN_SWISS, "de_CH", LANG_GERMAN , SUBLANG_GERMAN_SWISS , "German (Swiss)")
LNG(wxLANGUAGE_GREEK, "el_GR", LANG_GREEK , SUBLANG_DEFAULT , "Greek")
LNG(wxLANGUAGE_GREENLANDIC, "kl_GL", 0 , 0 , "Greenlandic")
LNG(wxLANGUAGE_GUARANI, "gn" , 0 , 0 , "Guarani")
LNG(wxLANGUAGE_GUJARATI, "gu" , LANG_GUJARATI , SUBLANG_DEFAULT , "Gujarati")
LNG(wxLANGUAGE_HAUSA, "ha" , 0 , 0 , "Hausa")
LNG(wxLANGUAGE_HEBREW, "he_IL", LANG_HEBREW , SUBLANG_DEFAULT , "Hebrew")
LNG(wxLANGUAGE_HINDI, "hi_IN", LANG_HINDI , SUBLANG_DEFAULT , "Hindi")
LNG(wxLANGUAGE_HUNGARIAN, "hu_HU", LANG_HUNGARIAN , SUBLANG_DEFAULT , "Hungarian")
LNG(wxLANGUAGE_ICELANDIC, "is_IS", LANG_ICELANDIC , SUBLANG_DEFAULT , "Icelandic")
LNG(wxLANGUAGE_INDONESIAN, "id_ID", LANG_INDONESIAN, SUBLANG_DEFAULT , "Indonesian")
LNG(wxLANGUAGE_INTERLINGUA, "ia" , 0 , 0 , "Interlingua")
LNG(wxLANGUAGE_INTERLINGUE, "ie" , 0 , 0 , "Interlingue")
LNG(wxLANGUAGE_INUKTITUT, "iu" , 0 , 0 , "Inuktitut")
LNG(wxLANGUAGE_INUPIAK, "ik" , 0 , 0 , "Inupiak")
LNG(wxLANGUAGE_IRISH, "ga_IE", 0 , 0 , "Irish")
LNG(wxLANGUAGE_ITALIAN, "it_IT", LANG_ITALIAN , SUBLANG_ITALIAN , "Italian")
LNG(wxLANGUAGE_ITALIAN_SWISS, "it_CH", LANG_ITALIAN , SUBLANG_ITALIAN_SWISS , "Italian (Swiss)")
LNG(wxLANGUAGE_JAPANESE, "ja_JP", LANG_JAPANESE , SUBLANG_DEFAULT , "Japanese")
LNG(wxLANGUAGE_JAVANESE, "jw" , 0 , 0 , "Javanese")
LNG(wxLANGUAGE_KANNADA, "kn" , LANG_KANNADA , SUBLANG_DEFAULT , "Kannada")
LNG(wxLANGUAGE_KASHMIRI, "ks" , LANG_KASHMIRI , SUBLANG_DEFAULT , "Kashmiri")
LNG(wxLANGUAGE_KASHMIRI_INDIA, "ks_IN", LANG_KASHMIRI , SUBLANG_KASHMIRI_INDIA , "Kashmiri (India)")
LNG(wxLANGUAGE_KAZAKH, "kk" , LANG_KAZAK , SUBLANG_DEFAULT , "Kazakh")
LNG(wxLANGUAGE_KERNEWEK, "kw_GB", 0 , 0 , "Kernewek")
LNG(wxLANGUAGE_KINYARWANDA, "rw" , 0 , 0 , "Kinyarwanda")
LNG(wxLANGUAGE_KIRGHIZ, "ky" , 0 , 0 , "Kirghiz")
LNG(wxLANGUAGE_KIRUNDI, "rn" , 0 , 0 , "Kirundi")
LNG(wxLANGUAGE_KONKANI, "" , LANG_KONKANI , SUBLANG_DEFAULT , "Konkani")
LNG(wxLANGUAGE_KOREAN, "ko_KR", LANG_KOREAN , SUBLANG_KOREAN , "Korean")
LNG(wxLANGUAGE_KURDISH, "ku" , 0 , 0 , "Kurdish")
LNG(wxLANGUAGE_LAOTHIAN, "lo" , 0 , 0 , "Laothian")
LNG(wxLANGUAGE_LATIN, "la" , 0 , 0 , "Latin")
LNG(wxLANGUAGE_LATVIAN, "lv_LV", LANG_LATVIAN , SUBLANG_DEFAULT , "Latvian")
LNG(wxLANGUAGE_LINGALA, "ln" , 0 , 0 , "Lingala")
LNG(wxLANGUAGE_LITHUANIAN, "lt_LT", LANG_LITHUANIAN, SUBLANG_LITHUANIAN , "Lithuanian")
LNG(wxLANGUAGE_MACEDONIAN, "mk_MK", LANG_MACEDONIAN, SUBLANG_DEFAULT , "Macedonian")
LNG(wxLANGUAGE_MALAGASY, "mg" , 0 , 0 , "Malagasy")
LNG(wxLANGUAGE_MALAY, "ms_MY", LANG_MALAY , SUBLANG_DEFAULT , "Malay")
LNG(wxLANGUAGE_MALAYALAM, "ml" , LANG_MALAYALAM , SUBLANG_DEFAULT , "Malayalam")
LNG(wxLANGUAGE_MALAY_BRUNEI_DARUSSALAM, "ms_BN", LANG_MALAY , SUBLANG_MALAY_BRUNEI_DARUSSALAM , "Malay (Brunei Darussalam)")
LNG(wxLANGUAGE_MALAY_MALAYSIA, "ms_MY", LANG_MALAY , SUBLANG_MALAY_MALAYSIA , "Malay (Malaysia)")
LNG(wxLANGUAGE_MALTESE, "mt_MT", 0 , 0 , "Maltese")
LNG(wxLANGUAGE_MANIPURI, "" , LANG_MANIPURI , SUBLANG_DEFAULT , "Manipuri")
LNG(wxLANGUAGE_MAORI, "mi" , 0 , 0 , "Maori")
LNG(wxLANGUAGE_MARATHI, "mr_IN", LANG_MARATHI , SUBLANG_DEFAULT , "Marathi")
LNG(wxLANGUAGE_MOLDAVIAN, "mo" , 0 , 0 , "Moldavian")
LNG(wxLANGUAGE_MONGOLIAN, "mn" , 0 , 0 , "Mongolian")
LNG(wxLANGUAGE_NAURU, "na" , 0 , 0 , "Nauru")
LNG(wxLANGUAGE_NEPALI, "ne" , LANG_NEPALI , SUBLANG_DEFAULT , "Nepali")
LNG(wxLANGUAGE_NEPALI_INDIA, "ne_IN", LANG_NEPALI , SUBLANG_NEPALI_INDIA , "Nepali (India)")
LNG(wxLANGUAGE_NORWEGIAN_BOKMAL, "nb_NO", LANG_NORWEGIAN , SUBLANG_NORWEGIAN_BOKMAL , "Norwegian (Bokmal)")
LNG(wxLANGUAGE_NORWEGIAN_NYNORSK, "nn_NO", LANG_NORWEGIAN , SUBLANG_NORWEGIAN_NYNORSK , "Norwegian (Nynorsk)")
LNG(wxLANGUAGE_OCCITAN, "oc" , 0 , 0 , "Occitan")
LNG(wxLANGUAGE_ORIYA, "or" , LANG_ORIYA , SUBLANG_DEFAULT , "Oriya")
LNG(wxLANGUAGE_OROMO, "om" , 0 , 0 , "(Afan) Oromo")
LNG(wxLANGUAGE_PASHTO, "ps" , 0 , 0 , "Pashto, Pushto")
LNG(wxLANGUAGE_POLISH, "pl_PL", LANG_POLISH , SUBLANG_DEFAULT , "Polish")
LNG(wxLANGUAGE_PORTUGUESE, "pt_PT", LANG_PORTUGUESE, SUBLANG_PORTUGUESE , "Portuguese")
LNG(wxLANGUAGE_PORTUGUESE_BRAZILIAN, "pt_BR", LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN , "Portuguese (Brazilian)")
LNG(wxLANGUAGE_PUNJABI, "pa" , LANG_PUNJABI , SUBLANG_DEFAULT , "Punjabi")
LNG(wxLANGUAGE_QUECHUA, "qu" , 0 , 0 , "Quechua")
LNG(wxLANGUAGE_RHAETO_ROMANCE, "rm" , 0 , 0 , "Rhaeto-Romance")
LNG(wxLANGUAGE_ROMANIAN, "ro_RO", LANG_ROMANIAN , SUBLANG_DEFAULT , "Romanian")
LNG(wxLANGUAGE_RUSSIAN, "ru_RU", LANG_RUSSIAN , SUBLANG_DEFAULT , "Russian")
LNG(wxLANGUAGE_RUSSIAN_UKRAINE, "ru_UA", 0 , 0 , "Russian (Ukraine)")
LNG(wxLANGUAGE_SAMOAN, "sm" , 0 , 0 , "Samoan")
LNG(wxLANGUAGE_SANGHO, "sg" , 0 , 0 , "Sangho")
LNG(wxLANGUAGE_SANSKRIT, "sa" , LANG_SANSKRIT , SUBLANG_DEFAULT , "Sanskrit")
LNG(wxLANGUAGE_SCOTS_GAELIC, "gd" , 0 , 0 , "Scots Gaelic")
LNG(wxLANGUAGE_SERBIAN_CYRILLIC, "sr_YU", LANG_SERBIAN , SUBLANG_SERBIAN_CYRILLIC , "Serbian (Cyrillic)")
LNG(wxLANGUAGE_SERBIAN_LATIN, "sr_YU", LANG_SERBIAN , SUBLANG_SERBIAN_LATIN , "Serbian (Latin)")
LNG(wxLANGUAGE_SERBO_CROATIAN, "sh" , 0 , 0 , "Serbo-Croatian")
LNG(wxLANGUAGE_SESOTHO, "st" , 0 , 0 , "Sesotho")
LNG(wxLANGUAGE_SETSWANA, "tn" , 0 , 0 , "Setswana")
LNG(wxLANGUAGE_SHONA, "sn" , 0 , 0 , "Shona")
LNG(wxLANGUAGE_SINDHI, "sd" , LANG_SINDHI , SUBLANG_DEFAULT , "Sindhi")
LNG(wxLANGUAGE_SINHALESE, "si" , 0 , 0 , "Sinhalese")
LNG(wxLANGUAGE_SISWATI, "ss" , 0 , 0 , "Siswati")
LNG(wxLANGUAGE_SLOVAK, "sk_SK", LANG_SLOVAK , SUBLANG_DEFAULT , "Slovak")
LNG(wxLANGUAGE_SLOVENIAN, "sl_SI", LANG_SLOVENIAN , SUBLANG_DEFAULT , "Slovenian")
LNG(wxLANGUAGE_SOMALI, "so" , 0 , 0 , "Somali")
LNG(wxLANGUAGE_SPANISH, "es_ES", LANG_SPANISH , SUBLANG_SPANISH , "Spanish")
LNG(wxLANGUAGE_SPANISH_ARGENTINA, "es_AR", LANG_SPANISH , SUBLANG_SPANISH_ARGENTINA , "Spanish (Argentina)")
LNG(wxLANGUAGE_SPANISH_BOLIVIA, "es_BO", LANG_SPANISH , SUBLANG_SPANISH_BOLIVIA , "Spanish (Bolivia)")
LNG(wxLANGUAGE_SPANISH_CHILE, "es_CL", LANG_SPANISH , SUBLANG_SPANISH_CHILE , "Spanish (Chile)")
LNG(wxLANGUAGE_SPANISH_COLOMBIA, "es_CO", LANG_SPANISH , SUBLANG_SPANISH_COLOMBIA , "Spanish (Colombia)")
LNG(wxLANGUAGE_SPANISH_COSTA_RICA, "es_CR", LANG_SPANISH , SUBLANG_SPANISH_COSTA_RICA , "Spanish (Costa Rica)")
LNG(wxLANGUAGE_SPANISH_DOMINICAN_REPUBLIC, "es_DO", LANG_SPANISH , SUBLANG_SPANISH_DOMINICAN_REPUBLIC, "Spanish (Dominican republic)")
LNG(wxLANGUAGE_SPANISH_ECUADOR, "es_EC", LANG_SPANISH , SUBLANG_SPANISH_ECUADOR , "Spanish (Ecuador)")
LNG(wxLANGUAGE_SPANISH_EL_SALVADOR, "es_SV", LANG_SPANISH , SUBLANG_SPANISH_EL_SALVADOR , "Spanish (El Salvador)")
LNG(wxLANGUAGE_SPANISH_GUATEMALA, "es_GT", LANG_SPANISH , SUBLANG_SPANISH_GUATEMALA , "Spanish (Guatemala)")
LNG(wxLANGUAGE_SPANISH_HONDURAS, "es_HN", LANG_SPANISH , SUBLANG_SPANISH_HONDURAS , "Spanish (Honduras)")
LNG(wxLANGUAGE_SPANISH_MEXICAN, "es_MX", LANG_SPANISH , SUBLANG_SPANISH_MEXICAN , "Spanish (Mexican)")
LNG(wxLANGUAGE_SPANISH_MODERN, "es_ES", LANG_SPANISH , SUBLANG_SPANISH_MODERN , "Spanish (Modern)")
LNG(wxLANGUAGE_SPANISH_NICARAGUA, "es_NI", LANG_SPANISH , SUBLANG_SPANISH_NICARAGUA , "Spanish (Nicaragua)")
LNG(wxLANGUAGE_SPANISH_PANAMA, "es_PA", LANG_SPANISH , SUBLANG_SPANISH_PANAMA , "Spanish (Panama)")
LNG(wxLANGUAGE_SPANISH_PARAGUAY, "es_PY", LANG_SPANISH , SUBLANG_SPANISH_PARAGUAY , "Spanish (Paraguay)")
LNG(wxLANGUAGE_SPANISH_PERU, "es_PE", LANG_SPANISH , SUBLANG_SPANISH_PERU , "Spanish (Peru)")
LNG(wxLANGUAGE_SPANISH_PUERTO_RICO, "es_PR", LANG_SPANISH , SUBLANG_SPANISH_PUERTO_RICO , "Spanish (Puerto Rico)")
LNG(wxLANGUAGE_SPANISH_URUGUAY, "es_UY", LANG_SPANISH , SUBLANG_SPANISH_URUGUAY , "Spanish (Uruguay)")
LNG(wxLANGUAGE_SPANISH_US, "es_US", 0 , 0 , "Spanish (U.S.)")
LNG(wxLANGUAGE_SPANISH_VENEZUELA, "es_VE", LANG_SPANISH , SUBLANG_SPANISH_VENEZUELA , "Spanish (Venezuela)")
LNG(wxLANGUAGE_SUNDANESE, "su" , 0 , 0 , "Sundanese")
LNG(wxLANGUAGE_SWAHILI, "sw_KE", LANG_SWAHILI , SUBLANG_DEFAULT , "Swahili")
LNG(wxLANGUAGE_SWEDISH, "sv_SE", LANG_SWEDISH , SUBLANG_SWEDISH , "Swedish")
LNG(wxLANGUAGE_SWEDISH_FINLAND, "sv_FI", LANG_SWEDISH , SUBLANG_SWEDISH_FINLAND , "Swedish (Finland)")
LNG(wxLANGUAGE_TAGALOG, "tl_PH", 0 , 0 , "Tagalog")
LNG(wxLANGUAGE_TAJIK, "tg" , 0 , 0 , "Tajik")
LNG(wxLANGUAGE_TAMIL, "ta" , LANG_TAMIL , SUBLANG_DEFAULT , "Tamil")
LNG(wxLANGUAGE_TATAR, "tt" , LANG_TATAR , SUBLANG_DEFAULT , "Tatar")
LNG(wxLANGUAGE_TELUGU, "te" , LANG_TELUGU , SUBLANG_DEFAULT , "Telugu")
LNG(wxLANGUAGE_THAI, "th_TH", LANG_THAI , SUBLANG_DEFAULT , "Thai")
LNG(wxLANGUAGE_TIBETAN, "bo" , 0 , 0 , "Tibetan")
LNG(wxLANGUAGE_TIGRINYA, "ti" , 0 , 0 , "Tigrinya")
LNG(wxLANGUAGE_TONGA, "to" , 0 , 0 , "Tonga")
LNG(wxLANGUAGE_TSONGA, "ts" , 0 , 0 , "Tsonga")
LNG(wxLANGUAGE_TURKISH, "tr_TR", LANG_TURKISH , SUBLANG_DEFAULT , "Turkish")
LNG(wxLANGUAGE_TURKMEN, "tk" , 0 , 0 , "Turkmen")
LNG(wxLANGUAGE_TWI, "tw" , 0 , 0 , "Twi")
LNG(wxLANGUAGE_UIGHUR, "ug" , 0 , 0 , "Uighur")
LNG(wxLANGUAGE_UKRAINIAN, "uk_UA", LANG_UKRAINIAN , SUBLANG_DEFAULT , "Ukrainian")
LNG(wxLANGUAGE_URDU, "ur" , LANG_URDU , SUBLANG_DEFAULT , "Urdu")
LNG(wxLANGUAGE_URDU_INDIA, "ur_IN", LANG_URDU , SUBLANG_URDU_INDIA , "Urdu (India)")
LNG(wxLANGUAGE_URDU_PAKISTAN, "ur_PK", LANG_URDU , SUBLANG_URDU_PAKISTAN , "Urdu (Pakistan)")
LNG(wxLANGUAGE_UZBEK, "uz" , LANG_UZBEK , SUBLANG_DEFAULT , "Uzbek")
LNG(wxLANGUAGE_UZBEK_CYRILLIC, "uz" , LANG_UZBEK , SUBLANG_UZBEK_CYRILLIC , "Uzbek (Cyrillic)")
LNG(wxLANGUAGE_UZBEK_LATIN, "uz" , LANG_UZBEK , SUBLANG_UZBEK_LATIN , "Uzbek (Latin)")
LNG(wxLANGUAGE_VIETNAMESE, "vi_VN", LANG_VIETNAMESE, SUBLANG_DEFAULT , "Vietnamese")
LNG(wxLANGUAGE_VOLAPUK, "vo" , 0 , 0 , "Volapuk")
LNG(wxLANGUAGE_WELSH, "cy" , 0 , 0 , "Welsh")
LNG(wxLANGUAGE_WOLOF, "wo" , 0 , 0 , "Wolof")
LNG(wxLANGUAGE_XHOSA, "xh" , 0 , 0 , "Xhosa")
LNG(wxLANGUAGE_YIDDISH, "yi" , 0 , 0 , "Yiddish")
LNG(wxLANGUAGE_YORUBA, "yo" , 0 , 0 , "Yoruba")
LNG(wxLANGUAGE_ZHUANG, "za" , 0 , 0 , "Zhuang")
LNG(wxLANGUAGE_ZULU, "zu" , 0 , 0 , "Zulu")
LNG(wxLANGUAGE_ABKHAZIAN, "ab" , 0 , 0 , wxLayout_LeftToRight, "Abkhazian")
LNG(wxLANGUAGE_AFAR, "aa" , 0 , 0 , wxLayout_LeftToRight, "Afar")
LNG(wxLANGUAGE_AFRIKAANS, "af_ZA", LANG_AFRIKAANS , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Afrikaans")
LNG(wxLANGUAGE_ALBANIAN, "sq_AL", LANG_ALBANIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Albanian")
LNG(wxLANGUAGE_AMHARIC, "am" , 0 , 0 , wxLayout_LeftToRight, "Amharic")
LNG(wxLANGUAGE_ARABIC, "ar" , LANG_ARABIC , SUBLANG_DEFAULT , wxLayout_RightToLeft, "Arabic")
LNG(wxLANGUAGE_ARABIC_ALGERIA, "ar_DZ", LANG_ARABIC , SUBLANG_ARABIC_ALGERIA , wxLayout_RightToLeft, "Arabic (Algeria)")
LNG(wxLANGUAGE_ARABIC_BAHRAIN, "ar_BH", LANG_ARABIC , SUBLANG_ARABIC_BAHRAIN , wxLayout_RightToLeft, "Arabic (Bahrain)")
LNG(wxLANGUAGE_ARABIC_EGYPT, "ar_EG", LANG_ARABIC , SUBLANG_ARABIC_EGYPT , wxLayout_RightToLeft, "Arabic (Egypt)")
LNG(wxLANGUAGE_ARABIC_IRAQ, "ar_IQ", LANG_ARABIC , SUBLANG_ARABIC_IRAQ , wxLayout_RightToLeft, "Arabic (Iraq)")
LNG(wxLANGUAGE_ARABIC_JORDAN, "ar_JO", LANG_ARABIC , SUBLANG_ARABIC_JORDAN , wxLayout_RightToLeft, "Arabic (Jordan)")
LNG(wxLANGUAGE_ARABIC_KUWAIT, "ar_KW", LANG_ARABIC , SUBLANG_ARABIC_KUWAIT , wxLayout_RightToLeft, "Arabic (Kuwait)")
LNG(wxLANGUAGE_ARABIC_LEBANON, "ar_LB", LANG_ARABIC , SUBLANG_ARABIC_LEBANON , wxLayout_RightToLeft, "Arabic (Lebanon)")
LNG(wxLANGUAGE_ARABIC_LIBYA, "ar_LY", LANG_ARABIC , SUBLANG_ARABIC_LIBYA , wxLayout_RightToLeft, "Arabic (Libya)")
LNG(wxLANGUAGE_ARABIC_MOROCCO, "ar_MA", LANG_ARABIC , SUBLANG_ARABIC_MOROCCO , wxLayout_RightToLeft, "Arabic (Morocco)")
LNG(wxLANGUAGE_ARABIC_OMAN, "ar_OM", LANG_ARABIC , SUBLANG_ARABIC_OMAN , wxLayout_RightToLeft, "Arabic (Oman)")
LNG(wxLANGUAGE_ARABIC_QATAR, "ar_QA", LANG_ARABIC , SUBLANG_ARABIC_QATAR , wxLayout_RightToLeft, "Arabic (Qatar)")
LNG(wxLANGUAGE_ARABIC_SAUDI_ARABIA, "ar_SA", LANG_ARABIC , SUBLANG_ARABIC_SAUDI_ARABIA , wxLayout_RightToLeft, "Arabic (Saudi Arabia)")
LNG(wxLANGUAGE_ARABIC_SUDAN, "ar_SD", 0 , 0 , wxLayout_RightToLeft, "Arabic (Sudan)")
LNG(wxLANGUAGE_ARABIC_SYRIA, "ar_SY", LANG_ARABIC , SUBLANG_ARABIC_SYRIA , wxLayout_RightToLeft, "Arabic (Syria)")
LNG(wxLANGUAGE_ARABIC_TUNISIA, "ar_TN", LANG_ARABIC , SUBLANG_ARABIC_TUNISIA , wxLayout_RightToLeft, "Arabic (Tunisia)")
LNG(wxLANGUAGE_ARABIC_UAE, "ar_AE", LANG_ARABIC , SUBLANG_ARABIC_UAE , wxLayout_RightToLeft, "Arabic (Uae)")
LNG(wxLANGUAGE_ARABIC_YEMEN, "ar_YE", LANG_ARABIC , SUBLANG_ARABIC_YEMEN , wxLayout_RightToLeft, "Arabic (Yemen)")
LNG(wxLANGUAGE_ARMENIAN, "hy" , LANG_ARMENIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Armenian")
LNG(wxLANGUAGE_ASSAMESE, "as" , LANG_ASSAMESE , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Assamese")
LNG(wxLANGUAGE_AYMARA, "ay" , 0 , 0 , wxLayout_LeftToRight, "Aymara")
LNG(wxLANGUAGE_AZERI, "az" , LANG_AZERI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Azeri")
LNG(wxLANGUAGE_AZERI_CYRILLIC, "az" , LANG_AZERI , SUBLANG_AZERI_CYRILLIC , wxLayout_LeftToRight, "Azeri (Cyrillic)")
LNG(wxLANGUAGE_AZERI_LATIN, "az" , LANG_AZERI , SUBLANG_AZERI_LATIN , wxLayout_LeftToRight, "Azeri (Latin)")
LNG(wxLANGUAGE_BASHKIR, "ba" , 0 , 0 , wxLayout_LeftToRight, "Bashkir")
LNG(wxLANGUAGE_BASQUE, "eu_ES", LANG_BASQUE , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Basque")
LNG(wxLANGUAGE_BELARUSIAN, "be_BY", LANG_BELARUSIAN, SUBLANG_DEFAULT , wxLayout_LeftToRight, "Belarusian")
LNG(wxLANGUAGE_BENGALI, "bn" , LANG_BENGALI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Bengali")
LNG(wxLANGUAGE_BHUTANI, "dz" , 0 , 0 , wxLayout_LeftToRight, "Bhutani")
LNG(wxLANGUAGE_BIHARI, "bh" , 0 , 0 , wxLayout_LeftToRight, "Bihari")
LNG(wxLANGUAGE_BISLAMA, "bi" , 0 , 0 , wxLayout_LeftToRight, "Bislama")
LNG(wxLANGUAGE_BRETON, "br" , 0 , 0 , wxLayout_LeftToRight, "Breton")
LNG(wxLANGUAGE_BULGARIAN, "bg_BG", LANG_BULGARIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Bulgarian")
LNG(wxLANGUAGE_BURMESE, "my" , 0 , 0 , wxLayout_LeftToRight, "Burmese")
LNG(wxLANGUAGE_CAMBODIAN, "km" , 0 , 0 , wxLayout_LeftToRight, "Cambodian")
LNG(wxLANGUAGE_CATALAN, "ca_ES", LANG_CATALAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Catalan")
LNG(wxLANGUAGE_CHINESE, "zh_TW", LANG_CHINESE , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Chinese")
LNG(wxLANGUAGE_CHINESE_SIMPLIFIED, "zh_CN", LANG_CHINESE , SUBLANG_CHINESE_SIMPLIFIED , wxLayout_LeftToRight, "Chinese (Simplified)")
LNG(wxLANGUAGE_CHINESE_TRADITIONAL, "zh_TW", LANG_CHINESE , SUBLANG_CHINESE_TRADITIONAL , wxLayout_LeftToRight, "Chinese (Traditional)")
LNG(wxLANGUAGE_CHINESE_HONGKONG, "zh_HK", LANG_CHINESE , SUBLANG_CHINESE_HONGKONG , wxLayout_LeftToRight, "Chinese (Hongkong)")
LNG(wxLANGUAGE_CHINESE_MACAU, "zh_MO", LANG_CHINESE , SUBLANG_CHINESE_MACAU , wxLayout_LeftToRight, "Chinese (Macau)")
LNG(wxLANGUAGE_CHINESE_SINGAPORE, "zh_SG", LANG_CHINESE , SUBLANG_CHINESE_SINGAPORE , wxLayout_LeftToRight, "Chinese (Singapore)")
LNG(wxLANGUAGE_CHINESE_TAIWAN, "zh_TW", LANG_CHINESE , SUBLANG_CHINESE_TRADITIONAL , wxLayout_LeftToRight, "Chinese (Taiwan)")
LNG(wxLANGUAGE_CORSICAN, "co" , 0 , 0 , wxLayout_LeftToRight, "Corsican")
LNG(wxLANGUAGE_CROATIAN, "hr_HR", LANG_CROATIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Croatian")
LNG(wxLANGUAGE_CZECH, "cs_CZ", LANG_CZECH , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Czech")
LNG(wxLANGUAGE_DANISH, "da_DK", LANG_DANISH , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Danish")
LNG(wxLANGUAGE_DUTCH, "nl_NL", LANG_DUTCH , SUBLANG_DUTCH , wxLayout_LeftToRight, "Dutch")
LNG(wxLANGUAGE_DUTCH_BELGIAN, "nl_BE", LANG_DUTCH , SUBLANG_DUTCH_BELGIAN , wxLayout_LeftToRight, "Dutch (Belgian)")
LNG(wxLANGUAGE_ENGLISH, "en_GB", LANG_ENGLISH , SUBLANG_ENGLISH_UK , wxLayout_LeftToRight, "English")
LNG(wxLANGUAGE_ENGLISH_UK, "en_GB", LANG_ENGLISH , SUBLANG_ENGLISH_UK , wxLayout_LeftToRight, "English (U.K.)")
LNG(wxLANGUAGE_ENGLISH_US, "en_US", LANG_ENGLISH , SUBLANG_ENGLISH_US , wxLayout_LeftToRight, "English (U.S.)")
LNG(wxLANGUAGE_ENGLISH_AUSTRALIA, "en_AU", LANG_ENGLISH , SUBLANG_ENGLISH_AUS , wxLayout_LeftToRight, "English (Australia)")
LNG(wxLANGUAGE_ENGLISH_BELIZE, "en_BZ", LANG_ENGLISH , SUBLANG_ENGLISH_BELIZE , wxLayout_LeftToRight, "English (Belize)")
LNG(wxLANGUAGE_ENGLISH_BOTSWANA, "en_BW", 0 , 0 , wxLayout_LeftToRight, "English (Botswana)")
LNG(wxLANGUAGE_ENGLISH_CANADA, "en_CA", LANG_ENGLISH , SUBLANG_ENGLISH_CAN , wxLayout_LeftToRight, "English (Canada)")
LNG(wxLANGUAGE_ENGLISH_CARIBBEAN, "en_CB", LANG_ENGLISH , SUBLANG_ENGLISH_CARIBBEAN , wxLayout_LeftToRight, "English (Caribbean)")
LNG(wxLANGUAGE_ENGLISH_DENMARK, "en_DK", 0 , 0 , wxLayout_LeftToRight, "English (Denmark)")
LNG(wxLANGUAGE_ENGLISH_EIRE, "en_IE", LANG_ENGLISH , SUBLANG_ENGLISH_EIRE , wxLayout_LeftToRight, "English (Eire)")
LNG(wxLANGUAGE_ENGLISH_JAMAICA, "en_JM", LANG_ENGLISH , SUBLANG_ENGLISH_JAMAICA , wxLayout_LeftToRight, "English (Jamaica)")
LNG(wxLANGUAGE_ENGLISH_NEW_ZEALAND, "en_NZ", LANG_ENGLISH , SUBLANG_ENGLISH_NZ , wxLayout_LeftToRight, "English (New Zealand)")
LNG(wxLANGUAGE_ENGLISH_PHILIPPINES, "en_PH", LANG_ENGLISH , SUBLANG_ENGLISH_PHILIPPINES , wxLayout_LeftToRight, "English (Philippines)")
LNG(wxLANGUAGE_ENGLISH_SOUTH_AFRICA, "en_ZA", LANG_ENGLISH , SUBLANG_ENGLISH_SOUTH_AFRICA , wxLayout_LeftToRight, "English (South Africa)")
LNG(wxLANGUAGE_ENGLISH_TRINIDAD, "en_TT", LANG_ENGLISH , SUBLANG_ENGLISH_TRINIDAD , wxLayout_LeftToRight, "English (Trinidad)")
LNG(wxLANGUAGE_ENGLISH_ZIMBABWE, "en_ZW", LANG_ENGLISH , SUBLANG_ENGLISH_ZIMBABWE , wxLayout_LeftToRight, "English (Zimbabwe)")
LNG(wxLANGUAGE_ESPERANTO, "eo" , 0 , 0 , wxLayout_LeftToRight, "Esperanto")
LNG(wxLANGUAGE_ESTONIAN, "et_EE", LANG_ESTONIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Estonian")
LNG(wxLANGUAGE_FAEROESE, "fo_FO", LANG_FAEROESE , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Faeroese")
LNG(wxLANGUAGE_FARSI, "fa_IR", LANG_FARSI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Farsi")
LNG(wxLANGUAGE_FIJI, "fj" , 0 , 0 , wxLayout_LeftToRight, "Fiji")
LNG(wxLANGUAGE_FINNISH, "fi_FI", LANG_FINNISH , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Finnish")
LNG(wxLANGUAGE_FRENCH, "fr_FR", LANG_FRENCH , SUBLANG_FRENCH , wxLayout_LeftToRight, "French")
LNG(wxLANGUAGE_FRENCH_BELGIAN, "fr_BE", LANG_FRENCH , SUBLANG_FRENCH_BELGIAN , wxLayout_LeftToRight, "French (Belgian)")
LNG(wxLANGUAGE_FRENCH_CANADIAN, "fr_CA", LANG_FRENCH , SUBLANG_FRENCH_CANADIAN , wxLayout_LeftToRight, "French (Canadian)")
LNG(wxLANGUAGE_FRENCH_LUXEMBOURG, "fr_LU", LANG_FRENCH , SUBLANG_FRENCH_LUXEMBOURG , wxLayout_LeftToRight, "French (Luxembourg)")
LNG(wxLANGUAGE_FRENCH_MONACO, "fr_MC", LANG_FRENCH , SUBLANG_FRENCH_MONACO , wxLayout_LeftToRight, "French (Monaco)")
LNG(wxLANGUAGE_FRENCH_SWISS, "fr_CH", LANG_FRENCH , SUBLANG_FRENCH_SWISS , wxLayout_LeftToRight, "French (Swiss)")
LNG(wxLANGUAGE_FRISIAN, "fy" , 0 , 0 , wxLayout_LeftToRight, "Frisian")
LNG(wxLANGUAGE_GALICIAN, "gl_ES", 0 , 0 , wxLayout_LeftToRight, "Galician")
LNG(wxLANGUAGE_GEORGIAN, "ka" , LANG_GEORGIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Georgian")
LNG(wxLANGUAGE_GERMAN, "de_DE", LANG_GERMAN , SUBLANG_GERMAN , wxLayout_LeftToRight, "German")
LNG(wxLANGUAGE_GERMAN_AUSTRIAN, "de_AT", LANG_GERMAN , SUBLANG_GERMAN_AUSTRIAN , wxLayout_LeftToRight, "German (Austrian)")
LNG(wxLANGUAGE_GERMAN_BELGIUM, "de_BE", 0 , 0 , wxLayout_LeftToRight, "German (Belgium)")
LNG(wxLANGUAGE_GERMAN_LIECHTENSTEIN, "de_LI", LANG_GERMAN , SUBLANG_GERMAN_LIECHTENSTEIN , wxLayout_LeftToRight, "German (Liechtenstein)")
LNG(wxLANGUAGE_GERMAN_LUXEMBOURG, "de_LU", LANG_GERMAN , SUBLANG_GERMAN_LUXEMBOURG , wxLayout_LeftToRight, "German (Luxembourg)")
LNG(wxLANGUAGE_GERMAN_SWISS, "de_CH", LANG_GERMAN , SUBLANG_GERMAN_SWISS , wxLayout_LeftToRight, "German (Swiss)")
LNG(wxLANGUAGE_GREEK, "el_GR", LANG_GREEK , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Greek")
LNG(wxLANGUAGE_GREENLANDIC, "kl_GL", 0 , 0 , wxLayout_LeftToRight, "Greenlandic")
LNG(wxLANGUAGE_GUARANI, "gn" , 0 , 0 , wxLayout_LeftToRight, "Guarani")
LNG(wxLANGUAGE_GUJARATI, "gu" , LANG_GUJARATI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Gujarati")
LNG(wxLANGUAGE_HAUSA, "ha" , 0 , 0 , wxLayout_LeftToRight, "Hausa")
LNG(wxLANGUAGE_HEBREW, "he_IL", LANG_HEBREW , SUBLANG_DEFAULT , wxLayout_RightToLeft, "Hebrew")
LNG(wxLANGUAGE_HINDI, "hi_IN", LANG_HINDI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Hindi")
LNG(wxLANGUAGE_HUNGARIAN, "hu_HU", LANG_HUNGARIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Hungarian")
LNG(wxLANGUAGE_ICELANDIC, "is_IS", LANG_ICELANDIC , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Icelandic")
LNG(wxLANGUAGE_INDONESIAN, "id_ID", LANG_INDONESIAN, SUBLANG_DEFAULT , wxLayout_LeftToRight, "Indonesian")
LNG(wxLANGUAGE_INTERLINGUA, "ia" , 0 , 0 , wxLayout_LeftToRight, "Interlingua")
LNG(wxLANGUAGE_INTERLINGUE, "ie" , 0 , 0 , wxLayout_LeftToRight, "Interlingue")
LNG(wxLANGUAGE_INUKTITUT, "iu" , 0 , 0 , wxLayout_LeftToRight, "Inuktitut")
LNG(wxLANGUAGE_INUPIAK, "ik" , 0 , 0 , wxLayout_LeftToRight, "Inupiak")
LNG(wxLANGUAGE_IRISH, "ga_IE", 0 , 0 , wxLayout_LeftToRight, "Irish")
LNG(wxLANGUAGE_ITALIAN, "it_IT", LANG_ITALIAN , SUBLANG_ITALIAN , wxLayout_LeftToRight, "Italian")
LNG(wxLANGUAGE_ITALIAN_SWISS, "it_CH", LANG_ITALIAN , SUBLANG_ITALIAN_SWISS , wxLayout_LeftToRight, "Italian (Swiss)")
LNG(wxLANGUAGE_JAPANESE, "ja_JP", LANG_JAPANESE , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Japanese")
LNG(wxLANGUAGE_JAVANESE, "jw" , 0 , 0 , wxLayout_LeftToRight, "Javanese")
LNG(wxLANGUAGE_KANNADA, "kn" , LANG_KANNADA , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Kannada")
LNG(wxLANGUAGE_KASHMIRI, "ks" , LANG_KASHMIRI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Kashmiri")
LNG(wxLANGUAGE_KASHMIRI_INDIA, "ks_IN", LANG_KASHMIRI , SUBLANG_KASHMIRI_INDIA , wxLayout_LeftToRight, "Kashmiri (India)")
LNG(wxLANGUAGE_KAZAKH, "kk" , LANG_KAZAK , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Kazakh")
LNG(wxLANGUAGE_KERNEWEK, "kw_GB", 0 , 0 , wxLayout_LeftToRight, "Kernewek")
LNG(wxLANGUAGE_KINYARWANDA, "rw" , 0 , 0 , wxLayout_LeftToRight, "Kinyarwanda")
LNG(wxLANGUAGE_KIRGHIZ, "ky" , 0 , 0 , wxLayout_LeftToRight, "Kirghiz")
LNG(wxLANGUAGE_KIRUNDI, "rn" , 0 , 0 , wxLayout_LeftToRight, "Kirundi")
LNG(wxLANGUAGE_KONKANI, "" , LANG_KONKANI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Konkani")
LNG(wxLANGUAGE_KOREAN, "ko_KR", LANG_KOREAN , SUBLANG_KOREAN , wxLayout_LeftToRight, "Korean")
LNG(wxLANGUAGE_KURDISH, "ku" , 0 , 0 , wxLayout_LeftToRight, "Kurdish")
LNG(wxLANGUAGE_LAOTHIAN, "lo" , 0 , 0 , wxLayout_LeftToRight, "Laothian")
LNG(wxLANGUAGE_LATIN, "la" , 0 , 0 , wxLayout_LeftToRight, "Latin")
LNG(wxLANGUAGE_LATVIAN, "lv_LV", LANG_LATVIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Latvian")
LNG(wxLANGUAGE_LINGALA, "ln" , 0 , 0 , wxLayout_LeftToRight, "Lingala")
LNG(wxLANGUAGE_LITHUANIAN, "lt_LT", LANG_LITHUANIAN, SUBLANG_LITHUANIAN , wxLayout_LeftToRight, "Lithuanian")
LNG(wxLANGUAGE_MACEDONIAN, "mk_MK", LANG_MACEDONIAN, SUBLANG_DEFAULT , wxLayout_LeftToRight, "Macedonian")
LNG(wxLANGUAGE_MALAGASY, "mg" , 0 , 0 , wxLayout_LeftToRight, "Malagasy")
LNG(wxLANGUAGE_MALAY, "ms_MY", LANG_MALAY , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Malay")
LNG(wxLANGUAGE_MALAYALAM, "ml" , LANG_MALAYALAM , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Malayalam")
LNG(wxLANGUAGE_MALAY_BRUNEI_DARUSSALAM, "ms_BN", LANG_MALAY , SUBLANG_MALAY_BRUNEI_DARUSSALAM , wxLayout_LeftToRight, "Malay (Brunei Darussalam)")
LNG(wxLANGUAGE_MALAY_MALAYSIA, "ms_MY", LANG_MALAY , SUBLANG_MALAY_MALAYSIA , wxLayout_LeftToRight, "Malay (Malaysia)")
LNG(wxLANGUAGE_MALTESE, "mt_MT", 0 , 0 , wxLayout_LeftToRight, "Maltese")
LNG(wxLANGUAGE_MANIPURI, "" , LANG_MANIPURI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Manipuri")
LNG(wxLANGUAGE_MAORI, "mi" , 0 , 0 , wxLayout_LeftToRight, "Maori")
LNG(wxLANGUAGE_MARATHI, "mr_IN", LANG_MARATHI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Marathi")
LNG(wxLANGUAGE_MOLDAVIAN, "mo" , 0 , 0 , wxLayout_LeftToRight, "Moldavian")
LNG(wxLANGUAGE_MONGOLIAN, "mn" , 0 , 0 , wxLayout_LeftToRight, "Mongolian")
LNG(wxLANGUAGE_NAURU, "na" , 0 , 0 , wxLayout_LeftToRight, "Nauru")
LNG(wxLANGUAGE_NEPALI, "ne" , LANG_NEPALI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Nepali")
LNG(wxLANGUAGE_NEPALI_INDIA, "ne_IN", LANG_NEPALI , SUBLANG_NEPALI_INDIA , wxLayout_LeftToRight, "Nepali (India)")
LNG(wxLANGUAGE_NORWEGIAN_BOKMAL, "nb_NO", LANG_NORWEGIAN , SUBLANG_NORWEGIAN_BOKMAL , wxLayout_LeftToRight, "Norwegian (Bokmal)")
LNG(wxLANGUAGE_NORWEGIAN_NYNORSK, "nn_NO", LANG_NORWEGIAN , SUBLANG_NORWEGIAN_NYNORSK , wxLayout_LeftToRight, "Norwegian (Nynorsk)")
LNG(wxLANGUAGE_OCCITAN, "oc" , 0 , 0 , wxLayout_LeftToRight, "Occitan")
LNG(wxLANGUAGE_ORIYA, "or" , LANG_ORIYA , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Oriya")
LNG(wxLANGUAGE_OROMO, "om" , 0 , 0 , wxLayout_LeftToRight, "(Afan) Oromo")
LNG(wxLANGUAGE_PASHTO, "ps" , 0 , 0 , wxLayout_LeftToRight, "Pashto, Pushto")
LNG(wxLANGUAGE_POLISH, "pl_PL", LANG_POLISH , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Polish")
LNG(wxLANGUAGE_PORTUGUESE, "pt_PT", LANG_PORTUGUESE, SUBLANG_PORTUGUESE , wxLayout_LeftToRight, "Portuguese")
LNG(wxLANGUAGE_PORTUGUESE_BRAZILIAN, "pt_BR", LANG_PORTUGUESE, SUBLANG_PORTUGUESE_BRAZILIAN , wxLayout_LeftToRight, "Portuguese (Brazilian)")
LNG(wxLANGUAGE_PUNJABI, "pa" , LANG_PUNJABI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Punjabi")
LNG(wxLANGUAGE_QUECHUA, "qu" , 0 , 0 , wxLayout_LeftToRight, "Quechua")
LNG(wxLANGUAGE_RHAETO_ROMANCE, "rm" , 0 , 0 , wxLayout_LeftToRight, "Rhaeto-Romance")
LNG(wxLANGUAGE_ROMANIAN, "ro_RO", LANG_ROMANIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Romanian")
LNG(wxLANGUAGE_RUSSIAN, "ru_RU", LANG_RUSSIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Russian")
LNG(wxLANGUAGE_RUSSIAN_UKRAINE, "ru_UA", 0 , 0 , wxLayout_LeftToRight, "Russian (Ukraine)")
LNG(wxLANGUAGE_SAMOAN, "sm" , 0 , 0 , wxLayout_LeftToRight, "Samoan")
LNG(wxLANGUAGE_SANGHO, "sg" , 0 , 0 , wxLayout_LeftToRight, "Sangho")
LNG(wxLANGUAGE_SANSKRIT, "sa" , LANG_SANSKRIT , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Sanskrit")
LNG(wxLANGUAGE_SCOTS_GAELIC, "gd" , 0 , 0 , wxLayout_LeftToRight, "Scots Gaelic")
LNG(wxLANGUAGE_SERBIAN_CYRILLIC, "sr_YU", LANG_SERBIAN , SUBLANG_SERBIAN_CYRILLIC , wxLayout_LeftToRight, "Serbian (Cyrillic)")
LNG(wxLANGUAGE_SERBIAN_LATIN, "sr_YU", LANG_SERBIAN , SUBLANG_SERBIAN_LATIN , wxLayout_LeftToRight, "Serbian (Latin)")
LNG(wxLANGUAGE_SERBO_CROATIAN, "sh" , 0 , 0 , wxLayout_LeftToRight, "Serbo-Croatian")
LNG(wxLANGUAGE_SESOTHO, "st" , 0 , 0 , wxLayout_LeftToRight, "Sesotho")
LNG(wxLANGUAGE_SETSWANA, "tn" , 0 , 0 , wxLayout_LeftToRight, "Setswana")
LNG(wxLANGUAGE_SHONA, "sn" , 0 , 0 , wxLayout_LeftToRight, "Shona")
LNG(wxLANGUAGE_SINDHI, "sd" , LANG_SINDHI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Sindhi")
LNG(wxLANGUAGE_SINHALESE, "si" , 0 , 0 , wxLayout_LeftToRight, "Sinhalese")
LNG(wxLANGUAGE_SISWATI, "ss" , 0 , 0 , wxLayout_LeftToRight, "Siswati")
LNG(wxLANGUAGE_SLOVAK, "sk_SK", LANG_SLOVAK , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Slovak")
LNG(wxLANGUAGE_SLOVENIAN, "sl_SI", LANG_SLOVENIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Slovenian")
LNG(wxLANGUAGE_SOMALI, "so" , 0 , 0 , wxLayout_LeftToRight, "Somali")
LNG(wxLANGUAGE_SPANISH, "es_ES", LANG_SPANISH , SUBLANG_SPANISH , wxLayout_LeftToRight, "Spanish")
LNG(wxLANGUAGE_SPANISH_ARGENTINA, "es_AR", LANG_SPANISH , SUBLANG_SPANISH_ARGENTINA , wxLayout_LeftToRight, "Spanish (Argentina)")
LNG(wxLANGUAGE_SPANISH_BOLIVIA, "es_BO", LANG_SPANISH , SUBLANG_SPANISH_BOLIVIA , wxLayout_LeftToRight, "Spanish (Bolivia)")
LNG(wxLANGUAGE_SPANISH_CHILE, "es_CL", LANG_SPANISH , SUBLANG_SPANISH_CHILE , wxLayout_LeftToRight, "Spanish (Chile)")
LNG(wxLANGUAGE_SPANISH_COLOMBIA, "es_CO", LANG_SPANISH , SUBLANG_SPANISH_COLOMBIA , wxLayout_LeftToRight, "Spanish (Colombia)")
LNG(wxLANGUAGE_SPANISH_COSTA_RICA, "es_CR", LANG_SPANISH , SUBLANG_SPANISH_COSTA_RICA , wxLayout_LeftToRight, "Spanish (Costa Rica)")
LNG(wxLANGUAGE_SPANISH_DOMINICAN_REPUBLIC, "es_DO", LANG_SPANISH , SUBLANG_SPANISH_DOMINICAN_REPUBLIC, wxLayout_LeftToRight, "Spanish (Dominican republic)")
LNG(wxLANGUAGE_SPANISH_ECUADOR, "es_EC", LANG_SPANISH , SUBLANG_SPANISH_ECUADOR , wxLayout_LeftToRight, "Spanish (Ecuador)")
LNG(wxLANGUAGE_SPANISH_EL_SALVADOR, "es_SV", LANG_SPANISH , SUBLANG_SPANISH_EL_SALVADOR , wxLayout_LeftToRight, "Spanish (El Salvador)")
LNG(wxLANGUAGE_SPANISH_GUATEMALA, "es_GT", LANG_SPANISH , SUBLANG_SPANISH_GUATEMALA , wxLayout_LeftToRight, "Spanish (Guatemala)")
LNG(wxLANGUAGE_SPANISH_HONDURAS, "es_HN", LANG_SPANISH , SUBLANG_SPANISH_HONDURAS , wxLayout_LeftToRight, "Spanish (Honduras)")
LNG(wxLANGUAGE_SPANISH_MEXICAN, "es_MX", LANG_SPANISH , SUBLANG_SPANISH_MEXICAN , wxLayout_LeftToRight, "Spanish (Mexican)")
LNG(wxLANGUAGE_SPANISH_MODERN, "es_ES", LANG_SPANISH , SUBLANG_SPANISH_MODERN , wxLayout_LeftToRight, "Spanish (Modern)")
LNG(wxLANGUAGE_SPANISH_NICARAGUA, "es_NI", LANG_SPANISH , SUBLANG_SPANISH_NICARAGUA , wxLayout_LeftToRight, "Spanish (Nicaragua)")
LNG(wxLANGUAGE_SPANISH_PANAMA, "es_PA", LANG_SPANISH , SUBLANG_SPANISH_PANAMA , wxLayout_LeftToRight, "Spanish (Panama)")
LNG(wxLANGUAGE_SPANISH_PARAGUAY, "es_PY", LANG_SPANISH , SUBLANG_SPANISH_PARAGUAY , wxLayout_LeftToRight, "Spanish (Paraguay)")
LNG(wxLANGUAGE_SPANISH_PERU, "es_PE", LANG_SPANISH , SUBLANG_SPANISH_PERU , wxLayout_LeftToRight, "Spanish (Peru)")
LNG(wxLANGUAGE_SPANISH_PUERTO_RICO, "es_PR", LANG_SPANISH , SUBLANG_SPANISH_PUERTO_RICO , wxLayout_LeftToRight, "Spanish (Puerto Rico)")
LNG(wxLANGUAGE_SPANISH_URUGUAY, "es_UY", LANG_SPANISH , SUBLANG_SPANISH_URUGUAY , wxLayout_LeftToRight, "Spanish (Uruguay)")
LNG(wxLANGUAGE_SPANISH_US, "es_US", 0 , 0 , wxLayout_LeftToRight, "Spanish (U.S.)")
LNG(wxLANGUAGE_SPANISH_VENEZUELA, "es_VE", LANG_SPANISH , SUBLANG_SPANISH_VENEZUELA , wxLayout_LeftToRight, "Spanish (Venezuela)")
LNG(wxLANGUAGE_SUNDANESE, "su" , 0 , 0 , wxLayout_LeftToRight, "Sundanese")
LNG(wxLANGUAGE_SWAHILI, "sw_KE", LANG_SWAHILI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Swahili")
LNG(wxLANGUAGE_SWEDISH, "sv_SE", LANG_SWEDISH , SUBLANG_SWEDISH , wxLayout_LeftToRight, "Swedish")
LNG(wxLANGUAGE_SWEDISH_FINLAND, "sv_FI", LANG_SWEDISH , SUBLANG_SWEDISH_FINLAND , wxLayout_LeftToRight, "Swedish (Finland)")
LNG(wxLANGUAGE_TAGALOG, "tl_PH", 0 , 0 , wxLayout_LeftToRight, "Tagalog")
LNG(wxLANGUAGE_TAJIK, "tg" , 0 , 0 , wxLayout_LeftToRight, "Tajik")
LNG(wxLANGUAGE_TAMIL, "ta" , LANG_TAMIL , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Tamil")
LNG(wxLANGUAGE_TATAR, "tt" , LANG_TATAR , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Tatar")
LNG(wxLANGUAGE_TELUGU, "te" , LANG_TELUGU , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Telugu")
LNG(wxLANGUAGE_THAI, "th_TH", LANG_THAI , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Thai")
LNG(wxLANGUAGE_TIBETAN, "bo" , 0 , 0 , wxLayout_LeftToRight, "Tibetan")
LNG(wxLANGUAGE_TIGRINYA, "ti" , 0 , 0 , wxLayout_LeftToRight, "Tigrinya")
LNG(wxLANGUAGE_TONGA, "to" , 0 , 0 , wxLayout_LeftToRight, "Tonga")
LNG(wxLANGUAGE_TSONGA, "ts" , 0 , 0 , wxLayout_LeftToRight, "Tsonga")
LNG(wxLANGUAGE_TURKISH, "tr_TR", LANG_TURKISH , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Turkish")
LNG(wxLANGUAGE_TURKMEN, "tk" , 0 , 0 , wxLayout_LeftToRight, "Turkmen")
LNG(wxLANGUAGE_TWI, "tw" , 0 , 0 , wxLayout_LeftToRight, "Twi")
LNG(wxLANGUAGE_UIGHUR, "ug" , 0 , 0 , wxLayout_LeftToRight, "Uighur")
LNG(wxLANGUAGE_UKRAINIAN, "uk_UA", LANG_UKRAINIAN , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Ukrainian")
LNG(wxLANGUAGE_URDU, "ur" , LANG_URDU , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Urdu")
LNG(wxLANGUAGE_URDU_INDIA, "ur_IN", LANG_URDU , SUBLANG_URDU_INDIA , wxLayout_LeftToRight, "Urdu (India)")
LNG(wxLANGUAGE_URDU_PAKISTAN, "ur_PK", LANG_URDU , SUBLANG_URDU_PAKISTAN , wxLayout_LeftToRight, "Urdu (Pakistan)")
LNG(wxLANGUAGE_UZBEK, "uz" , LANG_UZBEK , SUBLANG_DEFAULT , wxLayout_LeftToRight, "Uzbek")
LNG(wxLANGUAGE_UZBEK_CYRILLIC, "uz" , LANG_UZBEK , SUBLANG_UZBEK_CYRILLIC , wxLayout_LeftToRight, "Uzbek (Cyrillic)")
LNG(wxLANGUAGE_UZBEK_LATIN, "uz" , LANG_UZBEK , SUBLANG_UZBEK_LATIN , wxLayout_LeftToRight, "Uzbek (Latin)")
LNG(wxLANGUAGE_VIETNAMESE, "vi_VN", LANG_VIETNAMESE, SUBLANG_DEFAULT , wxLayout_LeftToRight, "Vietnamese")
LNG(wxLANGUAGE_VOLAPUK, "vo" , 0 , 0 , wxLayout_LeftToRight, "Volapuk")
LNG(wxLANGUAGE_WELSH, "cy" , 0 , 0 , wxLayout_LeftToRight, "Welsh")
LNG(wxLANGUAGE_WOLOF, "wo" , 0 , 0 , wxLayout_LeftToRight, "Wolof")
LNG(wxLANGUAGE_XHOSA, "xh" , 0 , 0 , wxLayout_LeftToRight, "Xhosa")
LNG(wxLANGUAGE_YIDDISH, "yi" , 0 , 0 , wxLayout_LeftToRight, "Yiddish")
LNG(wxLANGUAGE_YORUBA, "yo" , 0 , 0 , wxLayout_LeftToRight, "Yoruba")
LNG(wxLANGUAGE_ZHUANG, "za" , 0 , 0 , wxLayout_LeftToRight, "Zhuang")
LNG(wxLANGUAGE_ZULU, "zu" , 0 , 0 , wxLayout_LeftToRight, "Zulu")
}
#undef LNG

View File

@@ -1695,6 +1695,16 @@ void wxBoxSizer::RecalcSizes()
// wxALIGN_CENTER should be used in new code
child_pos.y += (m_size.y - size.y) / 2;
if ( m_containingWindow )
{
child_pos.x = m_containingWindow->AdjustForLayoutDirection
(
child_pos.x,
width,
m_size.x
);
}
item->SetDimension( child_pos, child_size );
pt.x += width;

View File

@@ -2980,3 +2980,21 @@ wxAccStatus wxWindowAccessible::GetSelections(wxVariant* WXUNUSED(selections))
}
#endif // wxUSE_ACCESSIBILITY
// ----------------------------------------------------------------------------
// RTL support
// ----------------------------------------------------------------------------
wxCoord
wxWindowBase::AdjustForLayoutDirection(wxCoord x,
wxCoord width,
wxCoord widthTotal) const
{
if ( GetLayoutDirection() == wxLayout_RightToLeft )
{
x = widthTotal - x - width;
}
return x;
}

View File

@@ -255,6 +255,50 @@ void wxMenuBar::SetInvokingWindow( wxWindow *win )
}
}
void wxMenuBar::SetLayoutDirection(wxLayoutDirection dir)
{
if ( dir == wxLayout_Default )
{
const wxWindow *const frame = GetFrame();
if ( frame )
{
// inherit layout from frame.
dir = frame->GetLayoutDirection();
}
else // use global layout
{
dir = wxTheApp->GetLayoutDirection();
}
}
if ( dir == wxLayout_Default )
return;
GTKSetLayout(m_menubar, dir);
// also set the layout of all menus we already have (new ones will inherit
// the current layout)
for ( wxMenuList::compatibility_iterator node = m_menus.GetFirst();
node;
node = node->GetNext() )
{
wxMenu *const menu = node->GetData();
menu->SetLayoutDirection(dir);
}
}
wxLayoutDirection wxMenuBar::GetLayoutDirection() const
{
return GTKGetLayout(m_menubar);
}
void wxMenuBar::Attach(wxFrame *frame)
{
wxMenuBarBase::Attach(frame);
SetLayoutDirection(wxLayout_Default);
}
void wxMenuBar::UnsetInvokingWindow( wxWindow *win )
{
m_invokingWindow = (wxWindow*) NULL;
@@ -288,6 +332,7 @@ bool wxMenuBar::GtkAppend(wxMenu *menu, const wxString& title, int pos)
// The "m_owner" is the "menu item"
menu->m_owner = gtk_menu_item_new_with_mnemonic( wxGTK_CONV( str ) );
menu->SetLayoutDirection(GetLayoutDirection());
gtk_widget_show( menu->m_owner );
@@ -987,6 +1032,18 @@ wxMenu::~wxMenu()
}
}
void wxMenu::SetLayoutDirection(const wxLayoutDirection dir)
{
if ( m_owner )
wxWindow::GTKSetLayout(m_owner, dir);
//else: will be called later by wxMenuBar again
}
wxLayoutDirection wxMenu::GetLayoutDirection() const
{
return wxWindow::GTKGetLayout(m_owner);
}
bool wxMenu::GtkAppend(wxMenuItem *mitem, int pos)
{
GtkWidget *menuItem;
@@ -1225,6 +1282,14 @@ int wxMenu::FindMenuIdByMenuItem( GtkWidget *menuItem ) const
return wxNOT_FOUND;
}
void wxMenu::Attach(wxMenuBarBase *menubar)
{
wxMenuBase::Attach(menubar);
// inherit layout direction from menubar.
SetLayoutDirection(menubar->GetLayoutDirection());
}
// ----------------------------------------------------------------------------
// helpers
// ----------------------------------------------------------------------------

View File

@@ -2691,6 +2691,8 @@ void wxWindowGTK::PostCreation()
m_hasVMT = true;
SetLayoutDirection(wxLayout_Default);
// unless the window was created initially hidden (i.e. Hide() had been
// called before Create()), we should show it at GTK+ level as well
if ( IsShown() )
@@ -3394,6 +3396,8 @@ bool wxWindowGTK::Reparent( wxWindowBase *newParentBase )
/* reverse: prevent GTK from deleting the widget arbitrarily */
gtk_widget_unref( m_widget );
SetLayoutDirection(wxLayout_Default);
return true;
}
@@ -3428,6 +3432,51 @@ void wxWindowGTK::RemoveChild(wxWindowBase *child)
wxapp_install_idle_handler();
}
/* static */
wxLayoutDirection wxWindowGTK::GTKGetLayout(GtkWidget *widget)
{
return gtk_widget_get_direction(GTK_WIDGET(widget)) == GTK_TEXT_DIR_RTL
? wxLayout_RightToLeft
: wxLayout_LeftToRight;
}
/* static */
void wxWindowGTK::GTKSetLayout(GtkWidget *widget, wxLayoutDirection dir)
{
wxASSERT_MSG( dir != wxLayout_Default, _T("invalid layout direction") );
gtk_widget_set_direction(GTK_WIDGET(widget),
dir == wxLayout_RightToLeft ? GTK_TEXT_DIR_RTL
: GTK_TEXT_DIR_LTR);
}
wxLayoutDirection wxWindowGTK::GetLayoutDirection() const
{
return GTKGetLayout(m_widget);
}
void wxWindowGTK::SetLayoutDirection(wxLayoutDirection dir)
{
if ( dir == wxLayout_Default )
{
const wxWindow *const parent = GetParent();
if ( parent )
{
// inherit layout from parent.
dir = parent->GetLayoutDirection();
}
else // no parent, use global default layout
{
dir = wxTheApp->GetLayoutDirection();
}
}
if ( dir == wxLayout_Default )
return;
GTKSetLayout(m_widget, dir);
}
void wxWindowGTK::DoMoveInTabOrder(wxWindow *win, MoveKind move)
{
wxWindowBase::DoMoveInTabOrder(win, move);

View File

@@ -97,6 +97,9 @@ int wxMessageDialog::ShowModal()
if ( wxStyle & wxSTAY_ON_TOP )
msStyle |= MB_TOPMOST;
if ( wxTheApp->GetLayoutDirection() == wxLayout_RightToLeft )
msStyle |= MB_RTLREADING | MB_RIGHT;
if (hWnd)
msStyle |= MB_APPLMODAL;
else

View File

@@ -203,9 +203,16 @@ WXHWND wxToolTip::GetToolTipCtrl()
{
if ( !ms_hwndTT )
{
WXDWORD exflags = 0;
if ( wxTheApp->GetLayoutDirection() == wxLayout_RightToLeft )
{
exflags |= WS_EX_LAYOUTRTL;
}
// we want to show the tooltips always (even when the window is not
// active) and we don't want to strip "&"s from them
ms_hwndTT = (WXHWND)::CreateWindow(TOOLTIPS_CLASS,
ms_hwndTT = (WXHWND)::CreateWindowEx(exflags,
TOOLTIPS_CLASS,
(LPCTSTR)NULL,
TTS_ALWAYSTIP | TTS_NOPREFIX,
CW_USEDEFAULT, CW_USEDEFAULT,

View File

@@ -503,6 +503,9 @@ bool wxTopLevelWindowMSW::CreateFrame(const wxString& title,
const wxSize sz = IsAlwaysMaximized() ? wxDefaultSize : size;
if ( wxTheApp->GetLayoutDirection() == wxLayout_RightToLeft )
exflags |= WS_EX_LAYOUTRTL;
return MSWCreate(wxCanvasClassName, title, pos, sz, flags, exflags);
}
@@ -562,6 +565,11 @@ bool wxTopLevelWindowMSW::Create(wxWindow *parent,
// all dialogs are popups
dlgTemplate->style |= WS_POPUP;
if ( wxTheApp->GetLayoutDirection() == wxLayout_RightToLeft )
{
dlgTemplate->dwExtendedStyle |= WS_EX_LAYOUTRTL;
}
#ifndef __WXWINCE__
// force 3D-look if necessary, it looks impossibly ugly otherwise
if ( style & (wxRESIZE_BORDER | wxCAPTION) )
@@ -761,6 +769,15 @@ void wxTopLevelWindowMSW::Restore()
DoShowWindow(SW_RESTORE);
}
void wxTopLevelWindowMSW::SetLayoutDirection(wxLayoutDirection dir)
{
if ( dir == wxLayout_Default )
dir = wxTheApp->GetLayoutDirection();
if ( dir != wxLayout_Default )
wxTopLevelWindowBase::SetLayoutDirection(dir);
}
// ----------------------------------------------------------------------------
// wxTopLevelWindowMSW fullscreen
// ----------------------------------------------------------------------------

View File

@@ -1018,6 +1018,59 @@ bool wxWindowMSW::ScrollPages(int pages)
down ? pages : -pages);
}
// ----------------------------------------------------------------------------
// RTL support
// ----------------------------------------------------------------------------
void wxWindowMSW::SetLayoutDirection(wxLayoutDirection dir)
{
const HWND hwnd = GetHwnd();
wxCHECK_RET( hwnd, _T("layout direction must be set after window creation") );
LONG styleOld = ::GetWindowLong(hwnd, GWL_EXSTYLE);
LONG styleNew = styleOld;
switch ( dir )
{
case wxLayout_LeftToRight:
styleNew &= ~WS_EX_LAYOUTRTL;
break;
case wxLayout_RightToLeft:
styleNew |= WS_EX_LAYOUTRTL;
break;
default:
wxFAIL_MSG(_T("unsupported layout direction"));
break;
}
if ( styleNew != styleOld )
{
::SetWindowLong(hwnd, GWL_EXSTYLE, styleNew);
}
}
wxLayoutDirection wxWindowMSW::GetLayoutDirection() const
{
const HWND hwnd = GetHwnd();
wxCHECK_MSG( hwnd, wxLayout_Default, _T("invalid window") );
return ::GetWindowLong(hwnd, GWL_EXSTYLE) & WS_EX_LAYOUTRTL
? wxLayout_RightToLeft
: wxLayout_LeftToRight;
}
wxCoord
wxWindowMSW::AdjustForLayoutDirection(wxCoord x,
wxCoord WXUNUSED(width),
wxCoord WXUNUSED(widthTotal)) const
{
// Win32 mirrors the coordinates of RTL windows automatically, so don't
// redo it ourselves
return x;
}
// ---------------------------------------------------------------------------
// subclassing
// ---------------------------------------------------------------------------