qtpy based fallback for PyQt5
This commit is contained in:
parent
2f8734d60b
commit
9a1424c189
|
@ -384,25 +384,25 @@ def check_pyqt():
|
||||||
"""
|
"""
|
||||||
# pylint: disable=no-member
|
# pylint: disable=no-member
|
||||||
try:
|
try:
|
||||||
from fallback import qtpy
|
from fallback import PyQt5
|
||||||
except ImportError:
|
except ImportError:
|
||||||
logger.error(
|
logger.error(
|
||||||
'PyBitmessage requires qtpy, PyQt 4.8 or later and Qt 4.7 or later.'
|
'PyBitmessage requires PyQt5 or qtpy, PyQt 4.8 or later'
|
||||||
)
|
' and Qt 4.7 or later.')
|
||||||
qtpy = None
|
PyQt5 = None
|
||||||
|
|
||||||
if not qtpy:
|
if not PyQt5:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
logger.info('PyQt Version: %s', qtpy.PYQT_VERSION)
|
logger.info('PyQt Version: %s', PyQt5.PYQT_VERSION)
|
||||||
logger.info('Qt Version: %s', qtpy.QT_VERSION)
|
logger.info('Qt Version: %s', PyQt5.QT_VERSION)
|
||||||
passed = True
|
passed = True
|
||||||
if version.LooseVersion(qtpy.PYQT_VERSION) < '4.8':
|
if version.LooseVersion(PyQt5.PYQT_VERSION) < '4.8':
|
||||||
logger.error(
|
logger.error(
|
||||||
'This version of PyQt is too old. PyBitmessage requries'
|
'This version of PyQt is too old. PyBitmessage requries'
|
||||||
' PyQt 4.8 or later.')
|
' PyQt 4.8 or later.')
|
||||||
passed = False
|
passed = False
|
||||||
if version.LooseVersion(qtpy.QT_VERSION) < '4.7':
|
if version.LooseVersion(PyQt5.QT_VERSION) < '4.7':
|
||||||
logger.error(
|
logger.error(
|
||||||
'This version of Qt is too old. PyBitmessage requries'
|
'This version of Qt is too old. PyBitmessage requries'
|
||||||
' Qt 4.7 or later.')
|
' Qt 4.7 or later.')
|
||||||
|
|
|
@ -32,34 +32,44 @@ else:
|
||||||
return hasher
|
return hasher
|
||||||
|
|
||||||
try:
|
try:
|
||||||
import qtpy
|
import PyQt5
|
||||||
except ImportError:
|
except ImportError:
|
||||||
try:
|
try:
|
||||||
from PyQt5 import QtCore, QtGui, QtWidgets, QtNetwork, uic
|
import qtpy as PyQt5
|
||||||
except ImportError:
|
|
||||||
qtpy = None
|
|
||||||
else:
|
|
||||||
import sys
|
|
||||||
import types
|
|
||||||
|
|
||||||
QtCore.Signal = QtCore.pyqtSignal
|
|
||||||
context = {
|
|
||||||
'API': 'pyqt5', # for tr
|
|
||||||
'PYQT_VERSION': QtCore.PYQT_VERSION_STR,
|
|
||||||
'QT_VERSION': QtCore.QT_VERSION_STR,
|
|
||||||
'QtCore': QtCore,
|
|
||||||
'QtGui': QtGui,
|
|
||||||
'QtWidgets': QtWidgets,
|
|
||||||
'QtNetwork': QtNetwork,
|
|
||||||
'uic': uic
|
|
||||||
}
|
|
||||||
try:
|
|
||||||
from PyQt5 import QtTest
|
|
||||||
except ImportError:
|
except ImportError:
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
context['QtTest'] = QtTest
|
from PyQt5 import QtCore
|
||||||
qtpy = types.ModuleType(
|
|
||||||
'qtpy', 'PyQt5 based dynamic fallback for qtpy')
|
QtCore.Signal = QtCore.pyqtSignal
|
||||||
qtpy.__dict__.update(context)
|
PyQt5.PYQT_VERSION = QtCore.PYQT_VERSION_STR
|
||||||
sys.modules['qtpy'] = qtpy
|
PyQt5.QT_VERSION = QtCore.QT_VERSION_STR
|
||||||
|
# try:
|
||||||
|
# from qtpy import QtCore, QtGui, QtWidgets, QtNetwork, uic
|
||||||
|
# except ImportError:
|
||||||
|
# PyQt5 = None
|
||||||
|
# else:
|
||||||
|
# import sys
|
||||||
|
# import types
|
||||||
|
|
||||||
|
# QtCore.Signal = QtCore.pyqtSignal
|
||||||
|
# context = {
|
||||||
|
# 'API': 'pyqt5', # for tr
|
||||||
|
# 'PYQT_VERSION': QtCore.PYQT_VERSION_STR,
|
||||||
|
# 'QT_VERSION': QtCore.QT_VERSION_STR,
|
||||||
|
# 'QtCore': QtCore,
|
||||||
|
# 'QtGui': QtGui,
|
||||||
|
# 'QtWidgets': QtWidgets,
|
||||||
|
# 'QtNetwork': QtNetwork,
|
||||||
|
# 'uic': uic
|
||||||
|
# }
|
||||||
|
# try:
|
||||||
|
# from PyQt5 import QtTest
|
||||||
|
# except ImportError:
|
||||||
|
# pass
|
||||||
|
# else:
|
||||||
|
# context['QtTest'] = QtTest
|
||||||
|
# PyQt5 = types.ModuleType(
|
||||||
|
# 'PyQt5', 'qtpy based dynamic fallback for PyQt5')
|
||||||
|
# PyQt5.__dict__.update(context)
|
||||||
|
# sys.modules['PyQt5'] = PyQt5
|
||||||
|
|
Reference in New Issue
Block a user