Add LICENSE
[pygdb.git] / MainControlWindow.py
index 0b5c3f11413e36067c55c373fbb625a63d20d8ca..54fbac9a1ce174f781ffa7aa54ec69d0330c362c 100644 (file)
@@ -41,7 +41,7 @@ class MainControlWindow (gtk.Window):
                #Button box
                hbtnbox = gtk.HBox(False, spacing=5)
                #hbtnbox.set_layout(gtk.BUTTONBOX_START)
-               vbox.pack_start(hbtnbox)
+               vbox.pack_start(hbtnbox, expand=False)
 
                self.runBtn = gtk.Button("Run")
                hbtnbox.add(self.runBtn)
@@ -51,14 +51,28 @@ class MainControlWindow (gtk.Window):
                hbtnbox.add(self.stepoverBtn)
                self.stepinBtn = gtk.Button("Step In")
                hbtnbox.add(self.stepinBtn)
+               self.stepoutBtn = gtk.Button("Step Out")
+               hbtnbox.add(self.stepoutBtn)
                self.quitBtn = gtk.Button("Quit")
                hbtnbox.add(self.quitBtn)
 
                #Vertical pane for terminals
                vpaned = gtk.VPaned()
-               vbox.pack_start(vpaned, True, True)
-               vpaned.add(self.dbgterm)
-               vpaned.add(self.clientioterm)
+               vbox.pack_start(vpaned)
+
+               #Debugger terminal
+               hbox = gtk.HBox(False, 0)
+               vpaned.pack1(hbox, resize=True)
+               scrollbar = gtk.VScrollbar(dbgterm.get_adjustment())
+               hbox.pack_start(dbgterm)
+               hbox.pack_start(scrollbar, expand=False)
+
+               #Client I/O terminal
+               hbox = gtk.HBox(False, 0)
+               vpaned.pack2(hbox)
+               scrollbar = gtk.VScrollbar(self.clientioterm.get_adjustment())
+               hbox.pack_start(self.clientioterm)
+               hbox.pack_start(scrollbar, expand=False)
 
 
                #Install handlers
@@ -68,6 +82,7 @@ class MainControlWindow (gtk.Window):
                self.stepoverBtnHandler = self.stepoverBtn.connect('clicked', \
                                self.stepoverBtnClicked)
                self.stepinBtnHandler = self.stepinBtn.connect('clicked', self.stepinBtnClicked)
+               self.stepoutBtnHandler = self.stepoutBtn.connect('clicked', self.stepoutBtnClicked)
                self.quitBtnHandler = self.quitBtn.connect('clicked', self.quitBtnClicked)
 
                #Show the window
@@ -87,6 +102,9 @@ class MainControlWindow (gtk.Window):
        def stepinBtnClicked(self, btn):
                pos = self.dbgterm.setStepin()
 
+       def stepoutBtnClicked(self, btn):
+               pos = self.dbgterm.setStepout()
+
        def quitBtnClicked(self, btn):
                self.dbgterm.setQuit()
 
@@ -95,6 +113,7 @@ class MainControlWindow (gtk.Window):
                self.continueBtn.handler_block(self.continueBtnHandler)
                self.stepoverBtn.handler_block(self.stepoverBtnHandler)
                self.stepinBtn.handler_block(self.stepinBtnHandler)
+               self.stepoutBtn.handler_block(self.stepoutBtnHandler)
                self.quitBtn.handler_block(self.quitBtnHandler)
 
        def enableButtons(self, *w):
@@ -102,5 +121,6 @@ class MainControlWindow (gtk.Window):
                self.continueBtn.handler_unblock(self.continueBtnHandler)
                self.stepoverBtn.handler_unblock(self.stepoverBtnHandler)
                self.stepinBtn.handler_unblock(self.stepinBtnHandler)
+               self.stepoutBtn.handler_unblock(self.stepoutBtnHandler)
                self.quitBtn.handler_unblock(self.quitBtnHandler)