writer.start_tag ("span", {"class", css_brief_description});
_renderer.set_container (pos);
+ _renderer.set_owner (element);
_renderer.render_children (description.get (0));
+ _renderer.set_owner (null);
writer.end_tag ("span");
}
writer.start_tag ("div", {"class", css_description});
+ _renderer.set_owner (element);
// deprecation warning:
if (deprecated != null) {
_renderer.render (doctree);
}
+
+ _renderer.set_owner (null);
writer.end_tag ("div");
}
/* htmlrenderer.vala
*
- * Copyright (C) 2008-2009 Florian Brosch, Didier Villevalois
+ * Copyright (C) 2008-20012 Florian Brosch, Didier Villevalois
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
public class Valadoc.Html.HtmlRenderer : ContentRenderer {
protected Documentation? _container;
+ protected Documentation? _owner;
protected unowned MarkupWriter writer;
protected Html.CssClassResolver cssresolver;
protected LinkHelper linker;
_container = container;
}
+ public void set_owner (Documentation? owner) {
+ _owner = owner;
+ }
+
public void set_writer (MarkupWriter writer) {
this.writer = writer;
}
}
private void write_resolved_symbol_link (Api.Node symbol, string? given_label) {
- var label = (given_label == null || given_label == "") ? symbol.get_full_name () : given_label;
- var url = get_url (symbol);
- if (url == null) {
- write_unresolved_symbol_link (label);
+ if (symbol == _container || symbol == _owner) {
+ writer.start_tag ("span", {"css", cssresolver.resolve (symbol)}).text (symbol.name).end_tag ("span");
} else {
- writer.link (url, label, cssresolver.resolve (symbol));
+ var label = (given_label == null || given_label == "") ? symbol.get_full_name () : given_label;
+ var url = get_url (symbol);
+ if (url == null) {
+ write_unresolved_symbol_link (label);
+ } else {
+ writer.link (url, label, cssresolver.resolve (symbol));
+ }
}
}