
φIX                 @   s   d  Z  d d l Td d l j Z Gd d   d e  Z d d d  Z d d d	 d
  Z e	 d k r d d l
 Z
 e
 j d d d d d d d l m Z e e  d S)zSimple text browser for IDLE

    )*Nc               @   sC   e  Z d  Z d Z d d d d  Z d d   Z d d	 d
  Z d S)
TextViewerz*A simple text viewer dialog for IDLE

    TFc             C   s&  t  j |  |  |  j d d  |  j d d d | j   d | j   | sQ d n d f  d |  _ d	 |  _ |  j   |  j	 |  |  j
 d
 |  j  | |  _ |  j j   |  j d |  j  |  j d |  j  |  j j d |  |  j j d t  | r"|  j |  |  j   |  j   d S)aH  Show the given text in a scrollable window with a 'close' button

        If modal option set to False, user can interact with other windows,
        otherwise they will be unable to interact with other windows until
        the textview window is closed.

        _htest - bool; change box location when running htest.
        Zborderwidth   z=%dx%d+%d+%di  i  
   d   z#ffffffz#000000ZWM_DELETE_WINDOWz<Return>z<Escape>g        stateN)Toplevel__init__Z	configureZgeometryZwinfo_rootxZwinfo_rootybgfgCreateWidgetstitleprotocolOkparenttextViewZ	focus_setbindinsertconfigZDISABLEDZ	transientZgrab_setZwait_window)selfr   r   textmodalZ_htest r   F/afs/.cs.wisc.edu/s/python-3.5.2/amd64_ubu16/lib/python3.5/textView.pyr	      s(    	!		
	
zTextViewer.__init__c          
   C   sC  t  |  d t d d } t  |   } t | d d d |  j d t |  _ t | d t d t d	 d
 |  _ t	 | d t
 d	 d
 d |  j d |  j |  _ |  j j d |  j j  |  j j d |  j j  |  j j   |  j j d t d t  |  j j d t d t d t  | j d t d t  | j d t d t d t  d  S)NZreliefZheighti  r   ZCloseZcommandZ	takefocusZorientZhighlightthicknessr   wrapr   r
   ZyscrollcommandZsidefillexpand)ZFrameZSUNKENZButtonr   FALSEZbuttonOkZ	ScrollbarZVERTICALZscrollbarViewZTextZWORDr   r
   r   r   ZyviewsetpackZRIGHTYZLEFTTRUEZBOTHZBOTTOMXZTOP)r   Z	frameTextZframeButtonsr   r   r   r   /   s    zTextViewer.CreateWidgetsNc             C   s   |  j    d  S)N)Zdestroy)r   eventr   r   r   r   @   s    zTextViewer.Ok)__name__
__module____qualname____doc__r	   r   r   r   r   r   r   r      s   #r   Tc             C   s   t  |  | | |  S)N)r   )r   r   r   r   r   r   r   	view_textD   s    r(   c             C   s{   y/ t  | d d |  } | j   } Wd  QRXWn2 t k
 rc t j d d d d | d |   Yn Xt |  | | |  Sd  S)Nrencodingr   zFile Load ErrormessagezUnable to load file %r .r   )openreadIOErrortkMessageBoxZ	showerrorr(   )r   r   filenamer*   r   filecontentsr   r   r   	view_fileG   s    
r3   __main__zidlelib.idle_test.test_textview	verbosity   exitF)run)r'   tkinterZtkinter.messageboxZ
messageboxr/   r   r   r(   r3   r$   ZunittestmainZidlelib.idle_test.htestr8   r   r   r   r   <module>   s   
<