Statistiques
| Révision :

root / tmp / org.txm.setups / nsis / Examples / languages.nsi @ 3097

Historique | Voir | Annoter | Télécharger (7,19 ko)

1 728 mdecorde
; languages.nsi
2 728 mdecorde
;
3 728 mdecorde
; This is an example of a multilingual installer
4 728 mdecorde
; The user can select the language on startup
5 728 mdecorde
6 2956 mdecorde
!pragma warning error all
7 2956 mdecorde
8 728 mdecorde
;--------------------------------
9 728 mdecorde
10 728 mdecorde
OutFile languages.exe
11 728 mdecorde
12 728 mdecorde
XPStyle on
13 728 mdecorde
14 728 mdecorde
RequestExecutionLevel user
15 728 mdecorde
16 2956 mdecorde
Unicode True
17 728 mdecorde
;--------------------------------
18 728 mdecorde
19 728 mdecorde
Page license
20 728 mdecorde
Page components
21 728 mdecorde
Page instfiles
22 728 mdecorde
23 728 mdecorde
;--------------------------------
24 728 mdecorde
25 728 mdecorde
; First is default
26 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\English.nlf"
27 2956 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Czech.nlf"
28 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Dutch.nlf"
29 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\French.nlf"
30 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\German.nlf"
31 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Korean.nlf"
32 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Russian.nlf"
33 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Spanish.nlf"
34 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Swedish.nlf"
35 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\TradChinese.nlf"
36 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\SimpChinese.nlf"
37 728 mdecorde
LoadLanguageFile "${NSISDIR}\Contrib\Language files\Slovak.nlf"
38 728 mdecorde
39 728 mdecorde
; License data
40 728 mdecorde
; Not exactly translated, but it shows what's needed
41 728 mdecorde
LicenseLangString myLicenseData ${LANG_ENGLISH} "bigtest.nsi"
42 2956 mdecorde
LicenseLangString myLicenseData ${LANG_CZECH} "WordFuncTest.nsi"
43 728 mdecorde
LicenseLangString myLicenseData ${LANG_DUTCH} "waplugin.nsi"
44 728 mdecorde
LicenseLangString myLicenseData ${LANG_FRENCH} "example1.nsi"
45 728 mdecorde
LicenseLangString myLicenseData ${LANG_GERMAN} "example2.nsi"
46 728 mdecorde
LicenseLangString myLicenseData ${LANG_KOREAN} "gfx.nsi"
47 728 mdecorde
LicenseLangString myLicenseData ${LANG_RUSSIAN} "languages.nsi"
48 728 mdecorde
LicenseLangString myLicenseData ${LANG_SPANISH} "LogicLib.nsi"
49 728 mdecorde
LicenseLangString myLicenseData ${LANG_SWEDISH} "makensis.nsi"
50 728 mdecorde
LicenseLangString myLicenseData ${LANG_TRADCHINESE} "one-section.nsi"
51 728 mdecorde
LicenseLangString myLicenseData ${LANG_SIMPCHINESE} "primes.nsi"
52 728 mdecorde
LicenseLangString myLicenseData ${LANG_SLOVAK} "silent.nsi"
53 728 mdecorde
54 728 mdecorde
LicenseData $(myLicenseData)
55 728 mdecorde
56 728 mdecorde
; Set name using the normal interface (Name command)
57 728 mdecorde
LangString Name ${LANG_ENGLISH} "English"
58 2956 mdecorde
LangString Name ${LANG_CZECH} "Czech"
59 728 mdecorde
LangString Name ${LANG_DUTCH} "Dutch"
60 728 mdecorde
LangString Name ${LANG_FRENCH} "French"
61 728 mdecorde
LangString Name ${LANG_GERMAN} "German"
62 728 mdecorde
LangString Name ${LANG_KOREAN} "Korean"
63 728 mdecorde
LangString Name ${LANG_RUSSIAN} "Russian"
64 728 mdecorde
LangString Name ${LANG_SPANISH} "Spanish"
65 728 mdecorde
LangString Name ${LANG_SWEDISH} "Swedish"
66 728 mdecorde
LangString Name ${LANG_TRADCHINESE} "Traditional Chinese"
67 728 mdecorde
LangString Name ${LANG_SIMPCHINESE} "Simplified Chinese"
68 728 mdecorde
LangString Name ${LANG_SLOVAK} "Slovak"
69 728 mdecorde
70 728 mdecorde
Name $(Name)
71 728 mdecorde
72 728 mdecorde
; Directly change the inner lang strings (Same as ComponentText)
73 728 mdecorde
LangString ^ComponentsText ${LANG_ENGLISH} "English component page"
74 2956 mdecorde
LangString ^ComponentsText ${LANG_CZECH} "Czech component page"
75 728 mdecorde
LangString ^ComponentsText ${LANG_DUTCH} "Dutch component page"
76 728 mdecorde
LangString ^ComponentsText ${LANG_FRENCH} "French component page"
77 728 mdecorde
LangString ^ComponentsText ${LANG_GERMAN} "German component page"
78 728 mdecorde
LangString ^ComponentsText ${LANG_KOREAN} "Korean component page"
79 728 mdecorde
LangString ^ComponentsText ${LANG_RUSSIAN} "Russian component page"
80 728 mdecorde
LangString ^ComponentsText ${LANG_SPANISH} "Spanish component page"
81 728 mdecorde
LangString ^ComponentsText ${LANG_SWEDISH} "Swedish component page"
82 728 mdecorde
LangString ^ComponentsText ${LANG_TRADCHINESE} "Traditional Chinese component page"
83 728 mdecorde
LangString ^ComponentsText ${LANG_SIMPCHINESE} "Simplified Chinese component page"
84 728 mdecorde
LangString ^ComponentsText ${LANG_SLOVAK} "Slovak component page"
85 728 mdecorde
86 728 mdecorde
; Set one text for all languages (simply don't use a LangString)
87 728 mdecorde
CompletedText "Languages example completed"
88 728 mdecorde
89 728 mdecorde
; A LangString for the section name
90 728 mdecorde
LangString Sec1Name ${LANG_ENGLISH} "English section #1"
91 2956 mdecorde
LangString Sec1Name ${LANG_CZECH} "Czech section #1"
92 728 mdecorde
LangString Sec1Name ${LANG_DUTCH} "Dutch section #1"
93 728 mdecorde
LangString Sec1Name ${LANG_FRENCH} "French section #1"
94 728 mdecorde
LangString Sec1Name ${LANG_GERMAN} "German section #1"
95 728 mdecorde
LangString Sec1Name ${LANG_KOREAN} "Korean section #1"
96 728 mdecorde
LangString Sec1Name ${LANG_RUSSIAN} "Russian section #1"
97 728 mdecorde
LangString Sec1Name ${LANG_SPANISH} "Spanish section #1"
98 728 mdecorde
LangString Sec1Name ${LANG_SWEDISH} "Swedish section #1"
99 728 mdecorde
LangString Sec1Name ${LANG_TRADCHINESE} "Trandional Chinese section #1"
100 728 mdecorde
LangString Sec1Name ${LANG_SIMPCHINESE} "Simplified Chinese section #1"
101 728 mdecorde
LangString Sec1Name ${LANG_SLOVAK} "Slovak section #1"
102 728 mdecorde
103 728 mdecorde
; A multilingual message
104 728 mdecorde
LangString Message ${LANG_ENGLISH} "English message"
105 2956 mdecorde
LangString Message ${LANG_CZECH} "Czech message"
106 728 mdecorde
LangString Message ${LANG_DUTCH} "Dutch message"
107 728 mdecorde
LangString Message ${LANG_FRENCH} "French message"
108 728 mdecorde
LangString Message ${LANG_GERMAN} "German message"
109 728 mdecorde
LangString Message ${LANG_KOREAN} "Korean message"
110 728 mdecorde
LangString Message ${LANG_RUSSIAN} "Russian message"
111 728 mdecorde
LangString Message ${LANG_SPANISH} "Spanish message"
112 728 mdecorde
LangString Message ${LANG_SWEDISH} "Swedish message"
113 728 mdecorde
LangString Message ${LANG_TRADCHINESE} "Trandional Chinese message"
114 728 mdecorde
LangString Message ${LANG_SIMPCHINESE} "Simplified Chinese message"
115 728 mdecorde
LangString Message ${LANG_SLOVAK} "Slovak message"
116 728 mdecorde
117 728 mdecorde
;--------------------------------
118 728 mdecorde
119 728 mdecorde
;Section names set by Language strings
120 728 mdecorde
;It works with ! too
121 728 mdecorde
Section !$(Sec1Name) sec1
122 728 mdecorde
	MessageBox MB_OK $(Message)
123 728 mdecorde
SectionEnd
124 728 mdecorde
125 728 mdecorde
; The old, slow, wasteful way
126 728 mdecorde
; Look at this section and see why LangString is so much easier
127 728 mdecorde
Section "Section number two"
128 728 mdecorde
	StrCmp $LANGUAGE ${LANG_ENGLISH} 0 +2
129 728 mdecorde
		MessageBox MB_OK "Installing English stuff"
130 2956 mdecorde
	StrCmp $LANGUAGE ${LANG_CZECH} 0 +2
131 2956 mdecorde
		MessageBox MB_OK "Installing Czech stuff"
132 728 mdecorde
	StrCmp $LANGUAGE ${LANG_DUTCH} 0 +2
133 728 mdecorde
		MessageBox MB_OK "Installing Dutch stuff"
134 728 mdecorde
	StrCmp $LANGUAGE ${LANG_FRENCH} 0 +2
135 728 mdecorde
		MessageBox MB_OK "Installing French stuff"
136 728 mdecorde
	StrCmp $LANGUAGE ${LANG_GERMAN} 0 +2
137 728 mdecorde
		MessageBox MB_OK "Installing German stuff"
138 728 mdecorde
	StrCmp $LANGUAGE ${LANG_KOREAN} 0 +2
139 728 mdecorde
		MessageBox MB_OK "Installing Korean stuff"
140 728 mdecorde
	StrCmp $LANGUAGE ${LANG_RUSSIAN} 0 +2
141 728 mdecorde
		MessageBox MB_OK "Installing Russian stuff"
142 728 mdecorde
	StrCmp $LANGUAGE ${LANG_SPANISH} 0 +2
143 728 mdecorde
		MessageBox MB_OK "Installing Spanish stuff"
144 728 mdecorde
	StrCmp $LANGUAGE ${LANG_SWEDISH} 0 +2
145 728 mdecorde
		MessageBox MB_OK "Installing Swedish stuff"
146 728 mdecorde
	StrCmp $LANGUAGE ${LANG_TRADCHINESE} 0 +2
147 728 mdecorde
		MessageBox MB_OK "Installing Traditional Chinese stuff"
148 728 mdecorde
	StrCmp $LANGUAGE ${LANG_SIMPCHINESE} 0 +2
149 728 mdecorde
		MessageBox MB_OK "Installing Simplified Chinese stuff"
150 728 mdecorde
	StrCmp $LANGUAGE ${LANG_SLOVAK} 0 +2
151 728 mdecorde
		MessageBox MB_OK "Installing Slovak stuff"
152 728 mdecorde
SectionEnd
153 728 mdecorde
154 728 mdecorde
;--------------------------------
155 728 mdecorde
156 728 mdecorde
Function .onInit
157 728 mdecorde
158 728 mdecorde
	;Language selection dialog
159 728 mdecorde
160 728 mdecorde
	Push ""
161 728 mdecorde
	Push ${LANG_ENGLISH}
162 728 mdecorde
	Push English
163 2956 mdecorde
	Push ${LANG_CZECH}
164 2956 mdecorde
	Push Czech
165 728 mdecorde
	Push ${LANG_DUTCH}
166 728 mdecorde
	Push Dutch
167 728 mdecorde
	Push ${LANG_FRENCH}
168 728 mdecorde
	Push French
169 728 mdecorde
	Push ${LANG_GERMAN}
170 728 mdecorde
	Push German
171 728 mdecorde
	Push ${LANG_KOREAN}
172 728 mdecorde
	Push Korean
173 728 mdecorde
	Push ${LANG_RUSSIAN}
174 728 mdecorde
	Push Russian
175 728 mdecorde
	Push ${LANG_SPANISH}
176 728 mdecorde
	Push Spanish
177 728 mdecorde
	Push ${LANG_SWEDISH}
178 728 mdecorde
	Push Swedish
179 728 mdecorde
	Push ${LANG_TRADCHINESE}
180 728 mdecorde
	Push "Traditional Chinese"
181 728 mdecorde
	Push ${LANG_SIMPCHINESE}
182 728 mdecorde
	Push "Simplified Chinese"
183 728 mdecorde
	Push ${LANG_SLOVAK}
184 728 mdecorde
	Push Slovak
185 728 mdecorde
	Push A ; A means auto count languages
186 728 mdecorde
	       ; for the auto count to work the first empty push (Push "") must remain
187 728 mdecorde
	LangDLL::LangDialog "Installer Language" "Please select the language of the installer"
188 728 mdecorde
189 728 mdecorde
	Pop $LANGUAGE
190 728 mdecorde
	StrCmp $LANGUAGE "cancel" 0 +2
191 728 mdecorde
		Abort
192 728 mdecorde
FunctionEnd