def do_quit(udata, clist): print "Values before:" print recipe.get_values() print print "Values after:" ul = UndoList() for c in clist: c.check_out(undolist=ul) print recipe.get_values() print "Undoing: " ul.execute() print recipe.get_values() gtk.main_quit()
def set_region(self, row, col, array, coerce=True, undolist=[]): undo_data = self.get_region(row, col, len(array), len(array.dtype.fields[-1])) ul = UndoList() ul.append(UndoInfo(self.set_region, row, col, undo_data)) try: names = array.dtype.fields[-1] i = 0 for name in self.names[col:col+len(array)]: if coerce is True: z = self.get_column_type(col+i)(array[names[i]]) else: z = array[names[i]] self._array[name][row:row+len(array)] = z i += 1 except Exception, msg: print "set_region failed: %s. undoing." % msg ul.execute()