3
§ f: ã @ sh d dl mZ d dlmZ G dd„ dƒZdd„ Zedkrdd dlmZ ed d
dd� d d
l m
Z
e
eƒ dS )é )Ú Delegator)ÚWidgetRedirectorc @ s@ e Zd Zdd„ Zdd„ Zddd„Zddd „Zd
d„ Zdd
„ ZdS )Ú
Percolatorc C sR || _ t|ƒ| _t|ƒ | _| _| jjd| jƒ| j_| jjd| jƒ| j_g | _ d S )NÚinsertÚdelete)
Útextr Úredirr ÚtopÚbottomÚregisterr r Úfilters)Úselfr © r ú7/opt/alt/python36/lib64/python3.6/idlelib/percolator.pyÚ__init__ s
zPercolator.__init__c C sP x| j | jk r| j| j ƒ qW d | _ | jjd ƒ d | _| jjƒ d | _d | _d S )N)r r
ÚremovefilterÚsetdelegater Úcloser )r
r r r r s
zPercolator.closeNc C s | j j|||ƒ d S )N)r r )r
ÚindexÚcharsZtagsr r r r s zPercolator.insertc C s | j j||ƒ d S )N)r r )r
Zindex1Zindex2r r r r s zPercolator.deletec C s2 t |tƒst‚|jd kst‚|j| jƒ || _d S )N)Ú
isinstancer ÚAssertionErrorÚdelegater r )r
Úfilterr r r Úinsertfilter" s zPercolator.insertfilterc C s„ t |tƒst‚|jd k st‚| j}||kr>|j| _|jd ƒ nBx*|j|k rh|| jk sXt‚|jƒ |j}q@W |j|jƒ |jd ƒ d S )N)r r r r r r r
Z
resetcache)r
r Úfr r r r ) s
zPercolator.removefilter)N)N) Ú__name__Ú
__module__Ú__qualname__r r r r r r r r r r r s
r c s dd l }G dd„ dtƒ}|j| ƒ}|jdƒ tt| jƒ jdƒdd … ƒ\}}|jd||d f ƒ |j|ƒ}t |ƒ}|j
‰ |j‰|d ƒ‰|d
ƒ‰‡ ‡‡‡fdd„}‡ ‡‡‡fd
d„} |jƒ |j
| ƒ‰|j|d|ˆd�}
|
jƒ |j
| ƒ‰|j|d| ˆd�}|jƒ d S )Nr c @ s$ e Zd Zdd„ Zdd„ Zdd„ ZdS )z_percolator.