3 § f8ã@sRdZddlZddlmZGdd„dƒZdd„ZedkrNdd lm Z e d d d �dS) zidlelib.filelistéN)Ú messageboxc@s^eZdZddlmZdd„Zddd„Zddd „Zdd d „Zd d „Z dd„Z dd„Z dd„Z dS)ÚFileListr)Ú EditorWindowcCs||_i|_i|_i|_dS)N)ÚrootÚdictÚ inversedictÚvars)Úselfr©r ú5/opt/alt/python36/lib64/python3.6/idlelib/filelist.pyÚ__init__ szFileList.__init__NcCsœ|st‚|j|ƒ}tjj|ƒr:tjdd|f|jd�dStjj|ƒ}||j krh|j |}|j j ƒ|S|rt||ƒS|j |||ƒ}|j rŒ|S|jƒdSdS)Nz File Errorz%r is a directory.)Úmaster)ÚAssertionErrorÚcanonizeÚosÚpathÚisdirÚ tkMessageBoxÚ showerrorrÚnormcaserÚtopÚwakeuprZ good_loadZ_close)r ÚfilenameÚactionÚkeyÚeditr r r Úopens(       z FileList.opencCs(|j|ƒ}|dk r$|dk r$|j|ƒdS)N)rZgotoline)r rÚlinenorr r r Ú gotofileline,s zFileList.gotofilelinecCs |j||ƒS)N)r)r rr r r Únew1sz FileList.newcOs*x$t|jƒD]}|jƒ}|dkr Pq WdS)NZcancelÚbreak)ÚlistrÚclose)r ÚargsÚkwdsrZreplyr r r Úclose_all_callback4s zFileList.close_all_callbackc CsTy|j|}Wntk r*tdƒdSX|r8|j|=|j|=|jsP|jjƒdS)Nz-Don't know this EditorWindow object. (close))rÚKeyErrorÚprintrrÚquit)r rrr r r Úunregister_maybe_terminate;sz#FileList.unregister_maybe_terminatecCsð|jƒy|j|}Wntk r2tdƒdSX|jj}|sZ|rL|j|=d|j|<dS|j|ƒ}tj j |ƒ}||kr|dS||jkr²|j|}d|j|<t j dd|f|j d�||j|<||j|<|rìy |j|=Wntk rêYnXdS)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