Skip to content

Commit 534b469

Browse files
committed
README.md: add supported Qt bindings
1 parent 8c09007 commit 534b469

File tree

1 file changed

+24
-36
lines changed

1 file changed

+24
-36
lines changed

README.md

+24-36
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,9 @@
1111

1212
![PythonQwt Test Launcher](https://raw.githubusercontent.com/PlotPyStack/PythonQwt/master/qwt/tests/data/testlauncher.png)
1313

14-
The `PythonQwt` project was initiated to solve -at least temporarily- the
15-
obsolescence issue of `PyQwt` (the Python-Qwt C++ bindings library) which is
16-
no longer maintained. The idea was to translate the original Qwt C++ code to
17-
Python and then to optimize some parts of the code by writing new modules
18-
based on NumPy and other libraries.
14+
The `PythonQwt` project was initiated to solve -at least temporarily- the obsolescence issue of `PyQwt` (the Python-Qwt C++ bindings library) which is no longer maintained. The idea was to translate the original Qwt C++ code to Python and then to optimize some parts of the code by writing new modules based on NumPy and other libraries.
1915

20-
The `PythonQwt` package consists of a single Python package named `qwt` and
21-
of a few other files (examples, doc, ...).
16+
The `PythonQwt` package consists of a single Python package named `qwt` and of a few other files (examples, doc, ...).
2217

2318
See documentation [online](https://pythonqwt.readthedocs.io/en/latest/) or [PDF](https://pythonqwt.readthedocs.io/_/downloads/en/latest/pdf/) for more details on the library and [changelog](CHANGELOG.md) for recent history of changes.
2419

@@ -71,19 +66,13 @@ PythonQwt-tests --mode unattended
7166

7267
## Overview
7368

74-
The `qwt` package is a pure Python implementation of `Qwt` C++ library with
75-
the following limitations.
69+
The `qwt` package is a pure Python implementation of `Qwt` C++ library with the following limitations.
7670

77-
The following `Qwt` classes won't be reimplemented in `qwt` because more
78-
powerful features already exist in `guiqwt`: `QwtPlotZoomer`,
79-
`QwtCounter`, `QwtEventPattern`, `QwtPicker`, `QwtPlotPicker`.
71+
The following `Qwt` classes won't be reimplemented in `qwt` because more powerful features already exist in `guiqwt`: `QwtPlotZoomer`, `QwtCounter`, `QwtEventPattern`, `QwtPicker`, `QwtPlotPicker`.
8072

81-
Only the following plot items are currently implemented in `qwt` (the only
82-
plot items needed by `guiqwt`): `QwtPlotItem` (base class), `QwtPlotItem`,
83-
`QwtPlotMarker`, `QwtPlotSeriesItem` and `QwtPlotCurve`.
73+
Only the following plot items are currently implemented in `qwt` (the only plot items needed by `guiqwt`): `QwtPlotItem` (base class), `QwtPlotItem`, `QwtPlotMarker`, `QwtPlotSeriesItem` and `QwtPlotCurve`.
8474

85-
See "Overview" section in [documentation](https://pythonqwt.readthedocs.io/en/latest/)
86-
for more details on API limitations when comparing to Qwt.
75+
See "Overview" section in [documentation](https://pythonqwt.readthedocs.io/en/latest/) for more details on API limitations when comparing to Qwt.
8776

8877
## Roadmap
8978

@@ -94,21 +83,31 @@ The `qwt` package short-term roadmap is the following:
9483
- [X] Replace `setup.py` by `pyproject.toml`, using `setuptools` (e.g. see `guidata`)
9584
- [ ] Add more unit tests: the ultimate goal is to reach 90% code coverage
9685

97-
## Dependencies
86+
## Dependencies and installation
87+
88+
### Supported Qt versions and bindings
89+
90+
The whole PlotPyStack set of libraries relies on the [Qt](https://doc.qt.io/) GUI toolkit, thanks to [QtPy](https://pypi.org/project/QtPy/), an abstraction layer which allows to use the same API to interact with different Python-to-Qt bindings (PyQt5, PyQt6, PySide2, PySide6).
91+
92+
Compatibility table:
93+
94+
| PythonQwt version | PyQt5 | PyQt6 | PySide2 | PySide6 |
95+
|-------------------|-------|-------|---------|---------|
96+
| 0.16 and earlier || ⚠️ || ⚠️ |
97+
| Latest |||||
9898

9999
### Requirements
100100

101101
- Python >=3.8
102-
- PyQt5, PyQt6 or PySide6
103-
- QtPy >= 1.3
102+
- QtPy >= 1.3 (and a Python-to-Qt binding library, see above)
104103
- NumPy >= 1.5
105104

106105
### Optional dependencies
107106

108107
- coverage, pytest (for unit tests)
109108
- sphinx (for documentation generation)
110109

111-
## Installation
110+
### Installation
112111

113112
From the source package:
114113

@@ -121,27 +120,16 @@ python -m build
121120
### Main code base
122121

123122
- Copyright © 2002 Uwe Rathmann, for the original Qwt C++ code
124-
- Copyright © 2015 Pierre Raybaut, for the Qwt C++ to Python translation and
125-
optimization
126-
- Copyright © 2015 Pierre Raybaut, for the PythonQwt specific and exclusive
127-
Python material
128-
129-
### PyQt, PySide and Python2/Python3 compatibility modules
130-
131-
- Copyright © 2009-2013 Pierre Raybaut
132-
- Copyright © 2013-2015 The Spyder Development Team
123+
- Copyright © 2015 Pierre Raybaut, for the Qwt C++ to Python translation and optimization
124+
- Copyright © 2015 Pierre Raybaut, for the PythonQwt specific and exclusive Python material
133125

134126
### Some examples
135127

136128
- Copyright © 2003-2009 Gerard Vermeulen, for the original PyQwt code
137-
- Copyright © 2015 Pierre Raybaut, for the PyQt5/PySide port and further
138-
developments (e.g. ported to PythonQwt API)
129+
- Copyright © 2015 Pierre Raybaut, for the PyQt5/PySide port and further developments (e.g. ported to PythonQwt API)
139130

140131
## License
141132

142-
The `qwt` Python package was partly (>95%) translated from Qwt C++ library:
143-
the associated code is distributed under the terms of the LGPL license. The
144-
rest of the code was either wrote from scratch or strongly inspired from MIT
145-
licensed third-party software.
133+
The `qwt` Python package was partly (>95%) translated from Qwt C++ library: the associated code is distributed under the terms of the LGPL license. The rest of the code was either wrote from scratch or strongly inspired from MIT licensed third-party software.
146134

147135
See included [LICENSE](LICENSE) file for more details about licensing terms.

0 commit comments

Comments
 (0)