summaryrefslogtreecommitdiffstats
path: root/Lib/idlelib/percolator.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/idlelib/percolator.py')
-rw-r--r--Lib/idlelib/percolator.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/idlelib/percolator.py b/Lib/idlelib/percolator.py
index db70304..1fe34d2 100644
--- a/Lib/idlelib/percolator.py
+++ b/Lib/idlelib/percolator.py
@@ -38,6 +38,21 @@ class Percolator:
filter.setdelegate(self.top)
self.top = filter
+ def insertfilterafter(self, filter, after):
+ assert isinstance(filter, Delegator)
+ assert isinstance(after, Delegator)
+ assert filter.delegate is None
+
+ f = self.top
+ f.resetcache()
+ while f is not after:
+ assert f is not self.bottom
+ f = f.delegate
+ f.resetcache()
+
+ filter.setdelegate(f.delegate)
+ f.setdelegate(filter)
+
def removefilter(self, filter):
# XXX Perhaps should only support popfilter()?
assert isinstance(filter, Delegator)