X7ROOT File Manager
Current Path:
/opt/alt/python37/lib64/python3.7/idlelib
opt
/
alt
/
python37
/
lib64
/
python3.7
/
idlelib
/
??
..
??
CREDITS.txt
(1.82 KB)
??
ChangeLog
(55.04 KB)
??
HISTORY.txt
(10.07 KB)
??
Icons
??
NEWS.txt
(47.65 KB)
??
NEWS2x.txt
(26.54 KB)
??
README.txt
(9.37 KB)
??
TODO.txt
(8.28 KB)
??
__init__.py
(396 B)
??
__main__.py
(159 B)
??
__pycache__
??
autocomplete.py
(8.74 KB)
??
autocomplete_w.py
(19.64 KB)
??
autoexpand.py
(3.14 KB)
??
browser.py
(8.12 KB)
??
calltip.py
(6.17 KB)
??
calltip_w.py
(6.99 KB)
??
codecontext.py
(11.06 KB)
??
colorizer.py
(12.69 KB)
??
config-extensions.def
(2.21 KB)
??
config-highlight.def
(2.8 KB)
??
config-keys.def
(10.65 KB)
??
config-main.def
(3.09 KB)
??
config.py
(37.28 KB)
??
config_key.py
(14.13 KB)
??
configdialog.py
(102.07 KB)
??
debugger.py
(18.66 KB)
??
debugger_r.py
(11.86 KB)
??
debugobj.py
(3.96 KB)
??
debugobj_r.py
(1.06 KB)
??
delegator.py
(1.02 KB)
??
dynoption.py
(1.97 KB)
??
editor.py
(64.08 KB)
??
extend.txt
(3.56 KB)
??
filelist.py
(3.8 KB)
??
format.py
(15.41 KB)
??
grep.py
(7.3 KB)
??
help.html
(60.76 KB)
??
help.py
(11.46 KB)
??
help_about.py
(8.77 KB)
??
history.py
(3.95 KB)
??
hyperparser.py
(12.58 KB)
??
idle.py
(454 B)
??
idle.pyw
(570 B)
??
idle_test
??
iomenu.py
(20.15 KB)
??
macosx.py
(9.44 KB)
??
mainmenu.py
(3.83 KB)
??
multicall.py
(18.21 KB)
??
outwin.py
(5.65 KB)
??
parenmatch.py
(7.04 KB)
??
pathbrowser.py
(3.12 KB)
??
percolator.py
(3.06 KB)
??
pyparse.py
(19.48 KB)
??
pyshell.py
(55.91 KB)
??
query.py
(14.55 KB)
??
redirector.py
(6.71 KB)
??
replace.py
(9.66 KB)
??
rpc.py
(20.64 KB)
??
run.py
(19.82 KB)
??
runscript.py
(8.58 KB)
??
scrolledlist.py
(4.36 KB)
??
search.py
(5.44 KB)
??
searchbase.py
(7.36 KB)
??
searchengine.py
(7.3 KB)
??
sidebar.py
(13.27 KB)
??
squeezer.py
(12.54 KB)
??
stackviewer.py
(4.35 KB)
??
statusbar.py
(1.41 KB)
??
textview.py
(6.65 KB)
??
tooltip.py
(6.41 KB)
??
tree.py
(15.97 KB)
??
undo.py
(10.79 KB)
??
window.py
(2.55 KB)
??
zoomheight.py
(4.1 KB)
??
zzdummy.py
(961 B)
Editing: pathbrowser.py
import importlib.machinery import os import sys from idlelib.browser import ModuleBrowser, ModuleBrowserTreeItem from idlelib.tree import TreeItem class PathBrowser(ModuleBrowser): def __init__(self, master, *, _htest=False, _utest=False): """ _htest - bool, change box location when running htest """ self.master = master self._htest = _htest self._utest = _utest self.init() def settitle(self): "Set window titles." self.top.wm_title("Path Browser") self.top.wm_iconname("Path Browser") def rootnode(self): return PathBrowserTreeItem() class PathBrowserTreeItem(TreeItem): def GetText(self): return "sys.path" def GetSubList(self): sublist = [] for dir in sys.path: item = DirBrowserTreeItem(dir) sublist.append(item) return sublist class DirBrowserTreeItem(TreeItem): def __init__(self, dir, packages=[]): self.dir = dir self.packages = packages def GetText(self): if not self.packages: return self.dir else: return self.packages[-1] + ": package" def GetSubList(self): try: names = os.listdir(self.dir or os.curdir) except OSError: return [] packages = [] for name in names: file = os.path.join(self.dir, name) if self.ispackagedir(file): nn = os.path.normcase(name) packages.append((nn, name, file)) packages.sort() sublist = [] for nn, name, file in packages: item = DirBrowserTreeItem(file, self.packages + [name]) sublist.append(item) for nn, name in self.listmodules(names): item = ModuleBrowserTreeItem(os.path.join(self.dir, name)) sublist.append(item) return sublist def ispackagedir(self, file): " Return true for directories that are packages." if not os.path.isdir(file): return False init = os.path.join(file, "__init__.py") return os.path.exists(init) def listmodules(self, allnames): modules = {} suffixes = importlib.machinery.EXTENSION_SUFFIXES[:] suffixes += importlib.machinery.SOURCE_SUFFIXES suffixes += importlib.machinery.BYTECODE_SUFFIXES sorted = [] for suff in suffixes: i = -len(suff) for name in allnames[:]: normed_name = os.path.normcase(name) if normed_name[i:] == suff: mod_name = name[:i] if mod_name not in modules: modules[mod_name] = None sorted.append((normed_name, name)) allnames.remove(name) sorted.sort() return sorted def _path_browser(parent): # htest # PathBrowser(parent, _htest=True) parent.mainloop() if __name__ == "__main__": from unittest import main main('idlelib.idle_test.test_pathbrowser', verbosity=2, exit=False) from idlelib.idle_test.htest import run run(_path_browser)
Upload File
Create Folder