PATH:
lib64
/
python2.7
/
idlelib
"""Simple text browser for IDLE """ from Tkinter import * import tkMessageBox class TextViewer(Toplevel): """A simple text viewer dialog for IDLE """ def __init__(self, parent, title, text, modal=True, _htest=False): """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. """ Toplevel.__init__(self, parent) self.configure(borderwidth=5) # place dialog below parent if running htest self.geometry("=%dx%d+%d+%d" % (750, 500, parent.winfo_rootx() + 10, parent.winfo_rooty() + (10 if not _htest else 100))) #elguavas - config placeholders til config stuff completed self.bg = '#ffffff' self.fg = '#000000' self.CreateWidgets() self.title(title) self.protocol("WM_DELETE_WINDOW", self.Ok) self.parent = parent self.textView.focus_set() #key bindings for this dialog self.bind('<Return>',self.Ok) #dismiss dialog self.bind('<Escape>',self.Ok) #dismiss dialog self.textView.insert(0.0, text) self.textView.config(state=DISABLED) self.is_modal = modal if self.is_modal: self.transient(parent) self.grab_set() self.wait_window() def CreateWidgets(self): frameText = Frame(self, relief=SUNKEN, height=700) frameButtons = Frame(self) self.buttonOk = Button(frameButtons, text='Close', command=self.Ok, takefocus=FALSE) self.scrollbarView = Scrollbar(frameText, orient=VERTICAL, takefocus=FALSE, highlightthickness=0) self.textView = Text(frameText, wrap=WORD, highlightthickness=0, fg=self.fg, bg=self.bg) self.scrollbarView.config(command=self.textView.yview) self.textView.config(yscrollcommand=self.scrollbarView.set) self.buttonOk.pack() self.scrollbarView.pack(side=RIGHT,fill=Y) self.textView.pack(side=LEFT,expand=TRUE,fill=BOTH) frameButtons.pack(side=BOTTOM,fill=X) frameText.pack(side=TOP,expand=TRUE,fill=BOTH) def Ok(self, event=None): if self.is_modal: self.grab_release() self.destroy() def view_text(parent, title, text, modal=True): return TextViewer(parent, title, text, modal) def view_file(parent, title, filename, encoding=None, modal=True): try: if encoding: import codecs textFile = codecs.open(filename, 'r') else: textFile = open(filename, 'r') except IOError: tkMessageBox.showerror(title='File Load Error', message='Unable to load file %r .' % filename, parent=parent) except UnicodeDecodeError as err: showerror(title='Unicode Decode Error', message=str(err), parent=parent) else: return view_text(parent, title, textFile.read(), modal) if __name__ == '__main__': import unittest unittest.main('idlelib.idle_test.test_textview', verbosity=2, exit=False) from idlelib.idle_test.htest import run run(TextViewer)
[+]
..
[-] IdleHistory.pyo
[edit]
[-] help.pyc
[edit]
[-] help.pyo
[edit]
[-] WidgetRedirector.pyc
[edit]
[-] SearchDialogBase.pyc
[edit]
[-] MultiCall.pyo
[edit]
[-] FileList.py
[edit]
[-] EditorWindow.py
[edit]
[-] SearchDialogBase.pyo
[edit]
[-] GrepDialog.py
[edit]
[-] ClassBrowser.py
[edit]
[-] ReplaceDialog.pyo
[edit]
[-] SearchDialogBase.py
[edit]
[-] idle.pyo
[edit]
[-] StackViewer.pyc
[edit]
[-] configHelpSourceEdit.pyc
[edit]
[-] __init__.pyo
[edit]
[-] idlever.pyo
[edit]
[-] WindowList.py
[edit]
[-] Delegator.py
[edit]
[-] EditorWindow.pyo
[edit]
[-] AutoCompleteWindow.pyo
[edit]
[-] AutoCompleteWindow.py
[edit]
[-] PathBrowser.py
[edit]
[-] configDialog.py
[edit]
[-] RemoteDebugger.pyo
[edit]
[-] FileList.pyc
[edit]
[-] rpc.pyc
[edit]
[-] MultiStatusBar.py
[edit]
[-] keybindingDialog.py
[edit]
[-] AutoComplete.pyc
[edit]
[-] configDialog.pyo
[edit]
[-] textView.pyc
[edit]
[-] run.pyc
[edit]
[-] IdleHistory.py
[edit]
[+]
idle_test
[-] extend.txt
[edit]
[-] configSectionNameDialog.pyo
[edit]
[-] StackViewer.py
[edit]
[-] configHandler.pyc
[edit]
[-] dynOptionMenuWidget.py
[edit]
[-] ReplaceDialog.pyc
[edit]
[-] RemoteDebugger.py
[edit]
[-] TreeWidget.py
[edit]
[-] AutoExpand.pyo
[edit]
[-] RstripExtension.pyc
[edit]
[-] help.html
[edit]
[-] IOBinding.pyc
[edit]
[-] AutoCompleteWindow.pyc
[edit]
[-] MultiCall.pyc
[edit]
[-] Bindings.pyc
[edit]
[-] Bindings.pyo
[edit]
[-] CallTips.py
[edit]
[-] RstripExtension.pyo
[edit]
[-] textView.py
[edit]
[-] ClassBrowser.pyo
[edit]
[-] Percolator.pyc
[edit]
[-] CallTipWindow.pyo
[edit]
[-] configDialog.pyc
[edit]
[-] ClassBrowser.pyc
[edit]
[-] ScrolledList.py
[edit]
[-] textView.pyo
[edit]
[-] __init__.pyc
[edit]
[-] ColorDelegator.py
[edit]
[-] keybindingDialog.pyc
[edit]
[-] ParenMatch.pyo
[edit]
[-] ScriptBinding.py
[edit]
[-] WidgetRedirector.pyo
[edit]
[-] rpc.py
[edit]
[-] help.txt
[edit]
[-] ParenMatch.py
[edit]
[-] IOBinding.py
[edit]
[-] FormatParagraph.pyc
[edit]
[-] SearchDialog.pyc
[edit]
[-] ToolTip.pyc
[edit]
[-] macosxSupport.pyc
[edit]
[-] SearchEngine.pyo
[edit]
[-] Percolator.py
[edit]
[-] HyperParser.pyo
[edit]
[-] ZoomHeight.pyo
[edit]
[-] config-keys.def
[edit]
[-] ObjectBrowser.pyo
[edit]
[-] keybindingDialog.pyo
[edit]
[+]
Icons
[-] PyShell.pyo
[edit]
[-] MultiCall.py
[edit]
[-] __init__.py
[edit]
[-] ToolTip.py
[edit]
[-] HISTORY.txt
[edit]
[-] NEWS.txt
[edit]
[-] idle.pyw
[edit]
[-] AutoComplete.pyo
[edit]
[-] idle.pyc
[edit]
[-] SearchEngine.pyc
[edit]
[-] OutputWindow.py
[edit]
[-] ZoomHeight.pyc
[edit]
[-] RemoteObjectBrowser.py
[edit]
[-] configHandler.pyo
[edit]
[-] rpc.pyo
[edit]
[-] dynOptionMenuWidget.pyc
[edit]
[-] UndoDelegator.py
[edit]
[-] ObjectBrowser.py
[edit]
[-] TODO.txt
[edit]
[-] CallTipWindow.py
[edit]
[-] MultiStatusBar.pyo
[edit]
[-] AutoComplete.py
[edit]
[-] RstripExtension.py
[edit]
[-] PyParse.py
[edit]
[-] tabbedpages.pyc
[edit]
[-] TreeWidget.pyo
[edit]
[-] macosxSupport.pyo
[edit]
[-] RemoteDebugger.pyc
[edit]
[-] Delegator.pyo
[edit]
[-] idlever.py
[edit]
[-] UndoDelegator.pyc
[edit]
[-] StackViewer.pyo
[edit]
[-] SearchEngine.py
[edit]
[-] Delegator.pyc
[edit]
[-] PyParse.pyc
[edit]
[-] Debugger.py
[edit]
[-] OutputWindow.pyo
[edit]
[-] SearchDialog.py
[edit]
[-] idlever.pyc
[edit]
[-] UndoDelegator.pyo
[edit]
[-] CallTips.pyc
[edit]
[-] CodeContext.pyc
[edit]
[-] macosxSupport.py
[edit]
[-] ToolTip.pyo
[edit]
[-] README.txt
[edit]
[-] EditorWindow.pyc
[edit]
[-] Debugger.pyo
[edit]
[-] HyperParser.pyc
[edit]
[-] WidgetRedirector.py
[edit]
[-] config-highlight.def
[edit]
[-] dynOptionMenuWidget.pyo
[edit]
[-] Percolator.pyo
[edit]
[-] configHelpSourceEdit.pyo
[edit]
[-] ObjectBrowser.pyc
[edit]
[-] aboutDialog.py
[edit]
[-] ReplaceDialog.py
[edit]
[-] CallTips.pyo
[edit]
[-] config-extensions.def
[edit]
[-] WindowList.pyo
[edit]
[-] SearchDialog.pyo
[edit]
[-] IdleHistory.pyc
[edit]
[-] CREDITS.txt
[edit]
[-] CodeContext.pyo
[edit]
[-] RemoteObjectBrowser.pyo
[edit]
[-] ScrolledList.pyc
[edit]
[-] AutoExpand.pyc
[edit]
[-] GrepDialog.pyo
[edit]
[-] configHandler.py
[edit]
[-] FormatParagraph.pyo
[edit]
[-] OutputWindow.pyc
[edit]
[-] WindowList.pyc
[edit]
[-] idle.py
[edit]
[-] HyperParser.py
[edit]
[-] GrepDialog.pyc
[edit]
[-] TreeWidget.pyc
[edit]
[-] tabbedpages.pyo
[edit]
[-] configSectionNameDialog.pyc
[edit]
[-] ZoomHeight.py
[edit]
[-] PathBrowser.pyo
[edit]
[-] aboutDialog.pyo
[edit]
[-] run.py
[edit]
[-] ScrolledList.pyo
[edit]
[-] Bindings.py
[edit]
[-] FileList.pyo
[edit]
[-] config-main.def
[edit]
[-] help.py
[edit]
[-] ScriptBinding.pyc
[edit]
[-] run.pyo
[edit]
[-] ColorDelegator.pyc
[edit]
[-] aboutDialog.pyc
[edit]
[-] FormatParagraph.py
[edit]
[-] CallTipWindow.pyc
[edit]
[-] ParenMatch.pyc
[edit]
[-] PyShell.py
[edit]
[-] configSectionNameDialog.py
[edit]
[-] PyParse.pyo
[edit]
[-] tabbedpages.py
[edit]
[-] PyShell.pyc
[edit]
[-] MultiStatusBar.pyc
[edit]
[-] configHelpSourceEdit.py
[edit]
[-] ChangeLog
[edit]
[-] PathBrowser.pyc
[edit]
[-] ColorDelegator.pyo
[edit]
[-] CodeContext.py
[edit]
[-] AutoExpand.py
[edit]
[-] RemoteObjectBrowser.pyc
[edit]
[-] Debugger.pyc
[edit]
[-] ScriptBinding.pyo
[edit]
[-] IOBinding.pyo
[edit]