-
Notifications
You must be signed in to change notification settings - Fork 8
/
GFPTool_AddLanguage.pb
164 lines (138 loc) · 4.52 KB
/
GFPTool_AddLanguage.pb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
;***************************************
;*** GreenForce Player *** GF-Player ***
;*** http://GFP.RRSoftware.de **********
;*** (c) 2009 - 2013 RocketRider *******
;***************************************
#PLAYER_VERSION = "1.00"
#USE_OEM_VERSION = #False
#WINDOW_MAIN = 0
#GFP_LANGUAGE_PLAYER = #False
Structure MediaFile
sFile.s
Memory.i
sRealFile.s
iPlaying.i
qOffset.q
*StreamingFile
EndStructure
Global MediaFile.MediaFile
Procedure Requester_Cant_Update()
EndProcedure
XIncludeFile "include\GFP_PBCompatibility.pbi"
XIncludeFile "include\GFP_MachineID.pbi"
XIncludeFile "include\GFP_Settings.pbi"
XIncludeFile "include\GFP_Language.pbi"
XIncludeFile "include\GFP_SpecialFolder.pbi"
EnableExplicit
Define sDatabaseFile.s, i.i, event.i, Quit.i, sFile.s, sLine.s
Procedure __AnsiString(str.s)
Protected *ptr
*ptr = AllocateMemory(Len(str)+1)
If *ptr
PokeS(*ptr, str, -1,#PB_Ascii)
EndIf
ProcedureReturn *ptr
EndProcedure
Procedure GetDPI()
EndProcedure
Procedure Requester_Error(sText.s)
MessageRequester("Error", sText, #MB_ICONERROR)
EndProcedure
sDatabaseFile.s = "data.sqlite";GetSpecialFolder(#CSIDL_APPDATA)+"\GF-Player\data.sqlite"
If FileSize(sDatabaseFile)<1
sDatabaseFile="data.sqlite"
If FileSize(sDatabaseFile)<1
sDatabaseFile.s = OpenFileRequester("Select Database", sDatabaseFile, "*.*", 0)
EndIf
EndIf
If sDatabaseFile=""
End
EndIf
InitLanguage(sDatabaseFile, #LANGUAGE_EN)
OpenWindow(0, 0, 0, 400, 430, "GFP - Add language", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered)
ScrollAreaGadget(0, 0, 0, 400, 400, 350, iLastLanguageItem*30+100)
TextGadget(#PB_Any, 5, 5, 150, 20, "Language name: (EN)", #PB_Text_Center)
StringGadget(5, 165, 5, 200, 20, "")
TextGadget(#PB_Any, 5, 50, 150, 20, "English text", #PB_Text_Center)
TextGadget(#PB_Any, 165, 50, 200, 20, "Your text", #PB_Text_Center)
Dim GadgetList.i(iLastLanguageItem)
For i=0 To iLastLanguageItem-1
StringGadget(#PB_Any, 5, 70 + i*30, 150, 20, Language(i), #PB_String_ReadOnly)
GadgetList(i) = StringGadget(#PB_Any, 165, 70 + i*30, 200, 20, ""); Language(i)
Next
CloseGadgetList()
ButtonGadget(1, 5, 405, 70, 20, "Load")
ButtonGadget(2, 80, 405, 70, 20, "Save")
ButtonGadget(3, 155, 405, 90, 20, "Insert into DB")
ButtonGadget(4, 325, 405, 70, 20, "Close")
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_CloseWindow ; If the user has pressed on the close button
Quit = #True
EndIf
If event = #PB_Event_Gadget
Select EventGadget()
Case 1
sFile.s = OpenFileRequester("Choose Language file","","All Files (*.*)|*.*",0)
If sFile
If ReadFile(1, sFile)
sLine.s = ReadString(1, #PB_Unicode)
SetGadgetText(5, sLine)
While Eof(1)=0
sLine.s = ReadString(1, #PB_Unicode)
If Trim(sLine)
SetGadgetText(GadgetList(Val(StringField(sLine, 1, ":"))), StringField(sLine, 2, ":"))
EndIf
Wend
EndIf
CloseFile(1)
EndIf
Case 2
sFile.s = SaveFileRequester("Save Language file","","All Files (*.*)|*.*",0)
If sFile
If CreateFile(1, sFile)
WriteStringN(1, GetGadgetText(5), #PB_Unicode)
For i=0 To iLastLanguageItem-1
WriteStringN(1, Str(i)+":"+GetGadgetText(GadgetList(i)), #PB_Unicode)
Next
EndIf
CloseFile(1)
EndIf
Case 3
sFile.s = OpenFileRequester("Choose Language file","","All Files (*.*)|*.*",0)
If sFile
If AddNewLanguage(sDatabaseFile, sFile)
MessageRequester("Succsessfull updated", "Succsessfull updated!", #MB_ICONINFORMATION)
Else
MessageRequester("Error", "Can't update Databese.", #MB_ICONERROR)
EndIf
EndIf
Case 4
Quit = #True
EndSelect
EndIf
Until Quit = #True
; IDE Options = PureBasic 5.11 (Windows - x86)
; CursorPosition = 25
; Folding = y
; EnableUnicode
; EnableXP
; EnableUser
; EnableOnError
; UseIcon = data\Language.ico
; Executable = GFP-SDK\Language\GFP-LanguageTool.exe
; EnableCompileCount = 181
; EnableBuildCount = 52
; EnableExeConstant
; IncludeVersionInfo
; VersionField0 = 0,1,1,0
; VersionField1 = 0,1,1,0
; VersionField2 = RRSoftware
; VersionField3 = GreenForce-Player Languagetool
; VersionField4 = 0.11
; VersionField5 = 0.11
; VersionField6 = GreenForce-Player Languagetool
; VersionField7 = Languagetool
; VersionField8 = GreenForce-Player Languagetool
; VersionField9 = (c) 2009 - 2010 RocketRider
; VersionField14 = http://www.RRSoftware.de