³ò
Ÿ›\Kc           @   s[   d  d k  Td d d „  ƒ  YZ e ƒ  Z e i Z e i Z e i Z d e f d „  ƒ  YZ d S(   iÿÿÿÿ(   t   *t
   WindowListc           B   sG   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         C   s   h  |  _  g  |  _ d  S(   N(   t   dictt	   callbacks(   t   self(    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   __init__   s    	c         C   s'   | i  |  i ƒ | |  i t | ƒ <d  S(   N(   t
   after_idlet   call_callbacksR   t   str(   R   t   window(    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   add	   s    c         C   s8   y |  i  t | ƒ =Wn t j
 o n X|  i ƒ  d  S(   N(   R   R   t   KeyErrorR   (   R   R	   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   delete   s
    c         C   s§   g  } x` |  i  i ƒ  D]O } |  i  | } y | i ƒ  } Wn t j
 o
 q n X| i | | f ƒ q W| i ƒ  x- | D]% \ } } | i d | d | i ƒ qz Wd  S(   Nt   labelt   command(   R   t   keyst	   get_titlet   TclErrort   appendt   sortt   add_commandt   wakeup(   R   t   menut   listt   keyR	   t   title(    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   add_windows_to_menu   s     
 c         C   s   |  i  i | ƒ d  S(   N(   R   R   (   R   t   callback(    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   register_callback"   s    c         C   s.   y |  i  i | ƒ Wn t j
 o n Xd  S(   N(   R   t   removet
   ValueError(   R   R   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   unregister_callback%   s    c         C   sD   x= |  i  D]2 } y | ƒ  Wq
 d Gt i Gd Gt i GHq
 Xq
 Wd  S(   Ns&   warning: callback failed in WindowListt   :(   R   t   syst   exc_typet	   exc_value(   R   R   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR   +   s    
 (	   t   __name__t
   __module__R   R
   R   R   R   R   R   (    (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR      s   						t   ListedToplevelc           B   s5   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z RS(   c         K   s-   t  i |  | | ƒ t i |  ƒ |  |  _ d  S(   N(   t   ToplevelR   t   registryR
   t   focused_widget(   R   t   mastert   kw(    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR   <   s    c         C   s6   t  i |  ƒ t i |  ƒ t  i p |  i ƒ  n d  S(   N(   R(   R   R'   t   destroyR   t   quit(   R   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR,   A   s    
c         C   s   t  i ƒ  d  S(   N(   R(   R   (   R   R	   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyt   update_windowlist_registryI   s    c         C   s
   |  i  ƒ  S(   N(   t   wm_title(   R   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR   L   s    c         C   s`   yF |  i  ƒ  d j o |  i ƒ  |  i ƒ  n |  i ƒ  |  i i ƒ  Wn t j
 o n Xd  S(   Nt   iconic(   t   wm_statet   wm_withdrawt   wm_deiconifyt   tkraiseR)   t	   focus_setR   (   R   (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR   P   s    

(   R$   R%   R   R,   R.   R   R   (    (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pyR&   :   s
   				N(    (   t   TkinterR   R(   R   R   R   R'   R&   (    (    (    s(   /usr/lib/python2.5/idlelib/WindowList.pys   <module>   s   
0				