U :e: @shddlmZddlmZGdddZddZedkrdddlmZed d d d dd l m Z e edS)) Delegator)WidgetRedirectorc@s@eZdZddZddZdddZddd Zd d Zd d ZdS) PercolatorcCsR||_t||_t||_|_|jd|j|j_|jd|j|j_g|_ dS)Ninsertdelete) textrredirrtopbottomregisterrrfilters)selfrr7/usr/local/python38/lib/python3.8/idlelib/percolator.py__init__s  zPercolator.__init__cCsL|j|jk r||jqd|_|jdd|_|jd|_d|_dSN)r r removefilter setdelegatercloser)r rrrrs   zPercolator.closeNcCs|j|||dSr)r r)r indexcharsZtagsrrrrszPercolator.insertcCs|j||dSr)r r)r Zindex1Zindex2rrrrszPercolator.deletecCs||j||_dSr)rr )r filterrrr insertfilter"s zPercolator.insertfiltercCsV|j}||kr"|j|_|dn0|j|k r<||j}q"||j|ddSr)r delegaterZ resetcache)r rfrrrr)s   zPercolator.removefilter)N)N) __name__ __module__ __qualname__rrrrrrrrrrrs    rc sddl}Gdddt}||}|dtt|ddd\}}|d||df||}t |}|j |j |d |d fd d }fd d} | | ||j|d|d} | | ||j|d| d} | dS)Nrc@s$eZdZddZddZddZdS)z_percolator..TracercSs||_t|ddSr)namerr)r rrrrr>sz$_percolator..Tracer.__init__cWst|jd||jj|dS)Nz: insert)printrrrr argsrrrrBsz"_percolator..Tracer.insertcWst|jd||jj|dS)Nz: delete)rrrrr rrrrFsz"_percolator..Tracer.deleteN)rrrrrrrrrrTracer=sr"zTest Percolator+z+%d+%dt1t2csr ndSrgetr)pinpoutr&var1rrtoggle1Usz_percolator..toggle1csr ndSrr(r)r*r+r'var2rrtoggle2Wsz_percolator..toggle2ZTracer1)rZcommandvariableZTracer2)tkinterrZTopleveltitlemapintZgeometrysplitZTextrrrpackZIntVarZ Checkbutton) parentZtkr"Zboxxyrpr-r/Zcb1Zcb2r)r*r+r&r'r,r.r _percolator:s*      r;__main__)mainz!idlelib.idle_test.test_percolatorF) verbosityexit)runN) Zidlelib.delegatorrZidlelib.redirectorrrr;rZunittestr=Zidlelib.idle_test.htestrArrrrs  5(