
    .hh                     ^    S r SSKrSSKJr   " S S5      rS r\S:X  a  SSKJr  \" S	S
S9  gg)zidlelib.filelist    N)
messageboxc                   \    \ rS rSrSSKJr  S rSS jrSS jrSS jr	S	 r
S
 rS rS rSrg)FileList   r   EditorWindowc                 :    Xl         0 U l        0 U l        0 U l        g N)rootdictinversedictvars)selfr   s     9/opt/python-3.13.8/usr/lib/python3.13/idlelib/filelist.py__init__FileList.__init__   s    			    Nc                    U R                  U5      n[        R                  R                  U5      (       a%  [        R
                  " SU< S3U R                  S9  g [        R                  R                  U5      nX0R                  ;   a+  U R                  U   nUR                  R                  5         U$ U(       a  U" U5      $ U R                  XU5      nUR                  (       a  U$ UR                  5         g )Nz
File Errorz is a directory.master)canonizeospathisdirr   	showerrorr   normcaser   topwakeupr   	good_load_close)r   filenameactionkeyedits        r   openFileList.open   s    ==*77==""  ,./yy" ggx())99S>DHHOOK(##$$TS9D~~r   c                 X    U R                  U5      nUb  Ub  UR                  U5        g g g r
   )r%   gotoline)r   r!   linenor$   s       r   gotofilelineFileList.gotofileline,   s/    yy" 2MM&! !3r   c                 $    U R                  X5      $ r
   r   )r   r!   s     r   newFileList.new1   s      00r   c                 l    [        U R                  5       H  nUR                  5       nUS:X  d  M    g   g)Ncancelbreak)listr   close)r   argskwdsr$   replys        r   close_all_callbackFileList.close_all_callback4   s5    ))*DJJLE 	 + r   c                      U R                   U   nU(       a  U R                  U	 U R                   U	 U R                   (       d  U R                  R                  5         g g ! [         a    [        S5         g f = f)Nz-Don't know this EditorWindow object.  (close))r   KeyErrorprintr   r   quit)r   r$   r#   s      r   unregister_maybe_terminate#FileList.unregister_maybe_terminate;   sn    	""4(C 		#T"IINN    	AB	s   A A76A7c                    UR                  5          U R                  U   nUR                  R
                  nU(       d$  U(       a  U R                  U	 S U R                  U'   g U R                  U5      n[        R                  R                  U5      nXB:X  a  g X@R                  ;   aB  U R                  U   nS U R                  U'   [        R                  " SSU< 3U R                  S9  XR                  U'   X@R                  U'   U(       a   U R                  U	 g g ! [         a    [        S5         g f = f! [         a     g f = f)Nz.Don't know this EditorWindow object.  (rename)zName Conflictz,You now have multiple edit windows open for r   )saved_change_hookr   r:   r;   ior!   r   r   r   r   r   r   r   r   )r   r$   r#   r!   newkeyconflicts         r   filename_changed_editFileList.filename_changed_editG   s0    	""4(C 77##IIcN%)DT"==*!!(+=YYyy(H)-DX&  >xlKyy" !		&!'IIcN -  	BC	2  s#   D D7 D43D47
EEc                    [         R                  R                  U5      (       d5   [         R                  " 5       n[         R                  R	                  X!5      n[         R                  R                  U5      $ ! [
         a     N+f = fr
   )r   r   isabsgetcwdjoinOSErrornormpath)r   r!   pwds      r   r   FileList.canonizeg   sb    ww}}X&&7iik 77<<6ww))	  s   A9 9
BB)r   r   r   r   r
   )__name__
__module____qualname____firstlineno__idlelib.editorr   r   r%   r*   r-   r7   r=   rD   r   __static_attributes__ r   r   r   r      s0     ,4"
1
@*r   r   c                      SSK Jn   SSKJn  SSKJn  U " 5       nU" U5        U" U5        UR                  5         [        U5      nUR                  5         UR                  (       a  UR                  5         g g )Nr   )Tk)fixwordbreaks)fix_scaling)tkinterrV   rR   rW   idlelib.runrX   withdrawr   r-   r   mainloop)rV   rW   rX   r   flists        r   _testr^   r   sT    ,'4D$MMOTNE	IIK r   __main__)mainzidlelib.idle_test.test_filelist   )	verbosity)	__doc__r   rY   r   r   r^   rN   unittestr`   rT   r   r   <module>re      s=     	 h* h*V z	*a8 r   