+ def selChanged(self, sel):
+ model, paths = sel.get_selected_rows()
+
+ if len(paths) > 0:
+ path = paths[0]
+ iter = model.get_iter(path)
+ bpspec, = model.get(iter, 1)
+ self.bpEntry.set_text(bpspec)
+
+
+
+ def addBreakpoint(self, file, lineno, cond=None):
+
+ no = self.debugger.setBreakpoint(file, lineno, cond)
+
+ if no!=None:
+ self.addBreakpointToList(no, file, lineno, cond)
+ else:
+ dialog = gtk.MessageDialog(None, \
+ gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT, \
+ gtk.MESSAGE_ERROR, gtk.BUTTONS_OK, \
+ "Invalid specification!")
+ dialog.run()
+ dialog.destroy()
+
+
+ def applyConfiguration(self, conf):
+ for b in conf.breakpoints:
+ self.addBreakpoint(b["file"], b["lineno"], b["cond"])
+
+ def fillConfiguration(self, conf):
+ iter = self.model.get_iter_first()
+ while iter != None:
+ spec, = self.model.get(iter, 1)
+ conf.parseBreak(spec)
+ iter = self.model.iter_next(iter)
+
+
+
+ def addBreakpointToList(self, no, file, lineno, cond=None):
+ iter = self.model.append()
+ self.model.set(iter, 0, no)
+
+ if cond==None:
+ self.model.set(iter, 1, "%s:%s" % (str(file), str(lineno)))
+ else:
+ self.model.set(iter, 1, "%s:%s if %s" % (str(file), str(lineno), str(cond)))
+