On 01/28/2011 12:22 PM, Phil Thompson wrote: > On Thu, 27 Jan 2011 16:28:48 +0100, Gerard Vermeulen <gav...@gmail.com> > wrote: >> Hi, >> >> The following works with sip-4.12 (python compiled in my home > directory): >> Python 2.6.6 (r266:84292, Jan 8 2011, 16:35:06) >> [GCC 4.4.4] on linux2 >> Type "help", "copyright", "credits" or "license" for more information. >>>>> import PyQt4.Qwt5 as qwt >>>>> import sip >>>>> sip.SIP_VERSION_STR >> '4.12' >>>>> qwt.QwtText(Qt.QString("wow")) >> <PyQt4.Qwt5.Qwt.QwtText object at 0x216cb90> >> but not with sip-4.12.1 (python in Gentoo system): >> Python 2.6.6 (r266:84292, Dec 30 2010, 09:16:49) >> [GCC 4.4.4] on linux2 >> Type "help", "copyright", "credits" or "license" for more information. >>>>> import PyQt4.Qwt5 as qwt >>>>> import sip >>>>> sip.SIP_VERSION_STR >> '4.12.1' >>>>> qwt.QwtText(Qt.QString("wow")) >> Traceback (most recent call last): >> File "<stdin>", line 1, in <module> >> TypeError: QwtText(): arguments did not match any overloaded call: >> overload 1: argument 1 has unexpected type 'QString' >> overload 2: argument 1 has unexpected type 'QString' >> >> The relevant part of the sip file for QwtText is attached. >> >> Best regards -- Gerard > Can you provide I self contained test case that demonstrates the problem > (I can't)? > > Phil OK, I think this is the same problem that I found when trying to use hgview (shows up when using qscintilla):
#!/usr/bin/env python # -*- coding: utf-8 -*- import PyQt4.Qt as Qt from PyQt4.Qsci import QsciScintilla application = Qt.QApplication([]) qs = QsciScintilla() qs.setMarginWidth(1, '000') # Local Variables: *** # mode: python *** # End: *** gives: gav@zombie ~ $ python 041201.py Traceback (most recent call last): File "041201.py", line 9, in <module> qs.setMarginWidth(1, '000') TypeError: arguments did not match any overloaded call: QsciScintilla.setMarginWidth(int, int): argument 2 has unexpected type 'str' QsciScintilla.setMarginWidth(int, QString): argument 2 has unexpected type 'str' And if you replace qs.setMarginWidth(1, '000') with qs.setMarginWidth(1, Qt.QString('000')) you'll get gav@zombie ~ $ python 041201.py Traceback (most recent call last): File "041201.py", line 9, in <module> qs.setMarginWidth(1, Qt.QString('000')) TypeError: arguments did not match any overloaded call: QsciScintilla.setMarginWidth(int, int): argument 2 has unexpected type 'QString' QsciScintilla.setMarginWidth(int, QString): argument 2 has unexpected type 'QString' Gerard _______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt