summaryrefslogtreecommitdiff
path: root/giscanner/mallardwriter.py
diff options
context:
space:
mode:
authorShaun McCance <shaunm@gnome.org>2011-08-18 19:47:50 -0400
committerTomeu Vizoso <tomeu.vizoso@collabora.com>2012-02-17 10:27:40 +0100
commit773d36876cfd5a23e32c506e78bdfc7383b05713 (patch)
tree00817b91c5513458e5cd92e3fcf804e27c608d75 /giscanner/mallardwriter.py
parentf470cf8dcad5fc2815ade3484d52b8d5a4bf816b (diff)
downloadgobject-introspection-773d36876cfd5a23e32c506e78bdfc7383b05713.tar.gz
g-ir-doc-tool: Templates for signals/properties, class docs
Diffstat (limited to 'giscanner/mallardwriter.py')
-rw-r--r--giscanner/mallardwriter.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/giscanner/mallardwriter.py b/giscanner/mallardwriter.py
index 5c2e2955..dbf76dd2 100644
--- a/giscanner/mallardwriter.py
+++ b/giscanner/mallardwriter.py
@@ -80,6 +80,11 @@ class MallardWriter(object):
if isinstance(node, (ast.Class, ast.Record)):
for method in node.methods:
self._render_node(method, output, node)
+ if isinstance(node, ast.Class):
+ for property_ in node.properties:
+ self._render_node(property_, output, node)
+ for signal in node.signals:
+ self._render_node(signal, output, node)
def _render_node(self, node, output, parent=None):
namespace = self._transformer.namespace
@@ -98,6 +103,12 @@ class MallardWriter(object):
elif isinstance(node, ast.Function):
template_name = 'mallard-%s-function.tmpl' % self._language
page_id = '%s.%s' % (namespace.name, node.name)
+ elif isinstance(node, ast.Property) and parent is not None:
+ template_name = 'mallard-%s-property.tmpl' % self._language
+ page_id = '%s.%s-%s' % (namespace.name, parent.name, node.name)
+ elif isinstance(node, ast.Signal) and parent is not None:
+ template_name = 'mallard-%s-signal.tmpl' % self._language
+ page_id = '%s.%s-%s' % (namespace.name, parent.name, node.name)
else:
template_name = 'mallard-%s-default.tmpl' % self._language
page_id = '%s.%s' % (namespace.name, node.name)
@@ -109,7 +120,7 @@ class MallardWriter(object):
template_dir = 'unimplemented'
file_name = os.path.join(template_dir, template_name)
- template = Template(filename=file_name)
+ template = Template(filename=file_name, output_encoding='utf-8')
result = template.render(namespace=namespace,
node=node,
format=format,