summaryrefslogtreecommitdiff
path: root/doc/templates
diff options
context:
space:
mode:
authorDanielle Madeley <danielle.madeley@collabora.co.uk>2010-02-11 14:55:03 +1100
committerDanielle Madeley <danielle.madeley@collabora.co.uk>2010-02-11 15:41:39 +1100
commitcc900e536d1fc4b1d9f8f98c3297e7007650b0b9 (patch)
tree40a02e78fd576f5007fdea6ba289c8f721f438e8 /doc/templates
parentce83fc29a8a592f732e58559b1ac85f5929bfd7a (diff)
downloadtelepathy-logger-cc900e536d1fc4b1d9f8f98c3297e7007650b0b9.tar.gz
Get org.freedesktop.Telepathy.Logger extension building
Diffstat (limited to 'doc/templates')
-rw-r--r--doc/templates/devhelp.devhelp218
-rw-r--r--doc/templates/errors.html60
-rw-r--r--doc/templates/fullindex.html60
-rw-r--r--doc/templates/generic-types.html59
-rw-r--r--doc/templates/index.html66
-rw-r--r--doc/templates/interface.html424
-rw-r--r--doc/templates/interfaces.html50
-rw-r--r--doc/templates/style.css224
8 files changed, 961 insertions, 0 deletions
diff --git a/doc/templates/devhelp.devhelp2 b/doc/templates/devhelp.devhelp2
new file mode 100644
index 0000000..af327fa
--- /dev/null
+++ b/doc/templates/devhelp.devhelp2
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<book xmlns="http://www.devhelp.net/book" title="$spec.title" name="$name" link="index.html">
+ <chapters>
+#for $interface in $spec.interfaces
+ <sub name="$interface.name" link="$interface.get_url()"/>
+#end for
+ <sub name="Generic Types" link="generic-types.html"/>
+ <sub name="Errors" link="errors.html"/>
+ <sub name="Full Index" link="fullindex.html"/>
+ </chapters>
+ <functions>
+#for $obj in $spec.everything.values() + $spec.types.values() + $spec.errors.values()
+ <keyword type="$obj.devhelp_name" name="$obj.get_title()" link="$obj.get_url()" #slurp
+#if $obj.deprecated: deprecated="true" #slurp
+/>
+#end for
+ </functions>
+</book>
diff --git a/doc/templates/errors.html b/doc/templates/errors.html
new file mode 100644
index 0000000..907d660
--- /dev/null
+++ b/doc/templates/errors.html
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>Errors</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+ <body>
+ <div class="header">
+ <h1>Errors</h1>
+ <a href="index.html">Interface Index</a>
+ (<a href="interfaces.html">Compact</a>)
+ | <a href="#summary">Summary</a>
+ | <a href="#errors">Errors</a>
+ </div>
+ <div class="main">
+ <div class="summary">
+ <a name="summary"></a>
+ <h3>Errors</h3>
+ <table class="summary">
+ #for $error in $spec.errors.values()
+ #if $error.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$error.get_url()">$error.short_name</a></td>
+ <td>
+ #if $error.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ </div>
+
+ <div class="outset errors error">
+ <a name="errors"></a>
+ <h1>Errors</h1>
+ #for $error in $spec.errors.values()
+ <div class="inset error">
+ <a name="$error.name"></a>
+ <span class="permalink">(<a href="$error.get_url()">Permalink</a>)</span>
+ <h2>
+ $error.short_name
+ </h2>
+
+ <div class="indent">
+ <code>$error.name</code>
+ </div>
+
+ $error.get_added()
+ $error.get_deprecated()
+ $error.get_docstring()
+ </div>
+ #end for
+ </div>
+ </div>
+
+ </body>
+</html>
diff --git a/doc/templates/fullindex.html b/doc/templates/fullindex.html
new file mode 100644
index 0000000..2c465e1
--- /dev/null
+++ b/doc/templates/fullindex.html
@@ -0,0 +1,60 @@
+#from itertools import groupby
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>Full Index</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+
+#set $star = []
+#for $item in $spec.everything.values() + $spec.errors.values() + $spec.generic_types
+ #echo $star.append(($item.short_name, $item))
+ #slurp
+#end for
+#echo $star.sort(key = lambda t: t[0].title())
+#slurp
+## one use iterators...
+#set $groups = [ (l, list(g)) for l, g in (groupby($star, key = lambda t: t[0][0].upper())) ]
+#set $letters = set(map(lambda t: t[0], groups))
+
+ <body>
+ <div class="header">
+ <h1>Full Index</h1>
+ <a href="index.html">Interface Index</a>
+ (<a href="interfaces.html">Compact</a>)
+ #for $a in map(chr, xrange(ord('A'), ord('Z')+1))
+ #if $a in $letters
+ | <a href="#$a">$a</a>
+ #else
+ | $a
+ #end if
+ #end for
+ </div>
+
+ <div class="main">
+ <table class="summary">
+ #for l, g in $groups
+ <tr><th colspan="3"><a name="$l"></a>$l</th></tr>
+ #for $n in $g
+ #if $n[1].deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td>
+ <a href="$n[1].get_url()" title="$n[1].get_title()">$n[0]</a>
+ #if $n[1].deprecated: (deprecated)
+ </td>
+ <td>$n[1].get_type_name()</td>
+ <td>
+ #if $n[1].parent.__class__.__name__ == 'Interface': $n[1].parent.name
+ </td>
+ </tr>
+ #end for
+ #end for
+ <table>
+ </div>
+
+ </body>
+</html>
diff --git a/doc/templates/generic-types.html b/doc/templates/generic-types.html
new file mode 100644
index 0000000..0bb209e
--- /dev/null
+++ b/doc/templates/generic-types.html
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>Generic Types</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+ <body>
+ <div class="header">
+ <h1>Generic Types</h1>
+ <a href="index.html">Interface Index</a>
+ (<a href="interfaces.html">Compact</a>)
+ | <a href="#summary">Summary</a>
+ | <a href="#types">Types</a>
+ </div>
+ <div class="main">
+ <div class="summary">
+ <a name="summary"></a>
+ <h3>Generic Types</h3>
+ <table class="summary">
+ #for $type in $spec.generic_types
+ #if $type.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$type.get_url()">$type.short_name</a></td>
+ <td>$type.get_type_name()</td>
+ <td>$type.dbus_type</td>
+ <td>
+ #if $type.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ </div>
+
+ <div class="outset types type">
+ <a name="types"></a>
+ <h1>Generic Types</h1>
+ #for $type in $spec.generic_types
+ <div class="inset type">
+ <a name="$type.name"></a>
+ <span class="permalink">$type.get_type_name() (<a href="$type.get_url()">Permalink</a>)</span>
+ <h2>
+ $type.short_name &mdash; $type.dbus_type
+ </h2>
+
+ $type.get_added()
+ $type.get_deprecated()
+ $type.get_docstring()
+ $type.get_breakdown()
+ </div>
+ #end for
+ </div>
+ </div>
+
+ </body>
+</html>
diff --git a/doc/templates/index.html b/doc/templates/index.html
new file mode 100644
index 0000000..efc38d4
--- /dev/null
+++ b/doc/templates/index.html
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>$spec.title &mdash v$spec.version</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+ <body>
+ <div class="header">
+ <h1>$spec.title</h1>
+ <a href="#interfaces">Interfaces</a>
+ (<a href="interfaces.html">Compact</a>)
+ | <a href="generic-types.html">Generic Types</a>
+ | <a href="errors.html">Errors</a>
+ | <a href="fullindex.html">Full Index</a>
+ </div>
+
+ <div class="main">
+ <h3 class="version">Version $spec.version</h3>
+ <p class="copyrights">
+ #echo '<br/>'.join($spec.copyrights)
+ </p>
+ $spec.license
+
+ <a name="interfaces"></a>
+ <h3>Interfaces</h3>
+ <ul>
+ #def output($items)
+ #for $item in $items
+ #if $item.__class__.__name__ == 'Section'
+ <li class="chapter">$item.short_name</li>
+ $item.get_docstring()
+ <ul>
+ $output($item.items)
+ </ul>
+ #else
+ #if $item.causes_havoc
+ <li class="causes-havoc">
+ #elif $item.deprecated
+ <li class="deprecated">
+ #else
+ <li>
+ #end if
+ <a href="$item.get_url()">$item.name</a>
+ #if $item.causes_havoc
+ (unstable)
+ #elif $item.deprecated
+ (deprecated)
+ #end if
+ </li>
+ #end if
+ #end for
+ #end def
+ $output($spec.items)
+ </ul>
+
+ <a name="other"></a>
+ <h3>Other</h3>
+ <ul>
+ <li><a href="generic-types.html">Generic Types</a></li>
+ <li><a href="errors.html">Errors</a></li>
+ </ul>
+
+ </div>
+ </body>
+</html>
diff --git a/doc/templates/interface.html b/doc/templates/interface.html
new file mode 100644
index 0000000..79c35b2
--- /dev/null
+++ b/doc/templates/interface.html
@@ -0,0 +1,424 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>$interface.name</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+ <body>
+ <div class="header">
+ <h1>Interface $interface.name</h1>
+ <a href="index.html">Interface Index</a>
+ (<a href="interfaces.html">Compact</a>)
+ | <a href="#summary">Summary</a>
+ #if $interface.docstring: | <a href="#description">Description</a>
+ #if $interface.methods: | <a href="#methods">Methods</a>
+ #if $interface.signals: | <a href="#signals">Signals</a>
+ #if $interface.properties: | <a href="#properties">Properties</a>
+ #if $interface.tpproperties: | <a href="#tpproperties">Telepathy Properties</a>
+ #if $interface.contact_attributes: | <a href="#contact-attributes">Contact Attributes</a>
+ #if $interface.handler_capability_tokens: | <a href="#handler-capability-tokens">Handler Capability Tokens</a>
+ #if $interface.types: | <a href="#types">Types</a>
+ </div>
+ <div class="main">
+
+ #if $interface.methods or $interface.signals or $interface.properties or $interface.types or $interface.tpproperties
+ <div class="summary">
+ <a name="summary"></a>
+ #if $interface.methods
+ <h3>Methods</h3>
+ <table class="summary">
+ #for $method in $interface.methods
+ #if $method.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$method.get_url()">$method.short_name</a></td>
+ <td>($method.get_in_args())</td>
+ <td>&#8594;</td>
+ <td>$method.get_out_args()</td>
+ <td>
+ #if $method.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.signals
+ <h3>Signals</h3>
+ <table class="summary">
+ #for $signal in $interface.signals
+ #if $signal.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$signal.get_url()">$signal.short_name</a></td>
+ <td>($signal.get_args())</td>
+ <td>
+ #if $signal.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.properties
+ <h3>Properties</h3>
+ <table class="summary">
+ #for $property in $interface.properties
+ #if $property.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$property.get_url()">$property.short_name</a></td>
+ <td>
+ $property.dbus_type
+ #if $property.type: (<a href="$property.get_type_url()" title="$property.get_type_title()">$property.get_type().short_name</a>)
+ </td>
+ <td>$property.get_access()</td>
+ <td>
+ #if $property.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.tpproperties
+ <h3>Telepathy Properties</h3>
+ <table class="summary">
+ #for $property in $interface.tpproperties
+ <tr class="deprecated">
+ <td><a href="$property.get_url()">$property.short_name</a></td>
+ <td>
+ $property.dbus_type
+ #if $property.type: (<a href="$property.get_type_url()" title="$property.get_type_title()">$property.get_type().short_name</a>)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.contact_attributes
+ <h3>Contact Attributes</h3>
+ <table class="summary">
+ #for $token in $interface.contact_attributes
+ <tr class="contact-attribute">
+ <td><a href="$token.get_url()">$token.name</a></td>
+ <td>
+ $token.dbus_type
+ #if $token.type: (<a href="$token.get_type_url()" title="$token.get_type_title()">$token.get_type().short_name</a>)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.handler_capability_tokens
+ <h3>Handler Capability Tokens</h3>
+ <table class="summary">
+ #for $token in $interface.handler_capability_tokens
+ <tr class="handler-capability-token">
+ <td><a href="$token.get_url()">$token.name</a>
+ #if $token.is_family
+ (etc.)
+ #end if
+ </td>
+ <td>
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+
+ #if $interface.types
+ <h3>Types</h3>
+ <table class="summary">
+ #for $type in $interface.types
+ #if type.deprecated
+ <tr class="deprecated">
+ #else
+ <tr>
+ #end if
+ <td><a href="$type.get_url()">$type.short_name</a></td>
+ <td>$type.get_type_name()</td>
+ <td>$type.dbus_type</td>
+ <td>
+ #if $type.deprecated: (deprecated)
+ </td>
+ </tr>
+ #end for
+ </table>
+ #end if
+ </div>
+ #end if
+
+ #if $interface.causes_havoc
+ <div class="havoc"><span class="warning">WARNING:</span>
+ This interface is $interface.causes_havoc and is likely to cause havoc
+ to your API/ABI if bindings are generated. Do not include this interface
+ in libraries that care about compatibility.
+ </div>
+ #end if
+ $interface.get_added()
+ $interface.get_changed()
+ $interface.get_deprecated()
+
+ #if $interface.requires
+ <div class="requires">
+ Objects implementing this interface must also implement:
+ <ul>
+ #for $req in $interface.get_requires()
+ <li><a href="$req.get_url()" title="$req.get_title()">$req.name</a></li>
+ #end for
+ </ul>
+ </div>
+ #end if
+
+ #if $interface.docstring
+ <a name="description"></a>
+ <h3>Description</h3>
+ $interface.get_docstring()
+ #end if
+
+ #if $interface.methods
+ <div class="outset methods method">
+ <a name="methods"></a>
+ <h1>Methods</h1>
+ #for $method in $interface.methods
+ <div class="inset method">
+ <a name="$method.name"></a>
+ <span class="permalink">(<a href="$method.get_url()">Permalink</a>)</span>
+ <h2>$method.short_name ($method.get_in_args()) &#8594; $method.get_out_args()</h2>
+
+ $method.get_added()
+ $method.get_changed()
+ $method.get_deprecated()
+
+ #if $method.in_args
+ <div class="indent">
+ <h3>Parameters</h3>
+ <ul>
+ #for $arg in $method.in_args
+ <li>
+ $arg.short_name &mdash; $arg.dbus_type
+ #if $arg.get_type(): (<a href="$arg.get_type_url()" title="$arg.get_type_title()">$arg.get_type().short_name</a>)
+ </li>
+ $arg.get_added()
+ $arg.get_changed()
+ $arg.get_deprecated()
+ $arg.get_docstring()
+ #end for
+ </ul>
+ </div>
+ #end if
+
+ #if $method.out_args
+ <div class="indent">
+ <h3>Returns</h3>
+ <ul>
+ #for $arg in $method.out_args
+ <li>
+ $arg.short_name &mdash; $arg.dbus_type
+ #if $arg.get_type(): (<a href="$arg.get_type_url()" title="$arg.get_type_title()">$arg.get_type().short_name</a>)
+ </li>
+ $arg.get_added()
+ $arg.get_changed()
+ $arg.get_deprecated()
+ $arg.get_docstring()
+ #end for
+ </ul>
+ </div>
+ #end if
+
+ $method.get_docstring()
+
+ #if $method.possible_errors
+ <hr/>
+ <div class="indent">
+ <h3>Possible Errors</h3>
+ <ul>
+ #for $error in $method.possible_errors
+ <li><a href="$error.get_url()" title="$error.get_title()">$error.get_error().short_name</a></li>
+ $error.get_added()
+ $error.get_changed()
+ $error.get_deprecated()
+ $error.get_docstring()
+ #end for
+ </ul>
+ </div>
+ #end if
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.signals
+ <div class="outset signals signal">
+ <a name="signals"></a>
+ <h1>Signals</h1>
+ #for $signal in $interface.signals
+ <div class="inset signal">
+ <a name="$signal.name"></a>
+ <span class="permalink">(<a href="$signal.get_url()">Permalink</a>)</span>
+ <h2>$signal.short_name ($signal.get_args())</h2>
+
+ $signal.get_added()
+ $signal.get_changed()
+ $signal.get_deprecated()
+
+ #if $signal.args
+ <div class="indent">
+ <h3>Parameters</h3>
+ <ul>
+ #for $arg in $signal.args
+ <li>
+ $arg.short_name &mdash; $arg.dbus_type
+ #if $arg.get_type(): (<a href="$arg.get_type_url()" title="$arg.get_type_title()">$arg.get_type().short_name</a>)
+ </li>
+ $arg.get_added()
+ $arg.get_changed()
+ $arg.get_deprecated()
+ $arg.get_docstring()
+ #end for
+ </ul>
+ </div>
+ #end if
+
+ $signal.get_docstring()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.properties
+ <div class="outset properties property">
+ <a name="properties"></a>
+ <h1>Properties</h1>
+ <div>
+ Accessed using the org.freedesktop.DBus.Properties interface.
+ </div>
+ #for $property in $interface.properties
+ <div class="inset property">
+ <a name="$property.name"></a>
+ <span class="permalink">(<a href="$property.get_url()">Permalink</a>)</span>
+ <h2>
+ $property.short_name &mdash; $property.dbus_type
+ #if $property.type: (<a href="$property.get_type_url()" title="$property.get_type_title()">$property.get_type().short_name</a>)
+ </h2>
+ <div class="access">$property.get_access()</div>
+
+ $property.get_added()
+ $property.get_changed()
+ $property.get_deprecated()
+ $property.get_docstring()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.tpproperties
+ <div class="outset tpproperties tpproperty">
+ <a name="tpproperties"></a>
+ <h1>Telepathy Properties</h1>
+ <div>
+ Accessed using the org.freedesktop.Telepathy.Properties interface.
+ </div>
+ #for $property in $interface.tpproperties
+ <div class="inset tpproperty">
+ <a name="$property.name"></a>
+ <span class="permalink">(<a href="$property.get_url()">Permalink</a>)</span>
+ <h2>
+ $property.short_name &mdash; $property.dbus_type
+ #if $property.type: (<a href="$property.get_type_url()" title="$property.get_type_title()">$property.get_type().short_name</a>)
+ </h2>
+ $property.get_added()
+ $property.get_changed()
+ $property.get_deprecated()
+ $property.get_docstring()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.contact_attributes
+ <div class="outset contact-attributes">
+ <a name="contact-attributes"></a>
+ <h1>Contact Attributes</h1>
+ <div>
+ Attributes that a contact can have, accessed with the
+ org.freedesktop.Telepathy.Connection.Interface.Contacts interface.
+ </div>
+ #for $token in $interface.contact_attributes
+ <div class="inset contact-attribute">
+ <a name="$token.name"></a>
+ <span class="permalink">(<a href="$token.get_url()">Permalink</a>)</span>
+ <h2>
+ $token.name &mdash; $token.dbus_type
+ #if $token.type: (<a href="$token.get_type_url()" title="$token.get_type_title()">$token.get_type().short_name</a>)
+ </h2>
+ $token.get_added()
+ $token.get_changed()
+ $token.get_deprecated()
+ $token.get_docstring()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.handler_capability_tokens
+ <div class="outset handler-capability-tokens">
+ <a name="handler-capability-tokens"></a>
+ <h1>Handler Capability Tokens</h1>
+ <div>
+ Tokens representing capabilities that a Client.Handler can have.
+ </div>
+ #for $token in $interface.handler_capability_tokens
+ <div class="inset handler-capability-token">
+ <a name="$token.name"></a>
+ <span class="permalink">(<a href="$token.get_url()">Permalink</a>)</span>
+ <h2>
+ $token.name
+ #if $token.is_family
+ (etc.)
+ #end if
+ </h2>
+ $token.get_added()
+ $token.get_changed()
+ $token.get_deprecated()
+ $token.get_docstring()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ #if $interface.types
+ <div class="outset types type">
+ <a name="types"></a>
+ <h1>Types</h1>
+ #for $type in $interface.types
+ <div class="inset type">
+ <a name="$type.name"></a>
+ <span class="permalink">$type.get_type_name() (<a href="$type.get_url()">Permalink</a>)</span>
+ <h2>
+ $type.short_name &mdash; $type.dbus_type
+ </h2>
+
+ $type.get_added()
+ $type.get_changed()
+ $type.get_deprecated()
+ $type.get_docstring()
+ $type.get_breakdown()
+ </div>
+ #end for
+ </div>
+ #end if
+
+ </div>
+
+ </body>
+</html>
diff --git a/doc/templates/interfaces.html b/doc/templates/interfaces.html
new file mode 100644
index 0000000..a93334c
--- /dev/null
+++ b/doc/templates/interfaces.html
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" "">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
+ <head>
+ <title>$spec.title &mdash v$spec.version</title>
+ <link rel="stylesheet" href="style.css" type="text/css"/>
+ </head>
+ <body>
+ <div class="header">
+ <h1>$spec.title</h1>
+ <a href="index.html">Full</a>
+ | <a href="generic-types.html">Generic Types</a>
+ | <a href="errors.html">Errors</a>
+ | <a href="fullindex.html">Full Index</a>
+ </div>
+
+ <div class="main">
+ <b>Version $spec.version</b>
+
+ <a name="interfaces"></a>
+ <h3>Interfaces</h3>
+ <ul>
+ #for $interface in $spec.interfaces
+ #if $interface.causes_havoc
+ <li class="causes-havoc">
+ #elif $interface.deprecated
+ <li class="deprecated">
+ #else
+ <li>
+ #end if
+ <a href="$interface.get_url()">$interface.name</a>
+ #if $interface.causes_havoc
+ (unstable)
+ #elif $interface.deprecated
+ (deprecated)
+ #end if
+ </li>
+ #end for
+ </ul>
+
+ <a name="other"></a>
+ <h3>Other</h3>
+ <ul>
+ <li><a href="generic-types.html">Generic Types</a></li>
+ <li><a href="errors.html">Errors</a></li>
+ </ul>
+
+ </div>
+ </body>
+</html>
diff --git a/doc/templates/style.css b/doc/templates/style.css
new file mode 100644
index 0000000..964d88b
--- /dev/null
+++ b/doc/templates/style.css
@@ -0,0 +1,224 @@
+html, body,
+h1, h2 {
+ margin: 0;
+ padding: 0;
+}
+
+h3 {
+ margin-top: 2pt;
+ margin-bottom: 2pt;
+}
+
+ul {
+ margin: 1ex;
+ margin-left: 1.5em;
+ padding: 0;
+}
+
+hr {
+ border-style: none;
+ color: #cccccc;
+ background-color: #cccccc;
+ height: 1px;
+}
+
+div.header {
+ position: fixed;
+ height: 4em;
+ background-color: white;
+ width: 100%;
+ margin: 0;
+ padding: 0.5ex;
+ border-bottom: 1px solid black;
+ top: 0;
+ left: 0;
+ z-index: 1;
+}
+
+div.header h1 {
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+
+div.main {
+ margin-top: 5em;
+ margin-left: 1ex;
+ margin-right: 1ex;
+ margin-bottom: 1ex;
+}
+
+div.main a[name] {
+ position: relative;
+ top: -4.5em;
+}
+
+div.outset {
+ padding: 1ex;
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+}
+
+div.inset {
+ background-color: white;
+ margin-top: 1ex;
+ margin-bottom: 1ex;
+ padding: 0.5ex;
+}
+
+div.indent {
+ margin-left: 1em;
+}
+
+div.methods {
+ background-color: #fcaf3e;
+}
+
+div.method {
+ border: 1px solid #f57900;
+}
+
+div.signals {
+ background-color: #729fcf;
+}
+
+div.signal {
+ border: 1px solid #3465a4;
+}
+
+div.properties {
+ background-color: #ad7fa8;
+}
+
+div.property {
+ border: 1px solid #75507b;
+}
+
+div.tpproperties {
+ background-color: #999999;
+}
+
+div.tpproperty {
+ border: 1px solid #333333;
+}
+
+div.contact-attributes {
+ background-color: #ccccff;
+ border: 1px solid #9999cc;
+}
+
+div.contact-attribute {
+ border: 1px solid #9999cc;
+}
+
+div.handler-capability-tokens {
+ background-color: #339933;
+ border: 1px solid #228822;
+}
+
+div.handler-capability-token {
+ border: 1px solid #228822;
+}
+
+div.types {
+ background-color: #e9b96e;
+}
+
+div.type {
+ border: 1px solid #c17d11;
+}
+
+div.errors {
+ background-color: #ef2929;
+}
+
+div.error {
+ border: 1px solid #cc0000;
+}
+
+div.access {
+ font-weight: bold;
+ margin-left: 1ex;
+}
+
+div.summary {
+ padding: 0.5ex;
+ background-color: #eeeeec;
+ border: 1px solid #d3d7cf;
+}
+
+table.summary {
+ margin: 1ex;
+ font-size: small;
+}
+
+table.summary td {
+ padding-right: 1ex;
+}
+
+li.chapter {
+ margin-top: 1ex;
+ font-weight: bold;
+}
+
+li.causes-havoc {
+ font-style: italic;
+}
+
+li.deprecated,
+li.deprecated a,
+table.summary tr.deprecated td,
+table.summary tr.deprecated td a {
+ color: gray;
+}
+
+div.requires,
+div.docstring {
+ margin: 1ex;
+}
+
+div.added {
+ border-left: 2px solid #4e9a06;
+ margin: 1ex;
+ padding-left: 1ex;
+}
+
+div.added span.version {
+ color: #4e9a06;
+ font-weight: bold;
+}
+
+div.changed {
+ border-left: 2px solid #8f5902;
+ margin: 1ex;
+ padding-left: 1ex;
+}
+
+div.changed span.version {
+ color: #8f5902;
+ font-weight: bold;
+}
+
+div.deprecated,
+div.havoc {
+ border-left: 2px solid #a40000;
+ margin: 1ex;
+ padding-left: 1ex;
+}
+
+div.deprecated span.version,
+span.warning {
+ color: #a40000;
+ font-weight: bold;
+}
+
+div.rationale {
+ border-left: 2px solid gray;
+ margin: 1ex;
+ padding-left: 1ex;
+}
+
+span.permalink {
+ float: right;
+ font-size: x-small;
+}