Skip to content

Commit 3007e62

Browse files
committed
Added PyQt4/PyQt5/PySide automatic switch depending on installed libraries
1 parent 040661a commit 3007e62

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

qwt/qt/__init__.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,18 @@
99

1010
import os
1111

12-
os.environ.setdefault('QT_API', 'pyqt')
13-
assert os.environ['QT_API'] in ('pyqt5', 'pyqt', 'pyside')
14-
15-
API = os.environ['QT_API']
12+
API = os.environ.get('QT_API')
13+
if API is None:
14+
try:
15+
import PyQt5 # analysis:ignore
16+
API = 'pyqt5'
17+
except ImportError:
18+
try:
19+
import PyQt4 # analysis:ignore
20+
API = 'pyqt'
21+
except ImportError:
22+
API = 'pyside'
23+
os.environ['QT_API'] = API
1624
API_NAME = {'pyqt5': 'PyQt5', 'pyqt': 'PyQt4', 'pyside': 'PySide'}[API]
1725

1826
if API == 'pyqt':

0 commit comments

Comments
 (0)