Wed, 13 Jul 2022 14:55:47 +0200
Reformatted the source code using the 'Black' utility.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
8881
54e42bc2437a
Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8358
diff
changeset
|
3 | # Copyright (c) 2002 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a widget containing various debug related views. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | The views avaliable are: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | <ul> |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
11 | <li>selector showing all connected debugger backends with associated |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
12 | threads</li> |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
13 | <li>variables viewer for global variables for the selected debug client</li> |
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
14 | <li>variables viewer for local variables for the selected debug client</li> |
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
15 | <li>call stack viewer for the selected debug client</li> |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
16 | <li>call trace viewer</li> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | <li>viewer for breakpoints</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | <li>viewer for watch expressions</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | <li>viewer for exceptions</li> |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
20 | <li>viewer for a code disassembly for an exception<li> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | </ul> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
26 | from PyQt6.QtCore import pyqtSignal, pyqtSlot, Qt, QCoreApplication |
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
27 | from PyQt6.QtWidgets import ( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
28 | QWidget, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
29 | QVBoxLayout, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
30 | QHBoxLayout, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
31 | QLineEdit, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
32 | QSizePolicy, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
33 | QPushButton, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
34 | QComboBox, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
35 | QLabel, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
36 | QTreeWidget, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
37 | QTreeWidgetItem, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
38 | QHeaderView, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
39 | QSplitter, |
7251
bc5b1b00560a
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
40 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | import UI.PixmapCache |
1926
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
43 | import Preferences |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | |
8358
144a6b854f70
Sorted the eric specific extensions into packages named like the corresponding PyQt packages (i.e. EricCore,EricGui and EricWidgets).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8356
diff
changeset
|
45 | from EricWidgets.EricTabWidget import EricTabWidget |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
47 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | class DebugViewer(QWidget): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | """ |
4309
cc9c62f55413
Changed the Python debugger backends to evaluate statements entered into the shell in the frame selected in the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
50 | Class implementing a widget containing various debug related views. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
51 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
52 | The individual tabs contain the interpreter shell (optional), |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
53 | the filesystem browser (optional), the two variables viewers |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
54 | (global and local), a breakpoint viewer, a watch expression viewer and |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
55 | the exception logger. Additionally a list of all threads is shown. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
56 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | @signal sourceFile(string, int) emitted to open a source file at a line |
7012
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
58 | @signal preferencesChanged() emitted to react on changed preferences |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
60 | |
476
121633976eca
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
61 | sourceFile = pyqtSignal(str, int) |
7012
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
62 | preferencesChanged = pyqtSignal() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
63 | |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7986
diff
changeset
|
64 | ThreadIdRole = Qt.ItemDataRole.UserRole + 1 |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7986
diff
changeset
|
65 | DebuggerStateRole = Qt.ItemDataRole.UserRole + 2 |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
66 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
67 | # Map debug state to icon name |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
68 | StateIcon = { |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
69 | "broken": "break", |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
70 | "exception": "exceptions", |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
71 | "running": "mediaPlaybackStart", |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
72 | "syntax": "syntaxError22", |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
73 | } |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
74 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
75 | # Map debug state to user message |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
76 | StateMessage = { |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
77 | "broken": QCoreApplication.translate("DebugViewer", "waiting at breakpoint"), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
78 | "exception": QCoreApplication.translate("DebugViewer", "waiting at exception"), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
79 | "running": QCoreApplication.translate("DebugViewer", "running"), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
80 | "syntax": QCoreApplication.translate("DebugViewer", "syntax error"), |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
81 | } |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
82 | |
6987
3371a03ed0a7
Performed some interface cleanups.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
83 | def __init__(self, debugServer, parent=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | Constructor |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
86 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
87 | @param debugServer reference to the debug server object |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
88 | @type DebugServer |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
89 | @param parent parent widget |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
90 | @type QWidget |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
92 | super().__init__(parent) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
93 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | self.debugServer = debugServer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | self.debugUI = None |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
96 | |
7533
88261c96484b
Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7475
diff
changeset
|
97 | self.setWindowIcon(UI.PixmapCache.getIcon("eric")) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
98 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | self.__mainLayout = QVBoxLayout() |
7407
a0b6acee2c20
Continued with the multiprocess debugger. Started with QProcess support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7405
diff
changeset
|
100 | self.__mainLayout.setContentsMargins(0, 3, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | self.setLayout(self.__mainLayout) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
102 | |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7986
diff
changeset
|
103 | self.__mainSplitter = QSplitter(Qt.Orientation.Vertical, self) |
7878
b210470f54b3
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7862
diff
changeset
|
104 | self.__mainLayout.addWidget(self.__mainSplitter) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
105 | |
7375
af2500ced7e0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7374
diff
changeset
|
106 | # add the viewer showing the connected debug backends |
7879
7be93de6b532
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7876
diff
changeset
|
107 | self.__debuggersWidget = QWidget() |
7be93de6b532
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7876
diff
changeset
|
108 | self.__debuggersLayout = QVBoxLayout(self.__debuggersWidget) |
7be93de6b532
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7876
diff
changeset
|
109 | self.__debuggersLayout.setContentsMargins(0, 0, 0, 0) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
110 | self.__debuggersLayout.addWidget(QLabel(self.tr("Debuggers and Threads:"))) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
111 | self.__debuggersList = QTreeWidget() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
112 | self.__debuggersList.setHeaderLabels([self.tr("ID"), self.tr("State"), ""]) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
113 | self.__debuggersList.header().setStretchLastSection(True) |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
114 | self.__debuggersList.setSortingEnabled(True) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
115 | self.__debuggersList.setRootIsDecorated(True) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
116 | self.__debuggersList.setAlternatingRowColors(True) |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
117 | self.__debuggersLayout.addWidget(self.__debuggersList) |
7879
7be93de6b532
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7876
diff
changeset
|
118 | self.__mainSplitter.addWidget(self.__debuggersWidget) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
119 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
120 | self.__debuggersList.currentItemChanged.connect(self.__debuggerSelected) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
121 | |
7375
af2500ced7e0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7374
diff
changeset
|
122 | # add the tab widget containing various debug related views |
8356
68ec9c3d4de5
Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
123 | self.__tabWidget = EricTabWidget() |
7878
b210470f54b3
DebugViewer: changed the layout to use a QSplitter to offer more flexibility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7862
diff
changeset
|
124 | self.__mainSplitter.addWidget(self.__tabWidget) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
125 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
126 | from .VariablesViewer import VariablesViewer |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
127 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | # add the global variables viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | self.glvWidget = QWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | self.glvWidgetVLayout = QVBoxLayout(self.glvWidget) |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
131 | self.glvWidgetVLayout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | self.glvWidgetVLayout.setSpacing(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | self.glvWidget.setLayout(self.glvWidgetVLayout) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
134 | |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
135 | self.globalsViewer = VariablesViewer(self, True, self.glvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | self.glvWidgetVLayout.addWidget(self.globalsViewer) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
137 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | self.glvWidgetHLayout = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
139 | self.glvWidgetHLayout.setContentsMargins(3, 3, 3, 3) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
140 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | self.globalsFilterEdit = QLineEdit(self.glvWidget) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
142 | self.globalsFilterEdit.setSizePolicy( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
143 | QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Fixed |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
144 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | self.glvWidgetHLayout.addWidget(self.globalsFilterEdit) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
146 | self.globalsFilterEdit.setToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
147 | self.tr( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
148 | "Enter regular expression patterns separated by ';'" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
149 | " to define variable filters. " |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
150 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
151 | ) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
152 | self.globalsFilterEdit.setWhatsThis( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
153 | self.tr( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
154 | "Enter regular expression patterns separated by ';'" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
155 | " to define variable filters. All variables and" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
156 | " class attributes matched by one of the expressions" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
157 | " are not shown in the list above." |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
158 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
159 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
160 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
161 | self.setGlobalsFilterButton = QPushButton(self.tr("Set"), self.glvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | self.glvWidgetHLayout.addWidget(self.setGlobalsFilterButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | self.glvWidgetVLayout.addLayout(self.glvWidgetHLayout) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
164 | |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
165 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
166 | self.glvWidget, UI.PixmapCache.getIcon("globalVariables"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
167 | ) |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
168 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
169 | index, self.tr("Shows the list of global variables and their values.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
170 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
171 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
172 | self.setGlobalsFilterButton.clicked.connect(self.setGlobalsFilter) |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
173 | self.globalsFilterEdit.returnPressed.connect(self.setGlobalsFilter) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
174 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | # add the local variables viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | self.lvWidget = QWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | self.lvWidgetVLayout = QVBoxLayout(self.lvWidget) |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
178 | self.lvWidgetVLayout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | self.lvWidgetVLayout.setSpacing(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | self.lvWidget.setLayout(self.lvWidgetVLayout) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
181 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
182 | self.lvWidgetHLayout1 = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
183 | self.lvWidgetHLayout1.setContentsMargins(3, 3, 3, 3) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
184 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | self.stackComboBox = QComboBox(self.lvWidget) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
186 | self.stackComboBox.setSizePolicy( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
187 | QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Fixed |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
188 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | self.lvWidgetHLayout1.addWidget(self.stackComboBox) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
191 | self.sourceButton = QPushButton(self.tr("Source"), self.lvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | self.lvWidgetHLayout1.addWidget(self.sourceButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | self.sourceButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | self.lvWidgetVLayout.addLayout(self.lvWidgetHLayout1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
196 | self.localsViewer = VariablesViewer(self, False, self.lvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | self.lvWidgetVLayout.addWidget(self.localsViewer) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
198 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | self.lvWidgetHLayout2 = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
200 | self.lvWidgetHLayout2.setContentsMargins(3, 3, 3, 3) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
201 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | self.localsFilterEdit = QLineEdit(self.lvWidget) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
203 | self.localsFilterEdit.setSizePolicy( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
204 | QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Fixed |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
205 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | self.lvWidgetHLayout2.addWidget(self.localsFilterEdit) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
207 | self.localsFilterEdit.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
208 | self.tr( |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
209 | "Enter regular expression patterns separated by ';' to define " |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
210 | "variable filters. " |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
211 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
212 | ) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
213 | self.localsFilterEdit.setWhatsThis( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
214 | self.tr( |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
215 | "Enter regular expression patterns separated by ';' to define " |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
216 | "variable filters. All variables and class attributes matched" |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
217 | " by one of the expressions are not shown in the list above." |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
218 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
219 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
220 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
221 | self.setLocalsFilterButton = QPushButton(self.tr("Set"), self.lvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | self.lvWidgetHLayout2.addWidget(self.setLocalsFilterButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | self.lvWidgetVLayout.addLayout(self.lvWidgetHLayout2) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
224 | |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
225 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
226 | self.lvWidget, UI.PixmapCache.getIcon("localVariables"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
227 | ) |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
228 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
229 | index, self.tr("Shows the list of local variables and their values.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
230 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
231 | |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
232 | self.sourceButton.clicked.connect(self.__showSource) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
233 | self.stackComboBox.currentIndexChanged[int].connect(self.__frameSelected) |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
234 | self.setLocalsFilterButton.clicked.connect(self.setLocalsFilter) |
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
235 | self.localsFilterEdit.returnPressed.connect(self.setLocalsFilter) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
236 | |
7012
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
237 | self.preferencesChanged.connect(self.handlePreferencesChanged) |
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
238 | self.preferencesChanged.connect(self.globalsViewer.preferencesChanged) |
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
239 | self.preferencesChanged.connect(self.localsViewer.preferencesChanged) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
240 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
241 | from .CallStackViewer import CallStackViewer |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
242 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
243 | # add the call stack viewer |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
244 | self.callStackViewer = CallStackViewer(self.debugServer) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
245 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
246 | self.callStackViewer, UI.PixmapCache.getIcon("callStack"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
247 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
248 | self.__tabWidget.setTabToolTip(index, self.tr("Shows the current call stack.")) |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
249 | self.callStackViewer.sourceFile.connect(self.sourceFile) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
250 | self.callStackViewer.frameSelected.connect(self.__callStackFrameSelected) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
251 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
252 | from .CallTraceViewer import CallTraceViewer |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
253 | |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
254 | # add the call trace viewer |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
255 | self.callTraceViewer = CallTraceViewer(self.debugServer, self) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
256 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
257 | self.callTraceViewer, UI.PixmapCache.getIcon("callTrace"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
258 | ) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
259 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
260 | index, self.tr("Shows a trace of the program flow.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
261 | ) |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
262 | self.callTraceViewer.sourceFile.connect(self.sourceFile) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
263 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
264 | from .BreakPointViewer import BreakPointViewer |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
265 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | # add the breakpoint viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | self.breakpointViewer = BreakPointViewer() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | self.breakpointViewer.setModel(self.debugServer.getBreakPointModel()) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
269 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
270 | self.breakpointViewer, UI.PixmapCache.getIcon("breakpoints"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
271 | ) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
272 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
273 | index, self.tr("Shows a list of defined breakpoints.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
274 | ) |
476
121633976eca
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
275 | self.breakpointViewer.sourceFile.connect(self.sourceFile) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
276 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
277 | from .WatchPointViewer import WatchPointViewer |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
278 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | # add the watch expression viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | self.watchpointViewer = WatchPointViewer() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
281 | self.watchpointViewer.setModel(self.debugServer.getWatchPointModel()) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
282 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
283 | self.watchpointViewer, UI.PixmapCache.getIcon("watchpoints"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
284 | ) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
285 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
286 | index, self.tr("Shows a list of defined watchpoints.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
287 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
288 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
289 | from .ExceptionLogger import ExceptionLogger |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
290 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | # add the exception logger |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | self.exceptionLogger = ExceptionLogger() |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
293 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
294 | self.exceptionLogger, UI.PixmapCache.getIcon("exceptions"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
295 | ) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
296 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
297 | index, self.tr("Shows a list of raised exceptions.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
298 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
299 | |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
300 | from UI.PythonDisViewer import PythonDisViewer, PythonDisViewerModes |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
301 | |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
302 | # add the Python disassembly viewer |
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
303 | self.disassemblyViewer = PythonDisViewer( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
304 | None, mode=PythonDisViewerModes.TRACEBACK |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
305 | ) |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
306 | index = self.__tabWidget.addTab( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
307 | self.disassemblyViewer, UI.PixmapCache.getIcon("disassembly"), "" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
308 | ) |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
309 | self.__tabWidget.setTabToolTip( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
310 | index, self.tr("Shows a code disassembly in case of an exception.") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
311 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
312 | |
6416
a915f8dd1ca6
File-Browser, Shell: changed code so file-browser and shell are always a standalone windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
313 | self.__tabWidget.setCurrentWidget(self.glvWidget) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
314 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
315 | self.__doDebuggersListUpdate = True |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
316 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
317 | self.__mainSplitter.setSizes([100, 700]) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
318 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | self.currentStack = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | self.framenr = 0 |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
321 | |
1926
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
322 | self.__autoViewSource = Preferences.getDebugger("AutoViewSourceCode") |
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
323 | self.sourceButton.setVisible(not self.__autoViewSource) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
324 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
325 | # connect some debug server signals |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
326 | self.debugServer.clientStack.connect(self.handleClientStack) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
327 | self.debugServer.clientThreadList.connect(self.__addThreadList) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
328 | self.debugServer.clientDebuggerId.connect(self.__clientDebuggerId) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
329 | self.debugServer.passiveDebugStarted.connect(self.handleDebuggingStarted) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
330 | self.debugServer.clientLine.connect(self.__clientLine) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
331 | self.debugServer.clientSyntaxError.connect(self.__clientSyntaxError) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
332 | self.debugServer.clientException.connect(self.__clientException) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
333 | self.debugServer.clientExit.connect(self.__clientExit) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
334 | self.debugServer.clientDisconnected.connect(self.__removeDebugger) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
335 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
336 | self.debugServer.clientException.connect(self.exceptionLogger.addException) |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
337 | self.debugServer.passiveDebugStarted.connect( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
338 | self.exceptionLogger.debuggingStarted |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
339 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
340 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
341 | self.debugServer.clientLine.connect(self.breakpointViewer.highlightBreakpoint) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
342 | |
7012
cc3f83d1a605
Colors for highlighting are configurable through Debugger->General
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
6942
diff
changeset
|
343 | def handlePreferencesChanged(self): |
1926
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
344 | """ |
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
345 | Public slot to handle the preferencesChanged signal. |
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
346 | """ |
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
347 | self.__autoViewSource = Preferences.getDebugger("AutoViewSourceCode") |
474057fbefe0
Added the configurable capability to automatically show the source, when the call frame is changed in the callstack viewer of the local variables viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1843
diff
changeset
|
348 | self.sourceButton.setVisible(not self.__autoViewSource) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
349 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | def setDebugger(self, debugUI): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
351 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
352 | Public method to set a reference to the Debug UI. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
353 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
354 | @param debugUI reference to the DebugUI object |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
355 | @type DebugUI |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
356 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
357 | self.debugUI = debugUI |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
358 | self.callStackViewer.setDebugger(debugUI) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
359 | |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
360 | # connect some debugUI signals |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
361 | self.debugUI.clientStack.connect(self.handleClientStack) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
362 | self.debugUI.debuggingStarted.connect(self.exceptionLogger.debuggingStarted) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
363 | self.debugUI.debuggingStarted.connect(self.handleDebuggingStarted) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
364 | |
7928
a78ce4578fed
Debugger: some more fixes
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
365 | def handleResetUI(self, fullReset): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
366 | """ |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
367 | Public method to reset the viewer. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
368 | |
7928
a78ce4578fed
Debugger: some more fixes
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
369 | @param fullReset flag indicating a full reset is required |
a78ce4578fed
Debugger: some more fixes
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
370 | @type bool |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
371 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | self.globalsViewer.handleResetUI() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | self.localsViewer.handleResetUI() |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
374 | self.setGlobalsFilter() |
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
375 | self.setLocalsFilter() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | self.sourceButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | self.currentStack = None |
2766
c413e9eeaf95
Fixed a bug in the debug viewer causing a false indication upon exit of the script being debugged.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2723
diff
changeset
|
378 | self.stackComboBox.clear() |
6416
a915f8dd1ca6
File-Browser, Shell: changed code so file-browser and shell are always a standalone windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
379 | self.__tabWidget.setCurrentWidget(self.glvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | self.breakpointViewer.handleResetUI() |
7928
a78ce4578fed
Debugger: some more fixes
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
381 | if fullReset: |
a78ce4578fed
Debugger: some more fixes
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
382 | self.__debuggersList.clear() |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
383 | self.disassemblyViewer.clear() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
384 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
385 | def initCallStackViewer(self, projectMode): |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
386 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
387 | Public method to initialize the call stack viewer. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
388 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
389 | @param projectMode flag indicating to enable the project mode |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
390 | @type bool |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
391 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
392 | self.callStackViewer.clear() |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
393 | self.callStackViewer.setProjectMode(projectMode) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
394 | |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
395 | def isCallTraceEnabled(self): |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
396 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
397 | Public method to get the state of the call trace function. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
398 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
399 | @return flag indicating the state of the call trace function |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
400 | @rtype bool |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
401 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
402 | return self.callTraceViewer.isCallTraceEnabled() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
403 | |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
404 | def clearCallTrace(self): |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
405 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
406 | Public method to clear the recorded call trace. |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
407 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
408 | self.callTraceViewer.clear() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
409 | |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
410 | def setCallTraceToProjectMode(self, enabled): |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
411 | """ |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
412 | Public slot to set the call trace viewer to project mode. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
413 | |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
414 | In project mode the call trace info is shown with project relative |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
415 | path names. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
416 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
417 | @param enabled flag indicating to enable the project mode |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
418 | @type bool |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
419 | """ |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
420 | self.callTraceViewer.setProjectMode(enabled) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
421 | |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
422 | def showVariables(self, vlist, showGlobals): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | Public method to show the variables in the respective window. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
425 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | @param vlist list of variables to display |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
427 | @type list |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
428 | @param showGlobals flag indicating global/local state |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
429 | @type bool |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | """ |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
431 | if showGlobals: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
432 | self.globalsViewer.showVariables(vlist, self.framenr) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
434 | self.localsViewer.showVariables(vlist, self.framenr) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
435 | |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
436 | def showVariable(self, vlist, showGlobals): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
437 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
438 | Public method to show the variables in the respective window. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
439 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | @param vlist list of variables to display |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
441 | @type list |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
442 | @param showGlobals flag indicating global/local state |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
443 | @type bool |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
444 | """ |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
445 | if showGlobals: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
446 | self.globalsViewer.showVariable(vlist) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
447 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
448 | self.localsViewer.showVariable(vlist) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
449 | |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
450 | def showVariablesTab(self, showGlobals): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
451 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
452 | Public method to make a variables tab visible. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
453 | |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
454 | @param showGlobals flag indicating global/local state |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
455 | @type bool |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | """ |
5587
ea526b78ee6c
Started to fix code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
457 | if showGlobals: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
458 | self.__tabWidget.setCurrentWidget(self.glvWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
459 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | self.__tabWidget.setCurrentWidget(self.lvWidget) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
461 | |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
462 | def handleClientStack(self, stack, debuggerId): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
463 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
464 | Public slot to show the call stack of the program being debugged. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
465 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
466 | @param stack list of tuples with call stack data (file name, |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
467 | line number, function name, formatted argument/values list) |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
468 | @type list of tuples of (str, str, str, str) |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
469 | @param debuggerId ID of the debugger backend |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
470 | @type str |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
471 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
472 | if debuggerId == self.getSelectedDebuggerId(): |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
473 | block = self.stackComboBox.blockSignals(True) |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
474 | self.framenr = 0 |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
475 | self.stackComboBox.clear() |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
476 | self.currentStack = stack |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
477 | self.sourceButton.setEnabled(len(stack) > 0) |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
478 | for s in stack: |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
479 | # just show base filename to make it readable |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
480 | s = (os.path.basename(s[0]), s[1], s[2]) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
481 | self.stackComboBox.addItem("{0}:{1}:{2}".format(*s)) |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
482 | self.stackComboBox.blockSignals(block) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
483 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
484 | def __clientLine(self, fn, line, debuggerId, threadName): |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
485 | """ |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
486 | Private method to handle a change to the current line. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
487 | |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
488 | @param fn filename |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
489 | @type str |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
490 | @param line linenumber |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
491 | @type int |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
492 | @param debuggerId ID of the debugger backend |
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
493 | @type str |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
494 | @param threadName name of the thread signaling the event |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
495 | @type str |
7377
cc920e534ac0
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7376
diff
changeset
|
496 | """ |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
497 | self.__setDebuggerIconAndState(debuggerId, "broken") |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
498 | self.__setThreadIconAndState(debuggerId, threadName, "broken") |
7410
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
499 | if debuggerId != self.getSelectedDebuggerId(): |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
500 | self.__setCurrentDebugger(debuggerId) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
501 | |
7421
4a9900aef04e
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7418
diff
changeset
|
502 | @pyqtSlot(str, int, str, bool, str) |
4a9900aef04e
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7418
diff
changeset
|
503 | def __clientExit(self, program, status, message, quiet, debuggerId): |
7410
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
504 | """ |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
505 | Private method to handle the debugged program terminating. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
506 | |
7421
4a9900aef04e
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7418
diff
changeset
|
507 | @param program name of the exited program |
4a9900aef04e
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7418
diff
changeset
|
508 | @type str |
7410
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
509 | @param status exit code of the debugged program |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
510 | @type int |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
511 | @param message exit message of the debugged program |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
512 | @type str |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
513 | @param quiet flag indicating to suppress exit info display |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
514 | @type bool |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
515 | @param debuggerId ID of the debugger backend |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
516 | @type str |
401791e6f50f
Continued with the multiprocess debugger. Implemented QProcess.startDetached() wrapper.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7407
diff
changeset
|
517 | """ |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
518 | if not self.isOnlyDebugger(): |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
519 | if debuggerId == self.getSelectedDebuggerId(): |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
520 | # the current client has exited |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
521 | self.globalsViewer.handleResetUI() |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
522 | self.localsViewer.handleResetUI() |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
523 | self.setGlobalsFilter() |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
524 | self.setLocalsFilter() |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
525 | self.sourceButton.setEnabled(False) |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
526 | self.currentStack = None |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
527 | self.stackComboBox.clear() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
528 | |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
529 | self.__removeDebugger(debuggerId) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
530 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
531 | def __clientSyntaxError( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
532 | self, message, filename, lineNo, characterNo, debuggerId, threadName |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
533 | ): |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
534 | """ |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
535 | Private method to handle a syntax error in the debugged program. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
536 | |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
537 | @param message message of the syntax error |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
538 | @type str |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
539 | @param filename translated filename of the syntax error position |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
540 | @type str |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
541 | @param lineNo line number of the syntax error position |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
542 | @type int |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
543 | @param characterNo character number of the syntax error position |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
544 | @type int |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
545 | @param debuggerId ID of the debugger backend |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
546 | @type str |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
547 | @param threadName name of the thread signaling the event |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
548 | @type str |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
549 | """ |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
550 | self.__setDebuggerIconAndState(debuggerId, "syntax") |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
551 | self.__setThreadIconAndState(debuggerId, threadName, "syntax") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
552 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
553 | def __clientException( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
554 | self, exceptionType, exceptionMessage, stackTrace, debuggerId, threadName |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
555 | ): |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
556 | """ |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
557 | Private method to handle an exception of the debugged program. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
558 | |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
559 | @param exceptionType type of exception raised |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
560 | @type str |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
561 | @param exceptionMessage message given by the exception |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
562 | @type (str |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
563 | @param stackTrace list of stack entries |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
564 | @type list of str |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
565 | @param debuggerId ID of the debugger backend |
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
566 | @type str |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
567 | @param threadName name of the thread signaling the event |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
568 | @type str |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
569 | """ |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
570 | self.__setDebuggerIconAndState(debuggerId, "exception") |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
571 | self.__setThreadIconAndState(debuggerId, threadName, "exception") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
572 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
573 | def setVariablesFilter(self, globalsFilter, localsFilter): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
574 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
575 | Public slot to set the local variables filter. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
576 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
577 | @param globalsFilter filter list for global variable types |
7862
817ef8e0fa66
Debugger: changed the handling of variable type filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
578 | @type list of str |
817ef8e0fa66
Debugger: changed the handling of variable type filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
579 | @param localsFilter filter list for local variable types |
817ef8e0fa66
Debugger: changed the handling of variable type filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
580 | @type list of str |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
581 | """ |
7862
817ef8e0fa66
Debugger: changed the handling of variable type filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
582 | self.__globalsFilter = globalsFilter |
817ef8e0fa66
Debugger: changed the handling of variable type filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
583 | self.__localsFilter = localsFilter |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
584 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
585 | def __showSource(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
586 | """ |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
587 | Private slot to handle the source button press to show the selected |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
588 | file. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
589 | """ |
2766
c413e9eeaf95
Fixed a bug in the debug viewer causing a false indication upon exit of the script being debugged.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2723
diff
changeset
|
590 | index = self.stackComboBox.currentIndex() |
c413e9eeaf95
Fixed a bug in the debug viewer causing a false indication upon exit of the script being debugged.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2723
diff
changeset
|
591 | if index > -1 and self.currentStack: |
c413e9eeaf95
Fixed a bug in the debug viewer causing a false indication upon exit of the script being debugged.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2723
diff
changeset
|
592 | s = self.currentStack[index] |
c413e9eeaf95
Fixed a bug in the debug viewer causing a false indication upon exit of the script being debugged.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2723
diff
changeset
|
593 | self.sourceFile.emit(s[0], int(s[1])) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
594 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
595 | def __frameSelected(self, frmnr): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
596 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
597 | Private slot to handle the selection of a new stack frame number. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
598 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
599 | @param frmnr frame number (0 is the current frame) |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
600 | @type int |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
601 | """ |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
602 | if frmnr >= 0: |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
603 | self.framenr = frmnr |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
604 | if self.debugServer.isDebugging(): |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
605 | self.debugServer.remoteClientVariables( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
606 | self.getSelectedDebuggerId(), 0, self.__localsFilter, frmnr |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
607 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
608 | |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
609 | if self.__autoViewSource: |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
610 | self.__showSource() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
611 | |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
612 | def setGlobalsFilter(self): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
613 | """ |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
614 | Public slot to set the global variable filter. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
615 | """ |
6431
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
616 | if self.debugServer.isDebugging(): |
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
617 | filterStr = self.globalsFilterEdit.text() |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
618 | self.debugServer.remoteClientSetFilter( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
619 | self.getSelectedDebuggerId(), 1, filterStr |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
620 | ) |
7379
72a72fd56494
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7377
diff
changeset
|
621 | self.debugServer.remoteClientVariables( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
622 | self.getSelectedDebuggerId(), 2, self.__globalsFilter |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
623 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
624 | |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
625 | def setLocalsFilter(self): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
626 | """ |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
627 | Public slot to set the local variable filter. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
628 | """ |
6431
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
629 | if self.debugServer.isDebugging(): |
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
630 | filterStr = self.localsFilterEdit.text() |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
631 | self.debugServer.remoteClientSetFilter( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
632 | self.getSelectedDebuggerId(), 0, filterStr |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
633 | ) |
6431
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
634 | if self.currentStack: |
1842436770c4
Debugger: changed code to prevent the right side bar or toolbox to be shown when the debugger has exited or was restarted via the shell.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6416
diff
changeset
|
635 | self.debugServer.remoteClientVariables( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
636 | self.getSelectedDebuggerId(), 0, self.__localsFilter, self.framenr |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
637 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
638 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
639 | def handleDebuggingStarted(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
640 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
641 | Public slot to handle the start of a debugging session. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
642 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
643 | This slot sets the variables filter expressions. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
644 | """ |
5165
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
645 | self.setGlobalsFilter() |
37691caeec1a
Added the capability to refresh the variables viewer via the context menu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
646 | self.setLocalsFilter() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
647 | self.showVariablesTab(False) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
648 | |
7707
6abcf4275d0e
Added a viewer to visualize Python byte code generated from a Python traceback of an exception as an additional tab of the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
649 | self.disassemblyViewer.clear() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
650 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
651 | def currentWidget(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
652 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
653 | Public method to get a reference to the current widget. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
654 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
655 | @return reference to the current widget |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
656 | @rtype QWidget |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
657 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
658 | return self.__tabWidget.currentWidget() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
659 | |
821
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
660 | def setCurrentWidget(self, widget): |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
661 | """ |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
662 | Public slot to set the current page based on the given widget. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
663 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
664 | @param widget reference to the widget |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
665 | @type QWidget |
821
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
666 | """ |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
667 | self.__tabWidget.setCurrentWidget(widget) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
668 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
669 | def __callStackFrameSelected(self, frameNo): |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
670 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
671 | Private slot to handle the selection of a call stack entry of the |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
672 | call stack viewer. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
673 | |
7882
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
674 | @param frameNo frame number (index) of the selected entry |
617cc27f11af
Updated some source docu strings and added TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7881
diff
changeset
|
675 | @type int |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
676 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
677 | if frameNo >= 0: |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
678 | self.stackComboBox.setCurrentIndex(frameNo) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
679 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
680 | def __debuggerSelected(self, current, previous): |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
681 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
682 | Private slot to handle the selection of a debugger backend in the |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
683 | debuggers list. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
684 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
685 | @param current reference to the new current item |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
686 | @type QTreeWidgetItem |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
687 | @param previous reference to the previous current item |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
688 | @type QTreeWidgetItem |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
689 | """ |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
690 | if current is not None and self.__doDebuggersListUpdate: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
691 | if current.parent() is None: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
692 | # it is a debugger item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
693 | debuggerId = current.text(0) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
694 | self.globalsViewer.handleResetUI() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
695 | self.localsViewer.handleResetUI() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
696 | self.currentStack = None |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
697 | self.stackComboBox.clear() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
698 | self.callStackViewer.clear() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
699 | |
7933
ca1b44d522b9
Debugger: did some fine tuning.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7932
diff
changeset
|
700 | self.debugServer.remoteSetThread(debuggerId, -1) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
701 | self.__showSource() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
702 | else: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
703 | # it is a thread item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
704 | tid = current.data(0, self.ThreadIdRole) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
705 | self.debugServer.remoteSetThread(self.getSelectedDebuggerId(), tid) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
706 | |
7412
0a995393d2ba
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7411
diff
changeset
|
707 | def __clientDebuggerId(self, debuggerId): |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
708 | """ |
7412
0a995393d2ba
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7411
diff
changeset
|
709 | Private slot to receive the ID of a newly connected debugger backend. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
710 | |
7412
0a995393d2ba
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7411
diff
changeset
|
711 | @param debuggerId ID of a newly connected debugger backend |
0a995393d2ba
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7411
diff
changeset
|
712 | @type str |
0a995393d2ba
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7411
diff
changeset
|
713 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
714 | itm = QTreeWidgetItem(self.__debuggersList, [debuggerId]) |
7903
827d89937c30
Fixed a few issues with the new multi process debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7892
diff
changeset
|
715 | if self.__debuggersList.topLevelItemCount() > 1: |
827d89937c30
Fixed a few issues with the new multi process debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7892
diff
changeset
|
716 | self.debugUI.showNotification( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
717 | self.tr( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
718 | "<p>Debugger with ID <b>{0}</b> has been connected." "</p>" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
719 | ).format(debuggerId) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
720 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
721 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
722 | self.__debuggersList.header().resizeSections( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
723 | QHeaderView.ResizeMode.ResizeToContents |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
724 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
725 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
726 | if self.__debuggersList.topLevelItemCount() == 1: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
727 | # it is the only item, select it as the current one |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
728 | self.__debuggersList.setCurrentItem(itm) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
729 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
730 | def __setCurrentDebugger(self, debuggerId): |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
731 | """ |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
732 | Private method to set the current debugger based on the given ID. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
733 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
734 | @param debuggerId ID of the debugger to set as current debugger |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
735 | @type str |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
736 | """ |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
737 | debuggerItems = self.__debuggersList.findItems( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
738 | debuggerId, Qt.MatchFlag.MatchExactly |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
739 | ) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
740 | if debuggerItems: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
741 | debuggerItem = debuggerItems[0] |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
742 | currentItem = self.__debuggersList.currentItem() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
743 | if currentItem is debuggerItem: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
744 | # nothing to do |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
745 | return |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
746 | |
7931
a761160bfde9
DebugViewer: fixed a bug selecting a debugger entry when there is no current item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7928
diff
changeset
|
747 | if currentItem: |
a761160bfde9
DebugViewer: fixed a bug selecting a debugger entry when there is no current item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7928
diff
changeset
|
748 | currentParent = currentItem.parent() |
a761160bfde9
DebugViewer: fixed a bug selecting a debugger entry when there is no current item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7928
diff
changeset
|
749 | else: |
a761160bfde9
DebugViewer: fixed a bug selecting a debugger entry when there is no current item.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7928
diff
changeset
|
750 | currentParent = None |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
751 | if currentParent is None: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
752 | # current is a debugger item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
753 | self.__debuggersList.setCurrentItem(debuggerItem) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
754 | elif currentParent is debuggerItem: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
755 | # nothing to do |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
756 | return |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
757 | else: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
758 | self.__debuggersList.setCurrentItem(debuggerItem) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
759 | |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
760 | def isOnlyDebugger(self): |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
761 | """ |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
762 | Public method to test, if only one debugger is connected. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
763 | |
7915
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
764 | @return flag indicating that only one debugger is connected |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
765 | @rtype bool |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
766 | """ |
e68f5c568aee
Debugger: fixed a few bugs introduced by the multi process debugger changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7903
diff
changeset
|
767 | return self.__debuggersList.topLevelItemCount() == 1 |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
768 | |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
769 | def getSelectedDebuggerId(self): |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
770 | """ |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
771 | Public method to get the currently selected debugger ID. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
772 | |
7374
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
773 | @return selected debugger ID |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
774 | @rtype str |
5401ae8ddaa1
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
775 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
776 | itm = self.__debuggersList.currentItem() |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
777 | if itm: |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
778 | if itm.parent() is None: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
779 | # it is a debugger item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
780 | return itm.text(0) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
781 | else: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
782 | # it is a thread item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
783 | return itm.parent().text(0) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
784 | else: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
785 | return "" |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
786 | |
7405
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
787 | def getSelectedDebuggerState(self): |
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
788 | """ |
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
789 | Public method to get the currently selected debugger's state. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
790 | |
7411
6d8dcb3551b3
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7410
diff
changeset
|
791 | @return selected debugger's state (broken, exception, running) |
7405
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
792 | @rtype str |
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
793 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
794 | itm = self.__debuggersList.currentItem() |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
795 | if itm: |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
796 | if itm.parent() is None: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
797 | # it is a debugger item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
798 | return itm.data(0, self.DebuggerStateRole) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
799 | else: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
800 | # it is a thread item |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
801 | return itm.parent().data(0, self.DebuggerStateRole) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
802 | else: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
803 | return "" |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
804 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
805 | def __setDebuggerIconAndState(self, debuggerId, state): |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
806 | """ |
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
807 | Private method to set the icon for a specific debugger ID. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
808 | |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
809 | @param debuggerId ID of the debugger backend (empty ID means the |
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
810 | currently selected one) |
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
811 | @type str |
7411
6d8dcb3551b3
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7410
diff
changeset
|
812 | @param state state of the debugger (broken, exception, running) |
7405
bf6be3cff6cf
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7389
diff
changeset
|
813 | @type str |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
814 | """ |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
815 | debuggerItem = None |
7389
770ffcb88be5
Continued with the multiprocess debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7379
diff
changeset
|
816 | if debuggerId: |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
817 | foundItems = self.__debuggersList.findItems( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
818 | debuggerId, Qt.MatchFlag.MatchExactly |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
819 | ) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
820 | if foundItems: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
821 | debuggerItem = foundItems[0] |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
822 | if debuggerItem is None: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
823 | debuggerItem = self.__debuggersList.currentItem() |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
824 | if debuggerItem is not None: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
825 | try: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
826 | iconName = DebugViewer.StateIcon[state] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
827 | except KeyError: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
828 | iconName = "question" |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
829 | try: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
830 | stateText = DebugViewer.StateMessage[state] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
831 | except KeyError: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
832 | stateText = self.tr("unknown state ({0})").format(state) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
833 | debuggerItem.setIcon(0, UI.PixmapCache.getIcon(iconName)) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
834 | debuggerItem.setData(0, self.DebuggerStateRole, state) |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
835 | debuggerItem.setText(1, stateText) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
836 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
837 | self.__debuggersList.header().resizeSections( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
838 | QHeaderView.ResizeMode.ResizeToContents |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
839 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
840 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
841 | def __removeDebugger(self, debuggerId): |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
842 | """ |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
843 | Private method to remove a debugger given its ID. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
844 | |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
845 | @param debuggerId ID of the debugger to be removed from the list |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
846 | @type str |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
847 | """ |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
848 | foundItems = self.__debuggersList.findItems( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
849 | debuggerId, Qt.MatchFlag.MatchExactly |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
850 | ) |
7881
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
851 | if foundItems: |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
852 | index = self.__debuggersList.indexOfTopLevelItem(foundItems[0]) |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
853 | itm = self.__debuggersList.takeTopLevelItem(index) |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
854 | # __IGNORE_WARNING__ |
6c09c023cda5
DebugViewer: changed the debugger selector to a list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7879
diff
changeset
|
855 | del itm |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
856 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
857 | def __addThreadList(self, currentID, threadList, debuggerId): |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
858 | """ |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
859 | Private method to add the list of threads to a debugger entry. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
860 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
861 | @param currentID id of the current thread |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
862 | @type int |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
863 | @param threadList list of dictionaries containing the thread data |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
864 | @type list of dict |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
865 | @param debuggerId ID of the debugger backend |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
866 | @type str |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
867 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
868 | debugStatus = -1 # i.e. running |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
869 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
870 | debuggerItems = self.__debuggersList.findItems( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
871 | debuggerId, Qt.MatchFlag.MatchExactly |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
872 | ) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
873 | if debuggerItems: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
874 | debuggerItem = debuggerItems[0] |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
875 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
876 | currentItem = self.__debuggersList.currentItem() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
877 | if currentItem.parent() is debuggerItem: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
878 | currentChild = currentItem.text(0) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
879 | else: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
880 | currentChild = "" |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
881 | self.__doDebuggersListUpdate = False |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
882 | debuggerItem.takeChildren() |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
883 | for thread in threadList: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
884 | if thread.get("except", False): |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
885 | stateText = DebugViewer.StateMessage["exception"] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
886 | iconName = DebugViewer.StateIcon["exception"] |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
887 | debugStatus = 1 |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
888 | elif thread["broken"]: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
889 | stateText = DebugViewer.StateMessage["broken"] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
890 | iconName = DebugViewer.StateIcon["broken"] |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
891 | if debugStatus < 1: |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
892 | debugStatus = 0 |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
893 | else: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
894 | stateText = DebugViewer.StateMessage["running"] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
895 | iconName = DebugViewer.StateIcon["running"] |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
896 | itm = QTreeWidgetItem(debuggerItem, [thread["name"], stateText]) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
897 | itm.setData(0, self.ThreadIdRole, thread["id"]) |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
898 | itm.setIcon(0, UI.PixmapCache.getIcon(iconName)) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
899 | if currentChild == thread["name"]: |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
900 | self.__debuggersList.setCurrentItem(itm) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
901 | if thread["id"] == currentID: |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
902 | font = debuggerItem.font(0) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
903 | font.setItalic(True) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
904 | itm.setFont(0, font) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
905 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
906 | debuggerItem.setExpanded(debuggerItem.childCount() > 0) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
907 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
908 | self.__debuggersList.header().resizeSections( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
909 | QHeaderView.ResizeMode.ResizeToContents |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
910 | ) |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
911 | self.__debuggersList.header().setStretchLastSection(True) |
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
912 | self.__doDebuggersListUpdate = True |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
913 | |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
914 | if debugStatus == -1: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
915 | debuggerState = "running" |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
916 | elif debugStatus == 0: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
917 | debuggerState = "broken" |
7920
322d1ee01510
DebugViewer: united the debuggers and threads lists.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7915
diff
changeset
|
918 | else: |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
919 | debuggerState = "exception" |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
920 | self.__setDebuggerIconAndState(debuggerId, debuggerState) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
921 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
922 | def __setThreadIconAndState(self, debuggerId, threadName, state): |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
923 | """ |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
924 | Private method to set the icon for a specific thread name and |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
925 | debugger ID. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
926 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
927 | @param debuggerId ID of the debugger backend (empty ID means the |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
928 | currently selected one) |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
929 | @type str |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
930 | @param threadName name of the thread signaling the event |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
931 | @type str |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
932 | @param state state of the debugger (broken, exception, running) |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
933 | @type str |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
934 | """ |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
935 | debuggerItem = None |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
936 | if debuggerId: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
937 | foundItems = self.__debuggersList.findItems( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
938 | debuggerId, Qt.MatchFlag.MatchExactly |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
939 | ) |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
940 | if foundItems: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
941 | debuggerItem = foundItems[0] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
942 | if debuggerItem is None: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
943 | debuggerItem = self.__debuggersList.currentItem() |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
944 | if debuggerItem is not None: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
945 | for index in range(debuggerItem.childCount()): |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
946 | childItem = debuggerItem.child(index) |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
947 | if childItem.text(0) == threadName: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
948 | break |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
949 | else: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
950 | childItem = None |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
951 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
952 | if childItem is not None: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
953 | try: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
954 | iconName = DebugViewer.StateIcon[state] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
955 | except KeyError: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
956 | iconName = "question" |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
957 | try: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
958 | stateText = DebugViewer.StateMessage[state] |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
959 | except KeyError: |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
960 | stateText = self.tr("unknown state ({0})").format(state) |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
961 | childItem.setIcon(0, UI.PixmapCache.getIcon(iconName)) |
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
962 | childItem.setText(1, stateText) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
963 | |
7986
2971d5d19951
Fixed a few thread related issues in the debugger.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7933
diff
changeset
|
964 | self.__debuggersList.header().resizeSections( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
965 | QHeaderView.ResizeMode.ResizeToContents |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
966 | ) |