util/local_database/qlocalexml2cpp.py
branchGCC_SURGE
changeset 31 5daf16870df6
parent 30 5dc02b23752f
equal deleted inserted replaced
27:93b982ccede2 31:5daf16870df6
   126         elt = nextSiblingElt(elt, "defaultCountry");
   126         elt = nextSiblingElt(elt, "defaultCountry");
   127     return result
   127     return result
   128 
   128 
   129 def fixedCountryName(name, dupes):
   129 def fixedCountryName(name, dupes):
   130     if name in dupes:
   130     if name in dupes:
   131         return name + "Country"
   131         return name.replace(" ", "") + "Country"
   132     return name
   132     return name.replace(" ", "")
   133 
   133 
   134 def fixedLanguageName(name, dupes):
   134 def fixedLanguageName(name, dupes):
   135     if name in dupes:
   135     if name in dupes:
   136         return name + "Language"
   136         return name.replace(" ", "") + "Language"
   137     return name
   137     return name.replace(" ", "")
   138 
   138 
   139 def findDupes(country_map, language_map):
   139 def findDupes(country_map, language_map):
   140     country_set = set([ v[0] for a, v in country_map.iteritems() ])
   140     country_set = set([ v[0] for a, v in country_map.iteritems() ])
   141     language_set = set([ v[0] for a, v in language_map.iteritems() ])
   141     language_set = set([ v[0] for a, v in language_map.iteritems() ])
   142     return country_set & language_set
   142     return country_set & language_set
   225     locale_list_elt = firstChildElt(doc.documentElement, "localeList")
   225     locale_list_elt = firstChildElt(doc.documentElement, "localeList")
   226     locale_elt = firstChildElt(locale_list_elt, "locale")
   226     locale_elt = firstChildElt(locale_list_elt, "locale")
   227     while locale_elt:
   227     while locale_elt:
   228         locale = Locale(locale_elt)
   228         locale = Locale(locale_elt)
   229         language_id = languageNameToId(locale.language, language_map)
   229         language_id = languageNameToId(locale.language, language_map)
       
   230         if language_id == -1:
       
   231             sys.stderr.write("Cannot find a language id for %s\n" % locale.language)
   230         country_id = countryNameToId(locale.country, country_map)
   232         country_id = countryNameToId(locale.country, country_map)
       
   233         if country_id == -1:
       
   234             sys.stderr.write("Cannot find a country id for %s\n" % locale.country)
   231         result[(language_id, country_id)] = locale
   235         result[(language_id, country_id)] = locale
   232 
   236 
   233         locale_elt = nextSiblingElt(locale_elt, "locale")
   237         locale_elt = nextSiblingElt(locale_elt, "locale")
   234 
   238 
   235     return result
   239     return result
   543     print
   547     print
   544 
   548 
   545     # Country code list
   549     # Country code list
   546     print "static const unsigned char country_code_list[] ="
   550     print "static const unsigned char country_code_list[] ="
   547     for key in country_map.keys():
   551     for key in country_map.keys():
   548         print "\"%2s\" // %s" % (country_map[key][1], country_map[key][0])
   552         code = country_map[key][1]
       
   553         if len(code) == 2:
       
   554             code += "\\0"
       
   555         print "\"%2s\" // %s" % (code, country_map[key][0])
   549     print ";"
   556     print ";"
   550 
   557 
   551 
   558 
   552 if __name__ == "__main__":
   559 if __name__ == "__main__":
   553     main()
   560     main()