MCPcopy Create free account
hub / github.com/fabioz/PyDev.Debugger / patch_qt

Function patch_qt

_pydev_bundle/pydev_monkey_qt.py:20–108  ·  view source on GitHub ↗

This method patches qt (PySide2, PySide, PyQt4, PyQt5) so that we have hooks to set the tracing for QThread.

(qt_support_mode)

Source from the content-addressed store, hash-verified

18
19
20def patch_qt(qt_support_mode):
21 """
22 This method patches qt (PySide2, PySide, PyQt4, PyQt5) so that we have hooks to set the tracing for QThread.
23 """
24 if not qt_support_mode:
25 return
26
27 if qt_support_mode is True or qt_support_mode == "True":
28 # do not break backward compatibility
29 qt_support_mode = "auto"
30
31 if qt_support_mode == "auto":
32 qt_support_mode = os.getenv("PYDEVD_PYQT_MODE", "auto")
33
34 # Avoid patching more than once
35 global _patched_qt
36 if _patched_qt:
37 return
38
39 pydev_log.debug("Qt support mode: %s", qt_support_mode)
40
41 _patched_qt = True
42
43 if qt_support_mode == "auto":
44 patch_qt_on_import = None
45 try:
46 import PySide2 # @UnresolvedImport @UnusedImport
47
48 qt_support_mode = "pyside2"
49 except:
50 try:
51 import Pyside # @UnresolvedImport @UnusedImport
52
53 qt_support_mode = "pyside"
54 except:
55 try:
56 import PyQt5 # @UnresolvedImport @UnusedImport
57
58 qt_support_mode = "pyqt5"
59 except:
60 try:
61 import PyQt4 # @UnresolvedImport @UnusedImport
62
63 qt_support_mode = "pyqt4"
64 except:
65 return
66
67 if qt_support_mode == "pyside2":
68 try:
69 import PySide2.QtCore # @UnresolvedImport
70
71 _internal_patch_qt(PySide2.QtCore, qt_support_mode)
72 except:
73 return
74
75 elif qt_support_mode == "pyside":
76 try:
77 import PySide.QtCore # @UnresolvedImport

Callers

nothing calls this directly

Calls 2

_internal_patch_qtFunction · 0.85

Tested by

no test coverage detected