PLCOpenEditor.py
changeset 720 2a9d4eafaddd
parent 718 0183a66eddf9
child 727 46ae58e6469f
--- a/PLCOpenEditor.py	Sun Jul 01 23:36:44 2012 +0200
+++ b/PLCOpenEditor.py	Sat Jul 07 20:48:23 2012 +0200
@@ -346,7 +346,7 @@
     split = None
     for idx, tab in enumerate(tabs):
         if len(tab["pages"]) == 0:
-        	raise ValueError, "Not possible"
+            raise ValueError, "Not possible"
         if tab["size"][0] == rect.width:
             if tab["pos"][1] == rect.y:
                 split = (wx.TOP, float(tab["size"][1]) / float(rect.height))
@@ -824,17 +824,18 @@
         tabs = []
         for child in notebook.GetChildren():
             if isinstance(child, wx.aui.AuiTabCtrl):
-                pos = child.GetPosition()
-                tab = {"pos": (pos.x, pos.y), "pages": []}
-                tab_size = child.GetSize()
-                for page_idx in xrange(child.GetPageCount()):
-                    page = child.GetWindowFromIdx(page_idx)
-                    if not tab.has_key("size"):
-                        tab["size"] = (tab_size[0], tab_size[1] + page.GetSize()[1])
-                    tab_infos = self.GetTabInfos(page)
-                    if tab_infos is not None:
-                        tab["pages"].append((tab_infos, page_idx == child.GetActivePage()))
-                tabs.append(tab)
+                if child.GetPageCount() > 0:
+                    pos = child.GetPosition()
+                    tab = {"pos": (pos.x, pos.y), "pages": []}
+                    tab_size = child.GetSize()
+                    for page_idx in xrange(child.GetPageCount()):
+                        page = child.GetWindowFromIdx(page_idx)
+                        if not tab.has_key("size"):
+                            tab["size"] = (tab_size[0], tab_size[1] + page.GetSize()[1])
+                        tab_infos = self.GetTabInfos(page)
+                        if tab_infos is not None:
+                            tab["pages"].append((tab_infos, page_idx == child.GetActivePage()))
+                    tabs.append(tab)
         tabs.sort(lambda x, y: cmp(x["pos"], y["pos"]))
         size = notebook.GetSize()
         return ComputeTabsLayout(tabs, wx.Rect(1, 1, size[0] - NOTEBOOK_BORDER, size[1] - NOTEBOOK_BORDER))