|
1 /* |
|
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: The implementation for presentation elements. |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #include <btsdp.h> |
|
20 |
|
21 #include "irlanguagemapper.h" |
|
22 #include "irdebug.h" |
|
23 |
|
24 //============================= MEMBER FUNCTIONS ============================= |
|
25 |
|
26 // --------------------------------------------------------------------------- |
|
27 // IRLanguageMapper::MapLanguage |
|
28 // --------------------------------------------------------------------------- |
|
29 |
|
30 TBufC8<KIRLanguageCodeLength> IRLanguageMapper::MapLanguage( |
|
31 TLanguage aLanguage ) |
|
32 { |
|
33 IRLOG_DEBUG( "IRLanguageMapper::MapLanguage - Entering" ); |
|
34 TUint16 value = 0; |
|
35 |
|
36 switch ( aLanguage ) |
|
37 { |
|
38 case ELangEnglish: |
|
39 value = KLanguageEnglish; |
|
40 break; |
|
41 case ELangFrench: |
|
42 value = KLanguageFrench; |
|
43 break; |
|
44 case ELangGerman: |
|
45 value = KLanguageGerman; |
|
46 break; |
|
47 case ELangSpanish: |
|
48 value = KLanguageSpanish; |
|
49 break; |
|
50 case ELangItalian: |
|
51 value = KLanguageItalian; |
|
52 break; |
|
53 case ELangSwedish: |
|
54 value = KLanguageSwedish; |
|
55 break; |
|
56 case ELangDanish: |
|
57 value = KLanguageDanish; |
|
58 break; |
|
59 case ELangNorwegian: |
|
60 value = KLanguageNorwegian; |
|
61 break; |
|
62 case ELangFinnish: |
|
63 value = KLanguageFinnish; |
|
64 break; |
|
65 case ELangAmerican: |
|
66 value = KLanguageEnglish; |
|
67 break; |
|
68 case ELangSwissFrench: |
|
69 value = KLanguageFrench; |
|
70 break; |
|
71 case ELangSwissGerman: |
|
72 value = KLanguageGerman; |
|
73 break; |
|
74 case ELangPortuguese: |
|
75 value = KLanguagePortuguese; |
|
76 break; |
|
77 case ELangTurkish: |
|
78 value = KLanguageTurkish; |
|
79 break; |
|
80 case ELangIcelandic: |
|
81 value = KLanguageIcelandic; |
|
82 break; |
|
83 case ELangRussian: |
|
84 value = KLanguageRussian; |
|
85 break; |
|
86 case ELangHungarian: |
|
87 value = KLanguageHungarian; |
|
88 break; |
|
89 case ELangDutch: |
|
90 value = KLanguageDutch; |
|
91 break; |
|
92 case ELangBelgianFlemish: |
|
93 value = KLanguageDutch; |
|
94 break; |
|
95 case ELangAustralian: |
|
96 value = KLanguageEnglish; |
|
97 break; |
|
98 case ELangBelgianFrench: |
|
99 value = KLanguageFrench; |
|
100 break; |
|
101 case ELangAustrian: |
|
102 value = KLanguageGerman; |
|
103 break; |
|
104 case ELangNewZealand: |
|
105 value = KLanguageEnglish; |
|
106 break; |
|
107 case ELangInternationalFrench: |
|
108 value = KLanguageFrench; |
|
109 break; |
|
110 case ELangCzech: |
|
111 value = KLanguageCzech; |
|
112 break; |
|
113 case ELangSlovak: |
|
114 value = KLanguageSlovak; |
|
115 break; |
|
116 case ELangPolish: |
|
117 value = KLanguagePolish; |
|
118 break; |
|
119 case ELangSlovenian: |
|
120 value = KLanguageSlovenian; |
|
121 break; |
|
122 case ELangTaiwanChinese: |
|
123 value = KLanguageChinese; |
|
124 break; |
|
125 case ELangHongKongChinese: |
|
126 value = KLanguageChinese; |
|
127 break; |
|
128 case ELangPrcChinese: |
|
129 value = KLanguageChinese; |
|
130 break; |
|
131 case ELangJapanese: |
|
132 value = KLanguageJapanese; |
|
133 break; |
|
134 case ELangThai: |
|
135 value = KLanguageThai; |
|
136 break; |
|
137 case ELangAfrikaans: |
|
138 value = KLanguageAfrikaans; |
|
139 break; |
|
140 case ELangAlbanian: |
|
141 value = KLanguageAlbanian; |
|
142 break; |
|
143 case ELangAmharic: |
|
144 value = KLanguageAmharic; |
|
145 break; |
|
146 case ELangArabic: |
|
147 value = KLanguageArabic; |
|
148 break; |
|
149 case ELangArmenian: |
|
150 value = KLanguageArmenian; |
|
151 break; |
|
152 case ELangTagalog: |
|
153 value = KLanguageTagalog; |
|
154 break; |
|
155 case ELangBelarussian: |
|
156 value = KLanguageRussian; |
|
157 break; |
|
158 case ELangBengali: |
|
159 value = KLanguageBengali; |
|
160 break; |
|
161 case ELangBulgarian: |
|
162 value = KLanguageBulgarian; |
|
163 break; |
|
164 case ELangBurmese: |
|
165 value = KLanguageBurmese; |
|
166 break; |
|
167 case ELangCatalan: |
|
168 value = KLanguageCatalan; |
|
169 break; |
|
170 case ELangCroatian: |
|
171 value = KLanguageCroatian; |
|
172 break; |
|
173 case ELangCanadianEnglish: |
|
174 value = KLanguageEnglish; |
|
175 break; |
|
176 case ELangInternationalEnglish: |
|
177 value = KLanguageEnglish; |
|
178 break; |
|
179 case ELangSouthAfricanEnglish: |
|
180 value = KLanguageEnglish; |
|
181 break; |
|
182 case ELangEstonian: |
|
183 value = KLanguageEstonian; |
|
184 break; |
|
185 case ELangFarsi: |
|
186 value = KLanguagePersian; |
|
187 break; |
|
188 case ELangCanadianFrench: |
|
189 value = KLanguageFrench; |
|
190 break; |
|
191 case ELangScotsGaelic: |
|
192 value = KLanguageScotsGaelic; |
|
193 break; |
|
194 case ELangGeorgian: |
|
195 value = KLanguageGeorgian; |
|
196 break; |
|
197 case ELangGreek: |
|
198 value = KLanguageGreek; |
|
199 break; |
|
200 case ELangCyprusGreek: |
|
201 value = KLanguageGreek; |
|
202 break; |
|
203 case ELangGujarati: |
|
204 value = KLanguageGujarati; |
|
205 break; |
|
206 case ELangHebrew: |
|
207 value = KLanguageHebrew; |
|
208 break; |
|
209 case ELangHindi: |
|
210 value = KLanguageHindi; |
|
211 break; |
|
212 case ELangIndonesian: |
|
213 value = KLanguageIndonesian; |
|
214 break; |
|
215 case ELangIrish: |
|
216 value = KLanguageIrish; |
|
217 break; |
|
218 case ELangSwissItalian: |
|
219 value = KLanguageItalian; |
|
220 break; |
|
221 case ELangKannada: |
|
222 value = KLanguageKannada; |
|
223 break; |
|
224 case ELangKazakh: |
|
225 value = KLanguageKazakh; |
|
226 break; |
|
227 case ELangKhmer: |
|
228 value = KLanguageCambodian; |
|
229 break; |
|
230 case ELangKorean: |
|
231 value = KLanguageKorean; |
|
232 break; |
|
233 case ELangLao: |
|
234 value = KLanguageLaothian; |
|
235 break; |
|
236 case ELangLatvian: |
|
237 value = KLanguageLatvian; |
|
238 break; |
|
239 case ELangLithuanian: |
|
240 value = KLanguageLithuanian; |
|
241 break; |
|
242 case ELangMacedonian: |
|
243 value = KLanguageMacedonian; |
|
244 break; |
|
245 case ELangMalay: |
|
246 value = KLanguageMalay; |
|
247 break; |
|
248 case ELangMalayalam: |
|
249 value = KLanguageMalayalam; |
|
250 break; |
|
251 case ELangMarathi: |
|
252 value = KLanguageMarathi; |
|
253 break; |
|
254 case ELangMoldavian: |
|
255 value = KLanguageMoldavian; |
|
256 break; |
|
257 case ELangMongolian: |
|
258 value = KLanguageMongolian; |
|
259 break; |
|
260 case ELangNorwegianNynorsk: |
|
261 value = KLanguageNorwegian; |
|
262 break; |
|
263 case ELangBrazilianPortuguese: |
|
264 value = KLanguagePortuguese; |
|
265 break; |
|
266 case ELangPunjabi: |
|
267 value = KLanguagePunjabi; |
|
268 break; |
|
269 case ELangRomanian: |
|
270 value = KLanguageRomanian; |
|
271 break; |
|
272 case ELangSerbian: |
|
273 value = KLanguageSerbian; |
|
274 break; |
|
275 case ELangSinhalese: |
|
276 value = KLanguageSinhalese; |
|
277 break; |
|
278 case ELangSomali: |
|
279 value = KLanguageSomali; |
|
280 break; |
|
281 case ELangInternationalSpanish: |
|
282 value = KLanguageSpanish; |
|
283 break; |
|
284 case ELangLatinAmericanSpanish: |
|
285 value = KLanguageSpanish; |
|
286 break; |
|
287 case ELangSwahili: |
|
288 value = KLanguageSwahili; |
|
289 break; |
|
290 case ELangFinlandSwedish: |
|
291 value = KLanguageSwedish; |
|
292 break; |
|
293 case ELangTamil: |
|
294 value = KLanguageTamil; |
|
295 break; |
|
296 case ELangTelugu: |
|
297 value = KLanguageTelugu; |
|
298 break; |
|
299 case ELangTibetan: |
|
300 value = KLanguageTibetan; |
|
301 break; |
|
302 case ELangTigrinya: |
|
303 value = KLanguageTigrinya; |
|
304 break; |
|
305 case ELangCyprusTurkish: |
|
306 value = KLanguageTurkish; |
|
307 break; |
|
308 case ELangTurkmen: |
|
309 value = KLanguageTurkmen; |
|
310 break; |
|
311 case ELangUkrainian: |
|
312 value = KLanguageUkrainian; |
|
313 break; |
|
314 case ELangUrdu: |
|
315 value = KLanguageUrdu; |
|
316 break; |
|
317 case ELangVietnamese: |
|
318 value = KLanguageVietnamese; |
|
319 break; |
|
320 case ELangWelsh: |
|
321 value = KLanguageWelsh; |
|
322 break; |
|
323 case ELangZulu: |
|
324 value = KLanguageZulu; |
|
325 break; |
|
326 default: |
|
327 value = KLanguageEnglish; |
|
328 break; |
|
329 } |
|
330 |
|
331 /* translate the two bytes into actual 'string' */ |
|
332 TBuf8<KIRLanguageCodeLength> ret; |
|
333 TUint char1 = ( value >> 8 ) & 0xFFu; |
|
334 TUint char2 = value & 0xFFu; |
|
335 ret.Append( static_cast<TUint8> ( char1 ) ); |
|
336 ret.Append( static_cast<TUint8> ( char2 ) ); |
|
337 IRLOG_DEBUG( "IRLanguageMapper::MapLanguage - Exiting" ); |
|
338 return ret; |
|
339 } |
|
340 |
|
341 // End of File |