Browse Source

wxGUI: don't fill selected areas

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@50038 15284696-431f-4ddb-bdfa-cd5b030d7da7
Martin Landa 13 years ago
parent
commit
c4d581bc93
2 changed files with 10 additions and 5 deletions
  1. 8 5
      gui/wxpython/vdigit/wxdisplay.py
  2. 2 0
      lib/vector/vedit/render.c

+ 8 - 5
gui/wxpython/vdigit/wxdisplay.py

@@ -243,11 +243,14 @@ class DisplayDriver:
         brush = None
         if self._isSelected(robj.fid):
             pdc = self.dcTmp
-            if self.settings['highlightDupl']['enabled'] and self._isDuplicated(robj.fid):
-                pen = wx.Pen(self.settings['highlightDupl']['color'], self.settings['lineWidth'], wx.SOLID)
-            else:            
-                pen = wx.Pen(self.settings['highlight'], self.settings['lineWidth'], wx.SOLID)
-            
+            if robj.type == TYPE_AREA:
+                return 1
+            else:
+                if self.settings['highlightDupl']['enabled'] and self._isDuplicated(robj.fid):
+                    pen = wx.Pen(self.settings['highlightDupl']['color'], self.settings['lineWidth'], wx.SOLID)
+                else:            
+                    pen = wx.Pen(self.settings['highlight'], self.settings['lineWidth'], wx.SOLID)
+                    
             dcId = 1
             self.topology['highlight'] += 1
             if not self._drawSelected:

+ 2 - 0
lib/vector/vedit/render.c

@@ -467,6 +467,7 @@ void draw_area(struct Map_info *Map, int area, struct robject_list *list)
     /* get area's boundary */
     Vect_get_area_points(Map, area, state.Points);
     robj = robj_alloc(TYPE_AREA, state.Points->n_points);
+    robj->fid = centroid;
     robj_points(robj, state.Points);
     list_append(list, robj);
 
@@ -479,6 +480,7 @@ void draw_area(struct Map_info *Map, int area, struct robject_list *list)
 
 	Vect_get_isle_points(Map, isle, ipoints);
 	robj = robj_alloc(TYPE_ISLE, ipoints->n_points);
+	robj->fid = -1;
 	robj_points(robj, ipoints);
 	list_append(list, robj);
     }