mirror of
https://github.com/brl/mutter.git
synced 2024-12-25 12:32:05 +00:00
90b74458d2
Currently, it's just an example and an image, but it should be easy to flesh it out properly for the "Text" chapter.
176 lines
6.0 KiB
XML
176 lines
6.0 KiB
XML
<?xml version='1.0' encoding='UTF-8'?>
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
|
|
<!ENTITY appurl "http://www.clutter-project.org">
|
|
<!ENTITY docurl "http://docs.clutter-project.org/docs/clutter-cookbook">
|
|
<!ENTITY license_url "http://creativecommons.org/licenses/by-nc-sa/2.0/uk/">
|
|
<!ENTITY ebassi_mail "ebassi@linux.intel.com">
|
|
<!ENTITY elliot_mail "elliot.smith@intel.com">
|
|
<!ENTITY apiversion "@CLUTTER_API_VERSION@">
|
|
]>
|
|
|
|
<book lang="en"
|
|
xmlns:xi="http://www.w3.org/2003/XInclude">
|
|
<bookinfo>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Emmanuele</firstname>
|
|
<surname>Bassi</surname>
|
|
<address><email>&ebassi_mail;</email></address>
|
|
</author>
|
|
<author>
|
|
<firstname>Elliot</firstname>
|
|
<surname>Smith</surname>
|
|
<address><email>&elliot_mail;</email></address>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2009, 2010</year>
|
|
<holder>Intel Corporation</holder>
|
|
</copyright>
|
|
<legalnotice>
|
|
<para>Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the <ulink url="&license_url;">Creative
|
|
Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England &
|
|
Wales</ulink> as published by Creative Commons.</para>
|
|
</legalnotice>
|
|
<title>The Clutter Cookbook</title>
|
|
<releaseinfo>for Clutter &apiversion;</releaseinfo>
|
|
</bookinfo>
|
|
|
|
<xi:include href="introduction.xml" />
|
|
<xi:include href="actors.xml" />
|
|
<xi:include href="events.xml" />
|
|
<xi:include href="textures.xml" />
|
|
<xi:include href="animations.xml" />
|
|
<xi:include href="text.xml" />
|
|
|
|
<appendix id="contributing">
|
|
<title>Contributing to this document</title>
|
|
|
|
<para>This document is written in
|
|
<ulink url="http://docbook.org/">Docbook XML</ulink>. The source files
|
|
for this document are located in the subdirectory
|
|
<filename>doc/cookbook</filename> inside the Clutter source directory.</para>
|
|
|
|
<para>To maintain some degree of consistency, try to stick to the
|
|
following broad guidelines about how to write Docbook for this
|
|
cookbook:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>If adding a new recipe, use the
|
|
<filename>recipe-template.xml</filename> XML file as a basis.
|
|
You can find it in the <filename><clutter source>/doc/cookbook/</filename>
|
|
directory.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Try to indent your XML sensibly using 2 spaces per level
|
|
(we're not too strict, but some indentation helps reading
|
|
the source).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Stick to a column width of around 80 characters.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <filename> element for file
|
|
and directory names.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <property> element for property names
|
|
(e.g. GObject properties).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <type> element for GObject class
|
|
names.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <constant> element for C defines.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <keycap> element for keys, where
|
|
you are referring to what's actually printed on the key, e.g.
|
|
<keycap>Shift</keycap>. If you're referring to the key some
|
|
other way (e.g. "the Control key"), don't use
|
|
<keycap>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <function> element for functions;
|
|
the style adopted is to give the function name followed by
|
|
empty brackets, e.g. <function>clutter_actor_set_size()</function>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Use the <note> element for asides which might
|
|
otherwise interrupt the flow of the recipe.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>To include a video in a recipe, do the following:</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Make the video as short as is practical, and only include
|
|
the relevant Clutter window(s).</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Use Ogg Theora for the encoding.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Put the file into the
|
|
<filename><clutter source>/doc/cookbook/videos</filename>
|
|
directory. The name should be in the format
|
|
<filename><section>-<recipe>-<identifier>.ogv</filename>.
|
|
For example: <filename>animations-fading-fade-out.ogv</filename>.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Add the name of the file to the <varname></varname>
|
|
in the cookbook's <filename>Makefile.am</filename>, e.g.</para>
|
|
|
|
<informalexample>
|
|
<programlisting>
|
|
<![CDATA[
|
|
VIDEO_FILES = \
|
|
videos/animations-fading-fade-out.ogv \
|
|
$(NULL)
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
|
|
<para>This ensures it gets included in the distribution and
|
|
installation.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Use an <inlinemediaobject> to include it in the
|
|
Docbook recipe file. It should look something like this:</para>
|
|
|
|
<informalexample>
|
|
<programlisting>
|
|
<![CDATA[
|
|
<inlinemediaobject>
|
|
<videoobject>
|
|
<videodata fileref="videos/cookbook-animations-fading-in-then-out.ogv"/>
|
|
</videoobject>
|
|
<alt>
|
|
<para>Video showing an actor fading in then out using
|
|
<type>ClutterState</type></para>
|
|
</alt>
|
|
</inlinemediaobject>
|
|
]]>
|
|
</programlisting>
|
|
</informalexample>
|
|
|
|
<para>The <alt> tag provides the text which
|
|
is presented as a link to the file for users whose browser
|
|
doesn't support HTML 5 embedded video.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
</appendix>
|
|
|
|
</book>
|