B ۟x7*@sddlmZmZmZmZmZmZmZmZm Z m Z m Z ddl m Z mZmZddlmZddlmZGdddeZGddde ZGd d d e ZGd d d eZdddZdddZedkrddlmZeddddddlmZeedS)) ToplevelTextTclError HORIZONTALVERTICALNSEWNSEWNONEWORDSUNKEN)Frame ScrollbarButton) showerror) color_configcs,eZdZfddZddZddZZS)AutoHideScrollbarcs<t|dkst|dkr"|n|t||dS)Ngg?)floatgridZ grid_removesuperset)selflohi) __class__3/opt/alt/python37/lib/python3.7/idlelib/textview.pyrs zAutoHideScrollbar.setcKst|jjddS)Nz does not support "pack")rr__name__)rkwargsrrrpackszAutoHideScrollbar.packcKst|jjddS)Nz does not support "place")rrr)rrrrrplaceszAutoHideScrollbar.place)r __module__ __qualname__rrr __classcell__rr)rrr s rcs eZdZeffdd ZZS)ScrollableTextFramec stj|f|t||d}|_|jddtd|jddd|jdddt|t d|j d|_ |j jddt d|j j |d<|tkrt|td|jd|_|jjddtd|jj |d <nd|_dS) N)wrapr)rowcolumnZsticky)ZweightF)Zorient takefocuscommandZyscrollcommandZxscrollcommand)r__init__rtextrr Zgrid_rowconfigureZgrid_columnconfigurerrZyviewZyscrollrrr rZxviewZxscrollr)rZmasterr%rr,)rrrr+"s"    zScrollableTextFrame.__init__)rr!r"r r+r#rr)rrr$sr$cs(eZdZdfdd ZdddZZS) ViewFramewordcst|||_|d|j|d|jt|tdd|_|jj}|_| d||j |dddt || t |d |jd d |_}|jjd d dd|jdddS)Nzzi)ZreliefZheightz1.0rZdisabled)r%ZhighlightthicknessstateCloseF)r,r*r)topTboth)sideexpandfillZbottom)r3)rr+parentZbindokr$r Z textframer,insertZ configurerZ focus_setr button_okr)rr6contentsr%r,r9)rrrr+Js  zViewFrame.__init__NcCs|jdS)N)r6destroy)reventrrrr7dsz ViewFrame.ok)r.)N)rr!r"r+r7r#rr)rrr-Hsr-cs4eZdZdefdddfdd Zd ddZZS) ViewWindowTF)_htest_utestc st|d|d<|d}||s.dnd} |d|d| ||t|||d|_|d|j t |d |j d d |_ } |jj d d dd||_ |j r||||s|dS)NZ borderwidth dz =750x500++)r%ZWM_DELETE_WINDOWr0F)r,r*r)r1Tr2)r3r4r5)rr+Z winfo_rootxZ winfo_rootyZgeometrytitler-Z viewframeZprotocolr7rr9ris_modalZ transientZgrab_setZ wait_window) rr6rDr:modalr%r>r?xyr9)rrrr+ls"    zViewWindow.__init__NcCs|jr||dS)N)rEZ grab_releaser;)rr<rrrr7sz ViewWindow.ok)N)rr!r"r r+r7r#rr)rrr=is"r=Tr.FcCst||||||dS)N)r%r?)r=)r6rDr:rFr%r?rrr view_texts rIc Csy&t|d|d}|}WdQRXWn\tk rPtdd|d|dYnHtk r} ztdt| |dWdd} ~ XYnXt||||||dSdS) Nr)encodingzFile Load ErrorzUnable to load file z .)rDmessager6zUnicode Decode Error)r%r?)openreadOSErrorrUnicodeDecodeErrorstrrI) r6rDfilenamerKrFr%r?filer:errrrr view_files   rU__main__)mainzidlelib.idle_test.test_textview) verbosityexit)runN)Tr.F)Tr.F)Ztkinterrrrrrrrr r r r Z tkinter.ttkr rrZtkinter.messageboxrZidlelib.colorizerrrr$r-r=rIrUrZunittestrWZidlelib.idle_test.htestr[rrrrs4  )!-