summaryrefslogtreecommitdiff
path: root/lib/python2.7/idlelib/PathBrowser.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/idlelib/PathBrowser.py')
-rw-r--r--lib/python2.7/idlelib/PathBrowser.py95
1 files changed, 0 insertions, 95 deletions
diff --git a/lib/python2.7/idlelib/PathBrowser.py b/lib/python2.7/idlelib/PathBrowser.py
deleted file mode 100644
index d88a48e..0000000
--- a/lib/python2.7/idlelib/PathBrowser.py
+++ /dev/null
@@ -1,95 +0,0 @@
-import os
-import sys
-import imp
-
-from idlelib.TreeWidget import TreeItem
-from idlelib.ClassBrowser import ClassBrowser, ModuleBrowserTreeItem
-
-class PathBrowser(ClassBrowser):
-
- def __init__(self, flist):
- self.init(flist)
-
- def settitle(self):
- 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 os.error:
- 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):
- if not os.path.isdir(file):
- return 0
- init = os.path.join(file, "__init__.py")
- return os.path.exists(init)
-
- def listmodules(self, allnames):
- modules = {}
- suffixes = imp.get_suffixes()
- sorted = []
- for suff, mode, flag 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 main():
- from idlelib import PyShell
- PathBrowser(PyShell.flist)
- if sys.stdin is sys.__stdin__:
- mainloop()
-
-if __name__ == "__main__":
- main()