From 10383fe27b4c395417574524e47f08ba72d54f27 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Sun, 28 May 2006 19:20:45 +0000 Subject: [PATCH] Allow for non-ascii text in resources git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/wx/tools/pywxrc.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/wxPython/wx/tools/pywxrc.py b/wxPython/wx/tools/pywxrc.py index a30b8fd79d..fe2c0aece2 100644 --- a/wxPython/wx/tools/pywxrc.py +++ b/wxPython/wx/tools/pywxrc.py @@ -38,6 +38,7 @@ import wx.xrc class PythonTemplates: FILE_HEADER = """\ # This file was automatically generated by pywxrc, do not edit by hand. +# -*- coding: UTF-8 -*- import wx import wx.xrc as xrc @@ -153,14 +154,23 @@ class XmlResourceCompiler: # now write it all out print >>outputFile, self.templates.FILE_HEADER - print >>outputFile, "\n".join(classes) + + # Note: Technically it is not legal to have anything other + # than ascii for class and variable names, but since the user + # can create the XML with non-ascii names we'll go ahead and + # allow for it here, and then let Python complain about it + # later when they try to run the program. + classes = u"\n".join(classes) + print >>outputFile, classes.encode("UTF-8") print >>outputFile, self.templates.INIT_RESOURE_HEADER if embedResources: print >>outputFile, self.templates.PREPARE_MEMFS - print >>outputFile, "\n".join(resources) + resources = u"\n".join(resources) + print >>outputFile, resources.encode("UTF-8") if generateGetText: + # These have already been converted to utf-8... gettextStrings = [' _("%s")' % s for s in gettextStrings] gettextStrings = "\n".join(gettextStrings) print >>outputFile, self.templates.GETTEXT_DUMMY_FUNC % gettextStrings @@ -424,7 +434,7 @@ class XmlResourceCompiler: else: st2 += dt[i] - return st2 + return st2.encode("UTF-8") #------------------------------------------------------------------- -- 2.45.2