pykd/samples/dbg/commands/dbgcmd.py

55 lines
1.7 KiB
Python
Raw Normal View History

from widget import *
class DebuggerController(BaseController):
def __init__(self,dbgCore,mainWindow):
BaseController.__init__(self,dbgCore,mainWindow)
debugMenu = QMenu( "Debug" )
self.breakAction = QAction("Break", debugMenu )
self.breakAction.triggered.connect( self.onBreak )
self.breakAction.setDisabled(True)
debugMenu.addAction( self.breakAction )
self.goAction = QAction("Go", debugMenu )
self.goAction.triggered.connect( self.onGo )
self.goAction.setDisabled(True)
debugMenu.addAction( self.goAction )
self.stepAction = QAction("Step", debugMenu )
self.stepAction.triggered.connect( self.onStep )
self.stepAction.setDisabled(True)
debugMenu.addAction( self.stepAction )
mainWindow.menuBar().addMenu( debugMenu )
def onBreak( self ):
self.dbgCore.breakin()
def onGo( self ):
self.dbgCore.go()
def onStep( self ):
self.dbgCore.step()
def onDbgBreak(self):
self.breakAction.setDisabled(True)
self.goAction.setDisabled(False)
self.stepAction.setDisabled(False)
def onDbgRun(self):
self.breakAction.setDisabled(False)
self.goAction.setDisabled(True)
self.stepAction.setDisabled(True)
def onDbgAttach(self):
self.breakAction.setDisabled(False)
self.goAction.setDisabled(False)
self.stepAction.setDisabled(False)
def onDbgDetach(self):
self.breakAction.setDisabled(False)
self.goAction.setDisabled(False)
self.stepAction.setDisabled(False)