From 67405cdd5d7d4bfcd70e398a565075a971768697 Mon Sep 17 00:00:00 2001 From: Josh Yelon Date: Tue, 18 Apr 2006 17:57:19 +0000 Subject: [PATCH] Added import statements --- direct/src/directscripts/gendocs.py | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/direct/src/directscripts/gendocs.py b/direct/src/directscripts/gendocs.py index 8bcc091b2f..9e3685f265 100644 --- a/direct/src/directscripts/gendocs.py +++ b/direct/src/directscripts/gendocs.py @@ -373,12 +373,13 @@ class ParseTreeInfo: docstring = '' name = '' - def __init__(self, tree, name): + def __init__(self, tree, name, file): """ The code can be a string (in which case it is parsed), or it can be in parse tree form already. """ self.name = name + self.file = file self.class_info = {} self.function_info = {} self.derivs = {} @@ -444,11 +445,11 @@ class ParseTreeInfo: cstmt = vars['compound'] if cstmt[0] == symbol.funcdef: name = cstmt[2][1] - self.function_info[name] = ParseTreeInfo(cstmt and cstmt[-1] or None, name) + self.function_info[name] = ParseTreeInfo(cstmt and cstmt[-1] or None, name, self.file) self.function_info[name].prototype = self.extract_tokens("", cstmt[3]) elif cstmt[0] == symbol.classdef: name = cstmt[2][1] - self.class_info[name] = ParseTreeInfo(cstmt and cstmt[-1] or None, name) + self.class_info[name] = ParseTreeInfo(cstmt and cstmt[-1] or None, name, self.file) self.extract_derivs(self.class_info[name], cstmt) def extract_derivs(self, classinfo, tree): @@ -505,7 +506,7 @@ class CodeDatabase: self.funcs[type.scopedname+"."+func.pyname] = func print "Reading Python sources files" for py in pylist: - pyinf = ParseTreeInfo(readFile(py), py) + pyinf = ParseTreeInfo(readFile(py), py, py) for type in pyinf.class_info.keys(): typinf = pyinf.class_info[type] self.types[type] = typinf @@ -570,6 +571,17 @@ class CodeDatabase: self.buildInheritance(inheritance, cn) return inheritance + def getClassImport(self, cn): + type = self.types.get(cn) + if (isinstance(type, InterrogateType)): + return "pandac.PandaModules" + else: + result = type.file + if (result[-3:]==".py"): result=result[:-3] + result = result.replace("/src/","/") + result = result.replace("/",".") + return result + def getClassMethods(self, cn): type = self.types.get(cn) result = [] @@ -716,6 +728,7 @@ def generate(pversion, indirlist, directdirlist, docdir, header, footer, urlpref for type in classes: body = "

" + type + "

\n" comment = code.getClassComment(type) + body = body + "\n\n" body = body + "\n\n" inheritance = code.getInheritance(type) body = body + "

Inheritance:

\n