浏览代码

wxGUI: fix toolbars problem - https://trac.osgeo.org/grass/ticket/2523 and raster digitizer must be destroyed not just hidden

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@63936 15284696-431f-4ddb-bdfa-cd5b030d7da7
Anna Petrášová 10 年之前
父节点
当前提交
5bc7e8ea9f
共有 2 个文件被更改,包括 6 次插入8 次删除
  1. 5 7
      gui/wxpython/gui_core/mapdisp.py
  2. 1 1
      gui/wxpython/mapdisp/frame.py

+ 5 - 7
gui/wxpython/gui_core/mapdisp.py

@@ -269,17 +269,15 @@ class MapFrameBase(wx.Frame):
     def GetMapToolbar(self):
         """Returns toolbar with zooming tools"""
         raise NotImplementedError("GetMapToolbar")
-       
+
     def GetToolbar(self, name):
-        """Returns toolbar if exists else None.
-        
-        Toolbars dictionary contains currently used toolbars only.
+        """Returns toolbar if exists and is active, else None.
         """
-        if name in self.toolbars:
+        if name in self.toolbars and self.toolbars[name].IsShown():
             return self.toolbars[name]
-        
+
         return None
-       
+
     def StatusbarUpdate(self):
         """Update statusbar content"""
         if self.statusbarManager:

+ 1 - 1
gui/wxpython/mapdisp/frame.py

@@ -1506,5 +1506,5 @@ class MapFrame(SingleMapFrame):
         self.GetMap().layerRemoved.disconnect(self._updateRDigitLayers)
         self.GetMap().layerChanged.disconnect(self._updateRDigitLayers)
 
-        self.RemoveToolbar('rdigit')
+        self.RemoveToolbar('rdigit', destroy=True)
         self.rdigit = None