def Display_Exception_Dialog(e_type, e_value, e_tb, bug_report_path, exit): trcbck_lst = [] for i, line in enumerate(traceback.extract_tb(e_tb)): trcbck = " " + str(i + 1) + ". " if line[0].find(os.getcwd()) == -1: trcbck += "file : " + str(line[0]) + ", " else: trcbck += "file : " + str(line[0][len(os.getcwd()):]) + ", " trcbck += "line : " + str(line[1]) + ", " + "function : " + str( line[2]) trcbck_lst.append(trcbck) # Allow clicking.... cap = wx.Window_GetCapture() if cap: cap.ReleaseMouse() dlg = wx.SingleChoiceDialog( None, _(""" An unhandled exception (bug) occured. Bug report saved at : (%s) Please be kind enough to send this file to: [email protected] You should now restart program. Traceback: """) % bug_report_path + repr(e_type) + " : " + repr(e_value), _("Error"), trcbck_lst) try: res = (dlg.ShowModal() == wx.ID_OK) finally: dlg.Destroy() if exit: sys.exit() # wx.Exit() return res
def Display_Exception_Dialog(e_type, e_value, e_tb): trcbck_lst = [] for i, line in enumerate(traceback.extract_tb(e_tb)): trcbck = " " + str(i+1) + _(". ") if line[0].find(os.getcwd()) == -1: trcbck += _("file : ") + str(line[0]) + _(", ") else: trcbck += _("file : ") + \ str(line[0][len(os.getcwd()):]) + _(", ") trcbck += _("line : ") + str(line[1]) + \ _(", ") + _("function : ") + str(line[2]) trcbck_lst.append(trcbck) # Allow clicking.... cap = wx.Window_GetCapture() if cap: cap.ReleaseMouse() dlg = wx.SingleChoiceDialog(None, _(""" An error happens. Click on OK for saving an error report. Please be kind enough to send this file to: [email protected] Error: """) + str(e_type) + _(" : ") + str(e_value), _("Error"), trcbck_lst) try: res = (dlg.ShowModal() == wx.ID_OK) finally: dlg.Destroy() return res