mirror of
https://gitlab.freedesktop.org/wayland/wayland.git
synced 2025-11-02 09:01:39 -05:00
doc: Auto-generate API methods and classes documentation
There's work to do still for giving a prettier style on the documentation, for instance splitting paragraphs correctly and printing the detailed description of the methods as well. Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
This commit is contained in:
parent
a95aba7fca
commit
c77ba6bebc
2 changed files with 52 additions and 16 deletions
|
|
@ -32,10 +32,20 @@ en-US/ProtocolInterfaces.xml: $(top_srcdir)/protocol/wayland.xml $(srcdir)/proto
|
||||||
$(AM_V_GEN)$(XSLTPROC) $(srcdir)/protocol-interfaces-to-docbook.xsl \
|
$(AM_V_GEN)$(XSLTPROC) $(srcdir)/protocol-interfaces-to-docbook.xsl \
|
||||||
$(top_srcdir)/protocol/wayland.xml > en-US/ProtocolInterfaces.xml
|
$(top_srcdir)/protocol/wayland.xml > en-US/ProtocolInterfaces.xml
|
||||||
|
|
||||||
en-US/WaylandClientAPI.xml: $(top_builddir)/doc/doxygen/xml/wayland-client_8h.xml $(srcdir)/doxygen-to-publican.xsl
|
# WaylandClientAPI.xml is generated after combining all xml in one single file
|
||||||
|
# with the exception of wayland-client_8h.xml that is omitted to not duplicate
|
||||||
|
# the output methods.
|
||||||
|
en-US/WaylandClientAPI.xml: $(top_builddir)/doc/doxygen/xml/index.xml $(srcdir)/doxygen-to-publican.xsl
|
||||||
$(AM_V_GEN)$(MKDIR_P) en-US/images
|
$(AM_V_GEN)$(MKDIR_P) en-US/images
|
||||||
|
$(AM_V_GEN)mv $(top_srcdir)/doc/doxygen/xml/wayland-client_8h.xml \
|
||||||
|
$(top_srcdir)/doc/doxygen/
|
||||||
|
$(AM_V_GEN)$(XSLTPROC) $(top_srcdir)/doc/doxygen/xml/combine.xslt \
|
||||||
|
$(top_srcdir)/doc/doxygen/xml/index.xml > \
|
||||||
|
$(top_srcdir)/doc/doxygen/xml/clientAPI.xml
|
||||||
|
$(AM_V_GEN)mv $(top_srcdir)/doc/doxygen/wayland-client_8h.xml \
|
||||||
|
$(top_srcdir)/doc/doxygen/xml
|
||||||
$(AM_V_GEN)$(XSLTPROC) $(srcdir)/doxygen-to-publican.xsl \
|
$(AM_V_GEN)$(XSLTPROC) $(srcdir)/doxygen-to-publican.xsl \
|
||||||
$(top_builddir)/doc/doxygen/xml/wayland-client_8h.xml > en-US/WaylandClientAPI.xml
|
$(top_builddir)/doc/doxygen/xml/clientAPI.xml > en-US/WaylandClientAPI.xml
|
||||||
|
|
||||||
# Copy the en_US source files into en-US destination
|
# Copy the en_US source files into en-US destination
|
||||||
# This is required for out-of-source-tree build as publican does not allow us
|
# This is required for out-of-source-tree build as publican does not allow us
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,20 @@
|
||||||
|
|
||||||
<section id="sect-Library-Client">
|
<section id="sect-Library-Client">
|
||||||
<title>Client API</title>
|
<title>Client API</title>
|
||||||
<para>Following is the Wayland library interface for clients
|
<para>Following is the Wayland library classes for clients
|
||||||
(<emphasis>libwayland-client</emphasis>). Note that most of the
|
(<emphasis>libwayland-client</emphasis>). Note that most of the
|
||||||
procedures are related with IPC, which is the main responsibility of
|
procedures are related with IPC, which is the main responsibility of
|
||||||
the library.
|
the library.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<variablelist>
|
||||||
|
<xsl:apply-templates select="/doxygen/compounddef" />
|
||||||
|
</variablelist>
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>And methods for the respective classes.</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
<variablelist>
|
<variablelist>
|
||||||
<xsl:apply-templates select="/doxygen/compounddef/sectiondef/memberdef" />
|
<xsl:apply-templates select="/doxygen/compounddef/sectiondef/memberdef" />
|
||||||
|
|
@ -27,20 +35,38 @@
|
||||||
</section>
|
</section>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template match="memberdef" >
|
|
||||||
<xsl:if test="@kind = 'function'">
|
|
||||||
<varlistentry>
|
|
||||||
|
|
||||||
<term>
|
<!-- methods -->
|
||||||
<xsl:value-of select="name" />
|
<xsl:template match="memberdef" >
|
||||||
</term>
|
<xsl:if test="@kind = 'function' and @static = 'no'">
|
||||||
<listitem>
|
<varlistentry>
|
||||||
<para>
|
<term>
|
||||||
<xsl:value-of select="briefdescription" />
|
<xsl:value-of select="name" />
|
||||||
</para>
|
- <xsl:value-of select="briefdescription" />
|
||||||
</listitem>
|
</term>
|
||||||
</varlistentry>
|
<listitem>
|
||||||
</xsl:if>
|
<para></para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<!-- classes -->
|
||||||
|
<xsl:template match="compounddef" >
|
||||||
|
<xsl:if test="@kind = 'class' ">
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
<xsl:value-of select="compoundname" />
|
||||||
|
<xsl:if test="briefdescription">
|
||||||
|
- <xsl:value-of select="briefdescription" />
|
||||||
|
</xsl:if>
|
||||||
|
</term>
|
||||||
|
|
||||||
|
<!-- TODO: the output text is not splitting paragraphs correctly -->
|
||||||
|
<listitem>
|
||||||
|
<para><xsl:value-of select="detaileddescription"/></para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</xsl:if>
|
||||||
|
</xsl:template>
|
||||||
</xsl:stylesheet>
|
</xsl:stylesheet>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue