Ig.ddlmZmZddlZGddZeZej ZejZejZGddeZ e dk(rddl m Z e d d yy) )ToplevelTclErrorNc6eZdZdZdZdZdZdZdZdZ y) WindowListc i|_g|_yN)dict callbacksselfs 5/opt/alt/python312/lib64/python3.12/idlelib/window.py__init__zWindowList.__init__s cj|j|j||jt|<yr) after_idlecall_callbacksr strr windows r addzWindowList.add s($--.!' #f+rcp |jt|=|jy#t$rYwxYwr)r rKeyErrorrrs r deletezWindowList.deletes9  #f+&    s ) 55c g}|jD]6}|j|} |j}|j|||f8|j |D]#\}}}|j ||j %y#t$rY}wxYw)N)labelcommand)r get_titlerappendsort add_commandwakeup)r menulistkeyrtitles r add_windows_to_menuzWindowList.add_windows_to_menus99CYYs^F ((* KKV, -  "& E3   5&--  @#'   sB B  B c:|jj|yr)r rr callbacks r register_callbackzWindowList.register_callback$s h'rcZ |jj|y#t$rYywxYwr)r remove ValueErrorr(s r unregister_callbackzWindowList.unregister_callback's+  NN ! !( +   s  **c|jD] } | y#tj\}}}td|d|Y8xYw)Nz&warning: callback failed in WindowList:)r sysexc_infoprint)r r)tvtbs r rzWindowList.call_callbacks-sCH K ' K<<>1b>3Js (AN) __name__ __module__ __qualname__rrrr&r*r.rrr rrs'( A( Krrc*eZdZdZdZdZdZdZy)ListedToplevelc jtj|||tj|||_yr)rrregistryrfocused_widget)r masterkws r rzListedToplevel.__init__?s($+ T"rctj|tj|tjs|j yyr)r>rrdestroyr quitr s r rCzListedToplevel.destroyDs3}} IIKrc,tjyr)r>rrs r update_windowlist_registryz)ListedToplevel.update_windowlist_registryLs!rc"|jSr)wm_titler s r rzListedToplevel.get_titleOs}}rc |jdk(r |j|j|j|jj y#t $rYywxYw)Niconic)wm_state wm_withdraw wm_deiconifytkraiser? focus_setrr s r r!zListedToplevel.wakeupSs\ }}(*  "!!# LLN    ) ) +   sAA A,+A,N)r7r8r9rrCrFrr!r:rr r<r<=s# " rr<__main__)mainzidlelib.idle_test.test_window) verbosity) tkinterrrr1rr>r&r*r.r<r7unittestrQr:rr rVso& .K.Kb <22..22 X F z (A6r