3  f8@sRdZddlZddlmZGdddZddZedkrNdd lm Z e d d d dS) zidlelib.filelistN) messageboxc@s^eZdZddlmZddZdddZddd Zdd d Zd d Z ddZ ddZ ddZ dS)FileListr) EditorWindowcCs||_i|_i|_i|_dS)N)rootdict inversedictvars)selfrr 5/opt/alt/python36/lib64/python3.6/idlelib/filelist.py__init__ szFileList.__init__NcCs|st|j|}tjj|r:tjdd|f|jddStjj|}||j krh|j |}|j j |S|rt||S|j |||}|j r|S|jdSdS)Nz File Errorz%r is a directory.)master)AssertionErrorcanonizeospathisdir tkMessageBox showerrorrnormcasertopwakeuprZ good_loadZ_close)r filenameactionkeyeditr r r opens(       z FileList.opencCs(|j|}|dk r$|dk r$|j|dS)N)rZgotoline)r rlinenorr r r gotofileline,s zFileList.gotofilelinecCs |j||S)N)r)r rr r r new1sz FileList.newcOs*x$t|jD]}|j}|dkr Pq WdS)NZcancelbreak)listrclose)r argskwdsrZreplyr r r close_all_callback4s zFileList.close_all_callbackc CsTy|j|}Wntk r*tddSX|r8|j|=|j|=|jsP|jjdS)Nz-Don't know this EditorWindow object. (close))rKeyErrorprintrrquit)r rrr r r unregister_maybe_terminate;sz#FileList.unregister_maybe_terminatecCs|jy|j|}Wntk r2tddSX|jj}|sZ|rL|j|=d|j|<dS|j|}tj j |}||kr|dS||jkr|j|}d|j|<t j dd|f|j d||j|<||j|<|ry |j|=Wntk rYnXdS)Nz.Don't know this EditorWindow object. (rename)z Name Conflictz.You now have multiple edit windows open for %r)r )Zsaved_change_hookrr&r'iorrrrrrrrr)r rrrZnewkeyZconflictr r r filename_changed_editGs<          zFileList.filename_changed_editc CsHtjj|ss k