Ñò
SsÊNc           @   sP   d  d k  Td e f d „  ƒ  YZ d e f d „  ƒ  YZ d e f d „  ƒ  YZ d S(	   iÿÿÿÿ(   t   *t   Eventc           B   sA   e  Z d d  „ Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s.   t  ƒ  |  _ | d  j	 o | i |  ƒ n d  S(   N(   t   sett   _Event__delegatest   Nonet   register(   t   selft   manager(    (    s   scripts/common/Event.pyt   __init__   s    c         G   s=   x6 t  |  i ƒ D]% } y | | Œ  Wq t ƒ  q Xq Wd  S(   N(   R   R   t   LOG_CURRENT_EXCEPTION(   R   t   argst   delegate(    (    s   scripts/common/Event.pyt   __call__   s     c         C   s   |  i  i | ƒ |  S(   N(   R   t   add(   R   R   (    (    s   scripts/common/Event.pyt   __iadd__&   s    c         C   s   |  i  i | ƒ |  S(   N(   R   t   discard(   R   R   (    (    s   scripts/common/Event.pyt   __isub__,   s    c         C   s   |  i  i ƒ  d  S(   N(   R   t   clear(   R   (    (    s   scripts/common/Event.pyR   2   s    c         C   s    d t  |  i ƒ t |  i ƒ f S(   Ns   Event(%s):%s(   t   lenR   t   repr(   R   (    (    s   scripts/common/Event.pyt   __repr__6   s    N(	   t   __name__t
   __module__R   R   R   R   R   R   R   (    (    (    s   scripts/common/Event.pyR      s   					t   Handlerc           B   s/   e  Z d d  „ Z d „  Z d „  Z d „  Z RS(   c         C   s+   d  |  _ | d  j	 o | i |  ƒ n d  S(   N(   R   t   _Handler__delegateR   (   R   R   (    (    s   scripts/common/Event.pyR   @   s    	c         G   s"   |  i  d  j	 o |  i  | Œ  Sd  S(   N(   R   R   (   R   R
   (    (    s   scripts/common/Event.pyR   G   s    c         C   s   | |  _  d  S(   N(   R   (   R   R   (    (    s   scripts/common/Event.pyR   N   s    c         C   s   d  |  _ d  S(   N(   R   R   (   R   (    (    s   scripts/common/Event.pyR   S   s    N(   R   R   R   R   R   R   R   (    (    (    s   scripts/common/Event.pyR   <   s   		t   EventManagerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s   g  |  _  d  S(   N(   t   _EventManager__events(   R   (    (    s   scripts/common/Event.pyR   [   s    c         C   s   |  i  i | ƒ d  S(   N(   R   t   append(   R   t   event(    (    s   scripts/common/Event.pyR   `   s    c         C   s"   x |  i  D] } | i ƒ  q
 Wd  S(   N(   R   R   (   R   R   (    (    s   scripts/common/Event.pyR   d   s    
 (   R   R   R   R   R   (    (    (    s   scripts/common/Event.pyR   X   s   		N(   t   debug_utilst   objectR   R   R   (    (    (    s   scripts/common/Event.pyt   <module>   s   
7