def multiPageLetterIndex(self, currentLetter, letters): href = html.href list = [] for letter in letters: if letter == currentLetter: link = html.tagged('b', letter) else: link = href(self.namebase + '-' + letter + '.html', letter) list.append(link) result = string.join(list, ' \n| ') return result
def genHTML(self, stream): title = 'Testcase: ' + self.info.title.pcdata htmlstream = html.HTMLStream(stream, title, bgcolor="white") htmlstream.titleHeader(title) # # info # htmlstream.write(html.header('Description', 3)) htmlstream.pushTag('BLOCKQUOTE') for paragraph in [self.info.abstract, self.info.description]: text = paragraph.pcdata if text: htmlstream.write(html.paragraph(text)) htmlstream.popTag() # # prescription # htmlstream.write(html.header('Prescription', 3)) htmlstream.pushTag('BLOCKQUOTE') prescription = self.prescription htmlstream.write(html.paragraph(prescription.kind)) # properties for property in prescription.properties: htmlstream.write(html.tagged('B', property.kind + ':')) htmlstream.write(' ' + property.pcdata) htmlstream.lineBreak() # files if len(prescription.files) > 0: htmlstream.write(html.header('Files', 4)) htmlstream.pushTag('UL') for file in prescription.files: htmlstream.write(html.tagged('LI', file.pcdata)) htmlstream.pseudoBreak() htmlstream.popTag() htmlstream.popTag() # # close # htmlstream.line() genDate(htmlstream) htmlstream.close()
def writeExceptionContent(self, exceptions): self.htmlstream.line() self.htmlstream.write( html.header(html.anchor('Exceptions', 'Exceptions'), 2) + '\n') self.htmlstream.pushTags('blockquote', 'dl') for exception in exceptions: self.htmlstream.tag('dt') self.htmlstream.write(html.tagged('b', (exception.name))) self.htmlstream.tag('dd') self.htmlstream.write(exception.doc) self.htmlstream.popTag(2) self.htmlstream.pseudoBreak()
def writeConstructorContent(self, constructor): clazzName = constructor.clazz.pyname display = html.tagged('b', '%s %s' % ('constructor', clazzName)) link = '%s_%s' % (clazzName, 'constructor') self.htmlstream.write(html.anchor(link, display)) self.htmlstream.pushTag('blockquote') self.writeConstructorSynopsis(constructor) if constructor.doc: short, long = breakDesc(constructor.doc, None) self.htmlstream.write(html.paragraph(short)) self.htmlstream.write(html.paragraph(long)) self.htmlstream.popTag() self.htmlstream.pseudoBreak()
def writeMethodContent(self, method): if isinstance(method.context, Interface.Class): link = '%s_%s' % (method.pyname, method.context.pyname) else: link = method.pyname self.htmlstream.write( html.anchor(link, html.tagged('b', method.pyname))) self.htmlstream.pushTag('blockquote') self.writeMethodSynopsis(method) if method.doc: short, long = breakDesc(method.doc, None) self.htmlstream.write(html.paragraph(short)) self.htmlstream.write(html.paragraph(long)) self.htmlstream.popTag() self.htmlstream.pseudoBreak()
def writeTable(self, htmlstream, docDir, title, memberList): htmlstream.write(self.tableTitle % title) htmlstream.pseudoBreak() for info in memberList: # write link htmlstream.pushTag('TR', BGCOLOR="white") htmlstream.pushTag('TD', WIDTH="15%") if type(info.file) == type(''): # a normal href, left unchanged relative = info.file else: # an absolute doc address, made relative to caller relative = info.file.relativeTo(docDir) anchor = html.href(relative, str(info.title)) htmlstream.write(html.tagged('B', anchor)) htmlstream.popTag() # write description htmlstream.pushTag('TD') htmlstream.write(info.formatDescription(' ')) htmlstream.popTag() # TD htmlstream.popTag() # TR htmlstream.pseudoBreak() htmlstream.write('</TABLE>')
def lowlevelWriteMethod(self, synopsis, outparms): if outparms: names = map(lambda parm: '$' + parm.name, outparms) resultString = string.join(names, ', ') synopsis = resultString + ' = ' + synopsis self.htmlstream.write(html.paragraph(html.tagged('code', synopsis)))