[PyKDE] eric3 snapshot not working

Phil Thompson phil at riverbankcomputing.co.uk
Thu Dec 29 10:25:16 GMT 2005


On Wednesday 28 December 2005 11:48 pm, Andreas Pakulat wrote:
> On 23.12.05 23:31:48, Andreas Pakulat wrote:
> > Hi,
> >
> > today I installed Qt 3.3.5, Python 2.3.5, QScintilla 1.6,
> > sip-snapshot-20051222 and PyQt-snapshot-20051222. After installing eric
> > snapshot-20051222 all I get is:
> >
> > Traceback (most recent call last):
> >   File "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/eric3.py",
> > line 137, in ? main()
> >   File "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/eric3.py",
> > line 123, in main mw = UserInterface(loc, splash)
> >   File
> > "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/UI/UserInterface.py
> >", line 192, in __init__ self.createLayout(dbs)
> >   File
> > "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/UI/UserInterface.py
> >", line 634, in createLayout self.shell = Shell(dbs, self.viewmanager,
> > self.shellDock)
> >   File
> > "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/QScintilla/Shell.py
> >", line 41, in __init__ QextScintillaCompat.__init__(self,parent)
> >   File
> > "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/QScintilla/QextScin
> >tillaCompat.py", line 55, in __init__ self.clearStyles()
> >   File
> > "/home/andreas/pyqt/lib/python2.3/site-packages/eric3/QScintilla/QextScin
> >tillaCompat.py", line 103, in clearStyles QextScintilla.STYLE_DEFAULT,
> > colorGroup.text())
> > TypeError: argument 3 of QextScintillaBase.SendScintilla() has an invalid
> > type [267903 refs]
> >
> > Anybody got an idea what's going on here? I also tried with QScintilla
> > snapshot20051212 but got the same error there...
>
> This is getting weird. Tried python 2.4.2 instead of 2.3.5: Eric3 starts
> and basically works. Only that there are a log of messages about a
> maximum recursion depth (don't have them at hand, if they're needed I'll
> get em) and the editor widget is not showing when opening a file or
> creating a new one - the area is just blank (as if it is not shown).

This could be a bug in eric exposed by recent SIP changes - or it could just 
be a bug in those recent changes.

Until recently a call to a C++ virtual method explicitly scoped the name of 
the method called, ie. if foo is virtual method of class bar then...

    self.foo()

...resulted in...

    sipCpp->bar::foo()

...being executed. Scoping the name prevents virtual loops. This has been 
changed so that...

    self.foo() executes sipCpp->foo()

...and...

    bar.foo(self) executes sipCpp->bar::foo()

I think the new behaviour is correct and gives the programmer explicit 
control. It also means that programs stand a better chance of working with 
derived classes that haven't been wrapped (plugins for example). Two of the 
PyQt4 examples need this change in order to work.

One of my own applications demonstrates the recursion behaviour so I'll take a 
look when I get the chance.

Phil




More information about the PyQt mailing list