changed the "method find" algorithm so the function/class/method popup menu also...
authorJust van Rossum <just@lettererror.com>
Thu, 23 Dec 1999 15:46:57 +0000 (15:46 +0000)
committerJust van Rossum <just@lettererror.com>
Thu, 23 Dec 1999 15:46:57 +0000 (15:46 +0000)
Mac/Tools/IDE/PyEdit.py

index 63a21e7f1ce41a81c2a2773dec85f08f7402313d..798370590303f3338e7789c832d01a910405ae9c 100644 (file)
@@ -586,6 +586,9 @@ class Editor(W.Window):
        
        def getclasslist(self):
                from string import find, strip
+               import re
+               methodRE = re.compile(r"\r[ \t]+def ")
+               findMethod = methodRE.search
                editor = self.editgroup.editor
                text = editor.get()
                list = []
@@ -613,10 +616,12 @@ class Editor(W.Window):
                        append((pos + 7, classtag))
                pos = 0
                while 1:
-                       pos = find(text, '\r\tdef ', pos + 1)
-                       if pos < 0:
+                       m = findMethod(text, pos + 1)
+                       if m is None:
                                break
-                       append((pos + 6, methodtag))
+                       pos = m.regs[0][0]
+                       #pos = find(text, '\r\tdef ', pos + 1)
+                       append((m.regs[0][1], methodtag))
                list.sort()
                classlist = []
                methodlistappend = None