mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
style: Start applying PEP8 to Python files, indentation issues
Done with `autopep8 --select=E1`, fixes: - E101 - Reindent all lines. - E112 - Fix under-indented comments. - E113 - Fix over-indented comments. - E115 - Fix under-indented comments. - E116 - Fix over-indented comments. - E121 - Fix a badly indented line. - E122 - Fix a badly indented line. - E123 - Fix a badly indented line. - E124 - Fix a badly indented line. - E125 - Fix indentation undistinguish from the next logical line. - E126 - Fix a badly indented line. - E127 - Fix a badly indented line. - E128 - Fix a badly indented line. - E129 - Fix a badly indented line.
This commit is contained in:
parent
681575fa71
commit
97c8508f5e
88 changed files with 6291 additions and 6291 deletions
|
@ -8,505 +8,505 @@ import xml.etree.ElementTree as ET
|
|||
input_list = []
|
||||
|
||||
for arg in sys.argv[1:]:
|
||||
input_list.append(arg)
|
||||
input_list.append(arg)
|
||||
|
||||
if len(input_list) < 1:
|
||||
print 'usage: makerst.py <classes.xml>'
|
||||
sys.exit(0)
|
||||
print 'usage: makerst.py <classes.xml>'
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def validate_tag(elem, tag):
|
||||
if elem.tag != tag:
|
||||
print "Tag mismatch, expected '" + tag + "', got " + elem.tag
|
||||
sys.exit(255)
|
||||
if elem.tag != tag:
|
||||
print "Tag mismatch, expected '" + tag + "', got " + elem.tag
|
||||
sys.exit(255)
|
||||
|
||||
|
||||
class_names = []
|
||||
classes = {}
|
||||
|
||||
def ul_string(str,ul):
|
||||
str+="\n"
|
||||
for i in range(len(str)-1):
|
||||
str+=ul
|
||||
str+="\n"
|
||||
return str
|
||||
str+="\n"
|
||||
for i in range(len(str)-1):
|
||||
str+=ul
|
||||
str+="\n"
|
||||
return str
|
||||
|
||||
def make_class_list(class_list, columns):
|
||||
|
||||
f = codecs.open('class_list.rst', 'wb', 'utf-8')
|
||||
prev = 0
|
||||
col_max = len(class_list) / columns + 1
|
||||
print ('col max is ', col_max)
|
||||
col_count = 0
|
||||
row_count = 0
|
||||
last_initial = ''
|
||||
fit_columns = []
|
||||
f = codecs.open('class_list.rst', 'wb', 'utf-8')
|
||||
prev = 0
|
||||
col_max = len(class_list) / columns + 1
|
||||
print ('col max is ', col_max)
|
||||
col_count = 0
|
||||
row_count = 0
|
||||
last_initial = ''
|
||||
fit_columns = []
|
||||
|
||||
for n in range(0, columns):
|
||||
fit_columns += [[]]
|
||||
for n in range(0, columns):
|
||||
fit_columns += [[]]
|
||||
|
||||
indexers = []
|
||||
last_initial = ''
|
||||
indexers = []
|
||||
last_initial = ''
|
||||
|
||||
idx = 0
|
||||
for n in class_list:
|
||||
col = idx / col_max
|
||||
if col >= columns:
|
||||
col = columns - 1
|
||||
fit_columns[col] += [n]
|
||||
idx += 1
|
||||
if n[:1] != last_initial:
|
||||
indexers += [n]
|
||||
last_initial = n[:1]
|
||||
idx = 0
|
||||
for n in class_list:
|
||||
col = idx / col_max
|
||||
if col >= columns:
|
||||
col = columns - 1
|
||||
fit_columns[col] += [n]
|
||||
idx += 1
|
||||
if n[:1] != last_initial:
|
||||
indexers += [n]
|
||||
last_initial = n[:1]
|
||||
|
||||
row_max = 0
|
||||
f.write("\n")
|
||||
row_max = 0
|
||||
f.write("\n")
|
||||
|
||||
for n in range(0, columns):
|
||||
if len(fit_columns[n]) > row_max:
|
||||
row_max = len(fit_columns[n])
|
||||
for n in range(0, columns):
|
||||
if len(fit_columns[n]) > row_max:
|
||||
row_max = len(fit_columns[n])
|
||||
|
||||
f.write("| ")
|
||||
for n in range(0, columns):
|
||||
f.write(" | |")
|
||||
f.write("| ")
|
||||
for n in range(0, columns):
|
||||
f.write(" | |")
|
||||
|
||||
f.write("\n")
|
||||
f.write("+")
|
||||
for n in range(0, columns):
|
||||
f.write("--+-------+")
|
||||
f.write("\n")
|
||||
f.write("\n")
|
||||
f.write("+")
|
||||
for n in range(0, columns):
|
||||
f.write("--+-------+")
|
||||
f.write("\n")
|
||||
|
||||
for r in range(0, row_max):
|
||||
s = '+ '
|
||||
for c in range(0, columns):
|
||||
if r >= len(fit_columns[c]):
|
||||
continue
|
||||
for r in range(0, row_max):
|
||||
s = '+ '
|
||||
for c in range(0, columns):
|
||||
if r >= len(fit_columns[c]):
|
||||
continue
|
||||
|
||||
classname = fit_columns[c][r]
|
||||
initial = classname[0]
|
||||
if classname in indexers:
|
||||
s += '**' + initial + '** | '
|
||||
else:
|
||||
s += ' | '
|
||||
classname = fit_columns[c][r]
|
||||
initial = classname[0]
|
||||
if classname in indexers:
|
||||
s += '**' + initial + '** | '
|
||||
else:
|
||||
s += ' | '
|
||||
|
||||
s += '[' + classname + '](class_'+ classname.lower()+') | '
|
||||
s += '[' + classname + '](class_'+ classname.lower()+') | '
|
||||
|
||||
s += '\n'
|
||||
f.write(s)
|
||||
s += '\n'
|
||||
f.write(s)
|
||||
|
||||
for n in range(0, columns):
|
||||
f.write("--+-------+")
|
||||
f.write("\n")
|
||||
for n in range(0, columns):
|
||||
f.write("--+-------+")
|
||||
f.write("\n")
|
||||
|
||||
|
||||
def rstize_text(text,cclass):
|
||||
|
||||
# Linebreak + tabs in the XML should become two line breaks unless in a "codeblock"
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('\n', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
# Linebreak + tabs in the XML should become two line breaks unless in a "codeblock"
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('\n', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
|
||||
pre_text = text[:pos]
|
||||
while text[pos+1] == '\t':
|
||||
pos += 1
|
||||
post_text = text[pos+1:]
|
||||
pre_text = text[:pos]
|
||||
while text[pos+1] == '\t':
|
||||
pos += 1
|
||||
post_text = text[pos+1:]
|
||||
|
||||
# Handle codeblocks
|
||||
if post_text.startswith("[codeblock]"):
|
||||
end_pos = post_text.find("[/codeblock]")
|
||||
if end_pos == -1:
|
||||
sys.exit("ERROR! [codeblock] without a closing tag!")
|
||||
# Handle codeblocks
|
||||
if post_text.startswith("[codeblock]"):
|
||||
end_pos = post_text.find("[/codeblock]")
|
||||
if end_pos == -1:
|
||||
sys.exit("ERROR! [codeblock] without a closing tag!")
|
||||
|
||||
code_text = post_text[len("[codeblock]"):end_pos]
|
||||
post_text = post_text[end_pos:]
|
||||
code_text = post_text[len("[codeblock]"):end_pos]
|
||||
post_text = post_text[end_pos:]
|
||||
|
||||
# Remove extraneous tabs
|
||||
code_pos = 0
|
||||
while True:
|
||||
code_pos = code_text.find('\n', code_pos)
|
||||
if code_pos == -1:
|
||||
break
|
||||
# Remove extraneous tabs
|
||||
code_pos = 0
|
||||
while True:
|
||||
code_pos = code_text.find('\n', code_pos)
|
||||
if code_pos == -1:
|
||||
break
|
||||
|
||||
to_skip = 0
|
||||
while code_pos+to_skip+1 < len(code_text) and code_text[code_pos+to_skip+1] == '\t':
|
||||
to_skip += 1
|
||||
to_skip = 0
|
||||
while code_pos+to_skip+1 < len(code_text) and code_text[code_pos+to_skip+1] == '\t':
|
||||
to_skip += 1
|
||||
|
||||
if len(code_text[code_pos+to_skip+1:])==0:
|
||||
code_text = code_text[:code_pos] + "\n"
|
||||
code_pos += 1
|
||||
else:
|
||||
code_text = code_text[:code_pos] + "\n " + code_text[code_pos+to_skip+1:]
|
||||
code_pos += 5 - to_skip
|
||||
if len(code_text[code_pos+to_skip+1:])==0:
|
||||
code_text = code_text[:code_pos] + "\n"
|
||||
code_pos += 1
|
||||
else:
|
||||
code_text = code_text[:code_pos] + "\n " + code_text[code_pos+to_skip+1:]
|
||||
code_pos += 5 - to_skip
|
||||
|
||||
text = pre_text + "\n[codeblock]" + code_text + post_text
|
||||
pos += len("\n[codeblock]" + code_text)
|
||||
text = pre_text + "\n[codeblock]" + code_text + post_text
|
||||
pos += len("\n[codeblock]" + code_text)
|
||||
|
||||
# Handle normal text
|
||||
else:
|
||||
text = pre_text + "\n\n" + post_text
|
||||
pos += 2
|
||||
# Handle normal text
|
||||
else:
|
||||
text = pre_text + "\n\n" + post_text
|
||||
pos += 2
|
||||
|
||||
# Escape * character to avoid interpreting it as emphasis
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('*', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
text = text[:pos] + "\*" + text[pos + 1:]
|
||||
pos += 2
|
||||
# Escape * character to avoid interpreting it as emphasis
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('*', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
text = text[:pos] + "\*" + text[pos + 1:]
|
||||
pos += 2
|
||||
|
||||
# Escape _ character at the end of a word to avoid interpreting it as an inline hyperlink
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('_', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
if not text[pos + 1].isalnum(): # don't escape within a snake_case word
|
||||
text = text[:pos] + "\_" + text[pos + 1:]
|
||||
pos += 2
|
||||
else:
|
||||
pos += 1
|
||||
# Escape _ character at the end of a word to avoid interpreting it as an inline hyperlink
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('_', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
if not text[pos + 1].isalnum(): # don't escape within a snake_case word
|
||||
text = text[:pos] + "\_" + text[pos + 1:]
|
||||
pos += 2
|
||||
else:
|
||||
pos += 1
|
||||
|
||||
# Handle [tags]
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('[', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
# Handle [tags]
|
||||
pos = 0
|
||||
while True:
|
||||
pos = text.find('[', pos)
|
||||
if pos == -1:
|
||||
break
|
||||
|
||||
endq_pos = text.find(']', pos + 1)
|
||||
if endq_pos == -1:
|
||||
break
|
||||
endq_pos = text.find(']', pos + 1)
|
||||
if endq_pos == -1:
|
||||
break
|
||||
|
||||
pre_text = text[:pos]
|
||||
post_text = text[endq_pos + 1:]
|
||||
tag_text = text[pos + 1:endq_pos]
|
||||
pre_text = text[:pos]
|
||||
post_text = text[endq_pos + 1:]
|
||||
tag_text = text[pos + 1:endq_pos]
|
||||
|
||||
if tag_text in class_names:
|
||||
tag_text = make_type(tag_text)
|
||||
else: # command
|
||||
cmd = tag_text
|
||||
space_pos = tag_text.find(' ')
|
||||
if cmd.find('html') == 0:
|
||||
cmd = tag_text[:space_pos]
|
||||
param = tag_text[space_pos + 1:]
|
||||
tag_text = param
|
||||
elif cmd.find('method') == 0:
|
||||
cmd = tag_text[:space_pos]
|
||||
param = tag_text[space_pos + 1:]
|
||||
if tag_text in class_names:
|
||||
tag_text = make_type(tag_text)
|
||||
else: # command
|
||||
cmd = tag_text
|
||||
space_pos = tag_text.find(' ')
|
||||
if cmd.find('html') == 0:
|
||||
cmd = tag_text[:space_pos]
|
||||
param = tag_text[space_pos + 1:]
|
||||
tag_text = param
|
||||
elif cmd.find('method') == 0:
|
||||
cmd = tag_text[:space_pos]
|
||||
param = tag_text[space_pos + 1:]
|
||||
|
||||
if param.find('.') != -1:
|
||||
(class_param, method_param) = param.split('.')
|
||||
tag_text = ':ref:`'+class_param+'.'+method_param+'<class_' + class_param + '_' + method_param + '>`'
|
||||
else:
|
||||
tag_text = ':ref:`' + param + '<class_' + cclass +"_"+ param + '>`'
|
||||
elif cmd.find('image=') == 0:
|
||||
tag_text = "" #''
|
||||
elif cmd.find('url=') == 0:
|
||||
tag_text = ':ref:`' + cmd[4:] + '<'+cmd[4:]+">`"
|
||||
elif cmd == '/url':
|
||||
tag_text = ')'
|
||||
elif cmd == 'center':
|
||||
tag_text = ''
|
||||
elif cmd == '/center':
|
||||
tag_text = ''
|
||||
elif cmd == 'codeblock':
|
||||
tag_text = '\n::\n'
|
||||
elif cmd == '/codeblock':
|
||||
tag_text = ''
|
||||
# Strip newline if the tag was alone on one
|
||||
if pre_text[-1] == '\n':
|
||||
pre_text = pre_text[:-1]
|
||||
elif cmd == 'br':
|
||||
# Make a new paragraph instead of a linebreak, rst is not so linebreak friendly
|
||||
tag_text = '\n\n'
|
||||
# Strip potential leading spaces
|
||||
while post_text[0] == ' ':
|
||||
post_text = post_text[1:]
|
||||
elif cmd == 'i' or cmd == '/i':
|
||||
tag_text = '*'
|
||||
elif cmd == 'b' or cmd == '/b':
|
||||
tag_text = '**'
|
||||
elif cmd == 'u' or cmd == '/u':
|
||||
tag_text = ''
|
||||
elif cmd == 'code' or cmd == '/code':
|
||||
tag_text = '``'
|
||||
else:
|
||||
tag_text = ':ref:`' + tag_text + '<class_'+tag_text.lower()+'>`'
|
||||
if param.find('.') != -1:
|
||||
(class_param, method_param) = param.split('.')
|
||||
tag_text = ':ref:`'+class_param+'.'+method_param+'<class_' + class_param + '_' + method_param + '>`'
|
||||
else:
|
||||
tag_text = ':ref:`' + param + '<class_' + cclass +"_"+ param + '>`'
|
||||
elif cmd.find('image=') == 0:
|
||||
tag_text = "" #''
|
||||
elif cmd.find('url=') == 0:
|
||||
tag_text = ':ref:`' + cmd[4:] + '<'+cmd[4:]+">`"
|
||||
elif cmd == '/url':
|
||||
tag_text = ')'
|
||||
elif cmd == 'center':
|
||||
tag_text = ''
|
||||
elif cmd == '/center':
|
||||
tag_text = ''
|
||||
elif cmd == 'codeblock':
|
||||
tag_text = '\n::\n'
|
||||
elif cmd == '/codeblock':
|
||||
tag_text = ''
|
||||
# Strip newline if the tag was alone on one
|
||||
if pre_text[-1] == '\n':
|
||||
pre_text = pre_text[:-1]
|
||||
elif cmd == 'br':
|
||||
# Make a new paragraph instead of a linebreak, rst is not so linebreak friendly
|
||||
tag_text = '\n\n'
|
||||
# Strip potential leading spaces
|
||||
while post_text[0] == ' ':
|
||||
post_text = post_text[1:]
|
||||
elif cmd == 'i' or cmd == '/i':
|
||||
tag_text = '*'
|
||||
elif cmd == 'b' or cmd == '/b':
|
||||
tag_text = '**'
|
||||
elif cmd == 'u' or cmd == '/u':
|
||||
tag_text = ''
|
||||
elif cmd == 'code' or cmd == '/code':
|
||||
tag_text = '``'
|
||||
else:
|
||||
tag_text = ':ref:`' + tag_text + '<class_'+tag_text.lower()+'>`'
|
||||
|
||||
text = pre_text + tag_text + post_text
|
||||
pos = len(pre_text) + len(tag_text)
|
||||
text = pre_text + tag_text + post_text
|
||||
pos = len(pre_text) + len(tag_text)
|
||||
|
||||
# tnode = ET.SubElement(parent,"div")
|
||||
# tnode.text=text
|
||||
|
||||
return text
|
||||
return text
|
||||
|
||||
|
||||
def make_type(t):
|
||||
global class_names
|
||||
if t in class_names:
|
||||
return ':ref:`'+t+'<class_' + t.lower()+'>`'
|
||||
return t
|
||||
global class_names
|
||||
if t in class_names:
|
||||
return ':ref:`'+t+'<class_' + t.lower()+'>`'
|
||||
return t
|
||||
|
||||
|
||||
def make_method(
|
||||
f,
|
||||
name,
|
||||
m,
|
||||
declare,
|
||||
cname,
|
||||
event=False,
|
||||
pp=None
|
||||
):
|
||||
f,
|
||||
name,
|
||||
m,
|
||||
declare,
|
||||
cname,
|
||||
event=False,
|
||||
pp=None
|
||||
):
|
||||
|
||||
if (declare or pp==None):
|
||||
t = '- '
|
||||
else:
|
||||
t = ""
|
||||
if (declare or pp==None):
|
||||
t = '- '
|
||||
else:
|
||||
t = ""
|
||||
|
||||
ret_type = 'void'
|
||||
args = list(m)
|
||||
mdata = {}
|
||||
mdata['argidx'] = []
|
||||
for a in args:
|
||||
if a.tag == 'return':
|
||||
idx = -1
|
||||
elif a.tag == 'argument':
|
||||
idx = int(a.attrib['index'])
|
||||
else:
|
||||
continue
|
||||
ret_type = 'void'
|
||||
args = list(m)
|
||||
mdata = {}
|
||||
mdata['argidx'] = []
|
||||
for a in args:
|
||||
if a.tag == 'return':
|
||||
idx = -1
|
||||
elif a.tag == 'argument':
|
||||
idx = int(a.attrib['index'])
|
||||
else:
|
||||
continue
|
||||
|
||||
mdata['argidx'].append(idx)
|
||||
mdata[idx] = a
|
||||
mdata['argidx'].append(idx)
|
||||
mdata[idx] = a
|
||||
|
||||
if not event:
|
||||
if -1 in mdata['argidx']:
|
||||
t += make_type(mdata[-1].attrib['type'])
|
||||
else:
|
||||
t += 'void'
|
||||
t += ' '
|
||||
if not event:
|
||||
if -1 in mdata['argidx']:
|
||||
t += make_type(mdata[-1].attrib['type'])
|
||||
else:
|
||||
t += 'void'
|
||||
t += ' '
|
||||
|
||||
if declare or pp==None:
|
||||
if declare or pp==None:
|
||||
|
||||
# span.attrib["class"]="funcdecl"
|
||||
# a=ET.SubElement(span,"a")
|
||||
# a.attrib["name"]=name+"_"+m.attrib["name"]
|
||||
# a.text=name+"::"+m.attrib["name"]
|
||||
# span.attrib["class"]="funcdecl"
|
||||
# a=ET.SubElement(span,"a")
|
||||
# a.attrib["name"]=name+"_"+m.attrib["name"]
|
||||
# a.text=name+"::"+m.attrib["name"]
|
||||
|
||||
s = ' **'+m.attrib['name']+'** '
|
||||
else:
|
||||
s = ':ref:`'+ m.attrib['name']+'<class_' + cname+"_"+m.attrib['name'] + '>` '
|
||||
s = ' **'+m.attrib['name']+'** '
|
||||
else:
|
||||
s = ':ref:`'+ m.attrib['name']+'<class_' + cname+"_"+m.attrib['name'] + '>` '
|
||||
|
||||
s += ' **(**'
|
||||
argfound = False
|
||||
for a in mdata['argidx']:
|
||||
arg = mdata[a]
|
||||
if a < 0:
|
||||
continue
|
||||
if a > 0:
|
||||
s += ', '
|
||||
else:
|
||||
s += ' '
|
||||
s += ' **(**'
|
||||
argfound = False
|
||||
for a in mdata['argidx']:
|
||||
arg = mdata[a]
|
||||
if a < 0:
|
||||
continue
|
||||
if a > 0:
|
||||
s += ', '
|
||||
else:
|
||||
s += ' '
|
||||
|
||||
s += make_type(arg.attrib['type'])
|
||||
if 'name' in arg.attrib:
|
||||
s += ' ' + arg.attrib['name']
|
||||
else:
|
||||
s += ' arg' + str(a)
|
||||
s += make_type(arg.attrib['type'])
|
||||
if 'name' in arg.attrib:
|
||||
s += ' ' + arg.attrib['name']
|
||||
else:
|
||||
s += ' arg' + str(a)
|
||||
|
||||
if 'default' in arg.attrib:
|
||||
s += '=' + arg.attrib['default']
|
||||
if 'default' in arg.attrib:
|
||||
s += '=' + arg.attrib['default']
|
||||
|
||||
argfound = True
|
||||
argfound = True
|
||||
|
||||
if argfound:
|
||||
s += ' '
|
||||
s += ' **)**'
|
||||
if argfound:
|
||||
s += ' '
|
||||
s += ' **)**'
|
||||
|
||||
if 'qualifiers' in m.attrib:
|
||||
s += ' ' + m.attrib['qualifiers']
|
||||
if 'qualifiers' in m.attrib:
|
||||
s += ' ' + m.attrib['qualifiers']
|
||||
|
||||
# f.write(s)
|
||||
if (not declare):
|
||||
if (pp!=None):
|
||||
pp.append( (t,s) )
|
||||
else:
|
||||
f.write("- "+t+" "+s+"\n")
|
||||
else:
|
||||
f.write(t+s+"\n")
|
||||
if (not declare):
|
||||
if (pp!=None):
|
||||
pp.append( (t,s) )
|
||||
else:
|
||||
f.write("- "+t+" "+s+"\n")
|
||||
else:
|
||||
f.write(t+s+"\n")
|
||||
|
||||
|
||||
def make_heading(title, underline):
|
||||
return title + '\n' + underline*len(title) + "\n\n"
|
||||
return title + '\n' + underline*len(title) + "\n\n"
|
||||
|
||||
|
||||
|
||||
def make_rst_class(node):
|
||||
|
||||
name = node.attrib['name']
|
||||
name = node.attrib['name']
|
||||
|
||||
f = codecs.open("class_"+name.lower() + '.rst', 'wb', 'utf-8')
|
||||
f = codecs.open("class_"+name.lower() + '.rst', 'wb', 'utf-8')
|
||||
|
||||
# Warn contributors not to edit this file directly
|
||||
f.write(".. Generated automatically by doc/tools/makerst.py in Godot's source tree.\n")
|
||||
f.write(".. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.\n\n")
|
||||
# Warn contributors not to edit this file directly
|
||||
f.write(".. Generated automatically by doc/tools/makerst.py in Godot's source tree.\n")
|
||||
f.write(".. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead.\n\n")
|
||||
|
||||
f.write(".. _class_"+name+":\n\n")
|
||||
f.write(make_heading(name, '='))
|
||||
f.write(".. _class_"+name+":\n\n")
|
||||
f.write(make_heading(name, '='))
|
||||
|
||||
if 'inherits' in node.attrib:
|
||||
inh = node.attrib['inherits'].strip()
|
||||
if 'inherits' in node.attrib:
|
||||
inh = node.attrib['inherits'].strip()
|
||||
# whle inh in classes[cn]
|
||||
f.write('**Inherits:** ')
|
||||
first=True
|
||||
while(inh in classes):
|
||||
if (not first):
|
||||
f.write(" **<** ")
|
||||
else:
|
||||
first=False
|
||||
f.write('**Inherits:** ')
|
||||
first=True
|
||||
while(inh in classes):
|
||||
if (not first):
|
||||
f.write(" **<** ")
|
||||
else:
|
||||
first=False
|
||||
|
||||
f.write(make_type(inh))
|
||||
inode = classes[inh]
|
||||
if ('inherits' in inode.attrib):
|
||||
inh=inode.attrib['inherits'].strip()
|
||||
else:
|
||||
inh=None
|
||||
f.write(make_type(inh))
|
||||
inode = classes[inh]
|
||||
if ('inherits' in inode.attrib):
|
||||
inh=inode.attrib['inherits'].strip()
|
||||
else:
|
||||
inh=None
|
||||
|
||||
|
||||
f.write("\n\n")
|
||||
f.write("\n\n")
|
||||
|
||||
inherited=[]
|
||||
for cn in classes:
|
||||
c=classes[cn]
|
||||
if 'inherits' in c.attrib:
|
||||
if (c.attrib['inherits'].strip()==name):
|
||||
inherited.append(c.attrib['name'])
|
||||
inherited=[]
|
||||
for cn in classes:
|
||||
c=classes[cn]
|
||||
if 'inherits' in c.attrib:
|
||||
if (c.attrib['inherits'].strip()==name):
|
||||
inherited.append(c.attrib['name'])
|
||||
|
||||
if (len(inherited)):
|
||||
f.write('**Inherited By:** ')
|
||||
for i in range(len(inherited)):
|
||||
if (i>0):
|
||||
f.write(", ")
|
||||
f.write(make_type(inherited[i]))
|
||||
f.write("\n\n")
|
||||
if 'category' in node.attrib:
|
||||
f.write('**Category:** ' + node.attrib['category'].strip() + "\n\n")
|
||||
if (len(inherited)):
|
||||
f.write('**Inherited By:** ')
|
||||
for i in range(len(inherited)):
|
||||
if (i>0):
|
||||
f.write(", ")
|
||||
f.write(make_type(inherited[i]))
|
||||
f.write("\n\n")
|
||||
if 'category' in node.attrib:
|
||||
f.write('**Category:** ' + node.attrib['category'].strip() + "\n\n")
|
||||
|
||||
f.write(make_heading('Brief Description', '-'))
|
||||
briefd = node.find('brief_description')
|
||||
if briefd != None:
|
||||
f.write(rstize_text(briefd.text.strip(),name) + "\n\n")
|
||||
f.write(make_heading('Brief Description', '-'))
|
||||
briefd = node.find('brief_description')
|
||||
if briefd != None:
|
||||
f.write(rstize_text(briefd.text.strip(),name) + "\n\n")
|
||||
|
||||
methods = node.find('methods')
|
||||
methods = node.find('methods')
|
||||
|
||||
if methods != None and len(list(methods)) > 0:
|
||||
f.write(make_heading('Member Functions', '-'))
|
||||
ml=[]
|
||||
for m in list(methods):
|
||||
make_method(f, node.attrib['name'], m, False,name,False,ml)
|
||||
longest_t = 0
|
||||
longest_s = 0
|
||||
for s in ml:
|
||||
sl = len(s[0])
|
||||
if (sl>longest_s):
|
||||
longest_s=sl
|
||||
tl = len(s[1])
|
||||
if (tl>longest_t):
|
||||
longest_t=tl
|
||||
if methods != None and len(list(methods)) > 0:
|
||||
f.write(make_heading('Member Functions', '-'))
|
||||
ml=[]
|
||||
for m in list(methods):
|
||||
make_method(f, node.attrib['name'], m, False,name,False,ml)
|
||||
longest_t = 0
|
||||
longest_s = 0
|
||||
for s in ml:
|
||||
sl = len(s[0])
|
||||
if (sl>longest_s):
|
||||
longest_s=sl
|
||||
tl = len(s[1])
|
||||
if (tl>longest_t):
|
||||
longest_t=tl
|
||||
|
||||
sep="+"
|
||||
for i in range(longest_s+2):
|
||||
sep+="-"
|
||||
sep+="+"
|
||||
for i in range(longest_t+2):
|
||||
sep+="-"
|
||||
sep+="+\n"
|
||||
f.write(sep)
|
||||
for s in ml:
|
||||
rt = s[0]
|
||||
while( len(rt) < longest_s ):
|
||||
rt+=" "
|
||||
st = s[1]
|
||||
while( len(st) < longest_t ):
|
||||
st+=" "
|
||||
f.write("| "+rt+" | "+st+" |\n")
|
||||
f.write(sep)
|
||||
f.write('\n')
|
||||
sep="+"
|
||||
for i in range(longest_s+2):
|
||||
sep+="-"
|
||||
sep+="+"
|
||||
for i in range(longest_t+2):
|
||||
sep+="-"
|
||||
sep+="+\n"
|
||||
f.write(sep)
|
||||
for s in ml:
|
||||
rt = s[0]
|
||||
while( len(rt) < longest_s ):
|
||||
rt+=" "
|
||||
st = s[1]
|
||||
while( len(st) < longest_t ):
|
||||
st+=" "
|
||||
f.write("| "+rt+" | "+st+" |\n")
|
||||
f.write(sep)
|
||||
f.write('\n')
|
||||
|
||||
|
||||
events = node.find('signals')
|
||||
if events != None and len(list(events)) > 0:
|
||||
f.write(make_heading('Signals', '-'))
|
||||
for m in list(events):
|
||||
make_method(f, node.attrib['name'], m, True,name, True)
|
||||
f.write('\n')
|
||||
events = node.find('signals')
|
||||
if events != None and len(list(events)) > 0:
|
||||
f.write(make_heading('Signals', '-'))
|
||||
for m in list(events):
|
||||
make_method(f, node.attrib['name'], m, True,name, True)
|
||||
f.write('\n')
|
||||
|
||||
members = node.find('members')
|
||||
if members != None and len(list(members)) > 0:
|
||||
f.write(make_heading('Member Variables', '-'))
|
||||
members = node.find('members')
|
||||
if members != None and len(list(members)) > 0:
|
||||
f.write(make_heading('Member Variables', '-'))
|
||||
|
||||
for c in list(members):
|
||||
s = '- '
|
||||
s += make_type(c.attrib['type']) + ' '
|
||||
s += '**' + c.attrib['name'] + '**'
|
||||
if c.text.strip() != '':
|
||||
s += ' - ' + c.text.strip()
|
||||
f.write(s + '\n')
|
||||
f.write('\n')
|
||||
for c in list(members):
|
||||
s = '- '
|
||||
s += make_type(c.attrib['type']) + ' '
|
||||
s += '**' + c.attrib['name'] + '**'
|
||||
if c.text.strip() != '':
|
||||
s += ' - ' + c.text.strip()
|
||||
f.write(s + '\n')
|
||||
f.write('\n')
|
||||
|
||||
constants = node.find('constants')
|
||||
if constants != None and len(list(constants)) > 0:
|
||||
f.write(make_heading('Numeric Constants', '-'))
|
||||
for c in list(constants):
|
||||
s = '- '
|
||||
s += '**' + c.attrib['name'] + '**'
|
||||
if 'value' in c.attrib:
|
||||
s += ' = **' + c.attrib['value'] + '**'
|
||||
if c.text.strip() != '':
|
||||
s += ' --- ' + rstize_text(c.text.strip(),name)
|
||||
f.write(s + '\n')
|
||||
f.write('\n')
|
||||
constants = node.find('constants')
|
||||
if constants != None and len(list(constants)) > 0:
|
||||
f.write(make_heading('Numeric Constants', '-'))
|
||||
for c in list(constants):
|
||||
s = '- '
|
||||
s += '**' + c.attrib['name'] + '**'
|
||||
if 'value' in c.attrib:
|
||||
s += ' = **' + c.attrib['value'] + '**'
|
||||
if c.text.strip() != '':
|
||||
s += ' --- ' + rstize_text(c.text.strip(),name)
|
||||
f.write(s + '\n')
|
||||
f.write('\n')
|
||||
|
||||
descr = node.find('description')
|
||||
if descr != None and descr.text.strip() != '':
|
||||
f.write(make_heading('Description', '-'))
|
||||
f.write(rstize_text(descr.text.strip(),name) + "\n\n")
|
||||
descr = node.find('description')
|
||||
if descr != None and descr.text.strip() != '':
|
||||
f.write(make_heading('Description', '-'))
|
||||
f.write(rstize_text(descr.text.strip(),name) + "\n\n")
|
||||
|
||||
methods = node.find('methods')
|
||||
if methods != None and len(list(methods)) > 0:
|
||||
f.write(make_heading('Member Function Description', '-'))
|
||||
for m in list(methods):
|
||||
f.write(".. _class_"+name+"_"+m.attrib['name']+":\n\n")
|
||||
methods = node.find('methods')
|
||||
if methods != None and len(list(methods)) > 0:
|
||||
f.write(make_heading('Member Function Description', '-'))
|
||||
for m in list(methods):
|
||||
f.write(".. _class_"+name+"_"+m.attrib['name']+":\n\n")
|
||||
# f.write(ul_string(m.attrib['name'],"^"))
|
||||
#f.write('\n<a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n------\n')
|
||||
make_method(f, node.attrib['name'], m, True,name)
|
||||
f.write('\n')
|
||||
d = m.find('description')
|
||||
if d == None or d.text.strip() == '':
|
||||
continue
|
||||
f.write(rstize_text(d.text.strip(),name))
|
||||
f.write("\n\n")
|
||||
f.write('\n')
|
||||
#f.write('\n<a name="'+m.attrib['name']+'">' + m.attrib['name'] + '</a>\n------\n')
|
||||
make_method(f, node.attrib['name'], m, True,name)
|
||||
f.write('\n')
|
||||
d = m.find('description')
|
||||
if d == None or d.text.strip() == '':
|
||||
continue
|
||||
f.write(rstize_text(d.text.strip(),name))
|
||||
f.write("\n\n")
|
||||
f.write('\n')
|
||||
|
||||
|
||||
for file in input_list:
|
||||
tree = ET.parse(file)
|
||||
doc = tree.getroot()
|
||||
tree = ET.parse(file)
|
||||
doc = tree.getroot()
|
||||
|
||||
if 'version' not in doc.attrib:
|
||||
print "Version missing from 'doc'"
|
||||
sys.exit(255)
|
||||
if 'version' not in doc.attrib:
|
||||
print "Version missing from 'doc'"
|
||||
sys.exit(255)
|
||||
|
||||
version = doc.attrib['version']
|
||||
version = doc.attrib['version']
|
||||
|
||||
for c in list(doc):
|
||||
if c.attrib['name'] in class_names:
|
||||
continue
|
||||
class_names.append(c.attrib['name'])
|
||||
classes[c.attrib['name']] = c
|
||||
for c in list(doc):
|
||||
if c.attrib['name'] in class_names:
|
||||
continue
|
||||
class_names.append(c.attrib['name'])
|
||||
classes[c.attrib['name']] = c
|
||||
|
||||
class_names.sort()
|
||||
|
||||
|
@ -514,6 +514,6 @@ class_names.sort()
|
|||
#make_class_list(class_names, 2)
|
||||
|
||||
for cn in class_names:
|
||||
c = classes[cn]
|
||||
make_rst_class(c)
|
||||
c = classes[cn]
|
||||
make_rst_class(c)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue