__init__.py (pymol-open-source-2.2.0) | : | __init__.py (pymol-open-source-2.3.0) | ||
---|---|---|---|---|
skipping to change at line 16 | skipping to change at line 16 | |||
PyQt5/PyQt4 differences: | PyQt5/PyQt4 differences: | |||
http://pyqt.sourceforge.net/Docs/PyQt5/pyqt4_differences.html | http://pyqt.sourceforge.net/Docs/PyQt5/pyqt4_differences.html | |||
""" | """ | |||
from __future__ import absolute_import as _ | from __future__ import absolute_import as _ | |||
DEBUG = False | DEBUG = False | |||
PYQT_NAME = None | PYQT_NAME = None | |||
QtWidgets = None | ||||
try: | try: | |||
from pymol._Qt_pre import * | from pymol._Qt_pre import * | |||
except ImportError: | except ImportError: | |||
if DEBUG: | if DEBUG: | |||
print('import _Qt_pre failed') | print('import _Qt_pre failed') | |||
if not PYQT_NAME: | if not PYQT_NAME: | |||
try: | try: | |||
from PyQt5 import QtGui, QtCore, QtOpenGL | from PyQt5 import QtGui, QtCore, QtOpenGL, QtWidgets | |||
PYQT_NAME = 'PyQt5' | PYQT_NAME = 'PyQt5' | |||
except ImportError: | except ImportError: | |||
if DEBUG: | if DEBUG: | |||
print('import PyQt5 failed') | print('import PyQt5 failed') | |||
if not PYQT_NAME: | if not PYQT_NAME: | |||
try: | try: | |||
from PySide2 import QtGui, QtCore, QtOpenGL, QtWidgets | ||||
PYQT_NAME = 'PySide2' | ||||
except ImportError: | ||||
if DEBUG: | ||||
print('import PySide2 failed') | ||||
if not PYQT_NAME: | ||||
try: | ||||
__import__("sip").setapi("QString", 2) | __import__("sip").setapi("QString", 2) | |||
from PyQt4 import QtGui, QtCore, QtOpenGL | from PyQt4 import QtGui, QtCore, QtOpenGL | |||
PYQT_NAME = 'PyQt4' | PYQT_NAME = 'PyQt4' | |||
except ImportError: | except ImportError: | |||
if DEBUG: | if DEBUG: | |||
print('import PyQt4 failed') | print('import PyQt4 failed') | |||
if not PYQT_NAME: | if not PYQT_NAME: | |||
try: | try: | |||
from PySide import QtGui, QtCore, QtOpenGL | from PySide import QtGui, QtCore, QtOpenGL | |||
skipping to change at line 56 | skipping to change at line 65 | |||
print('import PySide failed') | print('import PySide failed') | |||
if not PYQT_NAME: | if not PYQT_NAME: | |||
raise ImportError(__name__) | raise ImportError(__name__) | |||
import os | import os | |||
# qtpy compatibility | # qtpy compatibility | |||
os.environ['QT_API'] = PYQT_NAME | os.environ['QT_API'] = PYQT_NAME | |||
if PYQT_NAME == 'PyQt5': | if QtWidgets is None: | |||
from PyQt5 import QtWidgets | QtWidgets = QtGui | |||
if hasattr(QtCore, 'QAbstractProxyModel'): | ||||
QtCoreModels = QtCore | QtCoreModels = QtCore | |||
else: | else: | |||
QtWidgets = QtGui | ||||
QtCoreModels = QtGui | QtCoreModels = QtGui | |||
if PYQT_NAME == 'PyQt4': | if PYQT_NAME == 'PyQt4': | |||
QFileDialog = QtWidgets.QFileDialog | QFileDialog = QtWidgets.QFileDialog | |||
QFileDialog.getOpenFileName = QFileDialog.getOpenFileNameAndFilter | QFileDialog.getOpenFileName = QFileDialog.getOpenFileNameAndFilter | |||
QFileDialog.getOpenFileNames = QFileDialog.getOpenFileNamesAndFilter | QFileDialog.getOpenFileNames = QFileDialog.getOpenFileNamesAndFilter | |||
QFileDialog.getSaveFileName = QFileDialog.getSaveFileNameAndFilter | QFileDialog.getSaveFileName = QFileDialog.getSaveFileNameAndFilter | |||
del QFileDialog | del QFileDialog | |||
if PYQT_NAME[:4] == 'PyQt': | if PYQT_NAME[:4] == 'PyQt': | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 14 lines changed or added |