Pārlūkot izejas kodu

wxNviz: fix error when reordering layers

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@56551 15284696-431f-4ddb-bdfa-cd5b030d7da7
Anna Petrášová 12 gadi atpakaļ
vecāks
revīzija
0985c378a0
2 mainītis faili ar 10 papildinājumiem un 6 dzēšanām
  1. 4 3
      gui/wxpython/lmgr/layertree.py
  2. 6 3
      gui/wxpython/nviz/tools.py

+ 4 - 3
gui/wxpython/lmgr/layertree.py

@@ -29,6 +29,7 @@ except ImportError:
     from wx.lib.mixins import treemixin
 
 from grass.script import core as grass
+from grass.script import vector as gvector
 
 from core                 import globalvar
 from gui_core.dialogs     import SqlQueryFrame, SetOpacityDialog
@@ -1199,10 +1200,10 @@ class LayerTree(treemixin.DragAndDrop, CT.CustomTreeCtrl):
                 elif mapLayer.type == '3d-raster':
                     self.mapdisplay.MapWindow.LoadRaster3d(item)
                 elif mapLayer.type == 'vector':
-                    npoints, nlines, nfeatures, mapIs3D = self.lmgr.nviz.VectorInfo(mapLayer)
-                    if npoints > 0:
+                    vInfo = gvector.vector_info_topo(mapLayer.GetName())
+                    if (vInfo['points'] + vInfo['centroids']) > 0:
                         self.mapdisplay.MapWindow.LoadVector(item, points = True)
-                    if nlines > 0:
+                    if (vInfo['lines'] + vInfo['boundaries']) > 0:
                         self.mapdisplay.MapWindow.LoadVector(item, points = False)
 
             else: # disable

+ 6 - 3
gui/wxpython/nviz/tools.py

@@ -4514,13 +4514,16 @@ class NvizToolWindow(FN.FlatNotebook):
             if data:
                 if pageId == 'surface':
                     layer = self._getMapLayerByName(name, mapType = 'raster')
-                    self.UpdateSurfacePage(layer, data['surface'])
+                    if layer:
+                        self.UpdateSurfacePage(layer, data['surface'])
                 elif pageId == 'vector':
                     layer = self._getMapLayerByName(name, mapType = 'vector')
-                    self.UpdateVectorPage(layer, data['vector'])
+                    if layer:
+                        self.UpdateVectorPage(layer, data['vector'])
                 elif pageId == 'volume':
                     layer = self._getMapLayerByName(name, mapType = '3d-raster')
-                    self.UpdateVolumePage(layer, data['volume'])
+                    if layer:
+                        self.UpdateVolumePage(layer, data['volume'])
         elif pageId == 'light':
             zval = self.mapWindow.light['position']['z']
             bval = self.mapWindow.light['bright']