[GRASS-SVN] r61279 - grass/trunk/gui/wxpython/core

svn_grass at osgeo.org svn_grass at osgeo.org
Sat Jul 19 07:56:40 PDT 2014


Author: wenzeslaus
Date: 2014-07-19 07:56:40 -0700 (Sat, 19 Jul 2014)
New Revision: 61279

Modified:
   grass/trunk/gui/wxpython/core/workspace.py
Log:
wxGUI/workspace: do not parse task node for command layer

Parsing caused TypeError because task node is not saved for command layer.
But command layer is loaded or rendered in some other way which makes 'pass' to be a sufficient solution.


Modified: grass/trunk/gui/wxpython/core/workspace.py
===================================================================
--- grass/trunk/gui/wxpython/core/workspace.py	2014-07-19 11:51:04 UTC (rev 61278)
+++ grass/trunk/gui/wxpython/core/workspace.py	2014-07-19 14:56:40 UTC (rev 61279)
@@ -214,21 +214,28 @@
         # layer attributes (task) - 2D settings
         #
         node_task = layer.find('task')
-        cmd.append(node_task.get('name', "unknown"))
-        
-        # flags
-        for p in node_task.findall('flag'):
-            flag = p.get('name', '')
-            if len(flag) > 1:
-                cmd.append('--' + flag)
-            else:
-                cmd.append('-' + flag)
-        
-        # parameters
-        for p in node_task.findall('parameter'):
-            cmd.append('%s=%s' % (p.get('name', ''),
-                                  self.__filterValue(self.__getNodeText(p, 'value'))))
-        
+        if node_task is None and layer.get('type') == 'command':
+            # TODO: perhaps the XML format should be changed and command
+            # should be changed to contain task
+            # TODO: where the command layer gets actually processed?
+            pass
+        else:
+            cmd.append(node_task.get('name', "unknown"))
+
+            # flags
+            for p in node_task.findall('flag'):
+                flag = p.get('name', '')
+                if len(flag) > 1:
+                    cmd.append('--' + flag)
+                else:
+                    cmd.append('-' + flag)
+
+            # parameters
+            for p in node_task.findall('parameter'):
+                cmd.append('%s=%s' % (p.get('name', ''),
+                                      self.__filterValue(
+                                          self.__getNodeText(p, 'value'))))
+
         if layer.find('selected') is not None:
             selected = True
         else:



More information about the grass-commit mailing list