shell bypass 403
o
_b$ � @ sV d Z ddlZddlmZ G dd� d�Zdd� Zedkr)dd lmZ ed
dd� dS 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 �9/usr/local/python-3.10/lib/python3.10/idlelib/filelist.py�__init__ s
zFileList.__init__Nc C s� |sJ �| � |�}tj�|�rtjdd|f | jd� d S tj�|�}|| jv r4| j| }|j �
� |S |r:||�S | �| ||�}|jrF|S |�
� d S )Nz
File Errorz%r is a directory.�Zmaster)�canonize�os�path�isdirr � showerrorr �normcaser �top�wakeupr Z good_load�_close)r �filename�action�key�editr r r
�open s*
�
z
FileList.openc C s0 | � |�}|d ur|d ur|�|� d S d S d S r )r Zgotoline)r r �linenor r r r
�gotofileline, s
�zFileList.gotofilelinec C s | � | |�S r r )r r r r r
�new1 s zFileList.newc O s* t | j�D ]
}|�� }|dkr dS qdS )N�cancel�break)�listr �close)r �args�kwdsr Zreplyr r r
�close_all_callback4 s �zFileList.close_all_callbackc C sX z| j | }W n ty td� Y d S w |r| j|= | j |= | j s*| j�� d S 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� |� � z| j| }W n ty td� Y d S w |jj}|s-|r&| j|= d | j|<