PyQt v4.6 has been released and is available from http://www.riverbankcomputing.com/software/pyqt/.
PyQt is a comprehensive set of bindings for the Qt application and UI framework from Nokia. It supports the same platforms as Qt (Windows, Linux and MacOS/X).
PyQt supports Python v3 and Python v2.3 and later.
The highlights of this release include:
- alternate, more Pythonic, APIs have been implemented for QDate, QDateTime, QString, QTextStream, QTime, QUrl and QVariant. Applications may select a particular API. By default Python v3 uses the new versions and Python v2 uses the old versions
- Qt properties can be initialised, and signals connected using keyword arguments passed when creating an instance. Properties and signals can also be set using the QObject.pyqtConfigure() method.
Windows installers are provided for the GPL version of PyQt which contains everything needed for PyQt development (including Qt, Qt Designer and QScintilla) except Python itself.
PyQt v4 is implemented as a set of 18 extension modules containing over 400 classes and over 6,000 functions and methods.
QtCore The non-GUI infrastructure including event loops, threads, i18n, Unicode, signals and slots, user and application settings, mapped files and shared memory.
QtDesigner A set of classes that allow the Qt Designer GUI design tool to be extended with PyQt.
QtGui A rich collection of GUI widgets.
QtHelp A set of classes for creating and viewing searchable documentation and being able to integrate online help with PyQt applications. It includes the C++ port of the Lucene text search engine.
QtNetwork A set of classes to support TCP and UDP socket programming and higher level protocols (eg. HTTP, SSL).
QtOpenGL A set of classes that allows PyOpenGL to render onto Qt widgets.
QtSql A set of classes that implement SQL data models and interfaces to industry standard databases. The Windows installers include support for SQLite, MySQL, PostgreSQL and ODBC.
QtSvg A set of classes to render SVG files onto Qt widgets.
QtTest A set of classes to automate unit testing of PyQt applications and GUIs.
QtXML A set of classes that implement DOM and SAX parsers.
QtXMLPatterns A set of classes that implement XQuery and XPath support for XML and custom data models.
QtAssistant A set of classes that enables the Qt Assistant online help browser to be integrated with an application.
QAxContainer A set of classes for Windows that allows the integration of ActiveX controls and COM objects.
phonon A cross-platform multimedia framework that enables the use of audio and video content in PyQt applications. DirectX is used as the Windows backend, QuickTime as the MacOS/X backend, and GStreamer as the Linux backend.
DBus PyQt includes dbus.mainloop.qt that allows the Qt event loop to be used with the standard DBus Python bindings.
PyQt includes the pyuic4 utility which generates Python code to implement user interfaces created with Qt Designer in the same way that the uic utility generates C++ code. It is also able to load Designer XML files dynamically.
PyQt is available under the GPL and a commercial license. Unlike Qt, PyQt is not available under the LGPL. The commercial PyQt license allows GPL applications to be relicensed at any time.