o =?h @slddlmZddlmZGdddZddZedkr4ddlmZed d d d dd l m Z e edSdS)) Delegator)WidgetRedirectorc@sHeZdZddZddZdddZddd Zd d Zd d ZddZ dS) PercolatorcCsR||_t||_t||_|_|jd|j|j_|jd|j|j_g|_ dS)Ninsertdelete) textrredirrtopbottomregisterrrfilters)selfrr9/opt/alt/python310/lib64/python3.10/idlelib/percolator.py__init__s   zPercolator.__init__cCsV|j|jur||j|j|jusd|_|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.deletecCs2t|tsJ|jdusJ||j||_dSr) isinstancerdelegaterr )r filterrrr insertfilter"s  zPercolator.insertfiltercCs~t|tsJt|tsJ|jdusJ|j}|||ur2||jus'J|j}|||us ||j||dSr)rrrr resetcacher r)r rZafterfrrrinsertfilterafter)s zPercolator.insertfilteraftercCst|tsJ|jdusJ|j}||ur |j|_|ddS|j|ur8||jus,J||j}|j|us%||j|ddSr)rrrr rr r)r rrrrrr8s  zPercolator.removefilterr) __name__ __module__ __qualname__rrrrrrrrrrrrs  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 r!rrrrMsz$_percolator..Tracer.__init__cWt|jd||jj|dS)Nz: insert)printr!rrr argsrrrrQz"_percolator..Tracer.insertcWr")Nz: delete)r#r!rrr$rrrrUr&z"_percolator..Tracer.deleteN)rrr rrrrrrrTracerLs r'zTest Percolator+z+%d+%dt1t2crndSrgetr)pinpoutr+var1rrtoggle1dz_percolator..toggle1cr-rr.r)r0r1r,var2rrtoggle2fr4z_percolator..toggle2ZTracer1)rZcommandZvariableZTracer2)ZtkinterrZTopleveltitlemapintZgeometrysplitZTextrrrZpackZIntVarZ Checkbutton) parentZtkr'Zboxxyrpr3r6Zcb1Zcb2r)r0r1r+r,r2r5r _percolatorIs*      r?__main__)mainz!idlelib.idle_test.test_percolatorF) verbosityexit)runN) Zidlelib.delegatorrZidlelib.redirectorrrr?rZunittestrAZidlelib.idle_test.htestrErrrrs D(