Tue, 18 Oct 2016 18:44:27 +0200
Fixed a regression in the project debugger properties dialog.
--- a/APIs/Python3/eric6.api Mon Oct 17 19:59:52 2016 +0200 +++ b/APIs/Python3/eric6.api Tue Oct 18 18:44:27 2016 +0200 @@ -6741,6 +6741,7 @@ eric6.Project.Project.Project.getActions?4() eric6.Project.Project.Project.getData?4(category, key) eric6.Project.Project.Project.getDebugProperty?4(key) +eric6.Project.Project.Project.getDebuggerFilters?4(language) eric6.Project.Project.Project.getDefaultSourceExtension?4() eric6.Project.Project.Project.getEditorLexerAssoc?4(filename) eric6.Project.Project.Project.getEolString?4()
--- a/Documentation/Help/source.qhp Mon Oct 17 19:59:52 2016 +0200 +++ b/Documentation/Help/source.qhp Tue Oct 18 18:44:27 2016 +0200 @@ -10752,6 +10752,7 @@ <keyword name="Project.getActions" id="Project.getActions" ref="eric6.Project.Project.html#Project.getActions" /> <keyword name="Project.getData" id="Project.getData" ref="eric6.Project.Project.html#Project.getData" /> <keyword name="Project.getDebugProperty" id="Project.getDebugProperty" ref="eric6.Project.Project.html#Project.getDebugProperty" /> + <keyword name="Project.getDebuggerFilters" id="Project.getDebuggerFilters" ref="eric6.Project.Project.html#Project.getDebuggerFilters" /> <keyword name="Project.getDefaultSourceExtension" id="Project.getDefaultSourceExtension" ref="eric6.Project.Project.html#Project.getDefaultSourceExtension" /> <keyword name="Project.getEditorLexerAssoc" id="Project.getEditorLexerAssoc" ref="eric6.Project.Project.html#Project.getEditorLexerAssoc" /> <keyword name="Project.getEolString" id="Project.getEolString" ref="eric6.Project.Project.html#Project.getEolString" />
--- a/Documentation/Source/eric6.Project.Project.html Mon Oct 17 19:59:52 2016 +0200 +++ b/Documentation/Source/eric6.Project.Project.html Tue Oct 18 18:44:27 2016 +0200 @@ -455,6 +455,9 @@ <td><a href="#Project.getDebugProperty">getDebugProperty</a></td> <td>Public method to retrieve a debugger property.</td> </tr><tr> +<td><a href="#Project.getDebuggerFilters">getDebuggerFilters</a></td> +<td>Public method to get the debugger filters for a programming language.</td> +</tr><tr> <td><a href="#Project.getDefaultSourceExtension">getDefaultSourceExtension</a></td> <td>Public method to get the default extension for the project's programming language.</td> </tr><tr> @@ -1529,6 +1532,26 @@ <dd> value of the property </dd> +</dl><a NAME="Project.getDebuggerFilters" ID="Project.getDebuggerFilters"></a> +<h4>Project.getDebuggerFilters</h4> +<b>getDebuggerFilters</b>(<i>language</i>) +<p> + Public method to get the debugger filters for a programming language. +</p><dl> +<dt><i>language</i> (str)</dt> +<dd> +programming language +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +filter string +</dd> +</dl><dl> +<dt>Return Type:</dt> +<dd> +str +</dd> </dl><a NAME="Project.getDefaultSourceExtension" ID="Project.getDefaultSourceExtension"></a> <h4>Project.getDefaultSourceExtension</h4> <b>getDefaultSourceExtension</b>(<i></i>)
--- a/Project/DebuggerPropertiesDialog.py Mon Oct 17 19:59:52 2016 +0200 +++ b/Project/DebuggerPropertiesDialog.py Tue Oct 18 18:44:27 2016 +0200 @@ -63,18 +63,11 @@ self.debugClientPicker.setText( self.project.debugProperties["DEBUGCLIENT"]) else: - if self.project.pdata["PROGLANGUAGE"] in ["Python", "Python2"]: + if self.project.pdata["PROGLANGUAGE"] in ["Python", "Python2", + "Python3"]: debugClient = os.path.join( getConfig('ericDir'), "DebugClients", "Python", "DebugClient.py") - elif self.project.pdata["PROGLANGUAGE"] == "Python3": - debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Python3", "DebugClient.py") - elif self.project.pdata["PROGLANGUAGE"] == "Ruby": - debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Ruby", "DebugClient.rb") else: debugClient = "" self.debugClientPicker.setText(debugClient) @@ -112,7 +105,8 @@ Private slot to perform actions before the debug client selection dialog is shown. """ - filters = self.project.dbgFilters[self.project.pdata["PROGLANGUAGE"]] + filters = self.project.getDebuggerFilters( + self.project.pdata["PROGLANGUAGE"]) filters += self.tr("All Files (*)") self.debugClientPicker.setFilters(filters) @@ -132,18 +126,11 @@ self.project.debugProperties["DEBUGCLIENT"] = \ self.debugClientPicker.text() if not self.project.debugProperties["DEBUGCLIENT"]: - if self.project.pdata["PROGLANGUAGE"] in ["Python", "Python2"]: + if self.project.pdata["PROGLANGUAGE"] in ["Python", "Python2", + "Python3"]: debugClient = os.path.join( getConfig('ericDir'), "DebugClients", "Python", "DebugClient.py") - elif self.project.pdata["PROGLANGUAGE"] == "Python3": - debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Python3", "DebugClient.py") - elif self.project.pdata["PROGLANGUAGE"] == "Ruby": - debugClient = os.path.join( - getConfig('ericDir'), - "DebugClients", "Ruby", "DebugClient.rb") else: debugClient = "" self.project.debugProperties["DEBUGCLIENT"] = debugClient
--- a/Project/Project.py Mon Oct 17 19:59:52 2016 +0200 +++ b/Project/Project.py Tue Oct 18 18:44:27 2016 +0200 @@ -156,14 +156,13 @@ "JavaScript", ] - self.dbgFilters = { + self.__dbgFilters = { "Python2": self.tr( "Python2 Files (*.py2);;" "Python2 GUI Files (*.pyw2);;"), "Python3": self.tr( "Python3 Files (*.py *.py3);;" "Python3 GUI Files (*.pyw *.pyw3);;"), - "Ruby": self.tr("Ruby Files (*.rb);;"), } self.vcsMenu = None @@ -230,6 +229,20 @@ """ return self.__progLanguages[:] + def getDebuggerFilters(self, language): + """ + Public method to get the debugger filters for a programming language. + + @param language programming language + @type str + @return filter string + @rtype str + """ + try: + return self.__dbgFilters[language] + except KeyError: + return "" + def __initProjectTypes(self): """ Private method to initialize the list of supported project types.