pygdb now saves absolute breakpoint paths
[pygdb.git] / pygdb.py
index e6c1dbccb64a0d29ada143869b91c4917fcce1aa..422f83a812b10d15476f98d017b5f64fc1ee08ea 100755 (executable)
--- a/pygdb.py
+++ b/pygdb.py
@@ -4,14 +4,40 @@
 __author__ = "shuber"
 
 import gtk
+import os
 import string
 import sys
 
+import Configuration
 import GdbTerminal
 import MainControlWindow
 import StatusWindow
 
 
+def launchDebugger(clientCmd):
+
+       #Create Terminal
+       dbgterm = GdbTerminal.GdbTerminal(clientCmd)
+
+       #Create windows
+       mainCtrlWnd = MainControlWindow.MainControlWindow(dbgterm)
+       statusWnd = StatusWindow.StatusWindow(dbgterm)
+       dbgterm.initialize()
+
+       #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")
+
+
+
 if __name__ == "__main__":
 
        #Check if enough arguments are given
@@ -21,16 +47,6 @@ if __name__ == "__main__":
 
        #Create the terminals
        clientCmd = string.join(sys.argv[1:])
-       dbgterm = GdbTerminal.GdbTerminal(clientCmd)
-
-       #Create windows
-       mainCtrlWnd = MainControlWindow.MainControlWindow(dbgterm)
-       statusWnd = StatusWindow.StatusWindow(mainCtrlWnd, dbgterm)
-
-       #Register callback function for new positions
-       mainCtrlWnd.newPosCbs += [statusWnd.updateValues]
-
-       gtk.main()
-
+       launchDebugger(clientCmd)