Latest CVS error

Problem with latest cvs :

Traceback (most recent call last):
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 1092, in OnPrintPage
    self.canvas.DoDrawing(dc)
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 925, in DoDrawing
    table.OutCanvas()
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 359, in OutCanvas
    self.GetTotalPages() # total pages for display/printing
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 375, in GetTotalPages
    test = self.OutPage()
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 400, in OutPage
    max_y = self.PrintRow(row_val, False) # test to see if row will fit in remaining space
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 541, in PrintRow
    max_out = self.OutTextRegion(vtxt, draw)
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 59, in OutTextRegion
    vout, remain = self.SetFlow(text, self.region)
  File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 112, in SetFlow
    w, h = self.DC.GetTextExtent(text + bword)
  File "/usr/lib/python2.3/site-packages/wx/_gdi.py", line 2605, in GetTextExtent
    return _gdi_.DC_GetTextExtent(*args, **kwargs)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 62: ordinal not in range(128)

Tomo Vuckovic wrote:

Problem with latest cvs :

Traceback (most recent call last):
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 1092, in OnPrintPage
   self.canvas.DoDrawing(dc)
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 925, in DoDrawing
   table.OutCanvas()
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 359, in OutCanvas
   self.GetTotalPages() # total pages for display/printing
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 375, in GetTotalPages
   test = self.OutPage()
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 400, in OutPage
   max_y = self.PrintRow(row_val, False) # test to see if row will fit in remaining space
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 541, in PrintRow
   max_out = self.OutTextRegion(vtxt, draw)
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 59, in OutTextRegion
   vout, remain = self.SetFlow(text, self.region)
File "/usr/lib/python2.3/site-packages/wx/lib/printout.py", line 112, in SetFlow
   w, h = self.DC.GetTextExtent(text + bword)
File "/usr/lib/python2.3/site-packages/wx/_gdi.py", line 2605, in GetTextExtent
   return _gdi_.DC_GetTextExtent(*args, **kwargs)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 62: ordinal not in range(128)

You are passing a string object to GetTextExtent that can't be converted to a unicode object with the default codec. Convert it to unicode yourself before passing it to GeTextExtent (or any other wx function expecting a wxString) or use an ascii build of wxWidgets/wxPython.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!