]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/samples/ide/activegrid/tool/OutlineService.py
Applied patch [ 1407318 ] bitmap clipping / transparency mask (X11 port)
[wxWidgets.git] / wxPython / samples / ide / activegrid / tool / OutlineService.py
index 858fbade75b3d1c772de4acf2be3135b097eaa70..75fc67e0d224acd63fafd0dcb17090029473711a 100644 (file)
@@ -84,6 +84,7 @@ class OutlineView(Service.ServiceView):
         item = self.GetControl().GetSelection()
         if item:
             self.GetControl().CallDoSelectCallback(item)
+        event.Skip()
 
 
     def ResumeActionOnSelect(self):
@@ -156,11 +157,8 @@ class OutlineView(Service.ServiceView):
                 treeCtrl.Expand(child)
             (child, cookie) = treeCtrl.GetNextChild(parentItem, cookie)
 
-        # wxBug: This causes a crash, tried using ScrollTo which crashed as well.  Then tried calling it with wx.CallAfter and that crashed as well, with both EnsureVisible and ScrollTo
-        # self.GetControl().EnsureVisible(self.GetControl().GetRootItem())
-        # So doing the following massive hack which forces the treectrl to scroll up to the top item
-        treeCtrl.Collapse(parentItem)
-        treeCtrl.Expand(parentItem)
+        if parentItem:
+            treeCtrl.EnsureVisible(parentItem)
 
 
 class OutlineTreeCtrl(wx.TreeCtrl):
@@ -323,7 +321,7 @@ class OutlineService(Service.Service):
 
     def __init__(self, serviceName, embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOM):
         Service.Service.__init__(self, serviceName, embeddedWindowLocation)
-        self._validTemplates = []
+        self._validViewTypes = []
 
 
     def _CreateView(self):
@@ -495,9 +493,8 @@ class OutlineService(Service.Service):
         if self.GetView():
             currView = wx.GetApp().GetDocumentManager().GetCurrentView()
             if currView:
-                for template in self._validTemplates:
-                    type = template.GetViewType()
-                    if isinstance(currView, type):
+                for viewType in self._validViewTypes:
+                    if isinstance(currView, viewType):
                         self.LoadOutline(currView)
                         foundRegisteredView = True
                         break
@@ -508,14 +505,14 @@ class OutlineService(Service.Service):
         self._timer.Start(1000) # 1 second interval
 
 
-    def AddTemplateForBackgroundHandler(self, template):
-        self._validTemplates.append(template)
+    def AddViewTypeForBackgroundHandler(self, viewType):
+        self._validViewTypes.append(viewType)
 
 
-    def GetTemplatesForBackgroundHandler(self):
-        return self._validTemplates
+    def GetViewTypesForBackgroundHandler(self):
+        return self._validViewTypes
 
 
-    def RemoveTemplateForBackgroundHandler(self, template):
-        self._validTemplates.remove(template)
+    def RemoveViewTypeForBackgroundHandler(self, viewType):
+        self._validViewTypes.remove(viewType)