changeset 111:8feb89b19619

More doxy
author Thinker K.F. Li <thinker@branda.to>
date Fri, 12 Sep 2008 23:43:11 +0800
parents c14cb6d12030
children abb5511c23f7
files README.h dox/arch.h img/core.gaphor img/core.png src/animate.c src/mb.h
diffstat 6 files changed, 64 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/README.h	Fri Sep 12 15:31:10 2008 +0800
+++ b/README.h	Fri Sep 12 23:43:11 2008 +0800
@@ -29,9 +29,11 @@
  * - \ref install
  * - \ref first_program
  * - \ref mb_clutter
+ * - \ref archi
+ * - \ref ani
  * - More information in "Related Pages" tab.
  *
  * \section repos Repository
- * - http://hg.assembla.com/MadButterfly
+ * - hg clone http://hg.assembla.com/MadButterfly MadButterfly
  *
  */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dox/arch.h	Fri Sep 12 23:43:11 2008 +0800
@@ -0,0 +1,37 @@
+/*! \page archi Internal Architecture
+ *
+ * \image html core.png
+ * Above graphic is relationship among major objects of MadButterfly.
+ * \ref redraw_man_t, redraw manager, is supposed to manage graphic elements,
+ * shapes, and decide when and who to redraw on the output screen.
+ *
+ * \ref shape_t is base-type for all graphic objects.  It can be a path,
+ * a text, a ellipse, ..., or an image.  When the states or attributes of
+ * an graphic
+ * object changed, managing redraw_man_t, the one that manages the graphic
+ * object, will be notified.  The redraw_man_t will schedule a redrawing
+ * for every
+ * dirty objects, changed ones, and relative objects.  The relative objects
+ * are objects effected by changed ones.  For example, part of a relative
+ * object may be hidden before changing, but it is re-explored after chaning.
+ * The explored part of the object must be redrawed.
+ *
+ * The shape of shape objects are variable from type to type.  To simplize
+ * the problem, we use a rectangle to model the area occupied by an object.
+ * \ref geo_t is the one used to model the rectangle.  Shape objects should
+ * update associated \ref geo_t objects to reflect changing of them-self.
+ *
+ * \ref coord_t is used to model transformation in coordinate system.
+ * A \ref coord_t is actually an transform matrix with additional
+ * informations.  \ref coord_t
+ * objects are organized as a tree according hierachy of group tags in
+ * a SVG file.
+ *
+ * Colors or patterns used to stroke or fill shapes are described
+ * by \ref paint_t .  Every shape object has a paint, but a paint object
+ * can be used by multiple shape objects.  Once a paint is changed, all
+ * objects that associate with the paint are dirty.  They will be scheduled
+ * by associated \ref redraw_man_t object to update graphics on
+ * output screen.
+ *
+ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/img/core.gaphor	Fri Sep 12 23:43:11 2008 +0800
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>
+<gaphor version="3.0" gaphor-version="0.13.0"><Package id="DCE:9C711C86-7F0F-11DD-87F8-"><name><val><![CDATA[New model]]></val></name><ownedClassifier><reflist><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref><ref refid="DCE:F0D6677C-7F0F-11DD-87F8-"></ref><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref><ref refid="DCE:0398B982-7F10-11DD-87F8-"></ref><ref refid="DCE:0728AB5C-7F10-11DD-87F8-"></ref><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref><ref refid="DCE:4AA86B8C-7F13-11DD-87F8-"></ref><ref refid="DCE:69F0555C-7F13-11DD-87F8-"></ref><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref><ref refid="DCE:12ACAEE8-7F14-11DD-87F8-"></ref><ref refid="DCE:1E53F84E-7F14-11DD-87F8-"></ref><ref refid="DCE:341467E2-7F14-11DD-87F8-"></ref><ref refid="DCE:43403E8A-7F14-11DD-87F8-"></ref><ref refid="DCE:78450778-7F14-11DD-87F8-"></ref></reflist></ownedClassifier><ownedDiagram><reflist><ref refid="DCE:9C73163A-7F0F-11DD-87F8-"></ref></reflist></ownedDiagram></Package><Diagram id="DCE:9C73163A-7F0F-11DD-87F8-"><name><val><![CDATA[core]]></val></name><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><canvas><item type="ClassItem" id="DCE:EB8EF5EA-7F0F-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 309.0, 118.0)</val></matrix><width><val>100.0</val></width><height><val>50.0</val></height><subject><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref></subject></item><item type="ClassItem" id="DCE:F0D6A19C-7F0F-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 249.0, 237.0)</val></matrix><width><val>100.0</val></width><height><val>51.8125</val></height><subject><ref refid="DCE:F0D6677C-7F0F-11DD-87F8-"></ref></subject></item><item type="ClassItem" id="DCE:F5887742-7F0F-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 420.0, 225.0)</val></matrix><width><val>100.0</val></width><height><val>51.8125</val></height><subject><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref></subject></item><item type="AssociationItem" id="DCE:033C8536-7F10-11DD-87F8-"><subject><ref refid="DCE:0398B982-7F10-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 344.0, 168.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (-57.0, 69.0)]</val></points><head-connection><ref refid="DCE:EB8EF5EA-7F0F-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:F0D6A19C-7F0F-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:0398E356-7F10-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:0399EB2C-7F10-11DD-87F8-"></ref></tail-subject></item><item type="AssociationItem" id="DCE:05F3DAE0-7F10-11DD-87F8-"><subject><ref refid="DCE:0728AB5C-7F10-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 374.0, 168.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (110.0, 57.0)]</val></points><head-connection><ref refid="DCE:EB8EF5EA-7F0F-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:F5887742-7F0F-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:0728BDE0-7F10-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:07294116-7F10-11DD-87F8-"></ref></tail-subject></item><item type="ClassItem" id="DCE:DBCD5F62-7F10-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 248.0, 334.0)</val></matrix><width><val>100.0</val></width><height><val>51.8125</val></height><subject><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></subject></item><item type="AssociationItem" id="DCE:4A2CCDD6-7F13-11DD-87F8-"><subject><ref refid="DCE:4AA86B8C-7F13-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 297.0, 288.8125)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (-1.0, 45.1875)]</val></points><head-connection><ref refid="DCE:F0D6A19C-7F0F-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:4AA87F76-7F13-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:4AA90658-7F13-11DD-87F8-"></ref></tail-subject></item><item type="AssociationItem" id="DCE:689F96B8-7F13-11DD-87F8-"><subject><ref refid="DCE:69F0555C-7F13-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 348.0, 334.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (72.0, -60.0)]</val></points><head-connection><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:F5887742-7F0F-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:69F067D6-7F13-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:69F0E012-7F13-11DD-87F8-"></ref></tail-subject></item><item type="ClassItem" id="DCE:03176E48-7F14-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 427.0, 334.0)</val></matrix><width><val>100.0</val></width><height><val>51.8125</val></height><subject><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref></subject></item><item type="AssociationItem" id="DCE:1147E3B0-7F14-11DD-87F8-"><subject><ref refid="DCE:12ACAEE8-7F14-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 348.0, 360.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (79.0, 1.0)]</val></points><head-connection><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:03176E48-7F14-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:12ACC1D0-7F14-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:12AD38C2-7F14-11DD-87F8-"></ref></tail-subject></item><item type="ClassItem" id="DCE:1E542FA0-7F14-11DD-87F8-"><show-attributes><val>1</val></show-attributes><show-operations><val>1</val></show-operations><drawing-style><val>1</val></drawing-style><matrix><val>(1.0, 0.0, 0.0, 1.0, 430.0, 423.0)</val></matrix><width><val>100.0</val></width><height><val>51.8125</val></height><subject><ref refid="DCE:1E53F84E-7F14-11DD-87F8-"></ref></subject></item><item type="AssociationItem" id="DCE:3308A174-7F14-11DD-87F8-"><subject><ref refid="DCE:341467E2-7F14-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 430.0, 449.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (-82.0, -63.1875)]</val></points><head-connection><ref refid="DCE:1E542FA0-7F14-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:34147AA2-7F14-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:34150922-7F14-11DD-87F8-"></ref></tail-subject></item><item type="AssociationItem" id="DCE:428B1854-7F14-11DD-87F8-"><subject><ref refid="DCE:43403E8A-7F14-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 477.0, 385.8125)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (-1.0, 37.1875)]</val></points><head-connection><ref refid="DCE:03176E48-7F14-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:1E542FA0-7F14-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:4340515E-7F14-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:4340C8AA-7F14-11DD-87F8-"></ref></tail-subject></item><item type="AssociationItem" id="DCE:772CEB62-7F14-11DD-87F8-"><subject><ref refid="DCE:78450778-7F14-11DD-87F8-"></ref></subject><matrix><val>(1.0, 0.0, 0.0, 1.0, 348.0, 377.0)</val></matrix><orthogonal><val>0</val></orthogonal><horizontal><val>0</val></horizontal><points><val>[(0.0, 0.0), (79.0, 0.0)]</val></points><head-connection><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></head-connection><tail-connection><ref refid="DCE:03176E48-7F14-11DD-87F8-"></ref></tail-connection><show-direction><val>0</val></show-direction><head-subject><ref refid="DCE:78451A2E-7F14-11DD-87F8-"></ref></head-subject><tail-subject><ref refid="DCE:78460B50-7F14-11DD-87F8-"></ref></tail-subject></item></canvas></Diagram><Class id="DCE:EB8E5F04-7F0F-11DD-87F8-"><name><val><![CDATA[rdman]]></val></name><ownedAttribute><reflist><ref refid="DCE:07294116-7F10-11DD-87F8-"></ref><ref refid="DCE:0399EB2C-7F10-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:EB8EF5EA-7F0F-11DD-87F8-"></ref></reflist></presentation></Class><Class id="DCE:F0D6677C-7F0F-11DD-87F8-"><name><val><![CDATA[goe_t]]></val></name><ownedAttribute><reflist><ref refid="DCE:4AA90658-7F13-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:F0D6A19C-7F0F-11DD-87F8-"></ref></reflist></presentation></Class><Class id="DCE:F58834DA-7F0F-11DD-87F8-"><name><val><![CDATA[coord_t]]></val></name><ownedAttribute><reflist><ref refid="DCE:0728BDE0-7F10-11DD-87F8-"></ref><ref refid="DCE:69F067D6-7F13-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:F5887742-7F0F-11DD-87F8-"></ref></reflist></presentation></Class><Association id="DCE:0398B982-7F10-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:0398E356-7F10-11DD-87F8-"></ref><ref refid="DCE:0399EB2C-7F10-11DD-87F8-"></ref></reflist></memberEnd><name><val><![CDATA[]]></val></name><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:033C8536-7F10-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:0398E356-7F10-11DD-87F8-"><association><ref refid="DCE:0398B982-7F10-11DD-87F8-"></ref></association><lowerValue><ref refid="DCE:0399525C-7F10-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[gen_geos]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:81C096D6-7F10-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:0399525C-7F10-11DD-87F8-"></LiteralSpecification><Property id="DCE:0399EB2C-7F10-11DD-87F8-"><association><ref refid="DCE:0398B982-7F10-11DD-87F8-"></ref></association><class_><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:039A105C-7F10-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:F0D6677C-7F0F-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:039A105C-7F10-11DD-87F8-"></LiteralSpecification><Association id="DCE:0728AB5C-7F10-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:0728BDE0-7F10-11DD-87F8-"></ref><ref refid="DCE:07294116-7F10-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:05F3DAE0-7F10-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:0728BDE0-7F10-11DD-87F8-"><association><ref refid="DCE:0728AB5C-7F10-11DD-87F8-"></ref></association><class_><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:0728E4FA-7F10-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:0728E4FA-7F10-11DD-87F8-"></LiteralSpecification><Property id="DCE:07294116-7F10-11DD-87F8-"><association><ref refid="DCE:0728AB5C-7F10-11DD-87F8-"></ref></association><class_><ref refid="DCE:EB8E5F04-7F0F-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:07296614-7F10-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:07296614-7F10-11DD-87F8-"></LiteralSpecification><LiteralSpecification id="DCE:81C096D6-7F10-11DD-87F8-"><value><val><![CDATA[*]]></val></value></LiteralSpecification><Class id="DCE:DBCD2482-7F10-11DD-87F8-"><name><val><![CDATA[shape_t]]></val></name><ownedAttribute><reflist><ref refid="DCE:4AA87F76-7F13-11DD-87F8-"></ref><ref refid="DCE:69F0E012-7F13-11DD-87F8-"></ref><ref refid="DCE:12AD38C2-7F14-11DD-87F8-"></ref><ref refid="DCE:78460B50-7F14-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:DBCD5F62-7F10-11DD-87F8-"></ref></reflist></presentation></Class><Association id="DCE:4AA86B8C-7F13-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:4AA87F76-7F13-11DD-87F8-"></ref><ref refid="DCE:4AA90658-7F13-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:4A2CCDD6-7F13-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:4AA87F76-7F13-11DD-87F8-"><association><ref refid="DCE:4AA86B8C-7F13-11DD-87F8-"></ref></association><class_><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:4AA8A744-7F13-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[shape]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:F0D6677C-7F0F-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:53DF705C-7F13-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:4AA8A744-7F13-11DD-87F8-"></LiteralSpecification><Property id="DCE:4AA90658-7F13-11DD-87F8-"><association><ref refid="DCE:4AA86B8C-7F13-11DD-87F8-"></ref></association><class_><ref refid="DCE:F0D6677C-7F0F-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:4AA92C14-7F13-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[geo]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:564488DE-7F13-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:4AA92C14-7F13-11DD-87F8-"></LiteralSpecification><LiteralSpecification id="DCE:53DF705C-7F13-11DD-87F8-"><value><val><![CDATA[1]]></val></value></LiteralSpecification><LiteralSpecification id="DCE:564488DE-7F13-11DD-87F8-"><value><val><![CDATA[1]]></val></value></LiteralSpecification><Association id="DCE:69F0555C-7F13-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:69F067D6-7F13-11DD-87F8-"></ref><ref refid="DCE:69F0E012-7F13-11DD-87F8-"></ref></reflist></memberEnd><name><val><![CDATA[]]></val></name><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:689F96B8-7F13-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:69F067D6-7F13-11DD-87F8-"><association><ref refid="DCE:69F0555C-7F13-11DD-87F8-"></ref></association><class_><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:69F08E8E-7F13-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[coord]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:70B2401C-7F13-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:69F08E8E-7F13-11DD-87F8-"></LiteralSpecification><Property id="DCE:69F0E012-7F13-11DD-87F8-"><association><ref refid="DCE:69F0555C-7F13-11DD-87F8-"></ref></association><class_><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:69F104FE-7F13-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[members]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:F58834DA-7F0F-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:8774F73E-7F13-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:69F104FE-7F13-11DD-87F8-"></LiteralSpecification><LiteralSpecification id="DCE:70B2401C-7F13-11DD-87F8-"><value><val><![CDATA[1]]></val></value></LiteralSpecification><LiteralSpecification id="DCE:8774F73E-7F13-11DD-87F8-"><value><val><![CDATA[*]]></val></value></LiteralSpecification><Class id="DCE:0317364A-7F14-11DD-87F8-"><name><val><![CDATA[paint_t]]></val></name><ownedAttribute><reflist><ref refid="DCE:4340C8AA-7F14-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:03176E48-7F14-11DD-87F8-"></ref></reflist></presentation></Class><Association id="DCE:12ACAEE8-7F14-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:12ACC1D0-7F14-11DD-87F8-"></ref><ref refid="DCE:12AD38C2-7F14-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:1147E3B0-7F14-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:12ACC1D0-7F14-11DD-87F8-"><association><ref refid="DCE:12ACAEE8-7F14-11DD-87F8-"></ref></association><lowerValue><ref refid="DCE:12ACE8B8-7F14-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[fill]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:12ACE8B8-7F14-11DD-87F8-"></LiteralSpecification><Property id="DCE:12AD38C2-7F14-11DD-87F8-"><association><ref refid="DCE:12ACAEE8-7F14-11DD-87F8-"></ref></association><class_><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:12AD5DE8-7F14-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:12AD5DE8-7F14-11DD-87F8-"></LiteralSpecification><Class id="DCE:1E53F84E-7F14-11DD-87F8-"><name><val><![CDATA[shnode_t]]></val></name><ownedAttribute><reflist><ref refid="DCE:34150922-7F14-11DD-87F8-"></ref></reflist></ownedAttribute><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:1E542FA0-7F14-11DD-87F8-"></ref></reflist></presentation></Class><Association id="DCE:341467E2-7F14-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:34147AA2-7F14-11DD-87F8-"></ref><ref refid="DCE:34150922-7F14-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:3308A174-7F14-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:34147AA2-7F14-11DD-87F8-"><association><ref refid="DCE:341467E2-7F14-11DD-87F8-"></ref></association><lowerValue><ref refid="DCE:3414B814-7F14-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[shape]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:1E53F84E-7F14-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:3C013CB4-7F14-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:3414B814-7F14-11DD-87F8-"></LiteralSpecification><Property id="DCE:34150922-7F14-11DD-87F8-"><association><ref refid="DCE:341467E2-7F14-11DD-87F8-"></ref></association><class_><ref refid="DCE:1E53F84E-7F14-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:34152E34-7F14-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:34152E34-7F14-11DD-87F8-"></LiteralSpecification><LiteralSpecification id="DCE:3C013CB4-7F14-11DD-87F8-"></LiteralSpecification><Association id="DCE:43403E8A-7F14-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:4340515E-7F14-11DD-87F8-"></ref><ref refid="DCE:4340C8AA-7F14-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:428B1854-7F14-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:4340515E-7F14-11DD-87F8-"><association><ref refid="DCE:43403E8A-7F14-11DD-87F8-"></ref></association><lowerValue><ref refid="DCE:434078B4-7F14-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[members]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref></type><upperValue><ref refid="DCE:49DD0DA4-7F14-11DD-87F8-"></ref></upperValue></Property><LiteralSpecification id="DCE:434078B4-7F14-11DD-87F8-"></LiteralSpecification><Property id="DCE:4340C8AA-7F14-11DD-87F8-"><association><ref refid="DCE:43403E8A-7F14-11DD-87F8-"></ref></association><class_><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:4340EDDC-7F14-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:1E53F84E-7F14-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:4340EDDC-7F14-11DD-87F8-"></LiteralSpecification><LiteralSpecification id="DCE:49DD0DA4-7F14-11DD-87F8-"><value><val><![CDATA[*]]></val></value></LiteralSpecification><Association id="DCE:78450778-7F14-11DD-87F8-"><memberEnd><reflist><ref refid="DCE:78451A2E-7F14-11DD-87F8-"></ref><ref refid="DCE:78460B50-7F14-11DD-87F8-"></ref></reflist></memberEnd><package><ref refid="DCE:9C711C86-7F0F-11DD-87F8-"></ref></package><presentation><reflist><ref refid="DCE:772CEB62-7F14-11DD-87F8-"></ref></reflist></presentation></Association><Property id="DCE:78451A2E-7F14-11DD-87F8-"><association><ref refid="DCE:78450778-7F14-11DD-87F8-"></ref></association><lowerValue><ref refid="DCE:784541F2-7F14-11DD-87F8-"></ref></lowerValue><name><val><![CDATA[stroke]]></val></name><presentation><reflist></reflist></presentation><type><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:784541F2-7F14-11DD-87F8-"></LiteralSpecification><Property id="DCE:78460B50-7F14-11DD-87F8-"><association><ref refid="DCE:78450778-7F14-11DD-87F8-"></ref></association><class_><ref refid="DCE:DBCD2482-7F10-11DD-87F8-"></ref></class_><lowerValue><ref refid="DCE:784630C6-7F14-11DD-87F8-"></ref></lowerValue><presentation><reflist></reflist></presentation><type><ref refid="DCE:0317364A-7F14-11DD-87F8-"></ref></type></Property><LiteralSpecification id="DCE:784630C6-7F14-11DD-87F8-"></LiteralSpecification></gaphor>
\ No newline at end of file
Binary file img/core.png has changed
--- a/src/animate.c	Fri Sep 12 15:31:10 2008 +0800
+++ b/src/animate.c	Fri Sep 12 23:43:11 2008 +0800
@@ -1,4 +1,9 @@
-/*! \brief Animation tools.
+/*! \file
+ * \brief Animation tools.
+ *
+ * \sa ani
+ */
+/*! \page ani What is Animation?
  *
  * XXX: Program is a sequence of actions duration a perior.
  * Actions are grouped into words.  A program defines
@@ -12,6 +17,12 @@
  * called periodically in duration of playing time start at
  * 'start time'.  When the clock run out the playing time of
  * a word, it call stop of actions in the word.
+ *
+ * A program is driven by a timer.  Once a program is started, it registers
+ * with timer for periodic running.  \ref mb_tman_t is timer of
+ * MadButterfly.  The update frequence is 10fps by default, now.
+ *
+ * \sa animate.c
  */
 #include <stdio.h>
 #include <stdlib.h>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mb.h	Fri Sep 12 23:43:11 2008 +0800
@@ -0,0 +1,10 @@
+#ifndef __MB_H_
+#define __MB_H_
+
+#include "mb_types.h"
+#include "redraw_man.h"
+#include "X_supp.h"
+#include "animate.h"
+#include "shapes.h"
+
+#endif /* __MB_H_ */