
    .hh                        S SK JrJrJrJrJrJrJrJrJ	r	J
r
Jr  S SKJrJrJr  S SKJr  S SKJr   " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      rSS jr  SS jr\S:X  a  S SKJr  \" SSSS9  S SKJr  \" \5        gg)    )ToplevelTextTclError
HORIZONTALVERTICALNSEWNSEWNONEWORDSUNKEN)Frame	ScrollbarButton)	showerror)color_configc                   4   ^  \ rS rSrU 4S jrS rS rSrU =r$ )AutoHideScrollbar   c                    > [        U5      S:  d  [        U5      S:  a  U R                  5         OU R                  5         [        TU ]  X5        g )Ng        g      ?)floatgridgrid_removesuperset)selflohi	__class__s      9/opt/python-3.13.8/usr/lib/python3.13/idlelib/textview.pyr   AutoHideScrollbar.set   s9    9s?eBi#oIIKB    c                 F    [        U R                  R                   S35      e)Nz does not support "pack"r   r   __name__r   kwargss     r    packAutoHideScrollbar.pack   s     $..1122JKLLr"   c                 F    [        U R                  R                   S35      e)Nz does not support "place"r$   r&   s     r    placeAutoHideScrollbar.place   s     $..1122KLMMr"    )	r%   
__module____qualname____firstlineno__r   r(   r+   __static_attributes____classcell__r   s   @r    r   r      s    
MN Nr"   r   c                   .   ^  \ rS rSr\4U 4S jjrSrU =r$ )ScrollableTextFrame   c                 0  > [         TU ]  " U40 UD6  [        XS9=o@l        UR	                  SS[
        S9  U R                  SSS9  U R                  SSS9  [        U [        SUR                  S9U l        U R                  R	                  SS[        S9  U R                  R                  US'   U[        :X  aX  [        U [        SUR                   S9U l        U R"                  R	                  SS[$        S9  U R"                  R                  US	'   g S U l        g )
Nwrapr   )rowcolumnsticky   )weightF)orient	takefocuscommandyscrollcommandxscrollcommand)r   __init__r   textr   r
   grid_rowconfiguregrid_columnconfigurer   r   yviewyscrollr   r   r   r   xviewxscrollr	   )r   masterr9   r'   rE   r   s        r    rD   ScrollableTextFrame.__init__"   s    	*6*00y		a$	/q+!!!A!. )h3815= 	a"5!%!1!1 4<,T*7<59ZZADL LL!Ab9%)\\%5%5D!"DLr"   )rE   rK   rI   )r%   r.   r/   r0   r   rD   r1   r2   r3   s   @r    r5   r5      s     %) #  # r"   r5   c                   6   ^  \ rS rSrSU 4S jjrSS jrSrU =r$ )	ViewFrameH   c                 
  > [         TU ]  U5        Xl        U R                  SU R                  5        U R                  SU R                  5        [        U [        SS9U l        U R                  R                  =o@l        UR                  SU5        UR                  USSS9  [        U5        UR                  5         [        U S	U R                  S
S9=U l        nU R                  R                  SSSS9  UR                  SS9  g )Nz<Return>z<Escape>i  )reliefheightz1.0r   disabled)r9   highlightthicknessstateCloseFrE   rA   r@   topTbothsideexpandfillbottom)r\   )r   rD   parentbindokr5   r   	textframerE   insert	configurer   	focus_setr   	button_okr(   )r   r`   contentsr9   rE   rg   r   s         r    rD   ViewFrame.__init__J   s     	 		*dgg&		*dgg&,T&M>>...yE8$DQjIT%+7DGGu&F 	Ft&AH%r"   c                 8    U R                   R                  5         g N)r`   destroyr   events     r    rb   ViewFrame.okd   s    r"   )rg   r`   rE   rc   )wordrk   )r%   r.   r/   r0   rD   rb   r1   r2   r3   s   @r    rO   rO   H   s    &4 r"   rO   c                   D   ^  \ rS rSrS\4SSS.U 4S jjjrSS jrSrU =r$ )	
ViewWindowi   TF)_htest_utestc                D  > [         TU ]  U5        SU S'   UR                  5       S-   nUR                  5       U(       d  SOS-   n	U R	                  SU SU	 35        U R                  U5        [        XUS9U l        U R                  SU R                  5        [        U S	U R                  S
S9=U l        n
U R                  R                  SSSS9  X@l        U R                  (       a:  U R                  U5        U R                  5         U(       d  U R!                  5         g g g )N   borderwidth
   d   z	=750x500++r8   WM_DELETE_WINDOWrW   FrX   rY   TrZ   r[   )r   rD   winfo_rootxwinfo_rootygeometrytitlerO   	viewframeprotocolrb   r   rg   r(   is_modal	transientgrab_setwait_window)r   r`   r   rh   modalr9   rt   ru   xyrg   r   s              r    rD   ViewWindow.__init__l   s    	 ] 2% fB#>	!AaS)*

5"4=($''2%+Dw48GGu&N 	Nt&A==NN6"MMO  "  r"   c                 f    U R                   (       a  U R                  5         U R                  5         g rk   )r   grab_releaserl   rm   s     r    rb   ViewWindow.ok   s    ==r"   )rg   r   r   rk   )	r%   r.   r/   r0   r   rD   rb   r1   r2   r3   s   @r    rr   rr   i   s)     7; !# !# !#F r"   rr   Fc           	          [        XX#XES9$ )Nr9   ru   )rr   )r`   r   rh   r   r9   ru   s         r    	view_textr      s     fX4OOr"   c           	          [        X#S9 nUR                  5       nS S S 5        [        XWXEUS9$ ! , (       d  f       N= f! [         a    [	        SSU< S3U S9   g [
         a  n	[	        S[        U	5      U S9   S n	A	g S n	A	ff = f)N)encodingr   zFile Load ErrorzUnable to load file z .)r   messager`   zUnicode Decode Error)openreadr   OSErrorr   UnicodeDecodeErrorstr)
r`   r   filenamer   r   r9   ru   filerh   errs
             r    	view_filer      s    ((.$yy{H / % &( 	( /. !)0B?	!   !.c(	! !s/   	A 0A 
>A B	B&A??B__main__)mainzidlelib.idle_test.test_textview   )	verbosityexit)runN)Trp   F)tkinterr   r   r   r   r   r   r	   r
   r   r   r   tkinter.ttkr   r   r   tkinter.messageboxr   idlelib.colorizerr   r   r5   rO   rr   r   r   r%   unittestr   idlelib.idle_test.htestr   r-   r"   r    <module>r      s   ; ; ; ; 0 0 ( *N	 N&& % & R B* *ZP CI0 z	*aeD+
O r"   