<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
๎
f fฌ  ใ               @   sl   d  d l  m Z d  d l m Z Gd d   d  Z d d   Z e d k rh d  d l m Z e e  n  d	 S)
้    )ฺWidgetRedirector)ฺ	Delegatorc               @   s^   e  Z d  Z d d   Z d d   Z d d d  Z d d d	  Z d
 d   Z d d   Z d S)ฺ
Percolatorc             C   sw   | |  _  t |  |  _ t |  |  _ |  _ |  j j d |  j  |  j _ |  j j d |  j  |  j _ g  |  _	 d  S)Nฺinsertฺdelete)
ฺtextr   ฺredirr   ฺtopฺbottomฺregisterr   r   ฺfilters)ฺselfr   ฉ r   ๚7/opt/alt/python34/lib64/python3.4/idlelib/Percolator.pyฺ__init__   s    	zPercolator.__init__c             C   sn   x& |  j  |  j k	 r( |  j |  j   q Wd  |  _  |  j j d   d  |  _ |  j j   d  |  _ d  |  _ d  S)N)r	   r
   ฺremovefilterฺsetdelegater   ฺcloser   )r   r   r   r   r      s    	 	 	zPercolator.closeNc             C   s   |  j  j | | |  d  S)N)r	   r   )r   ฺindexฺcharsZtagsr   r   r   r      s    zPercolator.insertc             C   s   |  j  j | |  d  S)N)r	   r   )r   Zindex1Zindex2r   r   r   r      s    zPercolator.deletec             C   s   | j  |  j  | |  _ d  S)N)r   r	   )r   ฺfilterr   r   r   ฺinsertfilter   s    zPercolator.insertfilterc             C   s{   |  j  } | | k r1 | j |  _  | j d   nF x& | j | k	 rY | j   | j } q4 W| j | j  | j d   d  S)N)r	   ฺdelegater   Z
resetcache)r   r   ฺfr   r   r   r   &   s    	
zPercolator.removefilter)	ฺ__name__ฺ
__module__ฺ__qualname__r   r   r   r   r   r   r   r   r   r   r      s   	r   c                s~  d d  l  } d d  l } Gd d   d t  } | j   } | j d  t t t | j d |  j	      \ } } } } | j	 d | | d f  | j
 |  }	 t |	    | d   | d	       f d
 d   }
     f d d   } |	 j   | j    | j | d d d |
 d  } | j   | j    | j | d d d | d  } | j   | j   d  S)Nr   c               @   s4   e  Z d  Z d d   Z d d   Z d d   Z d S)z_percolator.<locals>.Tracerc             S   s   | |  _  t j |  d   d  S)N)ฺnamer   r   )r   r   r   r   r   r   :   s    	z$_percolator.<locals>.Tracer.__init__c             W   s'   t  |  j d |  |  j j |   d  S)Nz: insert)ฺprintr   r   r   )r   ฺargsr   r   r   r   =   s    z"_percolator.<locals>.Tracer.insertc             W   s'   t  |  j d |  |  j j |   d  S)Nz: delete)r   r   r   r   )r   r   r   r   r   r   @   s    z"_percolator.<locals>.Tracer.deleteN)r   r   r   r   r   r   r   r   r   r   ฺTracer9   s   r    zTest Percolatorz[x+]z+%d+%d้   ฺt1ฺt2c                  sb    j    d k r/  j d    j   n/  j    d k r^  j d    j   n  d  S)Nr   ้   )ฺgetฺsetr   r   r   )ฺpr"   ฺvar1r   r   ฺtoggle1L   s    z_percolator.<locals>.toggle1c                  sb    j    d k r/  j d    j   n/  j    d k r^  j d    j   n  d  S)Nr   r$   )r%   r&   r   r   r   )r'   r#   ฺvar2r   r   ฺtoggle2T   s    z_percolator.<locals>.toggle2r   ZTracer1ZcommandZvariableZTracer2)Ztkinterฺrer   ZTkฺtitleฺlistฺmapฺintฺsplitZgeometryZTextr   ZpackZIntVarZCheckbuttonZmainloop)ฺparentZtkr,   r    ฺrootฺwidthZheightฺxฺyr   r)   r+   Zcb1Zcb2r   )r'   r"   r#   r(   r*   r   ฺ_percolator6   s*    
3
!
!
r7   ฺ__main__)ฺrunN)	Zidlelib.WidgetRedirectorr   Zidlelib.Delegatorr   r   r7   r   Zidlelib.idle_test.htestr9   r   r   r   r   ฺ<module>   s   20