Task #126

Reimplement Drqman with PyGTK or PyQt

Added by Andreas Schröder almost 4 years ago. Updated about 3 years ago.

Status:NewStart date:06/08/2010
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:drqman
Target version:0.65.0

Description

Reimplementing Drqman in Python would hopefully decrease the total amount of code for Drqman. There might be also some advantages over C/C++ through Python library functionality.

History

#1 Updated by Andreas Schröder almost 4 years ago

PySide (new Qt Python bindings) could also be used instead of PyQt. See http://www.pyside.org/ for more information.

#2 Updated by Andreas Schröder almost 4 years ago

wxPython could also do the job: http://zetcode.com/wxpython/introduction/

#3 Updated by Andreas Schröder over 3 years ago

Another possibility could also be Qt with the help of QML: http://doc.qt.nokia.com/4.7/qtquick.html

#4 Updated by lorenzo angeli over 3 years ago

I've started rewriting drqman in pyqt ,
the sources are available on github here:

https://github.com/hdd/drqt

Is not tested on a production environment and lacks of the new job submission.

#5 Updated by Ruben Lopez over 3 years ago

Hey Lorenzo, thanks for sharing it!

I have just tried it. This is the error that I get:

Traceback (most recent call last):
  File "drQt.py", line 225, in <module>
    main()
  File "drQt.py", line 219, in main
    dialog = drQt()  
  File "drQt.py", line 47, in __init__
    super(drQt,self).__init__(*args,**kwargs)
TypeError: keyword arguments are not supported

My system: Python 2.5.2 / Fedora Core 10 64bit

#6 Updated by lorenzo angeli over 3 years ago

Hi Ruben , i've the computer out of service right now and i'm not able to fix the source.
but you can try to replace the line 46 and 47

to :

def __init__(self):
super(drQt,self).__init__()

let me know if it works.
Cheers.

#7 Updated by lorenzo angeli over 3 years ago

Changes are been pushed to the repo,
that should fix the kwargs problem.
It's almost a blind commit, i've got no chance to compile python wrapper with the system i'm running now (unbuntu like)......

#8 Updated by Ruben Lopez about 3 years ago

Hi lorenzo,

With this change, the TypeError exception doesn't raise, but the program doesn't do anything anyway. After adding some "prints", I concluded that the line "dialog = drQt()" is causing a sys.exit() at some point without any message.

I am using drqueue 0.64.4 (stable) with Python 2.5.2 / Fedora Core 10 64bit (PyQt4-4.5.4, qt-4.5.2)

The DRQUEUE_* variables are properly set up (standard drqman works).

Let me know if I can do anything else to help you track this issue.

#9 Updated by lorenzo angeli about 3 years ago

Hi Ruben , I'm running on 0.64.3 as I'm not able to build the python binding because of this bug:

https://ssl.drqueue.org/redmine/issues/149

so far I've pushed some other changes to remove some the possible causes of incompatibility and fixing some minor problems...

I'm in fc13 64 / python 2.6 / drqueue 0.64.3
L.

#10 Updated by lorenzo angeli about 3 years ago

I've pushed some changes on the newjob interface.
The kojs definition is been moved to a standalone json config file.

Also available in: Atom PDF