Debugger/DebugUI.py

changeset 453
a81097a85889
parent 406
eacf81fad150
child 454
d28d558f7484
equal deleted inserted replaced
452:0bc58cbb64b2 453:a81097a85889
163 self.runAct.setWhatsThis(self.trUtf8( 163 self.runAct.setWhatsThis(self.trUtf8(
164 """<b>Run Script</b>""" 164 """<b>Run Script</b>"""
165 """<p>Set the command line arguments and run the script outside the""" 165 """<p>Set the command line arguments and run the script outside the"""
166 """ debugger. If the file has unsaved changes it may be saved first.</p>""" 166 """ debugger. If the file has unsaved changes it may be saved first.</p>"""
167 )) 167 ))
168 self.connect(self.runAct, SIGNAL('triggered()'), self.__runScript) 168 self.runAct.triggered.connect(self.__runScript)
169 self.actions.append(self.runAct) 169 self.actions.append(self.runAct)
170 170
171 self.runProjectAct = E5Action(self.trUtf8('Run Project'), 171 self.runProjectAct = E5Action(self.trUtf8('Run Project'),
172 UI.PixmapCache.getIcon("runProject.png"), 172 UI.PixmapCache.getIcon("runProject.png"),
173 self.trUtf8('Run &Project...'),Qt.SHIFT + Qt.Key_F2,0,self, 173 self.trUtf8('Run &Project...'),Qt.SHIFT + Qt.Key_F2,0,self,
178 """<p>Set the command line arguments and run the current project""" 178 """<p>Set the command line arguments and run the current project"""
179 """ outside the debugger.""" 179 """ outside the debugger."""
180 """ If files of the current project have unsaved changes they may""" 180 """ If files of the current project have unsaved changes they may"""
181 """ be saved first.</p>""" 181 """ be saved first.</p>"""
182 )) 182 ))
183 self.connect(self.runProjectAct, SIGNAL('triggered()'), self.__runProject) 183 self.runProjectAct.triggered.connect(self.__runProject)
184 self.actions.append(self.runProjectAct) 184 self.actions.append(self.runProjectAct)
185 185
186 self.coverageAct = E5Action(self.trUtf8('Coverage run of Script'), 186 self.coverageAct = E5Action(self.trUtf8('Coverage run of Script'),
187 UI.PixmapCache.getIcon("coverageScript.png"), 187 UI.PixmapCache.getIcon("coverageScript.png"),
188 self.trUtf8('Coverage run of Script...'),0,0,self,'dbg_coverage_script') 188 self.trUtf8('Coverage run of Script...'),0,0,self,'dbg_coverage_script')
192 """<b>Coverage run of Script</b>""" 192 """<b>Coverage run of Script</b>"""
193 """<p>Set the command line arguments and run the script under the control""" 193 """<p>Set the command line arguments and run the script under the control"""
194 """ of a coverage analysis tool. If the file has unsaved changes it may be""" 194 """ of a coverage analysis tool. If the file has unsaved changes it may be"""
195 """ saved first.</p>""" 195 """ saved first.</p>"""
196 )) 196 ))
197 self.connect(self.coverageAct, SIGNAL('triggered()'), self.__coverageScript) 197 self.coverageAct.triggered.connect(self.__coverageScript)
198 self.actions.append(self.coverageAct) 198 self.actions.append(self.coverageAct)
199 199
200 self.coverageProjectAct = E5Action(self.trUtf8('Coverage run of Project'), 200 self.coverageProjectAct = E5Action(self.trUtf8('Coverage run of Project'),
201 UI.PixmapCache.getIcon("coverageProject.png"), 201 UI.PixmapCache.getIcon("coverageProject.png"),
202 self.trUtf8('Coverage run of Project...'),0,0,self,'dbg_coverage_project') 202 self.trUtf8('Coverage run of Project...'),0,0,self,'dbg_coverage_project')
207 """<p>Set the command line arguments and run the current project""" 207 """<p>Set the command line arguments and run the current project"""
208 """ under the control of a coverage analysis tool.""" 208 """ under the control of a coverage analysis tool."""
209 """ If files of the current project have unsaved changes they may""" 209 """ If files of the current project have unsaved changes they may"""
210 """ be saved first.</p>""" 210 """ be saved first.</p>"""
211 )) 211 ))
212 self.connect(self.coverageProjectAct, SIGNAL('triggered()'), self.__coverageProject) 212 self.coverageProjectAct.triggered.connect(self.__coverageProject)
213 self.actions.append(self.coverageProjectAct) 213 self.actions.append(self.coverageProjectAct)
214 214
215 self.profileAct = E5Action(self.trUtf8('Profile Script'), 215 self.profileAct = E5Action(self.trUtf8('Profile Script'),
216 UI.PixmapCache.getIcon("profileScript.png"), 216 UI.PixmapCache.getIcon("profileScript.png"),
217 self.trUtf8('Profile Script...'),0,0,self,'dbg_profile_script') 217 self.trUtf8('Profile Script...'),0,0,self,'dbg_profile_script')
219 self.profileAct.setWhatsThis(self.trUtf8( 219 self.profileAct.setWhatsThis(self.trUtf8(
220 """<b>Profile Script</b>""" 220 """<b>Profile Script</b>"""
221 """<p>Set the command line arguments and profile the script.""" 221 """<p>Set the command line arguments and profile the script."""
222 """ If the file has unsaved changes it may be saved first.</p>""" 222 """ If the file has unsaved changes it may be saved first.</p>"""
223 )) 223 ))
224 self.connect(self.profileAct, SIGNAL('triggered()'), self.__profileScript) 224 self.profileAct.triggered.connect(self.__profileScript)
225 self.actions.append(self.profileAct) 225 self.actions.append(self.profileAct)
226 226
227 self.profileProjectAct = E5Action(self.trUtf8('Profile Project'), 227 self.profileProjectAct = E5Action(self.trUtf8('Profile Project'),
228 UI.PixmapCache.getIcon("profileProject.png"), 228 UI.PixmapCache.getIcon("profileProject.png"),
229 self.trUtf8('Profile Project...'),0,0,self,'dbg_profile_project') 229 self.trUtf8('Profile Project...'),0,0,self,'dbg_profile_project')
232 """<b>Profile Project</b>""" 232 """<b>Profile Project</b>"""
233 """<p>Set the command line arguments and profile the current project.""" 233 """<p>Set the command line arguments and profile the current project."""
234 """ If files of the current project have unsaved changes they may""" 234 """ If files of the current project have unsaved changes they may"""
235 """ be saved first.</p>""" 235 """ be saved first.</p>"""
236 )) 236 ))
237 self.connect(self.profileProjectAct, SIGNAL('triggered()'), self.__profileProject) 237 self.profileProjectAct.triggered.connect(self.__profileProject)
238 self.actions.append(self.profileProjectAct) 238 self.actions.append(self.profileProjectAct)
239 239
240 self.debugAct = E5Action(self.trUtf8('Debug Script'), 240 self.debugAct = E5Action(self.trUtf8('Debug Script'),
241 UI.PixmapCache.getIcon("debugScript.png"), 241 UI.PixmapCache.getIcon("debugScript.png"),
242 self.trUtf8('&Debug Script...'),Qt.Key_F5,0,self,'dbg_debug_script') 242 self.trUtf8('&Debug Script...'),Qt.Key_F5,0,self,'dbg_debug_script')
245 """<b>Debug Script</b>""" 245 """<b>Debug Script</b>"""
246 """<p>Set the command line arguments and set the current line to be the""" 246 """<p>Set the command line arguments and set the current line to be the"""
247 """ first executable Python statement of the current editor window.""" 247 """ first executable Python statement of the current editor window."""
248 """ If the file has unsaved changes it may be saved first.</p>""" 248 """ If the file has unsaved changes it may be saved first.</p>"""
249 )) 249 ))
250 self.connect(self.debugAct, SIGNAL('triggered()'), self.__debugScript) 250 self.debugAct.triggered.connect(self.__debugScript)
251 self.actions.append(self.debugAct) 251 self.actions.append(self.debugAct)
252 252
253 self.debugProjectAct = E5Action(self.trUtf8('Debug Project'), 253 self.debugProjectAct = E5Action(self.trUtf8('Debug Project'),
254 UI.PixmapCache.getIcon("debugProject.png"), 254 UI.PixmapCache.getIcon("debugProject.png"),
255 self.trUtf8('Debug &Project...'),Qt.SHIFT + Qt.Key_F5,0,self, 255 self.trUtf8('Debug &Project...'),Qt.SHIFT + Qt.Key_F5,0,self,
260 """<p>Set the command line arguments and set the current line to be the""" 260 """<p>Set the command line arguments and set the current line to be the"""
261 """ first executable Python statement of the main script of the current""" 261 """ first executable Python statement of the main script of the current"""
262 """ project. If files of the current project have unsaved changes they may""" 262 """ project. If files of the current project have unsaved changes they may"""
263 """ be saved first.</p>""" 263 """ be saved first.</p>"""
264 )) 264 ))
265 self.connect(self.debugProjectAct, SIGNAL('triggered()'), self.__debugProject) 265 self.debugProjectAct.triggered.connect(self.__debugProject)
266 self.actions.append(self.debugProjectAct) 266 self.actions.append(self.debugProjectAct)
267 267
268 self.restartAct = E5Action(self.trUtf8('Restart Script'), 268 self.restartAct = E5Action(self.trUtf8('Restart Script'),
269 UI.PixmapCache.getIcon("restart.png"), 269 UI.PixmapCache.getIcon("restart.png"),
270 self.trUtf8('Restart Script'),Qt.Key_F4,0,self,'dbg_restart_script') 270 self.trUtf8('Restart Script'),Qt.Key_F4,0,self,'dbg_restart_script')
273 """<b>Restart Script</b>""" 273 """<b>Restart Script</b>"""
274 """<p>Set the command line arguments and set the current line to be the""" 274 """<p>Set the command line arguments and set the current line to be the"""
275 """ first executable Python statement of the script that was debugged last.""" 275 """ first executable Python statement of the script that was debugged last."""
276 """ If there are unsaved changes, they may be saved first.</p>""" 276 """ If there are unsaved changes, they may be saved first.</p>"""
277 )) 277 ))
278 self.connect(self.restartAct, SIGNAL('triggered()'), self.__doRestart) 278 self.restartAct.triggered.connect(self.__doRestart)
279 self.actions.append(self.restartAct) 279 self.actions.append(self.restartAct)
280 280
281 self.stopAct = E5Action(self.trUtf8('Stop Script'), 281 self.stopAct = E5Action(self.trUtf8('Stop Script'),
282 UI.PixmapCache.getIcon("stopScript.png"), 282 UI.PixmapCache.getIcon("stopScript.png"),
283 self.trUtf8('Stop Script'),Qt.SHIFT + Qt.Key_F10,0, 283 self.trUtf8('Stop Script'),Qt.SHIFT + Qt.Key_F10,0,
285 self.stopAct.setStatusTip(self.trUtf8("""Stop the running script.""")) 285 self.stopAct.setStatusTip(self.trUtf8("""Stop the running script."""))
286 self.stopAct.setWhatsThis(self.trUtf8( 286 self.stopAct.setWhatsThis(self.trUtf8(
287 """<b>Stop Script</b>""" 287 """<b>Stop Script</b>"""
288 """<p>This stops the script running in the debugger backend.</p>""" 288 """<p>This stops the script running in the debugger backend.</p>"""
289 )) 289 ))
290 self.connect(self.stopAct, SIGNAL('triggered()'), self.__stopScript) 290 self.stopAct.triggered.connect(self.__stopScript)
291 self.actions.append(self.stopAct) 291 self.actions.append(self.stopAct)
292 292
293 self.debugActGrp = createActionGroup(self) 293 self.debugActGrp = createActionGroup(self)
294 294
295 act = E5Action(self.trUtf8('Continue'), 295 act = E5Action(self.trUtf8('Continue'),
301 act.setWhatsThis(self.trUtf8( 301 act.setWhatsThis(self.trUtf8(
302 """<b>Continue</b>""" 302 """<b>Continue</b>"""
303 """<p>Continue running the program from the current line. The program will""" 303 """<p>Continue running the program from the current line. The program will"""
304 """ stop when it terminates or when a breakpoint is reached.</p>""" 304 """ stop when it terminates or when a breakpoint is reached.</p>"""
305 )) 305 ))
306 self.connect(act, SIGNAL('triggered()'), self.__continue) 306 act.triggered.connect(self.__continue)
307 self.actions.append(act) 307 self.actions.append(act)
308 308
309 act = E5Action(self.trUtf8('Continue to Cursor'), 309 act = E5Action(self.trUtf8('Continue to Cursor'),
310 UI.PixmapCache.getIcon("continueToCursor.png"), 310 UI.PixmapCache.getIcon("continueToCursor.png"),
311 self.trUtf8('Continue &To Cursor'),Qt.SHIFT + Qt.Key_F6,0, 311 self.trUtf8('Continue &To Cursor'),Qt.SHIFT + Qt.Key_F6,0,
315 act.setWhatsThis(self.trUtf8( 315 act.setWhatsThis(self.trUtf8(
316 """<b>Continue To Cursor</b>""" 316 """<b>Continue To Cursor</b>"""
317 """<p>Continue running the program from the current line to the""" 317 """<p>Continue running the program from the current line to the"""
318 """ current cursor position.</p>""" 318 """ current cursor position.</p>"""
319 )) 319 ))
320 self.connect(act, SIGNAL('triggered()'), self.__runToCursor) 320 act.triggered.connect(self.__runToCursor)
321 self.actions.append(act) 321 self.actions.append(act)
322 322
323 act = E5Action(self.trUtf8('Single Step'), 323 act = E5Action(self.trUtf8('Single Step'),
324 UI.PixmapCache.getIcon("step.png"), 324 UI.PixmapCache.getIcon("step.png"),
325 self.trUtf8('Sin&gle Step'),Qt.Key_F7,0, 325 self.trUtf8('Sin&gle Step'),Qt.Key_F7,0,
330 """<p>Execute a single Python statement. If the statement""" 330 """<p>Execute a single Python statement. If the statement"""
331 """ is an <tt>import</tt> statement, a class constructor, or a""" 331 """ is an <tt>import</tt> statement, a class constructor, or a"""
332 """ method or function call then control is returned to the debugger at""" 332 """ method or function call then control is returned to the debugger at"""
333 """ the next statement.</p>""" 333 """ the next statement.</p>"""
334 )) 334 ))
335 self.connect(act, SIGNAL('triggered()'), self.__step) 335 act.triggered.connect(self.__step)
336 self.actions.append(act) 336 self.actions.append(act)
337 337
338 act = E5Action(self.trUtf8('Step Over'), 338 act = E5Action(self.trUtf8('Step Over'),
339 UI.PixmapCache.getIcon("stepOver.png"), 339 UI.PixmapCache.getIcon("stepOver.png"),
340 self.trUtf8('Step &Over'),Qt.Key_F8,0, 340 self.trUtf8('Step &Over'),Qt.Key_F8,0,
346 """<p>Execute a single Python statement staying in the same frame. If""" 346 """<p>Execute a single Python statement staying in the same frame. If"""
347 """ the statement is an <tt>import</tt> statement, a class constructor,""" 347 """ the statement is an <tt>import</tt> statement, a class constructor,"""
348 """ or a method or function call then control is returned to the debugger""" 348 """ or a method or function call then control is returned to the debugger"""
349 """ after the statement has completed.</p>""" 349 """ after the statement has completed.</p>"""
350 )) 350 ))
351 self.connect(act, SIGNAL('triggered()'), self.__stepOver) 351 act.triggered.connect(self.__stepOver)
352 self.actions.append(act) 352 self.actions.append(act)
353 353
354 act = E5Action(self.trUtf8('Step Out'), 354 act = E5Action(self.trUtf8('Step Out'),
355 UI.PixmapCache.getIcon("stepOut.png"), 355 UI.PixmapCache.getIcon("stepOut.png"),
356 self.trUtf8('Step Ou&t'),Qt.Key_F9,0, 356 self.trUtf8('Step Ou&t'),Qt.Key_F9,0,
362 """<p>Execute Python statements until leaving the current frame. If""" 362 """<p>Execute Python statements until leaving the current frame. If"""
363 """ the statements are inside an <tt>import</tt> statement, a class""" 363 """ the statements are inside an <tt>import</tt> statement, a class"""
364 """ constructor, or a method or function call then control is returned""" 364 """ constructor, or a method or function call then control is returned"""
365 """ to the debugger after the current frame has been left.</p>""" 365 """ to the debugger after the current frame has been left.</p>"""
366 )) 366 ))
367 self.connect(act, SIGNAL('triggered()'), self.__stepOut) 367 act.triggered.connect(self.__stepOut)
368 self.actions.append(act) 368 self.actions.append(act)
369 369
370 act = E5Action(self.trUtf8('Stop'), 370 act = E5Action(self.trUtf8('Stop'),
371 UI.PixmapCache.getIcon("stepQuit.png"), 371 UI.PixmapCache.getIcon("stepQuit.png"),
372 self.trUtf8('&Stop'),Qt.Key_F10,0, 372 self.trUtf8('&Stop'),Qt.Key_F10,0,
374 act.setStatusTip(self.trUtf8('Stop debugging')) 374 act.setStatusTip(self.trUtf8('Stop debugging'))
375 act.setWhatsThis(self.trUtf8( 375 act.setWhatsThis(self.trUtf8(
376 """<b>Stop</b>""" 376 """<b>Stop</b>"""
377 """<p>Stop the running debugging session.</p>""" 377 """<p>Stop the running debugging session.</p>"""
378 )) 378 ))
379 self.connect(act, SIGNAL('triggered()'), self.__stepQuit) 379 act.triggered.connect(self.__stepQuit)
380 self.actions.append(act) 380 self.actions.append(act)
381 381
382 self.debugActGrp2 = createActionGroup(self) 382 self.debugActGrp2 = createActionGroup(self)
383 383
384 act = E5Action(self.trUtf8('Evaluate'), 384 act = E5Action(self.trUtf8('Evaluate'),
389 """<b>Evaluate</b>""" 389 """<b>Evaluate</b>"""
390 """<p>Evaluate an expression in the current context of the""" 390 """<p>Evaluate an expression in the current context of the"""
391 """ debugged program. The result is displayed in the""" 391 """ debugged program. The result is displayed in the"""
392 """ shell window.</p>""" 392 """ shell window.</p>"""
393 )) 393 ))
394 self.connect(act, SIGNAL('triggered()'), self.__eval) 394 act.triggered.connect(self.__eval)
395 self.actions.append(act) 395 self.actions.append(act)
396 396
397 act = E5Action(self.trUtf8('Execute'), 397 act = E5Action(self.trUtf8('Execute'),
398 self.trUtf8('E&xecute...'), 398 self.trUtf8('E&xecute...'),
399 0,0,self.debugActGrp2,'dbg_execute') 399 0,0,self.debugActGrp2,'dbg_execute')
402 act.setWhatsThis(self.trUtf8( 402 act.setWhatsThis(self.trUtf8(
403 """<b>Execute</b>""" 403 """<b>Execute</b>"""
404 """<p>Execute a one line statement in the current context""" 404 """<p>Execute a one line statement in the current context"""
405 """ of the debugged program.</p>""" 405 """ of the debugged program.</p>"""
406 )) 406 ))
407 self.connect(act, SIGNAL('triggered()'), self.__exec) 407 act.triggered.connect(self.__exec)
408 self.actions.append(act) 408 self.actions.append(act)
409 409
410 self.dbgFilterAct = E5Action(self.trUtf8('Variables Type Filter'), 410 self.dbgFilterAct = E5Action(self.trUtf8('Variables Type Filter'),
411 self.trUtf8('Varia&bles Type Filter...'), 0, 0, self, 411 self.trUtf8('Varia&bles Type Filter...'), 0, 0, self,
412 'dbg_variables_filter') 412 'dbg_variables_filter')
415 """<b>Variables Type Filter</b>""" 415 """<b>Variables Type Filter</b>"""
416 """<p>Configure the variables type filter. Only variable types that are not""" 416 """<p>Configure the variables type filter. Only variable types that are not"""
417 """ selected are displayed in the global or local variables window""" 417 """ selected are displayed in the global or local variables window"""
418 """ during a debugging session.</p>""" 418 """ during a debugging session.</p>"""
419 )) 419 ))
420 self.connect(self.dbgFilterAct, SIGNAL('triggered()'), 420 self.dbgFilterAct.triggered.connect(self.__configureVariablesFilters)
421 self.__configureVariablesFilters)
422 self.actions.append(self.dbgFilterAct) 421 self.actions.append(self.dbgFilterAct)
423 422
424 self.excFilterAct = E5Action(self.trUtf8('Exceptions Filter'), 423 self.excFilterAct = E5Action(self.trUtf8('Exceptions Filter'),
425 self.trUtf8('&Exceptions Filter...'), 0, 0, self, 'dbg_exceptions_filter') 424 self.trUtf8('&Exceptions Filter...'), 0, 0, self, 'dbg_exceptions_filter')
426 self.excFilterAct.setStatusTip(self.trUtf8('Configure exceptions filter')) 425 self.excFilterAct.setStatusTip(self.trUtf8('Configure exceptions filter'))
429 """<p>Configure the exceptions filter. Only exception types that are""" 428 """<p>Configure the exceptions filter. Only exception types that are"""
430 """ listed are highlighted during a debugging session.</p>""" 429 """ listed are highlighted during a debugging session.</p>"""
431 """<p>Please note, that all unhandled exceptions are highlighted""" 430 """<p>Please note, that all unhandled exceptions are highlighted"""
432 """ indepent from the filter list.</p>""" 431 """ indepent from the filter list.</p>"""
433 )) 432 ))
434 self.connect(self.excFilterAct, SIGNAL('triggered()'), 433 self.excFilterAct.triggered.connect(self.__configureExceptionsFilter)
435 self.__configureExceptionsFilter)
436 self.actions.append(self.excFilterAct) 434 self.actions.append(self.excFilterAct)
437 435
438 self.excIgnoreFilterAct = E5Action(self.trUtf8('Ignored Exceptions'), 436 self.excIgnoreFilterAct = E5Action(self.trUtf8('Ignored Exceptions'),
439 self.trUtf8('&Ignored Exceptions...'), 0, 0, 437 self.trUtf8('&Ignored Exceptions...'), 0, 0,
440 self, 'dbg_ignored_exceptions') 438 self, 'dbg_ignored_exceptions')
443 """<b>Ignored Exceptions</b>""" 441 """<b>Ignored Exceptions</b>"""
444 """<p>Configure the ignored exceptions. Only exception types that are""" 442 """<p>Configure the ignored exceptions. Only exception types that are"""
445 """ not listed are highlighted during a debugging session.</p>""" 443 """ not listed are highlighted during a debugging session.</p>"""
446 """<p>Please note, that unhandled exceptions cannot be ignored.</p>""" 444 """<p>Please note, that unhandled exceptions cannot be ignored.</p>"""
447 )) 445 ))
448 self.connect(self.excIgnoreFilterAct, SIGNAL('triggered()'), 446 self.excIgnoreFilterAct.triggered.connect(self.__configureIgnoredExceptions)
449 self.__configureIgnoredExceptions)
450 self.actions.append(self.excIgnoreFilterAct) 447 self.actions.append(self.excIgnoreFilterAct)
451 448
452 self.dbgSetBpActGrp = createActionGroup(self) 449 self.dbgSetBpActGrp = createActionGroup(self)
453 450
454 self.dbgToggleBpAct = E5Action(self.trUtf8('Toggle Breakpoint'), 451 self.dbgToggleBpAct = E5Action(self.trUtf8('Toggle Breakpoint'),
460 self.dbgToggleBpAct.setWhatsThis(self.trUtf8( 457 self.dbgToggleBpAct.setWhatsThis(self.trUtf8(
461 """<b>Toggle Breakpoint</b>""" 458 """<b>Toggle Breakpoint</b>"""
462 """<p>Toggles a breakpoint at the current line of the""" 459 """<p>Toggles a breakpoint at the current line of the"""
463 """ current editor.</p>""" 460 """ current editor.</p>"""
464 )) 461 ))
465 self.connect(self.dbgToggleBpAct, SIGNAL('triggered()'), self.__toggleBreakpoint) 462 self.dbgToggleBpAct.triggered.connect(self.__toggleBreakpoint)
466 self.actions.append(self.dbgToggleBpAct) 463 self.actions.append(self.dbgToggleBpAct)
467 464
468 self.dbgEditBpAct = E5Action(self.trUtf8('Edit Breakpoint'), 465 self.dbgEditBpAct = E5Action(self.trUtf8('Edit Breakpoint'),
469 UI.PixmapCache.getIcon("cBreakpointToggle.png"), 466 UI.PixmapCache.getIcon("cBreakpointToggle.png"),
470 self.trUtf8('Edit Breakpoint...'), 467 self.trUtf8('Edit Breakpoint...'),
474 self.dbgEditBpAct.setWhatsThis(self.trUtf8( 471 self.dbgEditBpAct.setWhatsThis(self.trUtf8(
475 """<b>Edit Breakpoint</b>""" 472 """<b>Edit Breakpoint</b>"""
476 """<p>Opens a dialog to edit the breakpoints properties.""" 473 """<p>Opens a dialog to edit the breakpoints properties."""
477 """ It works at the current line of the current editor.</p>""" 474 """ It works at the current line of the current editor.</p>"""
478 )) 475 ))
479 self.connect(self.dbgEditBpAct, SIGNAL('triggered()'), self.__editBreakpoint) 476 self.dbgEditBpAct.triggered.connect(self.__editBreakpoint)
480 self.actions.append(self.dbgEditBpAct) 477 self.actions.append(self.dbgEditBpAct)
481 478
482 self.dbgNextBpAct = E5Action(self.trUtf8('Next Breakpoint'), 479 self.dbgNextBpAct = E5Action(self.trUtf8('Next Breakpoint'),
483 UI.PixmapCache.getIcon("breakpointNext.png"), 480 UI.PixmapCache.getIcon("breakpointNext.png"),
484 self.trUtf8('Next Breakpoint'), 481 self.trUtf8('Next Breakpoint'),
487 self.dbgNextBpAct.setStatusTip(self.trUtf8('Next Breakpoint')) 484 self.dbgNextBpAct.setStatusTip(self.trUtf8('Next Breakpoint'))
488 self.dbgNextBpAct.setWhatsThis(self.trUtf8( 485 self.dbgNextBpAct.setWhatsThis(self.trUtf8(
489 """<b>Next Breakpoint</b>""" 486 """<b>Next Breakpoint</b>"""
490 """<p>Go to next breakpoint of the current editor.</p>""" 487 """<p>Go to next breakpoint of the current editor.</p>"""
491 )) 488 ))
492 self.connect(self.dbgNextBpAct, SIGNAL('triggered()'), self.__nextBreakpoint) 489 self.dbgNextBpAct.triggered.connect(self.__nextBreakpoint)
493 self.actions.append(self.dbgNextBpAct) 490 self.actions.append(self.dbgNextBpAct)
494 491
495 self.dbgPrevBpAct = E5Action(self.trUtf8('Previous Breakpoint'), 492 self.dbgPrevBpAct = E5Action(self.trUtf8('Previous Breakpoint'),
496 UI.PixmapCache.getIcon("breakpointPrevious.png"), 493 UI.PixmapCache.getIcon("breakpointPrevious.png"),
497 self.trUtf8('Previous Breakpoint'), 494 self.trUtf8('Previous Breakpoint'),
500 self.dbgPrevBpAct.setStatusTip(self.trUtf8('Previous Breakpoint')) 497 self.dbgPrevBpAct.setStatusTip(self.trUtf8('Previous Breakpoint'))
501 self.dbgPrevBpAct.setWhatsThis(self.trUtf8( 498 self.dbgPrevBpAct.setWhatsThis(self.trUtf8(
502 """<b>Previous Breakpoint</b>""" 499 """<b>Previous Breakpoint</b>"""
503 """<p>Go to previous breakpoint of the current editor.</p>""" 500 """<p>Go to previous breakpoint of the current editor.</p>"""
504 )) 501 ))
505 self.connect(self.dbgPrevBpAct, SIGNAL('triggered()'), self.__previousBreakpoint) 502 self.dbgPrevBpAct.triggered.connect(self.__previousBreakpoint)
506 self.actions.append(self.dbgPrevBpAct) 503 self.actions.append(self.dbgPrevBpAct)
507 504
508 act = E5Action(self.trUtf8('Clear Breakpoints'), 505 act = E5Action(self.trUtf8('Clear Breakpoints'),
509 self.trUtf8('Clear Breakpoints'), 506 self.trUtf8('Clear Breakpoints'),
510 QKeySequence(self.trUtf8("Ctrl+Shift+C","Debug|Clear Breakpoints")), 0, 507 QKeySequence(self.trUtf8("Ctrl+Shift+C","Debug|Clear Breakpoints")), 0,
512 act.setStatusTip(self.trUtf8('Clear Breakpoints')) 509 act.setStatusTip(self.trUtf8('Clear Breakpoints'))
513 act.setWhatsThis(self.trUtf8( 510 act.setWhatsThis(self.trUtf8(
514 """<b>Clear Breakpoints</b>""" 511 """<b>Clear Breakpoints</b>"""
515 """<p>Clear breakpoints of all editors.</p>""" 512 """<p>Clear breakpoints of all editors.</p>"""
516 )) 513 ))
517 self.connect(act, SIGNAL('triggered()'), self.__clearBreakpoints) 514 act.triggered.connect(self.__clearBreakpoints)
518 self.actions.append(act) 515 self.actions.append(act)
519 516
520 self.debugActGrp.setEnabled(False) 517 self.debugActGrp.setEnabled(False)
521 self.debugActGrp2.setEnabled(False) 518 self.debugActGrp2.setEnabled(False)
522 self.dbgSetBpActGrp.setEnabled(False) 519 self.dbgSetBpActGrp.setEnabled(False)

eric ide

mercurial