Sat, 11 Jan 2014 11:55:33 +0100
Changed the code to use QObject.tr() instead of QObject.trUtf8().
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 | |
3160
209a07d7e401
Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3021
diff
changeset
|
3 | # Copyright (c) 2002 - 2014 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> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | <li>variables viewer for global variables</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | <li>variables viewer for local variables</li> |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
13 | <li>call trace viewer</li> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | <li>viewer for breakpoints</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | <li>viewer for watch expressions</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | <li>viewer for exceptions</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | <li>viewer for threads</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | <li>a file browser (optional)</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | <li>an interpreter shell (optional)</li> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | </ul> |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | """ |
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 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | |
1112
8a7d1b9d18db
Improved code quality by getting rid of star imports. That way pyflakes can do its job. A few bugs fixed found by flakes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
945
diff
changeset
|
25 | from PyQt4.QtCore import pyqtSignal |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
26 | from PyQt4.QtGui import QWidget, QVBoxLayout, QHBoxLayout, QLineEdit, \ |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
27 | QSizePolicy, QPushButton, QComboBox, QLabel, QTreeWidget, \ |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
28 | QTreeWidgetItem, QHeaderView |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | 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
|
31 | import Preferences |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | |
55
b5c84934de9c
Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
33 | from E5Gui.E5TabWidget import E5TabWidget |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
35 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | class DebugViewer(QWidget): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | Class implementing a widget conatining various debug related views. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
40 | 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
|
41 | 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
|
42 | (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
|
43 | the exception logger. Additionally a list of all threads is shown. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | @signal sourceFile(string, int) emitted to open a source file at a line |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | """ |
476
121633976eca
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
47 | sourceFile = pyqtSignal(str, int) |
121633976eca
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
48 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
49 | def __init__(self, debugServer, docked, vm, parent=None, |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
50 | embeddedShell=True, embeddedBrowser=True): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | @param debugServer reference to the debug server object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | @param docked flag indicating a dock window |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | @param vm reference to the viewmanager object |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | @param parent parent widget (QWidget) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
58 | @param embeddedShell flag indicating whether the shell should be |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
59 | included. This flag is set to False by those layouts, that have |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
60 | the interpreter shell in a separate window. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | @param embeddedBrowser flag indicating whether the file browser should |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
62 | be included. This flag is set to False by those layouts, that |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
63 | have the file browser in a separate window or embedded |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
64 | in the project browser instead. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | """ |
1131
7781e396c903
Changed the code to use super() to access the superclass.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
66 | super().__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | self.debugServer = debugServer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | self.debugUI = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | self.setWindowIcon(UI.PixmapCache.getIcon("eric.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | self.__mainLayout = QVBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
74 | self.__mainLayout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | self.setLayout(self.__mainLayout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | |
55
b5c84934de9c
Renamed E4Gui to E5Gui.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
13
diff
changeset
|
77 | self.__tabWidget = E5TabWidget() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | self.__mainLayout.addWidget(self.__tabWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | self.embeddedShell = embeddedShell |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | if embeddedShell: |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
82 | from QScintilla.Shell import ShellAssembly |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | # add the interpreter shell |
1833
f7cd855680f1
Added the capability to search in the output of the shell window.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
84 | self.shellAssembly = ShellAssembly(debugServer, vm, False) |
f7cd855680f1
Added the capability to search in the output of the shell window.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
85 | self.shell = self.shellAssembly.shell() |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
86 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
87 | self.shellAssembly, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | UI.PixmapCache.getIcon("shell.png"), '') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | self.__tabWidget.setTabToolTip(index, self.shell.windowTitle()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | self.embeddedBrowser = embeddedBrowser |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | if embeddedBrowser: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | from UI.Browser import Browser |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | # add the browser |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | self.browser = Browser() |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
96 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
97 | self.browser, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | UI.PixmapCache.getIcon("browser.png"), '') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | self.__tabWidget.setTabToolTip(index, self.browser.windowTitle()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
101 | from .VariablesViewer import VariablesViewer |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | # add the global variables viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | self.glvWidget = QWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | self.glvWidgetVLayout = QVBoxLayout(self.glvWidget) |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
105 | self.glvWidgetVLayout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | self.glvWidgetVLayout.setSpacing(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | self.glvWidget.setLayout(self.glvWidgetVLayout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | self.globalsViewer = VariablesViewer(self.glvWidget, True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | self.glvWidgetVLayout.addWidget(self.globalsViewer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | self.glvWidgetHLayout = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
113 | self.glvWidgetHLayout.setContentsMargins(3, 3, 3, 3) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | 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
|
116 | self.globalsFilterEdit.setSizePolicy( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
117 | QSizePolicy.Expanding, QSizePolicy.Fixed) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | self.glvWidgetHLayout.addWidget(self.globalsFilterEdit) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
119 | self.globalsFilterEdit.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
120 | self.tr("Enter regular expression patterns separated by ';'" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
121 | " to define variable filters. ")) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
122 | self.globalsFilterEdit.setWhatsThis( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
123 | self.tr("Enter regular expression patterns separated by ';'" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
124 | " to define variable filters. All variables and" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
125 | " class attributes matched by one of the expressions" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
126 | " are not shown in the list above.")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
128 | self.setGlobalsFilterButton = QPushButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
129 | self.tr('Set'), self.glvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | self.glvWidgetHLayout.addWidget(self.setGlobalsFilterButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | self.glvWidgetVLayout.addLayout(self.glvWidgetHLayout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
133 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
134 | self.glvWidget, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | UI.PixmapCache.getIcon("globalVariables.png"), '') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | self.__tabWidget.setTabToolTip(index, self.globalsViewer.windowTitle()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
138 | self.setGlobalsFilterButton.clicked[()].connect( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
139 | self.__setGlobalsFilter) |
482
4650a72c307a
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
481
diff
changeset
|
140 | self.globalsFilterEdit.returnPressed.connect(self.__setGlobalsFilter) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | # add the local variables viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | self.lvWidget = QWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | self.lvWidgetVLayout = QVBoxLayout(self.lvWidget) |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
145 | self.lvWidgetVLayout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | self.lvWidgetVLayout.setSpacing(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | self.lvWidget.setLayout(self.lvWidgetVLayout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | self.lvWidgetHLayout1 = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
150 | self.lvWidgetHLayout1.setContentsMargins(3, 3, 3, 3) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | 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
|
153 | self.stackComboBox.setSizePolicy( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
154 | QSizePolicy.Expanding, QSizePolicy.Fixed) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | self.lvWidgetHLayout1.addWidget(self.stackComboBox) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
157 | self.sourceButton = QPushButton(self.tr('Source'), self.lvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | self.lvWidgetHLayout1.addWidget(self.sourceButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | self.sourceButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | self.lvWidgetVLayout.addLayout(self.lvWidgetHLayout1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
161 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | self.localsViewer = VariablesViewer(self.lvWidget, False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | self.lvWidgetVLayout.addWidget(self.localsViewer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | self.lvWidgetHLayout2 = QHBoxLayout() |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2766
diff
changeset
|
166 | self.lvWidgetHLayout2.setContentsMargins(3, 3, 3, 3) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | 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
|
169 | self.localsFilterEdit.setSizePolicy( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
170 | QSizePolicy.Expanding, QSizePolicy.Fixed) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | self.lvWidgetHLayout2.addWidget(self.localsFilterEdit) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
172 | 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
|
173 | self.tr( |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
174 | "Enter regular expression patterns separated by ';' to define " |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | "variable filters. ")) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
482
diff
changeset
|
176 | 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
|
177 | self.tr( |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
178 | "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
|
179 | "variable filters. All variables and class attributes matched" |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
180 | " by one of the expressions are not shown in the list above.")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
182 | self.setLocalsFilterButton = QPushButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
183 | self.tr('Set'), self.lvWidget) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | self.lvWidgetHLayout2.addWidget(self.setLocalsFilterButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | self.lvWidgetVLayout.addLayout(self.lvWidgetHLayout2) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
187 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
188 | self.lvWidget, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | UI.PixmapCache.getIcon("localVariables.png"), '') |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | self.__tabWidget.setTabToolTip(index, self.localsViewer.windowTitle()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | |
464
a2b1d1770ef0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
406
diff
changeset
|
192 | self.sourceButton.clicked[()].connect(self.__showSource) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
193 | self.stackComboBox.currentIndexChanged[int].connect( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
194 | self.__frameSelected) |
464
a2b1d1770ef0
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
406
diff
changeset
|
195 | self.setLocalsFilterButton.clicked[()].connect(self.__setLocalsFilter) |
482
4650a72c307a
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
481
diff
changeset
|
196 | self.localsFilterEdit.returnPressed.connect(self.__setLocalsFilter) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
198 | from .CallStackViewer import CallStackViewer |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
199 | # 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
|
200 | self.callStackViewer = CallStackViewer(self.debugServer) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
201 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
202 | self.callStackViewer, |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
203 | UI.PixmapCache.getIcon("step.png"), "") |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
204 | self.__tabWidget.setTabToolTip( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
205 | index, self.callStackViewer.windowTitle()) |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
206 | self.callStackViewer.sourceFile.connect(self.sourceFile) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
207 | self.callStackViewer.frameSelected.connect( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
208 | self.__callStackFrameSelected) |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
209 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
210 | from .CallTraceViewer import CallTraceViewer |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
211 | # add the call trace viewer |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
212 | self.callTraceViewer = CallTraceViewer(self.debugServer) |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
213 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
214 | self.callTraceViewer, |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
215 | UI.PixmapCache.getIcon("callTrace.png"), "") |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
216 | self.__tabWidget.setTabToolTip( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
217 | index, self.callTraceViewer.windowTitle()) |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
218 | self.callTraceViewer.sourceFile.connect(self.sourceFile) |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
219 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
220 | from .BreakPointViewer import BreakPointViewer |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | # add the breakpoint viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | self.breakpointViewer = BreakPointViewer() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | 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
|
224 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
225 | self.breakpointViewer, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | UI.PixmapCache.getIcon("breakpoints.png"), '') |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
227 | self.__tabWidget.setTabToolTip( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
228 | index, self.breakpointViewer.windowTitle()) |
476
121633976eca
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
464
diff
changeset
|
229 | self.breakpointViewer.sourceFile.connect(self.sourceFile) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
231 | from .WatchPointViewer import WatchPointViewer |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | # add the watch expression viewer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | self.watchpointViewer = WatchPointViewer() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | 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
|
235 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
236 | self.watchpointViewer, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | UI.PixmapCache.getIcon("watchpoints.png"), '') |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
238 | self.__tabWidget.setTabToolTip( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
239 | index, self.watchpointViewer.windowTitle()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | |
2400
c1726b754f96
Started with delaying the import upon the time it is needed.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
241 | from .ExceptionLogger import ExceptionLogger |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | # add the exception logger |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | self.exceptionLogger = ExceptionLogger() |
3021
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
244 | index = self.__tabWidget.addTab( |
801289962f4e
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2988
diff
changeset
|
245 | self.exceptionLogger, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | UI.PixmapCache.getIcon("exceptions.png"), '') |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
247 | self.__tabWidget.setTabToolTip( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
248 | index, self.exceptionLogger.windowTitle()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | if self.embeddedShell: |
1843
0c00516e0403
Fixed an issue caused by the search for shell and terminal changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1833
diff
changeset
|
251 | self.__tabWidget.setCurrentWidget(self.shellAssembly) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | if self.embeddedBrowser: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | self.__tabWidget.setCurrentWidget(self.browser) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | self.__tabWidget.setCurrentWidget(self.lvWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | # add the threads viewer |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
259 | self.__mainLayout.addWidget(QLabel(self.tr("Threads:"))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | self.__threadList = QTreeWidget() |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
261 | self.__threadList.setHeaderLabels( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
262 | [self.tr("ID"), self.tr("Name"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
263 | self.tr("State"), ""]) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | self.__threadList.setSortingEnabled(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | self.__mainLayout.addWidget(self.__threadList) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | self.__doThreadListUpdate = True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | |
482
4650a72c307a
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
481
diff
changeset
|
269 | self.__threadList.currentItemChanged.connect(self.__threadSelected) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | self.__mainLayout.setStretchFactor(self.__tabWidget, 5) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | self.__mainLayout.setStretchFactor(self.__threadList, 1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | self.currPage = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | self.currentStack = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | self.framenr = 0 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | |
481
ad71812ba395
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
476
diff
changeset
|
278 | self.debugServer.clientStack.connect(self.handleClientStack) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | |
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
|
280 | 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
|
281 | self.sourceButton.setVisible(not self.__autoViewSource) |
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
|
282 | |
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
|
283 | def preferencesChanged(self): |
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
|
284 | """ |
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
|
285 | 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
|
286 | """ |
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
|
287 | 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
|
288 | self.sourceButton.setVisible(not self.__autoViewSource) |
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
|
289 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | def setDebugger(self, debugUI): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | Public method to set a reference to the Debug UI. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
294 | @param debugUI reference to the DebugUI object (DebugUI) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | self.debugUI = debugUI |
481
ad71812ba395
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
476
diff
changeset
|
297 | self.debugUI.clientStack.connect(self.handleClientStack) |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
298 | self.callStackViewer.setDebugger(debugUI) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
299 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
300 | def handleResetUI(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
301 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
302 | Public method to reset the SBVviewer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
303 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | self.globalsViewer.handleResetUI() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | self.localsViewer.handleResetUI() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | self.sourceButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
307 | 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
|
308 | self.stackComboBox.clear() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
309 | self.__threadList.clear() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
310 | if self.embeddedShell: |
1843
0c00516e0403
Fixed an issue caused by the search for shell and terminal changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1833
diff
changeset
|
311 | self.__tabWidget.setCurrentWidget(self.shellAssembly) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
312 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
313 | if self.embeddedBrowser: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
314 | self.__tabWidget.setCurrentWidget(self.browser) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | self.__tabWidget.setCurrentWidget(self.lvWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | self.breakpointViewer.handleResetUI() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | def handleRawInput(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | Pulic slot to handle the switch to the shell in raw input mode. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | if self.embeddedShell: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | self.saveCurrentPage() |
1843
0c00516e0403
Fixed an issue caused by the search for shell and terminal changes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1833
diff
changeset
|
325 | self.__tabWidget.setCurrentWidget(self.shellAssembly) |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
326 | |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
327 | 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
|
328 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
329 | Public method to initialize 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
|
330 | |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
331 | @param projectMode flag indicating to enable the project mode (boolean) |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
332 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
333 | 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
|
334 | self.callStackViewer.setProjectMode(projectMode) |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
335 | |
2170
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
336 | def isCallTraceEnabled(self): |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
337 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
338 | Public method to get the state of the call trace function. |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
339 | |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
340 | @return flag indicating the state of the call trace function (boolean) |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
341 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
342 | return self.callTraceViewer.isCallTraceEnabled() |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
343 | |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
344 | def clearCallTrace(self): |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
345 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
346 | 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
|
347 | """ |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
348 | self.callTraceViewer.clear() |
f4e0f6133ace
Started implementing the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1926
diff
changeset
|
349 | |
2171
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
350 | def setCallTraceToProjectMode(self, enabled): |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
351 | """ |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
352 | Public slot to set the call trace viewer to project mode. |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
353 | |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
354 | 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
|
355 | path names. |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
356 | |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
357 | @param enabled flag indicating to enable the project mode (boolean) |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
358 | """ |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
359 | self.callTraceViewer.setProjectMode(enabled) |
c7dd548d67d8
Finished the coding part of the call trace functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2170
diff
changeset
|
360 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | def showVariables(self, vlist, globals): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
363 | Public method to show the variables in the respective window. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
365 | @param vlist list of variables to display |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
366 | @param globals flag indicating global/local state |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
367 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | if globals: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | self.globalsViewer.showVariables(vlist, self.framenr) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
370 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
371 | self.localsViewer.showVariables(vlist, self.framenr) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | def showVariable(self, vlist, globals): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
374 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
375 | Public method to show the variables in the respective window. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | @param vlist list of variables to display |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | @param globals flag indicating global/local state |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | if globals: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | self.globalsViewer.showVariable(vlist) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
383 | self.localsViewer.showVariable(vlist) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
385 | def showVariablesTab(self, globals): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
387 | Public method to make a variables tab visible. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | @param globals flag indicating global/local state |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
390 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
391 | if globals: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
392 | self.__tabWidget.setCurrentWidget(self.glvWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
393 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
394 | self.__tabWidget.setCurrentWidget(self.lvWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
395 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
396 | def saveCurrentPage(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
397 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | Public slot to save the current page. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
399 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | self.currPage = self.__tabWidget.currentWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
402 | def restoreCurrentPage(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
404 | Public slot to restore the previously saved page. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
406 | if self.currPage is not None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | self.__tabWidget.setCurrentWidget(self.currPage) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
408 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | def handleClientStack(self, stack): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | Public slot to show the call stack of the program being debugged. |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
412 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
413 | @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
|
414 | line number, function name, formatted argument/values list) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | """ |
2723
f6ad272bf486
Fixed a bug in the debug viewer causing some items being shown multiple times.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2622
diff
changeset
|
416 | block = self.stackComboBox.blockSignals(True) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | self.framenr = 0 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | self.stackComboBox.clear() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | self.currentStack = stack |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | self.sourceButton.setEnabled(len(stack) > 0) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | for s in stack: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
422 | # just show base filename to make it readable |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | s = (os.path.basename(s[0]), s[1], s[2]) |
406
eacf81fad150
Started converting the string formatting stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
424 | self.stackComboBox.addItem('{0}:{1}:{2}'.format(*s)) |
2723
f6ad272bf486
Fixed a bug in the debug viewer causing some items being shown multiple times.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2622
diff
changeset
|
425 | self.stackComboBox.blockSignals(block) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
427 | def setVariablesFilter(self, globalsFilter, localsFilter): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
428 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
429 | Public slot to set the local variables filter. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
431 | @param globalsFilter filter list for global variable types |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
432 | (list of int) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | @param localsFilter filter list for local variable types (list of int) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
434 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
435 | self.globalsFilter = globalsFilter |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
436 | self.localsFilter = localsFilter |
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 | def __showSource(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
439 | """ |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
440 | 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
|
441 | file. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
442 | """ |
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
|
443 | 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
|
444 | 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
|
445 | 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
|
446 | self.sourceFile.emit(s[0], int(s[1])) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
447 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
448 | def __frameSelected(self, frmnr): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
449 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
450 | Private slot to handle the selection of a new stack frame number. |
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 | @param frmnr frame number (0 is the current frame) (int) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
453 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
454 | self.framenr = frmnr |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
455 | self.debugServer.remoteClientVariables(0, self.localsFilter, frmnr) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | |
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
|
457 | if self.__autoViewSource: |
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
|
458 | self.__showSource() |
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
|
459 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | def __setGlobalsFilter(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | """ |
2953
703452a2876f
Started correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
462 | Private slot to set the global variable filter. |
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 | filter = self.globalsFilterEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
465 | self.debugServer.remoteClientSetFilter(1, filter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
466 | if self.currentStack: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | self.debugServer.remoteClientVariables(2, self.globalsFilter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
468 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | def __setLocalsFilter(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
470 | """ |
2953
703452a2876f
Started correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
471 | Private slot to set the local variable filter. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
472 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
473 | filter = self.localsFilterEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | self.debugServer.remoteClientSetFilter(0, filter) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
475 | if self.currentStack: |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
476 | self.debugServer.remoteClientVariables( |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
477 | 0, self.localsFilter, self.framenr) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
478 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
479 | def handleDebuggingStarted(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
480 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
481 | Public slot to handle the start of a debugging session. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
482 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
483 | This slot sets the variables filter expressions. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
484 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
485 | self.__setGlobalsFilter() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
486 | self.__setLocalsFilter() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
487 | self.showVariablesTab(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
488 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
489 | def currentWidget(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
490 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | Public method to get a reference to the current widget. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
493 | @return reference to the current widget (QWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
494 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | return self.__tabWidget.currentWidget() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
496 | |
821
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
497 | def setCurrentWidget(self, widget): |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
498 | """ |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
499 | Public slot to set the current page based on the given widget. |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
500 | |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
501 | @param widget reference to the widget (QWidget) |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
502 | """ |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
503 | self.__tabWidget.setCurrentWidget(widget) |
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
504 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
505 | def showThreadList(self, currentID, threadList): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
506 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
507 | Public method to show the thread list. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
508 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
509 | @param currentID id of the current thread (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
510 | @param threadList list of dictionaries containing the thread data |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
511 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
512 | citm = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
513 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
514 | self.__threadList.clear() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
515 | for thread in threadList: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
516 | if thread['broken']: |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
517 | state = self.tr("waiting at breakpoint") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
518 | else: |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
519 | state = self.tr("running") |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
821
diff
changeset
|
520 | itm = QTreeWidgetItem(self.__threadList, |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
521 | ["{0:d}".format(thread['id']), |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
522 | thread['name'], state]) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
523 | if thread['id'] == currentID: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
524 | citm = itm |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
525 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
526 | self.__threadList.header().resizeSections(QHeaderView.ResizeToContents) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
527 | self.__threadList.header().setStretchLastSection(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
528 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
529 | if citm: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
530 | self.__doThreadListUpdate = False |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
531 | self.__threadList.setCurrentItem(citm) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
532 | self.__doThreadListUpdate = True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
533 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
534 | def __threadSelected(self, current, previous): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
535 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
536 | Private slot to handle the selection of a thread in the thread list. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
537 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
538 | @param current reference to the new current item (QTreeWidgetItem) |
2988
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
539 | @param previous reference to the previous current item |
f53c03574697
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2953
diff
changeset
|
540 | (QTreeWidgetItem) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
541 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
542 | if current is not None and self.__doThreadListUpdate: |
8
0ae9bd4d2993
Fixed a few bugs introduced introduced by the change to the QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7
diff
changeset
|
543 | tid = int(current.text(0)) |
821
4c4a4525e69a
Added the forgotten "setCurrentWidget" slot to the debug viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
544 | self.debugServer.remoteSetThread(tid) |
2622
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
545 | |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
546 | 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
|
547 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
548 | 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
|
549 | 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
|
550 | |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
551 | @param frameNo frame number (index) of the selected entry (integer) |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
552 | """ |
08cc2f31c983
Added a viewer for the call stack leading to the current line.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2400
diff
changeset
|
553 | 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
|
554 | self.stackComboBox.setCurrentIndex(frameNo) |