valadoc r11 - trunk/src/doclets/htmlhelpers
- From: flobrosch svn gnome org
- To: svn-commits-list gnome org
- Subject: valadoc r11 - trunk/src/doclets/htmlhelpers
- Date: Wed, 5 Nov 2008 02:28:38 +0000 (UTC)
Author: flobrosch
Date: Wed Nov 5 02:28:38 2008
New Revision: 11
URL: http://svn.gnome.org/viewvc/valadoc?rev=11&view=rev
Log:
- html-doclet, valadoc.org-doclet_
- Various navigation improvements.
Modified:
trunk/src/doclets/htmlhelpers/htmlhelpers.vala
Modified: trunk/src/doclets/htmlhelpers/htmlhelpers.vala
==============================================================================
--- trunk/src/doclets/htmlhelpers/htmlhelpers.vala (original)
+++ trunk/src/doclets/htmlhelpers/htmlhelpers.vala Wed Nov 5 02:28:38 2008
@@ -648,7 +648,8 @@
file.printf ( "<ul class=\"%s\">\n\t\t<li class=\"%s\"><a class=\"%s\" href=\"%s\">Packages</a></li>\n</ul>\n<hr class=\"%s\">\n", css_navi, css_navi_package_index, css_navi_link, link, css_navi_hr );
}
- protected abstract void write_top_element ( GLib.FileStream file, Basic pos );
+ protected virtual void write_top_element ( GLib.FileStream file, Basic pos ) {
+ }
protected void write_top_elements ( GLib.FileStream file, Basic element, Basic? mself ) {
Gee.ArrayList<Basic> lst = new Gee.ArrayList<Basic> ();
@@ -668,7 +669,9 @@
for ( int i = lst.size-1; i >= 0 ; i-- ) {
Basic el = lst.get ( i );
- this.write_navi_top_entry ( file, el, mself );
+ if ( el.name != null ) {
+ this.write_navi_top_entry ( file, el, mself );
+ }
}
}
@@ -681,24 +684,40 @@
}
}
- protected void write_navi_file ( GLib.FileStream file, Package efile ) {
+ protected void write_navi_file ( GLib.FileStream file, Package efile, Basic? pos = null ) {
Gee.ArrayList<Namespace> ns_list = new Gee.ArrayList<Namespace> ();
this.fetch_subnamespace_names (efile, ns_list );
+
file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
- this.write_top_element_template ( file, "../index.html" );
+
+
+ if ( pos == null )
+ this.write_top_elements ( file, efile, efile );
+ else
+ this.write_top_elements ( file, pos.parent.parent, pos );
+
file.printf ( "\t\t\t\t<ul class=\"%s\">\n", css_navi );
+
+ Namespace globals;
+
foreach ( Namespace ns in ns_list ) {
- this.write_navi_entry ( file, ns, efile, css_navi_namespace, true, true );
+ if ( ns.name == null )
+ globals = ns;
+ else
+ this.write_navi_entry ( file, ns, (pos == null)? efile : pos, css_navi_namespace, true, true );
+ }
+
+ if ( globals != null ) {
+ this.write_navi_child_namespaces_inline_withouth_block ( file, globals, (pos == null)? efile : pos );
}
file.puts ( "\t\t\t\t</ul>\n" );
file.puts ( "\t\t\t</div>\n" );
}
- protected void write_navi_child_namespaces_inline ( GLib.FileStream file, Namespace ns, Basic mself ) {
- file.printf ( "<ul class=\"%s\">\n", css_navi );
+ protected void write_navi_child_namespaces_inline_withouth_block ( GLib.FileStream file, Namespace ns, Basic mself ) {
this.write_navi_child_namespaces_without_childs ( file, ns, mself );
this.write_navi_child_classes_without_childs ( file, ns, mself );
this.write_navi_child_interfaces_without_childs ( file, ns, mself );
@@ -709,6 +728,11 @@
this.write_navi_child_methods ( file, ns, mself );
this.write_navi_child_fields ( file, ns, mself );
this.write_navi_child_constants ( file, ns, mself );
+ }
+
+ protected void write_navi_child_namespaces_inline ( GLib.FileStream file, Namespace ns, Basic mself ) {
+ file.printf ( "<ul class=\"%s\">\n", css_navi );
+ this.write_navi_child_namespaces_inline_withouth_block ( file, ns, mself );
file.puts ( "</ul>\n" );
}
@@ -820,24 +844,29 @@
protected void write_navi_method ( GLib.FileStream file, Method m ) {
Basic parent = m.parent;
- file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
+ if ( parent.name == null ) {
+ this.write_navi_file ( file, (Package)parent.parent, m );
+ }
+ else {
+ file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
- this.write_top_elements ( file, parent, m );
+ this.write_top_elements ( file, parent, m );
- if ( parent is Class )
- this.write_navi_class_inline ( file, (Class)parent, m );
- else if ( m.parent is Interface )
- this.write_navi_interface_inline ( file, (Interface)parent, m );
- else if ( m.parent is Struct )
- this.write_navi_struct_inline ( file, (Struct)parent, m );
- else if ( m.parent is Enum )
- this.write_navi_enum_inline ( file, (Enum)parent, m );
- else if ( m.parent is ErrorDomain )
- this.write_navi_error_domain_inline ( file, (ErrorDomain)parent, m );
- else if ( m.parent is Namespace )
- this.write_navi_child_namespaces_inline ( file, (Namespace)parent, m );
+ if ( parent is Class )
+ this.write_navi_class_inline ( file, (Class)parent, m );
+ else if ( m.parent is Interface )
+ this.write_navi_interface_inline ( file, (Interface)parent, m );
+ else if ( m.parent is Struct )
+ this.write_navi_struct_inline ( file, (Struct)parent, m );
+ else if ( m.parent is Enum )
+ this.write_navi_enum_inline ( file, (Enum)parent, m );
+ else if ( m.parent is ErrorDomain )
+ this.write_navi_error_domain_inline ( file, (ErrorDomain)parent, m );
+ else if ( m.parent is Namespace )
+ this.write_navi_child_namespaces_inline ( file, (Namespace)parent, m );
- file.puts ( "\t\t\t</div>\n" );
+ file.puts ( "\t\t\t</div>\n" );
+ }
}
protected void write_navi_property ( GLib.FileStream file, Property prop ) {
@@ -872,53 +901,68 @@
protected void write_navi_constant ( GLib.FileStream file, Constant c ) {
Basic parent = c.parent;
- file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
- this.write_top_elements ( file, parent, c );
-
- if ( parent is Class )
- this.write_navi_class_inline ( file, (Class)parent, c );
- else if ( parent is Struct )
- this.write_navi_struct_inline ( file, (Struct)parent, c );
- else if ( parent is Namespace )
- this.write_navi_child_namespaces_inline ( file, (Namespace)parent, c );
- //else if ( parent is Interface )
- // this.write_navi_interface_inline ( file, (Interface)parent, c );
+ if ( parent.name == null ) {
+ this.write_navi_file ( file, (Package)parent.parent, c );
+ }
+ else {
+ file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
+ this.write_top_elements ( file, parent, c );
+
+ if ( parent is Class )
+ this.write_navi_class_inline ( file, (Class)parent, c );
+ else if ( parent is Struct )
+ this.write_navi_struct_inline ( file, (Struct)parent, c );
+ else if ( parent is Namespace )
+ this.write_navi_child_namespaces_inline ( file, (Namespace)parent, c );
+ //else if ( parent is Interface )
+ // this.write_navi_interface_inline ( file, (Interface)parent, c );
- file.puts ( "\t\t\t</div>\n" );
+ file.puts ( "\t\t\t</div>\n" );
+ }
}
protected void write_navi_field ( GLib.FileStream file, Field f ) {
Basic parent = f.parent;
- file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
- this.write_top_elements ( file, parent, f );
-
- if ( parent is Class )
- this.write_navi_class_inline ( file, (Class)parent, f );
- else if ( parent is Struct )
- this.write_navi_struct_inline ( file, (Struct)parent, f );
- else if ( parent is Namespace )
- this.write_navi_child_namespaces_inline ( file, (Namespace)parent, f );
- else if ( parent is Interface )
- this.write_navi_interface_inline ( file, (Interface)parent, f );
+ if ( parent.name == null ) {
+ this.write_navi_file ( file, (Package)parent.parent, f );
+ }
+ else {
+ file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
+ this.write_top_elements ( file, parent, f );
+
+ if ( parent is Class )
+ this.write_navi_class_inline ( file, (Class)parent, f );
+ else if ( parent is Struct )
+ this.write_navi_struct_inline ( file, (Struct)parent, f );
+ else if ( parent is Namespace )
+ this.write_navi_child_namespaces_inline ( file, (Namespace)parent, f );
+ else if ( parent is Interface )
+ this.write_navi_interface_inline ( file, (Interface)parent, f );
- file.puts ( "\t\t\t</div>\n" );
+ file.puts ( "\t\t\t</div>\n" );
+ }
}
protected void write_navi_delegate ( GLib.FileStream file, Delegate del ) {
Basic parent = del.parent;
- file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
- this.write_top_elements ( file, parent, del );
-
- if ( parent is Namespace )
- this.write_navi_child_namespaces_inline ( file, (Namespace)parent, del );
- else if ( parent is Class )
- this.write_navi_class_inline ( file, (Class)parent, del );
- else if ( parent is Interface )
- this.write_navi_interface_inline ( file, (Interface)parent, del );
+ if ( parent.name == null ) {
+ this.write_navi_file ( file, (Package)parent.parent, del );
+ }
+ else {
+ file.printf ( "\t\t\t<div class=\"%s\">\n", css_style_navigation );
+ this.write_top_elements ( file, parent, del );
+
+ if ( parent is Namespace )
+ this.write_navi_child_namespaces_inline ( file, (Namespace)parent, del );
+ else if ( parent is Class )
+ this.write_navi_class_inline ( file, (Class)parent, del );
+ else if ( parent is Interface )
+ this.write_navi_interface_inline ( file, (Interface)parent, del );
- file.puts ( "\t\t\t</div>\n" );
+ file.puts ( "\t\t\t</div>\n" );
+ }
}
protected void write_navi_child_methods_collection ( GLib.FileStream file, Gee.Collection<Method> methods, Basic mself ) {
@@ -1248,6 +1292,7 @@
file.printf ( "\n\t\t\t\t<h2 class=\"%s\">Content:</h2>\n", css_title );
this.write_child_enum_values ( file, en );
+ this.write_child_static_methods ( file, en );
this.write_child_methods ( file, en );
file.puts ( "\t\t\t</div>\n" );
}
@@ -1273,10 +1318,36 @@
protected void write_child_methods ( GLib.FileStream file, MethodHandler mh ) {
Gee.ReadOnlyCollection<Method> methods = mh.get_method_list ();
- if ( methods.size > 0 ) {
+
+ Gee.ArrayList<Method> imethods = new Gee.ArrayList<Method> ( );
+ foreach ( Method m in methods ) {
+ if ( !m.is_static )
+ imethods.add ( m );
+ }
+
+ if ( imethods.size > 0 ) {
file.printf ( "<h3 class=\"%s\">Methods:</h3>\n", css_title );
file.printf ( "<ul class=\"%s\">\n", css_inline_navigation );
- foreach ( Method m in methods ) {
+ foreach ( Method m in imethods ) {
+ file.printf ( "\t<li class=\"%s\"><a class=\"%s\" href=\"%s\">%s</a></li>\n", css_inline_navigation_method, css_navi_link, this.get_link(m, mh), m.name );
+ }
+ file.puts ( "</ul>\n" );
+ }
+ }
+
+ protected void write_child_static_methods ( GLib.FileStream file, MethodHandler mh ) {
+ Gee.ReadOnlyCollection<Method> methods = mh.get_method_list ();
+
+ Gee.ArrayList<Method> static_methods = new Gee.ArrayList<Method> ( );
+ foreach ( Method m in methods ) {
+ if ( m.is_static )
+ static_methods.add ( m );
+ }
+
+ if ( static_methods.size > 0 ) {
+ file.printf ( "<h3 class=\"%s\">Static Methods:</h3>\n", css_title );
+ file.printf ( "<ul class=\"%s\">\n", css_inline_navigation );
+ foreach ( Method m in static_methods ) {
file.printf ( "\t<li class=\"%s\"><a class=\"%s\" href=\"%s\">%s</a></li>\n", css_inline_navigation_method, css_navi_link, this.get_link(m, mh), m.name );
}
file.puts ( "</ul>\n" );
@@ -1300,6 +1371,7 @@
}
file.printf ( "\n\t\t\t\t<h2 class=\"%s\">Content:</h2>\n", css_title );
this.write_child_construction_methods ( file, cl );
+ this.write_child_static_methods ( file, cl );
this.write_child_classes ( file, cl );
this.write_child_structs ( file, cl );
this.write_child_enums ( file, cl );
@@ -1328,6 +1400,7 @@
this.write_package_note ( file, iface );
}
file.printf ( "\t\t\t\t<h2 class=\"%s\">Content:</h2>\n", css_title );
+ this.write_child_static_methods ( file, iface );
this.write_child_classes ( file, iface );
this.write_child_structs ( file, iface );
this.write_child_delegates ( file, iface );
@@ -1351,6 +1424,7 @@
}
file.printf ( "\n\t\t\t\t<h2 class=\"%s\">Content:</h2>\n", css_title );
this.write_child_error_values ( file, errdom );
+ this.write_child_static_methods ( file, errdom );
this.write_child_methods ( file, errdom );
file.puts ( "\t\t\t</div>\n" );
}
@@ -1372,6 +1446,7 @@
this.langlet.write_struct ( stru, file );
file.printf ( "\n\t\t\t\t</div>\n" );
this.write_child_construction_methods ( file, stru );
+ this.write_child_static_methods ( file, stru );
this.write_child_methods ( file, stru );
this.write_child_fields ( file, stru );
this.write_child_constants ( file, stru );
@@ -1536,7 +1611,7 @@
}
- protected void write_file_header ( GLib.FileStream file, string css, string title ) {
+ protected void write_file_header ( GLib.FileStream file, string css, string? title ) {
file.puts ( "<html>\n" );
file.puts ( "\t<head>\n" );
file.puts ( "\t\t<title>Vala Binding Reference</title>\n" );
@@ -1545,7 +1620,7 @@
file.puts ( "\t<body>\n\n" );
file.printf ( "\t<div class=\"%s\">\n", css_site_header );
- file.printf ( "\t\t%s Reference Manual\n", title );
+ file.printf ( "\t\t%s Reference Manual\n", (title == null)? "" : title );
file.puts ( "\t</div>\n\n" );
file.printf ( "\t\t<div class=\"%s\">\n", css_style_body );
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]