Debugger/DebuggerInterfacePython.py

changeset 5899
0516f6548ca6
parent 5850
7fae79975686
child 5964
066e6c78a367
--- 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"))

eric ide

mercurial