|
49 | 49 | # user has imported PySide before importing mpl
|
50 | 50 | QT_API = QT_API_PYSIDE
|
51 | 51 |
|
| 52 | +if 'PySide2' in sys.modules: |
| 53 | + # user has imported PySide before importing mpl |
| 54 | + QT_API = QT_API_PYSIDE2 |
| 55 | + |
52 | 56 | if 'PyQt4' in sys.modules:
|
53 | 57 | # user has imported PyQt4 before importing mpl
|
54 | 58 | # this case also handles the PyQt4v2 case as once sip is imported
|
|
65 | 69 | except KeyError:
|
66 | 70 | raise RuntimeError(
|
67 | 71 | ('Unrecognized environment variable %r, valid values are:'
|
68 |
| - ' %r, %r or %r' % (QT_API_ENV, 'pyqt', 'pyside', 'pyqt5'))) |
| 72 | + ' %r, %r or %r' % (QT_API_ENV, 'pyqt', 'pyside', 'pyqt5', 'pyside2'))) |
69 | 73 | if QT_ENV_MAJOR_VERSION == QT_RC_MAJOR_VERSION:
|
70 | 74 | # Only if backend and env qt major version are
|
71 | 75 | # compatible use the env variable.
|
|
99 | 103 | _sip_imported = True
|
100 | 104 | except ImportError:
|
101 | 105 | # Try using PySide
|
102 |
| - QT_API = QT_API_PYSIDE |
| 106 | + if QT_RC_MAJOR_VERSION == 5: |
| 107 | + QT_API = QT_API_PYSIDE2 |
| 108 | + else: |
| 109 | + QT_API = QT_API_PYSIDE |
103 | 110 | cond = ("Could not import sip; falling back on PySide\n"
|
104 | 111 | "in place of PyQt4 or PyQt5.\n")
|
105 | 112 | verbose.report(cond, 'helpful')
|
@@ -166,7 +173,10 @@ def _getSaveFileName(*args, **kwargs):
|
166 | 173 | __version__ = QtCore.PYQT_VERSION_STR
|
167 | 174 | except NameError:
|
168 | 175 | # QtCore did not get imported, fall back to pyside
|
169 |
| - QT_API = QT_API_PYSIDE |
| 176 | + if QT_RC_MAJOR_VERSION == 5: |
| 177 | + QT_API = QT_API_PYSIDE2 |
| 178 | + else: |
| 179 | + QT_API = QT_API_PYSIDE |
170 | 180 |
|
171 | 181 |
|
172 | 182 | if QT_API == QT_API_PYSIDE2:
|
|
0 commit comments