Przeglądaj źródła

wxGUI: CmdThread - parameters requestQ, resultQ optional

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@52485 15284696-431f-4ddb-bdfa-cd5b030d7da7
Martin Landa 13 lat temu
rodzic
commit
1ee1486107
1 zmienionych plików z 20 dodań i 6 usunięć
  1. 20 6
      gui/wxpython/gui_core/goutput.py

+ 20 - 6
gui/wxpython/gui_core/goutput.py

@@ -62,20 +62,34 @@ def GrassCmd(cmd, env = None, stdout = None, stderr = None):
 class CmdThread(threading.Thread):
     """!Thread for GRASS commands"""
     requestId = 0
-    def __init__(self, parent, requestQ, resultQ, **kwds):
+    def __init__(self, parent, requestQ = None, resultQ = None, **kwds):
         threading.Thread.__init__(self, **kwds)
-
+        
+        if requestQ is None:
+            self.requestQ = Queue.Queue()
+        else:
+            self.requestQ = requestQ
+        
+        if resultQ is None:
+            self.resultQ = Queue.Queue()
+        else:
+            self.resultQ = resultQ
+        
         self.setDaemon(True)
-
+        
         self.parent = parent # GMConsole
         self._want_abort_all = False
         
-        self.requestQ = requestQ
-        self.resultQ = resultQ
-        
         self.start()
 
     def RunCmd(self, *args, **kwds):
+        """!Run command in queue
+
+        @param args unnamed command arguments
+        @param kwds named command arguments
+
+        @return request id in queue
+        """
         CmdThread.requestId += 1
         
         self.requestCmd = None