瀏覽代碼

wxGUI/vnet: fix removing page, wx layout assert error, missing giface (#1822)

Anna Petrasova 3 年之前
父節點
當前提交
62e342a0e5
共有 3 個文件被更改,包括 14 次插入8 次删除
  1. 10 6
      gui/wxpython/dbmgr/base.py
  2. 3 1
      gui/wxpython/vnet/dialogs.py
  3. 1 1
      gui/wxpython/vnet/vnet_core.py

+ 10 - 6
gui/wxpython/dbmgr/base.py

@@ -1353,15 +1353,19 @@ class DbMgrBrowsePage(DbMgrNotebookBase):
         sqlSimpleSizer = btnApply.GetContainingSizer()
 
         if sqlReduce:
-            self.layerPage[layer]['sqlIsReduced'] = True
-            sqlSimpleSizer.AddGrowableCol(0)
-            sqlSimpleSizer.RemoveGrowableCol(1)
+            self.layerPage[layer]["sqlIsReduced"] = True
+            if not sqlSimpleSizer.IsColGrowable(0):
+                sqlSimpleSizer.AddGrowableCol(0)
+            if sqlSimpleSizer.IsColGrowable(1):
+                sqlSimpleSizer.RemoveGrowableCol(1)
             sqlSimpleSizer.SetItemPosition(wherePanel, (1, 0))
             sqlSimpleSizer.SetItemPosition(btnApply, (1, 1))
         else:
-            self.layerPage[layer]['sqlIsReduced'] = False
-            sqlSimpleSizer.AddGrowableCol(1)
-            sqlSimpleSizer.RemoveGrowableCol(0)
+            self.layerPage[layer]["sqlIsReduced"] = False
+            if not sqlSimpleSizer.IsColGrowable(1):
+                sqlSimpleSizer.AddGrowableCol(1)
+            if sqlSimpleSizer.IsColGrowable(0):
+                sqlSimpleSizer.RemoveGrowableCol(0)
             sqlSimpleSizer.SetItemPosition(wherePanel, (0, 1))
             sqlSimpleSizer.SetItemPosition(btnApply, (0, 2))
 

+ 3 - 1
gui/wxpython/vnet/dialogs.py

@@ -562,7 +562,9 @@ class VNETDialog(wx.Dialog):
                                   text=_('Result tables'),
                                   name='resultDbMgr')
         elif not haveDbMgr:
-            self.notebook.RemovePage(page=self.notebook.GetPageIndexByName('resultDbMgr'))
+            page = self.notebook.GetPageIndexByName("resultDbMgr")
+            if page != -1:
+                self.notebook.RemovePage(page=page)
 
     def OnPageChanged(self, event):
         """Tab switched"""

+ 1 - 1
gui/wxpython/vnet/vnet_core.py

@@ -49,7 +49,7 @@ class VNETManager:
         self.giface = giface
         self.mapWin = giface.GetMapWindow()
 
-        self.goutput = GConsole(guiparent=guiparent)
+        self.goutput = GConsole(guiparent=guiparent, giface=self.giface)
 
         self.vnet_data = VNETData(guiparent=guiparent, mapWin=self.mapWin)