[PyQt] ANNOUNCE: PyQt3Support r1 - Python bindings for Qt3Support

Matteo Bertini naufraghi at develer.com
Mon Sep 17 16:22:41 BST 2007

#### PyQt3Support - Python bindings for Qt3Support ####


#### What is this?

PyQt3Support is an extension to PyQt4 that adds bindings to Qt's
Qt3Support library for usage from the Python language.

This is very helpful to migrate existing PyQt3 applications to PyQt4.

#### Why?

Porting from Qt3 to Qt4 can be tedious and bug-prone.

For C++ programmers, Trolltech provides a library, called Qt3Support,
that immensely helps. With Qt3Support, a C++ programmer basically only
needs mechanical changes to your source code. The library is made of two
different parts:

    * A new family of widgets (Q3*) with the same API of Qt3.
    * New member functions (or overloads) within standard Qt4 widgets.

For Python programmers, the situation is worse: PyQt4 does not bind
Qt3Support to Python. Developers of PyQt3 are forced to manually upgrade
their code to PyQt4, class by class.

This package fills the gap. By providing a new module PyQt4.Qt3Support,
it enables PyQt3 developers to access Trolltech's migration library, and
thus upgrade their code much easily and faster, with almost only
mechanical changes. It's not a panacea of course: you probably still
need minor manual adjustments and supervising, but it can still be of
great help.

#### Where?

PyQt3Support has been developed and tested under both Windows (2000, XP,
Vista) and Linux (Ubuntu, Fedora).

#### License

Qt3Support follows whatever license you have for PyQt3 and PyQt4,
because its source code is machine-generated from PyQt3's and PyQt4's
source code.

Thus, Qt3Support can be freely used under both the GPL or the commercial
license offered by Qt/PyQt producers.

In case you are interested in developing Qt3Support itself, you want to
know that the script that generates Qt3Support is released under the GPL

#### Status

PyQt3Support is not complete: it binds about 30% of the Qt3Support, but
don't be fooled by this figure: it's the part that is probably used most
in existing programs (more common widgets, constructors, ecc.).

Moreover, since it is fully machine-generated, it is very easy to extend
it to cover more classes and functions. See below as per how to
contribute to the development.

* PyQt3 ported classes:
    Q3VBox, Q3HBox, Q3Frame, Q3Grid, Q3Accel, Q3PopupMenu, Q3MenuData,
    Q3DockWindow, Q3DockArea, Q3ListView, Q3ScrollView, Q3ColorGroup,
    Q3Header, Q3ListBox, Q3StrList, Q3Table, Q3MemArray, Q3MainWindow,
    Q3ToolBar, Q3Action, Q3SimpleRichText, Q3StyleSheet, Q3Mime,
    Q3ComboBox, Q3GroupBox, Q3FileDialog, Q3Url, Q3WidgetStack,
    Q3HGroupBox, Q3VGroupBox, Q3IconView, Q3DragObject, Q3Picture,
    Q3ValueList, Q3CString, Q3ButtonGroup, Q3VButtonGroup

* PyQt4 qt3supported classes:
    Gui.QBoxLayout, Core.QNamespace, Gui.QLCDNumber, Gui.QGridLayout,
    Gui.QApplication, Gui.QPushButton, OpenGL.QGLWidget, Core.QObject,
    Gui.QLabel, Gui.QPixmap, Core.QTextCodec, Gui.QToolButton,
    Gui.QTabWidget, Gui.QMenu, Core.QTimer, Gui.QLayout, Gui.QPalette,
    Gui.QMenuBar, Gui.QLineEdit, Gui.QDialog, Gui.QInputDialog,
    Gui.QCheckBox, Gui.QWidget, Gui.QTextEdit, Gui.QEvent, Gui.QSlider

#### Download


Matteo Bertini - naufraghi at develer.com
Develer S.r.l. - http://www.develer.com
Software Solutions

More information about the PyQt mailing list