eric6/Debugger/DebugUI.py

branch
multi_processing
changeset 7374
5401ae8ddaa1
parent 7360
9190402e4505
child 7377
cc920e534ac0
equal deleted inserted replaced
7373:d036d72f457c 7374:5401ae8ddaa1
136 self.__clientWatchConditionError) 136 self.__clientWatchConditionError)
137 debugServer.passiveDebugStarted.connect(self.__passiveDebugStarted) 137 debugServer.passiveDebugStarted.connect(self.__passiveDebugStarted)
138 debugServer.clientThreadSet.connect(self.__clientThreadSet) 138 debugServer.clientThreadSet.connect(self.__clientThreadSet)
139 139
140 debugServer.clientThreadList.connect(debugViewer.showThreadList) 140 debugServer.clientThreadList.connect(debugViewer.showThreadList)
141 debugServer.clientDebuggerIds.connect(debugViewer.showDebuggersList)
141 142
142 # Connect the signals emitted by the viewmanager 143 # Connect the signals emitted by the viewmanager
143 vm.editorOpened.connect(self.__editorOpened) 144 vm.editorOpened.connect(self.__editorOpened)
144 vm.lastEditorClosed.connect(self.__lastEditorClosed) 145 vm.lastEditorClosed.connect(self.__lastEditorClosed)
145 vm.checkActions.connect(self.__checkActions) 146 vm.checkActions.connect(self.__checkActions)
1268 E5MessageBox.information( 1269 E5MessageBox.information(
1269 self.ui, Program, 1270 self.ui, Program,
1270 self.tr('The program being debugged has terminated' 1271 self.tr('The program being debugged has terminated'
1271 ' unexpectedly.')) 1272 ' unexpectedly.'))
1272 1273
1273 def __getThreadList(self): 1274 def __getThreadList(self, debuggerId=""):
1274 """ 1275 """
1275 Private method to get the list of threads from the client. 1276 Private method to get the list of threads from the client.
1276 """ 1277
1277 self.debugServer.remoteThreadList() 1278 @param debuggerId ID of the debugger backend
1279 @type str
1280 """
1281 self.debugServer.remoteThreadList(debuggerId=debuggerId)
1278 1282
1279 def __clientThreadSet(self): 1283 def __clientThreadSet(self):
1280 """ 1284 """
1281 Private method to handle a change of the client's current thread. 1285 Private method to handle a change of the client's current thread.
1282 """ 1286 """
1283 self.debugServer.remoteClientVariables(0, self.localsVarFilter) 1287 self.debugServer.remoteClientVariables(0, self.localsVarFilter)
1284 1288
1285 def __getClientVariables(self): 1289 def __getClientVariables(self, debuggerId=""):
1286 """ 1290 """
1287 Private method to request the global and local variables. 1291 Private method to request the global and local variables.
1288 1292
1289 In the first step, the global variables are requested from the client. 1293 In the first step, the global variables are requested from the client.
1290 Once these have been received, the local variables are requested. 1294 Once these have been received, the local variables are requested.
1291 This happens in the method '__clientVariables'. 1295 This happens in the method '__clientVariables'.
1296
1297 @param debuggerId ID of the debugger backend
1298 @type str
1292 """ 1299 """
1293 # get globals first 1300 # get globals first
1294 self.debugServer.remoteClientVariables(1, self.globalsVarFilter) 1301 self.debugServer.remoteClientVariables(1, self.globalsVarFilter,
1302 debuggerId=debuggerId)
1295 # the local variables are requested once we have received the globals 1303 # the local variables are requested once we have received the globals
1296 1304
1297 def __clientVariables(self, scope, variables): 1305 def __clientVariables(self, scope, variables):
1298 """ 1306 """
1299 Private method to write the clients variables to the user interface. 1307 Private method to write the clients variables to the user interface.
1300 1308
1301 @param scope scope of the variables (-1 = empty global, 1 = global, 1309 @param scope scope of the variables (-1 = empty locals, 1 = global,
1302 0 = local) 1310 0 = local)
1303 @param variables the list of variables from the client 1311 @param variables the list of variables from the client
1304 """ 1312 """
1305 self.ui.activateDebugViewer() 1313 self.ui.activateDebugViewer()
1306 if scope > 0: 1314 if scope > 0:
2323 Public method to get a list of all actions. 2331 Public method to get a list of all actions.
2324 2332
2325 @return list of all actions (list of E5Action) 2333 @return list of all actions (list of E5Action)
2326 """ 2334 """
2327 return self.actions[:] 2335 return self.actions[:]
2336
2337 def getDebuggerData(self, debuggerId):
2338 """
2339 Public method to refresh the debugging data of a specific debugger
2340 backend.
2341
2342 @param debuggerId ID of the debugger backend
2343 @type str
2344 """
2345 self.debugServer.remoteClientStack(debuggerId)
2346 self.__getThreadList(debuggerId)
2347 self.__getClientVariables(debuggerId)

eric ide

mercurial