CHDK_DE Vorschauversion  Trunk Rev. 5234
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
lang.h-Dateireferenz
+ Dieser Graph zeigt, welche Datei direkt oder indirekt diese Datei enthält:

gehe zum Quellcode dieser Datei

Funktionen

void lang_init (int num)
 
void lang_load_from_file (const char *filename)
 
void lang_map_preparsed_from_mem (char *gui_lang_default, int num)
 
char * lang_str (int str)
 
unsigned int lang_strhash31 (int langid)
 

Dokumentation der Funktionen

void lang_init ( int  num)

Definiert in Zeile 30 der Datei lang.c.

30  {
31 
32  if (strings) {
33  free(strings);
34  count = 0;
35  }
36 
37  ++num;
38  strings = malloc(num*sizeof(short));
39  if (strings) {
40  memset(strings, 0, num*sizeof(short));
41  count = num;
42  }
43 
44 }
void lang_load_from_file ( const char *  filename)

Definiert in Zeile 199 der Datei lang.c.

199  {
200  process_file(filename, lang_parse_from_mem, 1);
201 }
void lang_map_preparsed_from_mem ( char *  gui_lang_default,
int  num 
)

Definiert in Zeile 188 der Datei lang.c.

189 {
190 
191  preparsed_lang_default_start = gui_lang_default;
192  lang_init( num );
193  // preparsed_lang_default_end = // variable not currently needed
195 
196 }
char* lang_str ( int  str)

Definiert in Zeile 205 der Datei lang.c.

205  {
206  if (str && str<MAX_LANGID) {
207  if (strings && str<count && strings[str]) {
208  if (strings[str]>0) {
209  // string from builtin resource
211  }
212  else if (langbuf) {
213  // string from loaded lang file
214  return langbuf - strings[str] - 1;
215  }
216  }
217  } else { // not ID, just char*
218  return (char*)str;
219  }
220  return "";
221 }
unsigned int lang_strhash31 ( int  langid)

Definiert in Zeile 225 der Datei lang.c.

226 {
227  if ( langid<MAX_LANGID )
228  return langid;
229 
230  unsigned char* str = (unsigned char*)langid;
231  unsigned hash=0;
232  for ( ; *str; str++ )
233  hash = *str ^ (hash<<6) ^ (hash>>25);
234  if ( hash<MAX_LANGID )
235  hash |= (1<<31);
236  return hash;
237 }