createlanguage.bmx 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. ' createlanguage.bmx
  2. Strict
  3. Import MaxGUI.Drivers
  4. ' Enable the localization engine, and automatically localize gadgets when they are created
  5. SetLocalizationMode(LOCALIZATION_ON|LOCALIZATION_OVERRIDE)
  6. Global window:TGadget = CreateWindow("{{window_title}}",100,100,320,240,Null,WINDOW_TITLEBAR|WINDOW_STATUS)
  7. Global btnEnglish:TGadget = CreateButton("{{btn_english}}",5,5,100,30,window,BUTTON_RADIO)
  8. Global btnFrench:TGadget = CreateButton("{{btn_french}}",5,40,100,30,window,BUTTON_RADIO)
  9. SetButtonState( btnEnglish, True )
  10. ' Create a new 'English' language
  11. Global lngEnglish:TMaxGUILanguage = CreateLanguage("English (English)")
  12. DefineLanguageToken( lngEnglish, "window_title", "My Window" )
  13. DefineLanguageToken( lngEnglish, "btn_english", "English" )
  14. DefineLanguageToken( lngEnglish, "btn_french", "French" )
  15. ' Create a new 'French' language
  16. Global lngFrench:TMaxGUILanguage = CreateLanguage("Français (French)")
  17. DefineLanguageToken( lngFrench, "window_title", "Ma Fenêtre" )
  18. DefineLanguageToken( lngFrench, "btn_english", "Anglais" )
  19. DefineLanguageToken( lngFrench, "btn_french", "Français" )
  20. ' Set the default language
  21. SetLocalizationLanguage( lngEnglish )
  22. Repeat
  23. SetStatusText window, LanguageName( LocalizationLanguage() )
  24. Select WaitEvent()
  25. Case EVENT_GADGETACTION
  26. Select EventSource()
  27. Case btnEnglish
  28. SetLocalizationLanguage( lngEnglish )
  29. Case btnFrench
  30. SetLocalizationLanguage( lngFrench )
  31. EndSelect
  32. Case EVENT_APPTERMINATE, EVENT_WINDOWCLOSE
  33. End
  34. EndSelect
  35. Forever