3 § f ã@sbddlTGdd„dƒZeƒZejZejZejZGdd„deƒZedkr^ddl m Z e dd d �d S) é)Ú*c@sDeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dS)Ú WindowListcCsi|_g|_dS)N)ÚdictÚ callbacks)Úself©rú3/opt/alt/python36/lib64/python3.6/idlelib/window.pyÚ__init__szWindowList.__init__cCs|j|jƒ||jt|ƒ<dS)N)Z after_idleÚcall_callbacksrÚstr)rÚwindowrrrÚadd s zWindowList.addc Cs2y|jt|ƒ=Wntk r$YnX|jƒdS)N)rr ÚKeyErrorr )rr rrrÚdeletes zWindowList.deletec Cs‚g}xL|jD]B}|j|}y |jƒ}Wntk r<w YnX|j|||fƒq W|jƒx"|D]\}}}|j||jd�q`WdS)N)ZlabelZcommand)rÚ get_titleÚTclErrorÚappendÚsortZ add_commandÚwakeup)rZmenuÚlistÚkeyr ÚtitlerrrÚadd_windows_to_menus   zWindowList.add_windows_to_menucCs|jj|ƒdS)N)rr)rÚcallbackrrrÚregister_callback#szWindowList.register_callbackc Cs*y|jj|ƒWntk r$YnXdS)N)rÚremoveÚ ValueError)rrrrrÚunregister_callback&szWindowList.unregister_callbackc CsHxB|jD]8}y |ƒWqtjƒ\}}}td|d|ƒYqXqWdS)Nz&warning: callback failed in WindowListú:)rÚsysÚexc_infoÚprint)rrÚtÚvÚtbrrrr ,s   zWindowList.call_callbacksN) Ú__name__Ú __module__Ú __qualname__r r rrrrr rrrrrs rc@s4eZdZdd„Zdd„Zdd„Zdd„Zd d „Zd S) ÚListedToplevelcKs"tj|||ƒtj|ƒ||_dS)N)ÚToplevelr Úregistryr Úfocused_widget)rZmasterÚkwrrrr >s zListedToplevel.__init__cCs&tj|ƒtj|ƒtjs"|jƒdS)N)r*rr)ÚdestroyrÚquit)rrrrr-Cs  zListedToplevel.destroycCs tjƒdS)N)r*r )rr rrrÚupdate_windowlist_registryKsz)ListedToplevel.update_windowlist_registrycCs|jƒS)N)Zwm_title)rrrrrNszListedToplevel.get_titlec CsLy2|jƒdkr|jƒ|jƒ|jƒ|jjƒWntk rFYnXdS)NZiconic)Zwm_stateZ wm_withdrawZ wm_deiconifyZtkraiser+Z focus_setr)rrrrrRs zListedToplevel.wakeupN)r%r&r'r r-r/rrrrrrr(<s r(Ú__main__)Úmainzidlelib.idle_test.test_windowé)Ú verbosityN) Ztkinterrr*rrrr)r(r%Zunittestr1rrrrÚs1#