Skip to content

Commit 081d555

Browse files
committed
Added PyQt4/PyQt5/PySide automatic switch depending on installed libraries
1 parent 6fb94b3 commit 081d555

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

guidata/qt/__init__.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,18 @@
1010
from __future__ import print_function
1111
import os
1212

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

1927
if API == 'pyqt':

0 commit comments

Comments
 (0)