Fri, 05 Feb 2021 11:38:53 +0100
Debug Viewer:
- changed code to show project relative paths in the breakpoint viewer
--- a/docs/changelog Fri Feb 05 11:02:28 2021 +0100 +++ b/docs/changelog Fri Feb 05 11:38:53 2021 +0100 @@ -8,6 +8,8 @@ - Debugger -- added capability to delete environment variables for the debugged script by adding a '-' to the variable name in the start dialog +- Debug Viewer: + -- changed code to show project relative paths in the breakpoint viewer - MicroPython: -- extended the list of supported (recognized) CircuitPython boards
--- a/eric6/APIs/Python3/eric6.api Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/APIs/Python3/eric6.api Fri Feb 05 11:38:53 2021 +0100 @@ -491,7 +491,7 @@ eric6.Debugger.BreakPointModel.BreakPointModel.setBreakPointByIndex?4(index, fn, line, properties) eric6.Debugger.BreakPointModel.BreakPointModel.setBreakPointEnabledByIndex?4(index, enabled) eric6.Debugger.BreakPointModel.BreakPointModel.setData?4(index, value, role=Qt.EditRole) -eric6.Debugger.BreakPointModel.BreakPointModel?1(parent=None) +eric6.Debugger.BreakPointModel.BreakPointModel?1(project, parent=None) eric6.Debugger.BreakPointViewer.BreakPointViewer.handleResetUI?4() eric6.Debugger.BreakPointViewer.BreakPointViewer.highlightBreakpoint?4(fn, lineno) eric6.Debugger.BreakPointViewer.BreakPointViewer.setModel?4(model) @@ -654,7 +654,7 @@ eric6.Debugger.DebugServer.DebugServer.utTestFailedExpected?7 eric6.Debugger.DebugServer.DebugServer.utTestSkipped?7 eric6.Debugger.DebugServer.DebugServer.utTestSucceededUnexpected?7 -eric6.Debugger.DebugServer.DebugServer?1(originalPathString, preventPassiveDebugging=False) +eric6.Debugger.DebugServer.DebugServer?1(originalPathString, preventPassiveDebugging=False, project=None) eric6.Debugger.DebugServer.DebuggerInterfaces?7 eric6.Debugger.DebugUI.DebugUI.appendStdout?7 eric6.Debugger.DebugUI.DebugUI.clearHistories?4()
--- a/eric6/Debugger/BreakPointModel.py Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/Debugger/BreakPointModel.py Fri Feb 05 11:38:53 2021 +0100 @@ -21,15 +21,19 @@ """ dataAboutToBeChanged = pyqtSignal(QModelIndex, QModelIndex) - def __init__(self, parent=None): + def __init__(self, project, parent=None): """ Constructor + @param project reference to the project object + @type Project @param parent reference to the parent widget @type QObject """ super(BreakPointModel, self).__init__(parent) + self.__project = project + self.breakpoints = [] self.header = [ self.tr("Filename"), @@ -89,15 +93,21 @@ return None if role == Qt.DisplayRole: - if index.column() in [0, 1, 2, 5]: + if index.column() == 0: + filename = self.breakpoints[index.row()][0] + if self.__project.isOpen(): + return self.__project.getRelativePath(filename) + else: + return filename + elif index.column() in (1, 2, 5): return self.breakpoints[index.row()][index.column()] if role == Qt.CheckStateRole: - if index.column() in [3, 4]: + if index.column() in (3, 4): return self.breakpoints[index.row()][index.column()] if role == Qt.ToolTipRole: - if index.column() in [0, 2]: + if index.column() in (0, 2): return self.breakpoints[index.row()][index.column()] if role == Qt.TextAlignmentRole:
--- a/eric6/Debugger/DebugServer.py Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/Debugger/DebugServer.py Fri Feb 05 11:38:53 2021 +0100 @@ -168,15 +168,18 @@ callTraceInfo = pyqtSignal(bool, str, str, str, str, str, str, str) appendStdout = pyqtSignal(str) - def __init__(self, originalPathString, preventPassiveDebugging=False): + def __init__(self, originalPathString, preventPassiveDebugging=False, + project=None): """ Constructor @param originalPathString original PATH environment variable @type str @param preventPassiveDebugging flag overriding the PassiveDbgEnabled - setting - @type bool + setting (defaults to False) + @type bool (optional) + @param project reference to the project object (defaults to None) + @type Project (optional) """ super(DebugServer, self).__init__() @@ -193,7 +196,7 @@ # the value # create our models - self.breakpointModel = BreakPointModel(self) + self.breakpointModel = BreakPointModel(project, self) self.watchpointModel = WatchPointModel(self) self.watchSpecialCreated = self.tr( "created", "must be same as in EditWatchpointDialog")
--- a/eric6/Documentation/Source/eric6.Debugger.BreakPointModel.html Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/Documentation/Source/eric6.Debugger.BreakPointModel.html Fri Feb 05 11:38:53 2021 +0100 @@ -170,13 +170,17 @@ <a NAME="BreakPointModel.__init__" ID="BreakPointModel.__init__"></a> <h4>BreakPointModel (Constructor)</h4> -<b>BreakPointModel</b>(<i>parent=None</i>) +<b>BreakPointModel</b>(<i>project, parent=None</i>) <p> Constructor </p> <dl> +<dt><i>project</i> (Project)</dt> +<dd> +reference to the project object +</dd> <dt><i>parent</i> (QObject)</dt> <dd> reference to the parent widget
--- a/eric6/Documentation/Source/eric6.Debugger.DebugServer.html Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/Documentation/Source/eric6.Debugger.DebugServer.html Fri Feb 05 11:38:53 2021 +0100 @@ -756,7 +756,7 @@ <a NAME="DebugServer.__init__" ID="DebugServer.__init__"></a> <h4>DebugServer (Constructor)</h4> -<b>DebugServer</b>(<i>originalPathString, preventPassiveDebugging=False</i>) +<b>DebugServer</b>(<i>originalPathString, preventPassiveDebugging=False, project=None</i>) <p> Constructor @@ -767,10 +767,14 @@ <dd> original PATH environment variable </dd> -<dt><i>preventPassiveDebugging</i> (bool)</dt> +<dt><i>preventPassiveDebugging</i> (bool (optional))</dt> <dd> flag overriding the PassiveDbgEnabled - setting + setting (defaults to False) +</dd> +<dt><i>project</i> (Project (optional))</dt> +<dd> +reference to the project object (defaults to None) </dd> </dl> <a NAME="DebugServer.__addBreakPoints" ID="DebugServer.__addBreakPoints"></a>
--- a/eric6/UI/UserInterface.py Fri Feb 05 11:02:28 2021 +0100 +++ b/eric6/UI/UserInterface.py Fri Feb 05 11:38:53 2021 +0100 @@ -254,14 +254,6 @@ # register it early because it is needed very soon e5App().registerObject("VirtualEnvManager", self.virtualenvManager) - # Generate the debug server object - from Debugger.DebugServer import DebugServer - debugServer = DebugServer(self.__originalPathString) - - # Create the background service object - from Utilities.BackgroundService import BackgroundService - self.backgroundService = BackgroundService() - # Generate an empty project object and multi project object from Project.Project import Project self.project = Project(self) @@ -270,6 +262,15 @@ from MultiProject.MultiProject import MultiProject self.multiProject = MultiProject(self.project, self) + # Generate the debug server object + from Debugger.DebugServer import DebugServer + debugServer = DebugServer(self.__originalPathString, + project=self.project) + + # Create the background service object + from Utilities.BackgroundService import BackgroundService + self.backgroundService = BackgroundService() + splash.showMessage(self.tr("Initializing Plugin Manager...")) # Initialize the Plugin Manager (Plugins are initialized later