MaskedEditCtrl Linux dumps with error

I have a NumCtrl set up with integerWidth=9, fractionWidth=0,
allowNegative=False
If I enter a value, TAB and SHIFT-TAB, press Del, enter a new value, I get
this trace (I've changed line 3192 for little more trace)

Traceback (most recent call last):
  
File "/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/lib/masked/maskededit.py",
line 3108, in _OnChar
    newfield = self._FindField(newpos)
  
File "/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/wx/lib/masked/maskededit.py",
line 3192, in _FindField
    raise IndexError('position %s out of range of control (%s)' % (str(pos),
str(self._masklength)))
IndexError: position 12 out of range of control (11)

- If I simply enter a new value overwriting the previous, all is ok.
- It works fine with a NumCtrl with decimals
- Works fine on Windows (tested same version)

Strangely enough, the same operation succeeds with Demo files.
This is the code I used:

class cachedEditCtrl(masked.NumCtrl):
    def __init__(self, parent, valoreIniziale=None, **kwargs):
        self.valoreIniziale = valoreIniziale
        masked.NumCtrl.__init__(self, parent, wx.ID_ANY, **kwargs)
    
    def IsChanged(self):
        return self.valoreIniziale is not None and self.GetValue() !=
self.valoreIniziale or False
    
class EditQuantitaDecimali(cachedEditCtrl):
    def __init__(self, parent, valIniziale=None, integerWidth=9,
fractionWidth=2, allowNegative=False):
        cachedEditCtrl.__init__(self, parent, valIniziale,
integerWidth=integerWidth, fractionWidth=fractionWidth,
allowNegative=allowNegative)

class EditQuantita(cachedEditCtrl):
    def __init__(self, parent, valoreIniziale=None, integerWidth=9,
fractionWidth=0, allowNegative=False):
        cachedEditCtrl.__init__(self, parent, valoreIniziale,
integerWidth=integerWidth, allowNegative=allowNegative)

What is wrong?

Talking about decimal part, on Linux I have to press Del and clear it
otherwise it won't let me write and I get a -beep- from the PC speaker (in
Demo also)

Running on Ubuntu Gutsy, wx 2.8.7.1, python 2.5.1

···

--
Cordialmente

Stefano Bartaletti
Responsabile Software

G.Tosi Spa Tintoria

Skype account: stefano.bartaletti
ICQ contact : 1271960

Viale dell'Industria 61
21052 Busto Arsizio (VA)

Tel. +39 0331 34 48 11
Fax +39 0331 35 21 23

Alle lunedì 18 febbraio 2008, Stefano Bartaletti ha scritto:

I have a NumCtrl set up with integerWidth=9, fractionWidth=0,
allowNegative=False
If I enter a value, TAB and SHIFT-TAB, press Del, enter a new value, I get
this trace (I've changed line 3192 for little more trace)

What is wrong?

Got the problem: me (or better, the program I wrote). It was related to some
Deleted object, now that I've rebuilt this program with a clearer vision (and
structure), everything's ok

···

--
Cordialmente

Stefano Bartaletti
Responsabile Software

G.Tosi Spa Tintoria

Skype account: stefano.bartaletti
ICQ contact : 1271960

Viale dell'Industria 61
21052 Busto Arsizio (VA)

Tel. +39 0331 34 48 11
Fax +39 0331 35 21 23