nburdick / lilykde

Automatically exported from code.google.com/p/lilykde
0 stars 0 forks source link

Score wizard does not work #15

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Open Frescobaldi
2. Attempt to open the score wizard

What is the expected output? What do you see instead?
Nothing happens. The console output is as follows:

Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/share/apps/frescobaldi/lib/signals.py", line 50, in __call__
    func(*args[:func.func_code.co_argcount], **kwargs)
AttributeError: 'builtin_function_or_method' object has no attribute
'func_code'

Original exception was:
Traceback (most recent call last):
  File "/usr/share/apps/frescobaldi/lib/frescobaldi_app/mainapp.py", line
308, in lilypond_score_wizard
    self.scoreWizard().show()
  File "/usr/share/apps/frescobaldi/lib/kateshell/app.py", line 48, in loader
    cache[obj][args] = func(obj, *args)
  File "/usr/share/apps/frescobaldi/lib/frescobaldi_app/mainapp.py", line
263, in scoreWizard
    return frescobaldi_app.scorewiz.ScoreWizard(self)
  File
"/usr/share/apps/frescobaldi/lib/frescobaldi_app/scorewiz/__init__.py",
line 73, in __init__
    self.loadCompletions()
  File
"/usr/share/apps/frescobaldi/lib/frescobaldi_app/scorewiz/__init__.py",
line 111, in loadCompletions
    c.setItems(conf.readEntry(name, QStringList()))
TypeError: argument 1 of KCompletion.setItems() has an invalid type

What version of the product are you using? On what operating system?

I'm using frescobaldi-0.7.12 on kdelibs 4.2.4 on QT 4.5.2, on Gentoo.

Please provide any additional information below.

Original issue reported on code.google.com by grooveha...@gmail.com on 9 Jul 2009 at 10:47

GoogleCodeExporter commented 8 years ago
Which Python version is Frescobaldi using?  (Look at first line 
of /usr/bin/frescobaldi and then type that path with --version appended, 
e.g. /usr/bin/python --version)

Original comment by wbsoft on 10 Jul 2009 at 6:27

GoogleCodeExporter commented 8 years ago
2.6.2 (gentoo's 2.6.2-r1 to be exact)

Original comment by grooveha...@gmail.com on 10 Jul 2009 at 6:32

GoogleCodeExporter commented 8 years ago
Thanks, and which version of PyKDE4 and PyQt4? Cause it's a strange error: the 
conf.readEntry(name, QStringList()) should definitely return a QStringList, 
which 
should be accepted by the completion object.

Original comment by wbsoft on 11 Jul 2009 at 8:46

GoogleCodeExporter commented 8 years ago
PyKDE-4.2.4-r2, PyQt-4.5.1. 

Original comment by grooveha...@gmail.com on 11 Jul 2009 at 9:13

GoogleCodeExporter commented 8 years ago
Thank you. There are actually two bugs. The first one (Error in sys.excepthook) 
is 
easily fixed, but the second one (TypeError: argument 1 of 
KCompletion.setItems() 
has an invalid type) is really strange, and currently looks to me like a bug 
somewhere in the Python/Qt/KDE interaction. I'm not on my main development 
system so 
please bear with me for a while :-) I've yet another version number to ask: 
which 
version number is your dev-python/sip package?

Original comment by wbsoft on 16 Jul 2009 at 5:10

GoogleCodeExporter commented 8 years ago
i'm afraid i'm also away from my main system for a couple of months, so i can't 
give
you any version numbers with confidence, or test anything :( however i'm pretty 
sure
i was using sip-4.8.1. also, one thing i noticed is that my Qt version is 
4.5.2, but
my PyQt version is still 4.5.1. maybe that is causing problems as an API has 
changed
slightly?

Original comment by grooveha...@gmail.com on 16 Jul 2009 at 6:15

GoogleCodeExporter commented 8 years ago
I'll investigate (I have a Gentoo chroot :-) Thanks again for your report and 
feedback!

Original comment by wbsoft on 18 Jul 2009 at 10:50

GoogleCodeExporter commented 8 years ago

Original comment by wbsoft on 18 Jul 2009 at 10:52

GoogleCodeExporter commented 8 years ago
The problem is found, it is caused by changes in PyQt 4.5 versus 4.4. The 
readEntry
method always returns a QVariant in 4.5, while in earlier versions it returned a
value of the same type as the default argument. To get Frescobaldi working in 
PyQt
4.5 i have to change many many calls. I'm investigating what's the best thing 
to do
right now and then this bug will be fixed :)

Original comment by wbsoft on 19 Jul 2009 at 6:14

GoogleCodeExporter commented 8 years ago
Caused by incompatibility between PyQt4 4.4.3 and 4.5.2. The code has been 
fixed in
r1414 to allow for both versions to work correctly.

Original comment by wbsoft on 19 Jul 2009 at 7:18