--- a/Debugger/DebuggerInterfacePython.py Mon Oct 09 19:06:46 2017 +0200 +++ b/Debugger/DebuggerInterfacePython.py Tue Oct 10 19:05:00 2017 +0200 @@ -132,21 +132,24 @@ return proc - def startRemote(self, port, runInConsole): + def startRemote(self, port, runInConsole, interpreter): """ Public method to start a remote Python interpreter. - @param port portnumber the debug server is listening on (integer) + @param port port number the debug server is listening on (integer) @param runInConsole flag indicating to start the debugger in a console window (boolean) + @param interpreter interpreter to be used to execute the remote + side (string) @return client process object (QProcess), a flag to indicate a network connection (boolean) and the name of the interpreter in case of a local execution (string) """ - if self.__variant == "Python2": - interpreter = Preferences.getDebugger("PythonInterpreter") - else: - interpreter = Preferences.getDebugger("Python3Interpreter") + if not interpreter: + if self.__variant == "Python2": + interpreter = Preferences.getDebugger("PythonInterpreter") + else: + interpreter = Preferences.getDebugger("Python3Interpreter") if interpreter == "": E5MessageBox.critical( None, @@ -263,13 +266,15 @@ """<p>The debugger backend could not be started.</p>""")) return process, self.__isNetworked, interpreter - def startRemoteForProject(self, port, runInConsole): + def startRemoteForProject(self, port, runInConsole, interpreter): """ Public method to start a remote Python interpreter for a project. - @param port portnumber the debug server is listening on (integer) + @param port port number the debug server is listening on (integer) @param runInConsole flag indicating to start the debugger in a console window (boolean) + @param interpreter interpreter to be used to execute the remote + side (string) @return client process object (QProcess), a flag to indicate a network connection (boolean) and the name of the interpreter in case of a local execution (string) @@ -279,7 +284,8 @@ return None, self.__isNetworked, "" # start debugger with project specific settings - interpreter = project.getDebugProperty("INTERPRETER") + if not interpreter: + interpreter = project.getDebugProperty("INTERPRETER") debugClient = project.getDebugProperty("DEBUGCLIENT") redirect = str(project.getDebugProperty("REDIRECT"))