Page 1 of 1

language data change example?

Posted: Wed Oct 12, 2011 6:05 pm
by ehowington
Anyone here show a small amount of code to give an example of couple languages in a app and how to switch between those language data perhaps a procedure example?

Re: language data change example?

Posted: Wed Oct 12, 2011 6:45 pm
by falsam

Code: Select all

EnableExplicit

Enumeration
  #Mainform
  #Text1
  #Name 
  #Update
  #Language
EndEnumeration

Global PreferenceLanguage.i

Procedure.s SetText(Local.s, International.s)
  Select PreferenceLanguage
      
    Case 1 ;Local
      ProcedureReturn local
    
    Case 2;International
      ProcedureReturn International
    
  EndSelect
EndProcedure


Procedure ChangeLanguage(Value.i)
  PreferenceLanguage=Value

  SetWindowTitle(#Mainform, SetText("Titre en français", "English Title"))
  SetGadgetText(#Text1, SetText("Nom","Name"))
  SetGadgetText(#Name, SetText("Entrez votre nom","Enter your name"))
  SetGadgetText(#Update, SetText("Mise à jour","Update"))
EndProcedure


OpenWindow(#Mainform, 0, 0, 500, 300, "", #PB_Window_ScreenCentered|#PB_Window_SystemMenu)
TextGadget(#Text1, 10, 20, 80, 20, "")
StringGadget(#Name, 90, 20, 100, 20, "")
ButtonGadget(#Update, 200, 20, 80, 20, "")

ButtonGadget(#Language, 470, 270, 30, 30, "Fr")
SetGadgetData(#Language, 2)

ChangeLanguage(2)

Repeat
  Select WaitWindowEvent()
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #Language
          If GetGadgetData(#language)=1
            SetGadgetData(#language, 2)
            SetGadgetText(#Language, "Fr")
            ChangeLanguage(2)
            
          Else
            
            SetGadgetData(#language, 1)
            SetGadgetText(#Language, "En")
            ChangeLanguage(1)
          EndIf
          
        Case #Update
          MessageRequester(SetText("Mise à jour","Update"), Settext("Mise à jour effectuée","Update performed"))
          
      EndSelect
        
    Case #PB_Event_CloseWindow
      End
  EndSelect
  
ForEver

Re: language data change example?

Posted: Wed Oct 12, 2011 6:59 pm
by luis
http://www.purebasic.fr/english/viewtop ... 73#p191073

Change "Read" with "Read.s" (the code is for a older PB version)

Re: language data change example?

Posted: Wed Oct 12, 2011 8:56 pm
by ABBKlaus
You can take TailBite as an example for this masterpiece of code :wink:
(the link that luis had posted)