X7ROOT File Manager
Current Path:
/opt/alt/python33/lib64/python3.3/idlelib
opt
/
alt
/
python33
/
lib64
/
python3.3
/
idlelib
/
ðŸ“
..
📄
AutoComplete.py
(8.87 KB)
📄
AutoCompleteWindow.py
(17.26 KB)
📄
AutoExpand.py
(2.42 KB)
📄
Bindings.py
(3.35 KB)
📄
CREDITS.txt
(1.82 KB)
📄
CallTipWindow.py
(5.76 KB)
📄
CallTips.py
(5.79 KB)
📄
ChangeLog
(55.07 KB)
📄
ClassBrowser.py
(6.22 KB)
📄
CodeContext.py
(8.16 KB)
📄
ColorDelegator.py
(10.22 KB)
📄
Debugger.py
(15.98 KB)
📄
Delegator.py
(665 B)
📄
EditorWindow.py
(64.75 KB)
📄
FileList.py
(3.72 KB)
📄
FormatParagraph.py
(7 KB)
📄
GrepDialog.py
(4.01 KB)
📄
HISTORY.txt
(10.08 KB)
📄
HyperParser.py
(10.31 KB)
📄
IOBinding.py
(19.4 KB)
ðŸ“
Icons
📄
IdleHistory.py
(4.02 KB)
📄
MultiCall.py
(17.12 KB)
📄
MultiStatusBar.py
(783 B)
📄
NEWS.txt
(33.61 KB)
📄
ObjectBrowser.py
(3.66 KB)
📄
OutputWindow.py
(4.29 KB)
📄
ParenMatch.py
(6.47 KB)
📄
PathBrowser.py
(2.81 KB)
📄
Percolator.py
(2.6 KB)
📄
PyParse.py
(18.96 KB)
📄
PyShell.py
(56.52 KB)
📄
README.txt
(2.44 KB)
📄
RemoteDebugger.py
(11.75 KB)
📄
RemoteObjectBrowser.py
(964 B)
📄
ReplaceDialog.py
(5.69 KB)
📄
RstripExtension.py
(1.03 KB)
📄
ScriptBinding.py
(7.88 KB)
📄
ScrolledList.py
(3.9 KB)
📄
SearchDialog.py
(1.97 KB)
📄
SearchDialogBase.py
(5.06 KB)
📄
SearchEngine.py
(7.37 KB)
📄
StackViewer.py
(3.48 KB)
📄
TODO.txt
(8.28 KB)
📄
ToolTip.py
(2.67 KB)
📄
TreeWidget.py
(14.86 KB)
📄
UndoDelegator.py
(10.06 KB)
📄
WidgetRedirector.py
(4.37 KB)
📄
WindowList.py
(2.41 KB)
📄
ZoomHeight.py
(1.28 KB)
📄
__init__.py
(37 B)
📄
__main__.py
(109 B)
ðŸ“
__pycache__
📄
aboutDialog.py
(6.42 KB)
📄
config-extensions.def
(2.72 KB)
📄
config-highlight.def
(1.7 KB)
📄
config-keys.def
(7.35 KB)
📄
config-main.def
(2.46 KB)
📄
configDialog.py
(51.61 KB)
📄
configHandler.py
(28.64 KB)
📄
configHelpSourceEdit.py
(6.57 KB)
📄
configSectionNameDialog.py
(4.21 KB)
📄
dynOptionMenuWidget.py
(1.28 KB)
📄
extend.txt
(3.56 KB)
📄
help.txt
(11.71 KB)
📄
idle.py
(400 B)
📄
idle.pyw
(671 B)
ðŸ“
idle_test
📄
idlever.py
(23 B)
📄
keybindingDialog.py
(12.14 KB)
📄
macosxSupport.py
(7 KB)
📄
rpc.py
(20.46 KB)
📄
run.py
(13.37 KB)
📄
tabbedpages.py
(17.74 KB)
📄
textView.py
(3.46 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 from idlelib.TreeWidget import TreeItem, TreeNode, ScrolledCanvas from reprlib 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 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 = list(self.object.keys()) try: keys.sort() except: pass return keys dispatch = { int: AtomicObjectTreeItem, float: AtomicObjectTreeItem, str: AtomicObjectTreeItem, tuple: SequenceTreeItem, list: SequenceTreeItem, dict: DictTreeItem, type: 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) # Test script def _test(): import sys from tkinter import Tk root = Tk() 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__': _test()
Upload File
Create Folder