qtsix

Compatibility layer for different Qt bindings.


Keywords
Qt, bindings
License
BSD-3-Clause
Install
pip install qtsix==1.1

Documentation

QtSix

Downloads Latest Version Supported Python versions License

About

QtSix provides a compatibility layer that allows to write Python applications that work with different Qt bindings: PyQt5, PyQt4 or PySide.

An application that used QtSix can work correctly if any of the supported Qt bindings is installed on the system. QtSix automatically detects available bindings and uses them transparently.

If more than one Qt binding is present on the system then it is selected the first one available in the following order: PyQt5, PyQt4, PySide.

Of course QtSix supports both Python 2 and Python 3.

The API

The reference API and the reference package layout used by QtSix is the one provided by PyQt5.

An application written for PyQt5 is expected to work correctly if all imports form PyQt5 are replaced with imports from QtSix.

Applications written for PyQt4 or PySide should be ported to the PyQt5 API in order to be able to use QtSix.

Since QtSix is meant to be a compatibility layer it only provides PyQt5 features that are also present in at least one of the other Qt bindings.

Installation

QtSix can be installed using pip:

$ pip install qtsix

or using the setup.py script included in the package:

$ python setup.py install

Note

The desired Qt bindings should be installed separately. The installation of QtSix does not automatically trigger the installation of any of the supported Qt bindings.

Links

Similar projects

License

The QtSix package is provided under the terms of the new BSD license.