ó
t®¸Qc           @   s`   d  d l  m Z d  d l m Z d d	 d „  ƒ  YZ d „  Z e d k r\ d  d l Te ƒ  n  d S(
   iÿÿÿÿ(   t   WidgetRedirector(   t	   Delegatort
   Percolatorc           B   sD   e  Z d  „  Z d „  Z d d „ Z d d „ Z d „  Z d „  Z RS(   c         C   sw   | |  _  t | ƒ |  _ t | ƒ |  _ |  _ |  j j d |  j ƒ |  j _ |  j j d |  j ƒ |  j _ g  |  _	 d  S(   Nt   insertt   delete(
   t   textR    t   redirR   t   topt   bottomt   registerR   R   t   filters(   t   selfR   (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyt   __init__   s    	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   t   removefiltert   Nonet   setdelegateR   t   closeR   (   R   (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR      s    	 	 	c         C   s   |  j  j | | | ƒ d  S(   N(   R   R   (   R   t   indext   charst   tags(    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR      s    c         C   s   |  j  j | | ƒ d  S(   N(   R   R   (   R   t   index1t   index2(    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR      s    c         C   sG   t  | t ƒ s t ‚ | j d  k s* t ‚ | j |  j ƒ | |  _ d  S(   N(   t
   isinstanceR   t   AssertionErrort   delegateR   R   R   (   R   t   filter(    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyt   insertfilter   s    c         C   sº   t  | t ƒ s t ‚ | j d  k	 s* t ‚ |  j } | | k r[ | j |  _ | j d  ƒ n[ x; | j | k	 r˜ | |  j k	 s‚ t ‚ | j ƒ  | j } q^ W| j | j ƒ | j d  ƒ d  S(   N(	   R   R   R   R   R   R   R   R   t
   resetcache(   R   R   t   f(    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR   &   s    	
N(	   t   __name__t
   __module__R   R   R   R   R   R   R   (    (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR      s   				c          C   sÖ   d t  f d „  ƒ  Y}  t ƒ  } | j d | j ƒ t ƒ  } | j ƒ  | j ƒ  t | ƒ } |  d ƒ } |  d ƒ } | j | ƒ | j | ƒ | j	 ƒ  | j
 | ƒ | j	 ƒ  | j | ƒ | j
 | ƒ | j	 ƒ  d  S(   Nt   Tracerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         S   s   | |  _  t j |  d  ƒ d  S(   N(   t   nameR   R   R   (   R   R    (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR   9   s    	c         W   s$   |  j  Gd G| GH|  j j | Œ  d  S(   Ns   : insert(   R    R   R   (   R   t   args(    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR   <   s    c         W   s$   |  j  Gd G| GH|  j j | Œ  d  S(   Ns   : delete(   R    R   R   (   R   R!   (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR   ?   s    (   R   R   R   R   R   (    (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyR   8   s   		t   WM_DELETE_WINDOWt   t1t   t2(   R   t   Tkt   wm_protocolt   quitt   Textt   packt	   focus_setR   R   t   mainloopR   (   R   t   rootR   t   pR#   R$   (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyt   main7   s"    
		



t   __main__(   t   *N(    (   t   idlelib.WidgetRedirectorR    t   idlelib.DelegatorR   R   R.   R   t   Tkinter(    (    (    s(   /sys/lib/python2.7/idlelib/Percolator.pyt   <module>   s   3	
