1 /* Code generated from eC source file: i18n.ec */
3 typedef long long int64;
4 typedef unsigned long long uint64;
8 #elif defined(__TINYC__)
10 #define __builtin_va_list va_list
11 #define __builtin_va_start va_start
12 #define __builtin_va_end va_end
14 #define strcasecmp stricmp
15 #define strncasecmp strnicmp
16 #define __declspec(x) __attribute__((x))
20 typedef long long int64;
21 typedef unsigned long long uint64;
23 typedef __int64 int64;
24 typedef unsigned __int64 uint64;
27 #define __ENDIAN_PAD(x) (8 - (x))
29 #define __ENDIAN_PAD(x) 0
32 #include <sys/types.h>
34 #if /*defined(_W64) || */(defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
40 #define arch_PointerSize sizeof(void *)
41 #define structSize_Instance (_64BIT ? 24 : 12)
43 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
45 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
47 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
49 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
51 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
53 struct __ecereNameSpace__ecere__sys__BTNode;
55 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
57 struct __ecereNameSpace__ecere__sys__BinaryTree
59 struct __ecereNameSpace__ecere__sys__BTNode * root;
61 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
62 void (* FreeKey)(void * key);
63 } __attribute__ ((gcc_struct));
65 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
67 struct __ecereNameSpace__ecere__sys__OldList
74 } __attribute__ ((gcc_struct));
76 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
78 struct __ecereNameSpace__ecere__com__Class
80 struct __ecereNameSpace__ecere__com__Class * prev;
81 struct __ecereNameSpace__ecere__com__Class * next;
87 int (* Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
88 void (* Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
91 struct __ecereNameSpace__ecere__com__Class * base;
92 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
93 struct __ecereNameSpace__ecere__sys__BinaryTree members;
94 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
95 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
96 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
97 struct __ecereNameSpace__ecere__sys__OldList derivatives;
101 struct __ecereNameSpace__ecere__com__Instance * module;
102 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
103 char * dataTypeString;
104 struct __ecereNameSpace__ecere__com__Instance * dataType;
106 int defaultAlignment;
107 void (* Initialize)();
109 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
110 char * designerClass;
111 unsigned int noExpansion;
112 char * defaultProperty;
113 unsigned int comRedefinition;
115 unsigned int isRemote;
116 unsigned int internalDecl;
118 unsigned int computeSize;
120 int destructionWatchOffset;
122 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
123 int inheritanceAccess;
126 struct __ecereNameSpace__ecere__sys__OldList conversions;
127 struct __ecereNameSpace__ecere__sys__OldList templateParams;
128 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
129 struct __ecereNameSpace__ecere__com__Class * templateClass;
130 struct __ecereNameSpace__ecere__sys__OldList templatized;
132 unsigned int isInstanceClass;
133 unsigned int byValueSystemClass;
134 } __attribute__ ((gcc_struct));
136 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name);
138 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
140 struct __ecereNameSpace__ecere__com__Instance
143 struct __ecereNameSpace__ecere__com__Class * _class;
145 } __attribute__ ((gcc_struct));
147 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
149 struct __ecereNameSpace__ecere__com__Property
151 struct __ecereNameSpace__ecere__com__Property * prev;
152 struct __ecereNameSpace__ecere__com__Property * next;
154 unsigned int isProperty;
157 struct __ecereNameSpace__ecere__com__Class * _class;
158 char * dataTypeString;
159 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
160 struct __ecereNameSpace__ecere__com__Instance * dataType;
161 void (* Set)(void * , int);
162 int (* Get)(void * );
163 unsigned int (* IsSet)(void * );
167 unsigned int conversion;
168 unsigned int watcherOffset;
170 unsigned int compiled;
171 unsigned int selfWatchable;
172 unsigned int isWatchable;
173 } __attribute__ ((gcc_struct));
175 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
177 struct __ecereNameSpace__ecere__com__DataMember
179 struct __ecereNameSpace__ecere__com__DataMember * prev;
180 struct __ecereNameSpace__ecere__com__DataMember * next;
182 unsigned int isProperty;
185 struct __ecereNameSpace__ecere__com__Class * _class;
186 char * dataTypeString;
187 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
188 struct __ecereNameSpace__ecere__com__Instance * dataType;
192 struct __ecereNameSpace__ecere__sys__OldList members;
193 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
196 } __attribute__ ((gcc_struct));
198 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
200 struct __ecereNameSpace__ecere__com__Method
203 struct __ecereNameSpace__ecere__com__Method * parent;
204 struct __ecereNameSpace__ecere__com__Method * left;
205 struct __ecereNameSpace__ecere__com__Method * right;
210 struct __ecereNameSpace__ecere__com__Class * _class;
212 char * dataTypeString;
213 struct __ecereNameSpace__ecere__com__Instance * dataType;
215 } __attribute__ ((gcc_struct));
217 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
219 struct __ecereNameSpace__ecere__com__SerialBuffer
221 unsigned char * _buffer;
225 } __attribute__ ((gcc_struct));
227 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
229 struct __ecereNameSpace__ecere__com__DataValue
244 } __attribute__ ((gcc_struct));
245 } __attribute__ ((gcc_struct));
247 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
249 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
255 char * dataTypeString;
256 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
257 } __attribute__ ((gcc_struct));
258 struct __ecereNameSpace__ecere__com__DataValue expression;
264 struct __ecereNameSpace__ecere__com__DataMember * member;
265 struct __ecereNameSpace__ecere__com__Property * prop;
266 struct __ecereNameSpace__ecere__com__Method * method;
267 } __attribute__ ((gcc_struct));
268 } __attribute__ ((gcc_struct));
269 } __attribute__ ((gcc_struct));
270 } __attribute__ ((gcc_struct));
272 static struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__moduleMaps;
274 extern char * __ecereNameSpace__ecere__sys__GetEnvironment(char * envName, char * envValue, int max);
276 extern char * strcpy(char * , const char * );
278 extern char * strstr(const char * , const char * );
280 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
282 struct __ecereNameSpace__ecere__com__NameSpace
285 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
286 struct __ecereNameSpace__ecere__com__NameSpace * left;
287 struct __ecereNameSpace__ecere__com__NameSpace * right;
289 struct __ecereNameSpace__ecere__com__NameSpace * parent;
290 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
291 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
292 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
293 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
294 } __attribute__ ((gcc_struct));
296 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
298 struct __ecereNameSpace__ecere__com__Module
300 struct __ecereNameSpace__ecere__com__Instance * application;
301 struct __ecereNameSpace__ecere__sys__OldList classes;
302 struct __ecereNameSpace__ecere__sys__OldList defines;
303 struct __ecereNameSpace__ecere__sys__OldList functions;
304 struct __ecereNameSpace__ecere__sys__OldList modules;
305 struct __ecereNameSpace__ecere__com__Instance * prev;
306 struct __ecereNameSpace__ecere__com__Instance * next;
312 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
313 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
314 } __attribute__ ((gcc_struct));
316 extern int sprintf(char * , char * , ...);
318 extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__sys__FileOpen(char * fileName, int mode);
320 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__IteratorPointer;
322 struct __ecereNameSpace__ecere__com__IteratorPointer;
324 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__MapIterator;
326 struct __ecereNameSpace__ecere__com__MapIterator
328 struct __ecereNameSpace__ecere__com__Instance * container;
329 struct __ecereNameSpace__ecere__com__IteratorPointer * pointer;
330 } __attribute__ ((gcc_struct));
332 extern int printf(char * , ...);
334 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Map_TPL_String__ecere__com__Map_TPL_String__String___;
336 extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
338 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Map_TPL_String__String_;
340 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
342 struct __ecereNameSpace__ecere__com__Instance * __ecereProp___ecereNameSpace__ecere__com__MapIterator_Get_map(struct __ecereNameSpace__ecere__com__MapIterator * this);
344 void __ecereProp___ecereNameSpace__ecere__com__MapIterator_Set_map(struct __ecereNameSpace__ecere__com__MapIterator * this, struct __ecereNameSpace__ecere__com__Instance * value);
346 extern struct __ecereNameSpace__ecere__com__Property ** __ecereProp___ecereNameSpace__ecere__com__MapIterator_map;
348 unsigned int __ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(struct __ecereNameSpace__ecere__com__Iterator * this, uint64 index, unsigned int create);
350 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
352 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Iterator;
354 struct __ecereNameSpace__ecere__com__Iterator
356 struct __ecereNameSpace__ecere__com__Instance * container;
357 struct __ecereNameSpace__ecere__com__IteratorPointer * pointer;
358 } __attribute__ ((gcc_struct));
360 uint64 __ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(struct __ecereNameSpace__ecere__com__Iterator * this);
362 void __ecereProp___ecereNameSpace__ecere__com__Iterator_Set_data(struct __ecereNameSpace__ecere__com__Iterator * this, uint64 value);
364 extern struct __ecereNameSpace__ecere__com__Property ** __ecereProp___ecereNameSpace__ecere__com__Iterator_data;
366 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
368 void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char * name)
370 struct __ecereNameSpace__ecere__com__Instance * f;
375 char lcMessages[256];
376 char * locale = (((void *)0));
378 if(__ecereNameSpace__ecere__sys__GetEnvironment("LANGUAGE", language, sizeof language))
380 else if(__ecereNameSpace__ecere__sys__GetEnvironment("LC_ALL", lcAll, sizeof lcAll))
382 else if(__ecereNameSpace__ecere__sys__GetEnvironment("LC_MESSAGES", lcMessages, sizeof lcMessages))
384 else if(__ecereNameSpace__ecere__sys__GetEnvironment("LANG", lang, sizeof lang))
390 if(language != locale)
391 strcpy(language, locale);
392 dot = strstr(language, ".");
397 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name)
398 sprintf(fileName, "<:%s>locale/%s/LC_MESSAGES/%s.mo", ((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name, locale, name);
400 sprintf(fileName, ":locale/%s/LC_MESSAGES/%s.mo", locale, name);
401 f = __ecereNameSpace__ecere__sys__FileOpen(fileName, 1);
404 sprintf(fileName, "locale/%s/LC_MESSAGES/%s.mo", locale, name);
405 f = __ecereNameSpace__ecere__sys__FileOpen(fileName, 1);
409 sprintf(fileName, "/usr/share/locale/%s/LC_MESSAGES/%s.mo", locale, name);
410 f = __ecereNameSpace__ecere__sys__FileOpen(fileName, 1);
414 unsigned int magic = 0;
416 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &magic, sizeof(unsigned int), 1);
417 if(magic == 0x950412de || magic == 0xde120495)
419 struct __ecereNameSpace__ecere__com__Instance * textMap;
420 unsigned int swap = magic != 0x950412de;
421 unsigned int revision = 0;
422 unsigned int numStrings = 0;
423 unsigned int origStrings = 0, transStrings = 0;
424 unsigned int hashingSize = 0, hashingOffset = 0;
427 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &revision, sizeof(unsigned int), 1);
429 ((((revision) & 0x000000ff) << 24) | (((revision) & 0x0000ff00) << 8) | (((revision) & 0x00ff0000) >> 8) | (((revision) & 0xff000000) >> 24));
430 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &numStrings, sizeof(unsigned int), 1);
432 ((((numStrings) & 0x000000ff) << 24) | (((numStrings) & 0x0000ff00) << 8) | (((numStrings) & 0x00ff0000) >> 8) | (((numStrings) & 0xff000000) >> 24));
433 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &origStrings, sizeof(unsigned int), 1);
435 ((((origStrings) & 0x000000ff) << 24) | (((origStrings) & 0x0000ff00) << 8) | (((origStrings) & 0x00ff0000) >> 8) | (((origStrings) & 0xff000000) >> 24));
436 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &transStrings, sizeof(unsigned int), 1);
438 ((((transStrings) & 0x000000ff) << 24) | (((transStrings) & 0x0000ff00) << 8) | (((transStrings) & 0x00ff0000) >> 8) | (((transStrings) & 0xff000000) >> 24));
439 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &hashingSize, sizeof(unsigned int), 1);
441 ((((hashingSize) & 0x000000ff) << 24) | (((hashingSize) & 0x0000ff00) << 8) | (((hashingSize) & 0x00ff0000) >> 8) | (((hashingSize) & 0xff000000) >> 24));
442 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &hashingOffset, sizeof(unsigned int), 1);
444 ((((hashingOffset) & 0x000000ff) << 24) | (((hashingOffset) & 0x0000ff00) << 8) | (((hashingOffset) & 0x00ff0000) >> 8) | (((hashingOffset) & 0xff000000) >> 24));
445 if(!__ecereNameSpace__ecere__moduleMaps)
446 __ecereNameSpace__ecere__moduleMaps = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__com__Map_TPL_String__ecere__com__Map_TPL_String__String___);
448 struct __ecereNameSpace__ecere__com__MapIterator it = (it.container = (void *)0, it.pointer = (void *)0, __ecereProp___ecereNameSpace__ecere__com__MapIterator_Set_map(&it, __ecereNameSpace__ecere__moduleMaps), it);
450 if(__ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&it, (uint64)(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name), 0x0))
451 (__ecereNameSpace__ecere__com__eInstance_DecRef(__ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(&it)), __ecereProp___ecereNameSpace__ecere__com__Iterator_Set_data(&it, 0));
454 struct __ecereNameSpace__ecere__com__Iterator __internalIterator =
456 __ecereNameSpace__ecere__moduleMaps, 0
459 __ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&__internalIterator, (uint64)(((uint64)(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name))), 0x1);
460 __ecereProp___ecereNameSpace__ecere__com__Iterator_Set_data(&__internalIterator, textMap = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__com__Map_TPL_String__String_));
462 for(c = 0; c < numStrings; c++)
464 unsigned int len = 0, offset = 0;
465 char * original = (((void *)0)), * translated = (((void *)0));
467 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(f, origStrings + c * 2 * sizeof(unsigned int), 0);
468 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &len, sizeof(unsigned int), 1);
470 ((((len) & 0x000000ff) << 24) | (((len) & 0x0000ff00) << 8) | (((len) & 0x00ff0000) >> 8) | (((len) & 0xff000000) >> 24));
471 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &offset, sizeof(unsigned int), 1);
473 ((((offset) & 0x000000ff) << 24) | (((offset) & 0x0000ff00) << 8) | (((offset) & 0x00ff0000) >> 8) | (((offset) & 0xff000000) >> 24));
474 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(f, offset, 0);
475 original = __ecereNameSpace__ecere__com__eSystem_New(sizeof(unsigned char) * (len + 1));
476 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, original, 1, len + 1);
477 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(f, transStrings + c * 2 * sizeof(unsigned int), 0);
478 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &len, sizeof(unsigned int), 1);
480 ((((len) & 0x000000ff) << 24) | (((len) & 0x0000ff00) << 8) | (((len) & 0x00ff0000) >> 8) | (((len) & 0xff000000) >> 24));
481 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, &offset, sizeof(unsigned int), 1);
483 ((((offset) & 0x000000ff) << 24) | (((offset) & 0x0000ff00) << 8) | (((offset) & 0x00ff0000) >> 8) | (((offset) & 0xff000000) >> 24));
484 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(f, offset, 0);
485 translated = __ecereNameSpace__ecere__com__eSystem_New(sizeof(unsigned char) * (len + 1));
486 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))f->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, translated, 1, len + 1);
489 struct __ecereNameSpace__ecere__com__MapIterator it = (it.container = (void *)0, it.pointer = (void *)0, __ecereProp___ecereNameSpace__ecere__com__MapIterator_Set_map(&it, textMap), it);
491 if(__ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&it, (uint64)(original), 0x0))
492 (__ecereNameSpace__ecere__com__eSystem_Delete(translated), translated = 0);
495 struct __ecereNameSpace__ecere__com__Iterator __internalIterator =
500 __ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&__internalIterator, (uint64)(((uint64)(original))), 0x1);
501 __ecereProp___ecereNameSpace__ecere__com__Iterator_Set_data(&__internalIterator, translated);
505 (__ecereNameSpace__ecere__com__eSystem_Delete(translated), translated = 0);
506 (__ecereNameSpace__ecere__com__eSystem_Delete(original), original = 0);
511 printf("Invalid format while loading %s\n", fileName);
513 (__ecereNameSpace__ecere__com__eInstance_DecRef(f), f = 0);
517 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Free;
519 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Delete;
521 void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module)
523 struct __ecereNameSpace__ecere__com__MapIterator it = (it.container = (void *)0, it.pointer = (void *)0, __ecereProp___ecereNameSpace__ecere__com__MapIterator_Set_map(&it, __ecereNameSpace__ecere__moduleMaps), it);
525 if(__ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&it, (uint64)(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name), 0x0))
527 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *))((struct __ecereNameSpace__ecere__com__Instance *)__ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(&it))->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__Container_Free])(((struct __ecereNameSpace__ecere__com__Instance *)__ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(&it)));
528 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *, struct __ecereNameSpace__ecere__com__IteratorPointer * i))__ecereNameSpace__ecere__moduleMaps->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__Container_Delete])(__ecereNameSpace__ecere__moduleMaps, it.pointer);
532 char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext)
534 struct __ecereNameSpace__ecere__com__Instance * textMap = __ecereNameSpace__ecere__moduleMaps ? (__extension__ ({
535 struct __ecereNameSpace__ecere__com__Iterator __internalIterator =
537 __ecereNameSpace__ecere__moduleMaps, 0
540 __ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&__internalIterator, (uint64)(((uint64)(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->name))), 0x0);
541 ((struct __ecereNameSpace__ecere__com__Instance *)__ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(&__internalIterator));
543 char * result = textMap ? (__extension__ ({
544 struct __ecereNameSpace__ecere__com__Iterator __internalIterator =
549 __ecereMethod___ecereNameSpace__ecere__com__Iterator_Index(&__internalIterator, (uint64)(((uint64)(stringAndContext ? stringAndContext : string))), 0x0);
550 ((char *)__ecereProp___ecereNameSpace__ecere__com__Iterator_Get_data(&__internalIterator));
553 return (result && result[0]) ? result : string;
556 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
558 struct __ecereNameSpace__ecere__com__GlobalFunction;
560 extern struct __ecereNameSpace__ecere__com__GlobalFunction * __ecereNameSpace__ecere__com__eSystem_RegisterFunction(char * name, char * type, void * func, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
562 void __ecereRegisterModule_i18n(struct __ecereNameSpace__ecere__com__Instance * module)
564 struct __ecereNameSpace__ecere__com__Class * class;
566 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::LoadTranslatedStrings", "void ecere::LoadTranslatedStrings(ecere::com::Module module, char * name)", __ecereNameSpace__ecere__LoadTranslatedStrings, module, 4);
567 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::UnloadTranslatedStrings", "void ecere::UnloadTranslatedStrings(ecere::com::Module module)", __ecereNameSpace__ecere__UnloadTranslatedStrings, module, 4);
568 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::GetTranslatedString", "char * ecere::GetTranslatedString(ecere::com::Module module, char * string, char * stringAndContext)", __ecereNameSpace__ecere__GetTranslatedString, module, 4);
571 void __ecereUnregisterModule_i18n(struct __ecereNameSpace__ecere__com__Instance * module)
576 void __ecereCreateModuleInstances_i18n()
578 __ecereNameSpace__ecere__moduleMaps = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__com__Map_TPL_String__ecere__com__Map_TPL_String__String___);
579 __ecereNameSpace__ecere__com__eInstance_IncRef(__ecereNameSpace__ecere__moduleMaps);
582 void __ecereDestroyModuleInstances_i18n()
584 (__ecereNameSpace__ecere__com__eInstance_DecRef(__ecereNameSpace__ecere__moduleMaps), __ecereNameSpace__ecere__moduleMaps = 0);