X7ROOT File Manager
Current Path:
/lib64/python2.7/idlelib
lib64
/
python2.7
/
idlelib
/
??
..
??
AutoComplete.py
(8.75 KB)
??
AutoComplete.pyc
(7.82 KB)
??
AutoComplete.pyo
(7.82 KB)
??
AutoCompleteWindow.py
(16.91 KB)
??
AutoCompleteWindow.pyc
(12.19 KB)
??
AutoCompleteWindow.pyo
(12.13 KB)
??
AutoExpand.py
(3.32 KB)
??
AutoExpand.pyc
(3.42 KB)
??
AutoExpand.pyo
(3.42 KB)
??
Bindings.py
(2.91 KB)
??
Bindings.pyc
(4.58 KB)
??
Bindings.pyo
(4.58 KB)
??
CREDITS.txt
(1.82 KB)
??
CallTipWindow.py
(5.92 KB)
??
CallTipWindow.pyc
(5.99 KB)
??
CallTipWindow.pyo
(5.99 KB)
??
CallTips.py
(7.56 KB)
??
CallTips.pyc
(7.94 KB)
??
CallTips.pyo
(7.94 KB)
??
ChangeLog
(55.07 KB)
??
ClassBrowser.py
(6.83 KB)
??
ClassBrowser.pyc
(9.28 KB)
??
ClassBrowser.pyo
(9.28 KB)
??
CodeContext.py
(8.15 KB)
??
CodeContext.pyc
(6.5 KB)
??
CodeContext.pyo
(6.46 KB)
??
ColorDelegator.py
(9.53 KB)
??
ColorDelegator.pyc
(8.69 KB)
??
ColorDelegator.pyo
(8.69 KB)
??
Debugger.py
(17.81 KB)
??
Debugger.pyc
(17.13 KB)
??
Debugger.pyo
(17.13 KB)
??
Delegator.py
(665 B)
??
Delegator.pyc
(1.24 KB)
??
Delegator.pyo
(1.24 KB)
??
EditorWindow.py
(63.96 KB)
??
EditorWindow.pyc
(55.53 KB)
??
EditorWindow.pyo
(55.43 KB)
??
FileList.py
(3.63 KB)
??
FileList.pyc
(3.93 KB)
??
FileList.pyo
(3.9 KB)
??
FormatParagraph.py
(7.12 KB)
??
FormatParagraph.pyc
(6.97 KB)
??
FormatParagraph.pyo
(6.97 KB)
??
GrepDialog.py
(5.02 KB)
??
GrepDialog.pyc
(6.27 KB)
??
GrepDialog.pyo
(6.27 KB)
??
HISTORY.txt
(10.08 KB)
??
HyperParser.py
(10.25 KB)
??
HyperParser.pyc
(6.52 KB)
??
HyperParser.pyo
(6.52 KB)
??
IOBinding.py
(21.4 KB)
??
IOBinding.pyc
(18.1 KB)
??
IOBinding.pyo
(18.1 KB)
??
Icons
??
IdleHistory.py
(3.96 KB)
??
IdleHistory.pyc
(3.96 KB)
??
IdleHistory.pyo
(3.96 KB)
??
MultiCall.py
(17.29 KB)
??
MultiCall.pyc
(15.97 KB)
??
MultiCall.pyo
(15.9 KB)
??
MultiStatusBar.py
(1.32 KB)
??
MultiStatusBar.pyc
(2.23 KB)
??
MultiStatusBar.pyo
(2.23 KB)
??
NEWS.txt
(46.14 KB)
??
ObjectBrowser.py
(4.27 KB)
??
ObjectBrowser.pyc
(6.9 KB)
??
ObjectBrowser.pyo
(6.9 KB)
??
OutputWindow.py
(4.47 KB)
??
OutputWindow.pyc
(5.11 KB)
??
OutputWindow.pyo
(5.11 KB)
??
ParenMatch.py
(6.56 KB)
??
ParenMatch.pyc
(6.96 KB)
??
ParenMatch.pyo
(6.96 KB)
??
PathBrowser.py
(2.94 KB)
??
PathBrowser.pyc
(4.38 KB)
??
PathBrowser.pyo
(4.38 KB)
??
Percolator.py
(3.15 KB)
??
Percolator.pyc
(4.5 KB)
??
Percolator.pyo
(4.32 KB)
??
PyParse.py
(19.05 KB)
??
PyParse.pyc
(9.77 KB)
??
PyParse.pyo
(9.34 KB)
??
PyShell.py
(57.48 KB)
??
PyShell.pyc
(51.59 KB)
??
PyShell.pyo
(51.49 KB)
??
README.txt
(7.71 KB)
??
RemoteDebugger.py
(11.36 KB)
??
RemoteDebugger.pyc
(15.94 KB)
??
RemoteDebugger.pyo
(15.79 KB)
??
RemoteObjectBrowser.py
(942 B)
??
RemoteObjectBrowser.pyc
(2.1 KB)
??
RemoteObjectBrowser.pyo
(2.1 KB)
??
ReplaceDialog.py
(6.48 KB)
??
ReplaceDialog.pyc
(7.57 KB)
??
ReplaceDialog.pyo
(7.57 KB)
??
RstripExtension.py
(1.03 KB)
??
RstripExtension.pyc
(1.58 KB)
??
RstripExtension.pyo
(1.58 KB)
??
ScriptBinding.py
(8.26 KB)
??
ScriptBinding.pyc
(8.01 KB)
??
ScriptBinding.pyo
(8.01 KB)
??
ScrolledList.py
(4.27 KB)
??
ScrolledList.pyc
(6.33 KB)
??
ScrolledList.pyo
(6.33 KB)
??
SearchDialog.py
(2.57 KB)
??
SearchDialog.pyc
(3.89 KB)
??
SearchDialog.pyo
(3.89 KB)
??
SearchDialogBase.py
(6.93 KB)
??
SearchDialogBase.pyc
(8.26 KB)
??
SearchDialogBase.pyo
(8.26 KB)
??
SearchEngine.py
(7.29 KB)
??
SearchEngine.pyc
(8.11 KB)
??
SearchEngine.pyo
(8.11 KB)
??
StackViewer.py
(4.33 KB)
??
StackViewer.pyc
(6.25 KB)
??
StackViewer.pyo
(6.25 KB)
??
TODO.txt
(8.28 KB)
??
ToolTip.py
(3.1 KB)
??
ToolTip.pyc
(4.56 KB)
??
ToolTip.pyo
(4.56 KB)
??
TreeWidget.py
(14.68 KB)
??
TreeWidget.pyc
(17.28 KB)
??
TreeWidget.pyo
(17.28 KB)
??
UndoDelegator.py
(10.53 KB)
??
UndoDelegator.pyc
(13.24 KB)
??
UndoDelegator.pyo
(13.24 KB)
??
WidgetRedirector.py
(6.74 KB)
??
WidgetRedirector.pyc
(7.59 KB)
??
WidgetRedirector.pyo
(7.59 KB)
??
WindowList.py
(2.42 KB)
??
WindowList.pyc
(3.55 KB)
??
WindowList.pyo
(3.55 KB)
??
ZoomHeight.py
(1.27 KB)
??
ZoomHeight.pyc
(1.61 KB)
??
ZoomHeight.pyo
(1.61 KB)
??
__init__.py
(288 B)
??
__init__.pyc
(431 B)
??
__init__.pyo
(431 B)
??
aboutDialog.py
(6.85 KB)
??
aboutDialog.pyc
(6.69 KB)
??
aboutDialog.pyo
(6.69 KB)
??
config-extensions.def
(2.9 KB)
??
config-highlight.def
(2.46 KB)
??
config-keys.def
(7.59 KB)
??
config-main.def
(2.5 KB)
??
configDialog.py
(64.41 KB)
??
configDialog.pyc
(52.04 KB)
??
configDialog.pyo
(52.04 KB)
??
configHandler.py
(31.72 KB)
??
configHandler.pyc
(28.67 KB)
??
configHandler.pyo
(28.67 KB)
??
configHelpSourceEdit.py
(6.53 KB)
??
configHelpSourceEdit.pyc
(6.44 KB)
??
configHelpSourceEdit.pyo
(6.44 KB)
??
configSectionNameDialog.py
(3.95 KB)
??
configSectionNameDialog.pyc
(4.32 KB)
??
configSectionNameDialog.pyo
(4.32 KB)
??
dynOptionMenuWidget.py
(1.94 KB)
??
dynOptionMenuWidget.pyc
(2.72 KB)
??
dynOptionMenuWidget.pyo
(2.72 KB)
??
extend.txt
(3.56 KB)
??
help.html
(41.42 KB)
??
help.py
(10.78 KB)
??
help.pyc
(11.98 KB)
??
help.pyo
(11.98 KB)
??
help.txt
(11.86 KB)
??
idle.py
(453 B)
??
idle.pyc
(410 B)
??
idle.pyo
(410 B)
??
idle.pyw
(563 B)
??
idle_test
??
idlever.py
(415 B)
??
idlever.pyc
(578 B)
??
idlever.pyo
(578 B)
??
keybindingDialog.py
(12.18 KB)
??
keybindingDialog.pyc
(11.89 KB)
??
keybindingDialog.pyo
(11.89 KB)
??
macosxSupport.py
(8.24 KB)
??
macosxSupport.pyc
(8.16 KB)
??
macosxSupport.pyo
(8.02 KB)
??
rpc.py
(19.68 KB)
??
rpc.pyc
(21.22 KB)
??
rpc.pyo
(21.12 KB)
??
run.py
(12.61 KB)
??
run.pyc
(13.1 KB)
??
run.pyo
(13.05 KB)
??
tabbedpages.py
(18.01 KB)
??
tabbedpages.pyc
(18.13 KB)
??
tabbedpages.pyo
(18.13 KB)
??
textView.py
(3.44 KB)
??
textView.pyc
(3.93 KB)
??
textView.pyo
(3.93 KB)
Editing: ObjectBrowser.py
# XXX TO DO: # - popup menu # - support partial or total redisplay # - more doc strings # - tooltips # object browser # XXX TO DO: # - for classes/modules, add "open source" to object browser import re from idlelib.TreeWidget import TreeItem, TreeNode, ScrolledCanvas from repr import Repr myrepr = Repr() myrepr.maxstring = 100 myrepr.maxother = 100 class ObjectTreeItem(TreeItem): def __init__(self, labeltext, object, setfunction=None): self.labeltext = labeltext self.object = object self.setfunction = setfunction def GetLabelText(self): return self.labeltext def GetText(self): return myrepr.repr(self.object) def GetIconName(self): if not self.IsExpandable(): return "python" def IsEditable(self): return self.setfunction is not None def SetText(self, text): try: value = eval(text) self.setfunction(value) except: pass else: self.object = value def IsExpandable(self): return not not dir(self.object) def GetSubList(self): keys = dir(self.object) sublist = [] for key in keys: try: value = getattr(self.object, key) except AttributeError: continue item = make_objecttreeitem( str(key) + " =", value, lambda value, key=key, object=self.object: setattr(object, key, value)) sublist.append(item) return sublist class InstanceTreeItem(ObjectTreeItem): def IsExpandable(self): return True def GetSubList(self): sublist = ObjectTreeItem.GetSubList(self) sublist.insert(0, make_objecttreeitem("__class__ =", self.object.__class__)) return sublist class ClassTreeItem(ObjectTreeItem): def IsExpandable(self): return True def GetSubList(self): sublist = ObjectTreeItem.GetSubList(self) if len(self.object.__bases__) == 1: item = make_objecttreeitem("__bases__[0] =", self.object.__bases__[0]) else: item = make_objecttreeitem("__bases__ =", self.object.__bases__) sublist.insert(0, item) return sublist class AtomicObjectTreeItem(ObjectTreeItem): def IsExpandable(self): return 0 class SequenceTreeItem(ObjectTreeItem): def IsExpandable(self): return len(self.object) > 0 def keys(self): return range(len(self.object)) def GetSubList(self): sublist = [] for key in self.keys(): try: value = self.object[key] except KeyError: continue def setfunction(value, key=key, object=self.object): object[key] = value item = make_objecttreeitem("%r:" % (key,), value, setfunction) sublist.append(item) return sublist class DictTreeItem(SequenceTreeItem): def keys(self): keys = self.object.keys() try: keys.sort() except: pass return keys from types import * dispatch = { IntType: AtomicObjectTreeItem, LongType: AtomicObjectTreeItem, FloatType: AtomicObjectTreeItem, StringType: AtomicObjectTreeItem, TupleType: SequenceTreeItem, ListType: SequenceTreeItem, DictType: DictTreeItem, InstanceType: InstanceTreeItem, ClassType: ClassTreeItem, } def make_objecttreeitem(labeltext, object, setfunction=None): t = type(object) if t in dispatch: c = dispatch[t] else: c = ObjectTreeItem return c(labeltext, object, setfunction) def _object_browser(parent): import sys from Tkinter import Tk root = Tk() root.title("Test ObjectBrowser") width, height, x, y = list(map(int, re.split('[x+]', parent.geometry()))) root.geometry("+%d+%d"%(x, y + 150)) root.configure(bd=0, bg="yellow") root.focus_set() sc = ScrolledCanvas(root, bg="white", highlightthickness=0, takefocus=1) sc.frame.pack(expand=1, fill="both") item = make_objecttreeitem("sys", sys) node = TreeNode(sc.canvas, None, item) node.update() root.mainloop() if __name__ == '__main__': from idlelib.idle_test.htest import run run(_object_browser)
Upload File
Create Folder