diff -r 8239cae3f947 -r f7ec7a3e7270 UI/UserInterface.py --- a/UI/UserInterface.py Sun Nov 17 12:24:45 2013 +0100 +++ b/UI/UserInterface.py Sun Nov 17 13:28:39 2013 +0100 @@ -135,6 +135,8 @@ BottomSide = 2 RightSide = 3 + ErrorLogFileName = "eric5_error.log" + def __init__(self, app, locale, splash, plugin, noOpenAtStartup, restartArguments): """ @@ -1618,6 +1620,18 @@ self.showAvailableVersionsInfo) self.actions.append(self.showVersionsAct) + self.showErrorLogAct = E5Action( + self.trUtf8('Show Error Log'), + self.trUtf8('Show Error &Log...'), + 0, 0, self, 'show_error_log') + self.showErrorLogAct.setStatusTip(self.trUtf8('Show Error Log')) + self.showErrorLogAct.setWhatsThis(self.trUtf8( + """<b>Show Error Log...</b>""" + """<p>Opens a dialog showing the most recent error log.</p>""" + )) + self.showErrorLogAct.triggered[()].connect(self.__showErrorLog) + self.actions.append(self.showErrorLogAct) + self.reportBugAct = E5Action( self.trUtf8('Report Bug'), self.trUtf8('Report &Bug...'), @@ -2492,6 +2506,7 @@ self.__menus["help"].addAction(self.checkUpdateAct) self.__menus["help"].addAction(self.showVersionsAct) self.__menus["help"].addSeparator() + self.__menus["help"].addAction(self.showErrorLogAct) self.__menus["help"].addAction(self.reportBugAct) self.__menus["help"].addAction(self.requestFeatureAct) self.__menus["help"].addSeparator() @@ -2835,6 +2850,7 @@ """ self.checkUpdateAct.setEnabled(not self.__inVersionCheck) self.showVersionsAct.setEnabled(not self.__inVersionCheck) + self.showErrorLogAct.setEnabled(self.__hasErrorLog()) self.showMenu.emit("Help", self.__menus["help"]) @@ -3000,12 +3016,32 @@ user, what to do with it. """ if Preferences.getUI("CheckErrorLog"): - logFile = os.path.join(Utilities.getConfigDir(), "eric5_error.log") + logFile = os.path.join(Utilities.getConfigDir(), + self.ErrorLogFileName) if os.path.exists(logFile): from .ErrorLogDialog import ErrorLogDialog - dlg = ErrorLogDialog(logFile, self) + dlg = ErrorLogDialog(logFile, False, self) dlg.exec_() + def __hasErrorLog(self): + """ + Private method to check, if an error log file exists. + """ + logFile = os.path.join(Utilities.getConfigDir(), + self.ErrorLogFileName) + return os.path.exists(logFile) + + def __showErrorLog(self): + """ + Private slot to show the most recent error log message. + """ + logFile = os.path.join(Utilities.getConfigDir(), + self.ErrorLogFileName) + if os.path.exists(logFile): + from .ErrorLogDialog import ErrorLogDialog + dlg = ErrorLogDialog(logFile, True, self) + dlg.show() + def __compareFiles(self): """ Private slot to handle the Compare Files dialog.