X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b5e2a45022ad4d331564e8b69c294e23f11cfa2a..adcda299c06800fedaf2436bcf4c8759905a4502:/misc/languages/genlang.py?ds=sidebyside diff --git a/misc/languages/genlang.py b/misc/languages/genlang.py index 878dfd37da..02b0673756 100755 --- a/misc/languages/genlang.py +++ b/misc/languages/genlang.py @@ -1,8 +1,10 @@ #!/usr/bin/env python # -# Generates wxLanguage enum (to be cut&pasted to include/wx/intl.h) -# and convertion tables (ditto to src/common/intl.cpp) +# This script must be ran from misc/languages subdirectory. +# +# It generates wxLanguage enum (to be cut&pasted to include/wx/intl.h) +# and conversion tables (ditto to src/common/intl.cpp) # import string @@ -23,15 +25,20 @@ def GenEnum(table): // --- --- --- generated code begins here --- --- --- -// This enum is generated by misc/languages/genlang.py -// When making changes, please put them into misc/languages/langtabl.txt +/** + The languages supported by wxLocale. + + This enum is generated by misc/languages/genlang.py + When making changes, please put them into misc/languages/langtabl.txt +*/ enum wxLanguage { - // user's default/preffered language as got from OS: - wxLANGUAGE_DEFAULT, - // unknown language, if wxLocale::GetSystemLanguage fails: - wxLANGUAGE_UNKNOWN, - + /// User's default/preffered language as got from OS. + wxLANGUAGE_DEFAULT, + + /// Unknown language, returned if wxLocale::GetSystemLanguage fails. + wxLANGUAGE_UNKNOWN, + """); knownLangs = [] for i in table: @@ -39,7 +46,7 @@ enum wxLanguage f.write(' %s,\n' % i[0]) knownLangs.append(i[0]) f.write(""" - // for custom, user-defined languages: + /// For custom, user-defined languages. wxLANGUAGE_USER_DEFINED }; @@ -49,41 +56,13 @@ enum wxLanguage f.close() -def GenDocs(table): - f = open('_wxlang.tex', 'wt') - f.write(""" - -%% --- --- --- generated code begins here --- --- --- - -%% This enum is generated by misc/languages/genlang.py -%% When making changes, please put them into misc/languages/langtabl.txt -\\begin{twocollist}\\itemsep=0pt -\\twocolitem{wxLANGUAGE\\_DEFAULT}{user's default language as obtained from the operating system} -\\twocolitem{wxLANGUAGE\\_UNKNOWN}{returned by \\helpref{GetSystemLanguage}{wxlocalegetsystemlanguage} if it fails to detect the default language} -\\twocolitem{wxLANGUAGE\\_USER\\_DEFINED}{user defined languages' integer identifiers should start from this} -"""); - knownLangs = [] - for i in table: - if i[0] not in knownLangs: - f.write('\\twocolitem{%s}{}\n' % (i[0].replace('_','\\_'))) - knownLangs.append(i[0]) - f.write("""\\end{twocollist}\itemsep=0pt - -%% --- --- --- generated code ends here --- --- --- - -""") - f.close() - - - - def GenTable(table): all_langs = [] all_sublangs = [] - + lngtable = '' - ifdefs = '' - + ifdefs = '' + for i in table: ican = '"%s"' % i[1] if ican == '"-"': ican = '""' @@ -106,7 +85,7 @@ def GenTable(table): if s != '0': ifdefs += '#ifndef %s\n#define %s (0)\n#endif\n' % (s, s) for s in all_sublangs: - if s != '0' and s != 'SUBLANG_DEFAULT': + if s != '0' and s != 'SUBLANG_DEFAULT': ifdefs += '#ifndef %s\n#define %s SUBLANG_DEFAULT\n#endif\n' % (s, s) f = open('_wxlang.cpp', 'wt') @@ -156,6 +135,5 @@ void wxLocale::InitLanguagesDB() table = ReadTable() -GenEnum(table) +GenEnum(table) # the enum is used also (thanks to doxygen) in the docs GenTable(table) -GenDocs(table)