3 § f8 ã @ sR d Z ddlZddlmZ G dd„ dƒZdd„ ZedkrNdd lm Z e d dd� dS ) zidlelib.filelisté N)Ú messageboxc @ s^ e Zd ZddlmZ dd„ Zddd„Zddd „Zdd d„Zdd „ Z dd„ Z dd„ Zdd„ ZdS )ÚFileListr )ÚEditorWindowc C s || _ i | _i | _i | _d S )N)ÚrootÚdictÚinversedictÚvars)Úselfr © r ú5/opt/alt/python36/lib64/python3.6/idlelib/filelist.pyÚ__init__ s zFileList.__init__Nc C sœ |st ‚| j|ƒ}tjj|ƒr:tjdd|f | jd� d S tjj|ƒ}|| j krh| j | }|j jƒ |S |rt||ƒS | j| ||ƒ}|j rŒ|S |jƒ d S d S )Nz File Errorz%r is a directory.)Úmaster)ÚAssertionErrorÚcanonizeÚosÚpathÚisdirÚtkMessageBoxÚ showerrorr Únormcaser ÚtopÚwakeupr Z good_loadZ_close)r ÚfilenameÚactionÚkeyÚeditr r r Úopen s( z FileList.openc C s( | j |ƒ}|d k r$|d k r$|j|ƒ d S )N)r Zgotoline)r r Úlinenor r r r Úgotofileline, s zFileList.gotofilelinec C s | j | |ƒS )N)r )r r r r r Únew1 s zFileList.newc O s* x$t | jƒD ]}|jƒ }|dkrP qW dS )NZcancelÚbreak)Úlistr Úclose)r ÚargsÚkwdsr Zreplyr r r Úclose_all_callback4 s zFileList.close_all_callbackc C sT y| j | }W n tk r* tdƒ d S X |r8| j|= | j |= | j sP| jjƒ d S )Nz-Don't know this EditorWindow object. (close))r ÚKeyErrorÚprintr r Úquit)r r r r r r Úunregister_maybe_terminate; s z#FileList.unregister_maybe_terminatec C sð |j ƒ y| j| }W n tk r2 tdƒ d S X |jj}|sZ|rL| j|= d | j|<