On 22.11.06 00:32:22, Simon Edwards wrote: > On Tuesday 21 November 2006 23:43, Andreas Pakulat wrote: > > On 21.11.06 22:55:11, Simon Edwards wrote: > > > I've come up against a problem in Qt 4 with QValidator and its fixup() > method. > > > This code working on Qt 3: > > > > > > def fixup(self,inputstr): > > > return unicode(inputstr).replace(":","") > > Things changed between Qt3 and Qt4 ;) > > > But it doesn't seem to work like this on PyQt 4. PyQt4's fixup() seems to > > > require no return value. Is in-place modification of the QString argument > > > expected??? > > Yes, check the Qt4 docs, the fixup methods takes a reference to a > > QString, so it can modify it without the need to return a new QString > > object. > > I had a feeling that might be the case. But how can I neatly modify the > contents of the QString object? QString doesn't have a setText() method. Well, just remove the return. It should still work. At least this does work with a pure python function. Because after all you get a reference to a QString object in the fixup function. If you do anything to the object there shouldn't be a copy created but the change should be done to the original object. Andreas -- Your present plans will be successful. _______________________________________________ PyKDE mailing list PyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde