- Fixed bug when bp is set on same addr
[pygdb.git] / pygdb.py
index d3cf2690d478bec972ca7fd70cd696d1bf320fe4..6b6f5d3d2953a45b2ec603e2d4eef31ffc850b9d 100755 (executable)
--- a/pygdb.py
+++ b/pygdb.py
@@ -8,39 +8,33 @@ import os
 import string
 import sys
 
+import Configuration
 import GdbTerminal
 import MainControlWindow
 import StatusWindow
 
 
-def launchDebugger(clientCmd, quitonclose=True):
-
-       
-
-       def hideWindows():
-               #Kill the debugger
-               dbgterm.stopDbg()
-
-               mainCtrlWnd.destroy()
-               statusWnd.destroy()
-               gtk.main_quit()
-       
-
-       #Determine the closing callback func
-       if quitonclose:
-               destroycb = gtk.main_quit
-       else:
-               destroycb = hideWindows
+def launchDebugger(clientCmd):
 
        #Create Terminal
-       dbgterm = GdbTerminal.GdbTerminal(clientCmd, destroycb)
+       dbgterm = GdbTerminal.GdbTerminal(clientCmd)
 
        #Create windows
-       mainCtrlWnd = MainControlWindow.MainControlWindow(dbgterm, destroycb)
-       statusWnd = StatusWindow.StatusWindow(mainCtrlWnd, dbgterm, destroycb)
+       mainCtrlWnd = MainControlWindow.MainControlWindow(dbgterm)
+       statusWnd = StatusWindow.StatusWindow(mainCtrlWnd, dbgterm)
        dbgterm.initialize()
 
-       return dbgterm, mainCtrlWnd, statusWnd
+       #Load configuration
+       conf = Configuration.Configuration()
+       conf.load(".pygdb.conf")
+       statusWnd.applyConfiguration(conf)
+       
+       gtk.main()
+
+       #Store config
+       conf = Configuration.Configuration()
+       statusWnd.fillConfiguration(conf)
+       conf.store(".pygdb.conf")
 
 
 
@@ -54,6 +48,5 @@ if __name__ == "__main__":
        #Create the terminals
        clientCmd = string.join(sys.argv[1:])
        launchDebugger(clientCmd)
-       gtk.main()