# HG changeset patch # User Thinker K.F. Li # Date 1221234191 -28800 # Node ID 8feb89b1961916bb919605bb2a206923a3b394aa # Parent c14cb6d12030821e1de1b291fadfac396969e206 More doxy diff -r c14cb6d12030 -r 8feb89b19619 README.h --- 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 * */ diff -r c14cb6d12030 -r 8feb89b19619 dox/arch.h --- /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. + * + */ diff -r c14cb6d12030 -r 8feb89b19619 img/core.gaphor --- /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 @@ + +111(1.0, 0.0, 0.0, 1.0, 309.0, 118.0)100.050.0111(1.0, 0.0, 0.0, 1.0, 249.0, 237.0)100.051.8125111(1.0, 0.0, 0.0, 1.0, 420.0, 225.0)100.051.8125(1.0, 0.0, 0.0, 1.0, 344.0, 168.0)00[(0.0, 0.0), (-57.0, 69.0)]0(1.0, 0.0, 0.0, 1.0, 374.0, 168.0)00[(0.0, 0.0), (110.0, 57.0)]0111(1.0, 0.0, 0.0, 1.0, 248.0, 334.0)100.051.8125(1.0, 0.0, 0.0, 1.0, 297.0, 288.8125)00[(0.0, 0.0), (-1.0, 45.1875)]0(1.0, 0.0, 0.0, 1.0, 348.0, 334.0)00[(0.0, 0.0), (72.0, -60.0)]0111(1.0, 0.0, 0.0, 1.0, 427.0, 334.0)100.051.8125(1.0, 0.0, 0.0, 1.0, 348.0, 360.0)00[(0.0, 0.0), (79.0, 1.0)]0111(1.0, 0.0, 0.0, 1.0, 430.0, 423.0)100.051.8125(1.0, 0.0, 0.0, 1.0, 430.0, 449.0)00[(0.0, 0.0), (-82.0, -63.1875)]0(1.0, 0.0, 0.0, 1.0, 477.0, 385.8125)00[(0.0, 0.0), (-1.0, 37.1875)]0(1.0, 0.0, 0.0, 1.0, 348.0, 377.0)00[(0.0, 0.0), (79.0, 0.0)]0 \ No newline at end of file diff -r c14cb6d12030 -r 8feb89b19619 img/core.png Binary file img/core.png has changed diff -r c14cb6d12030 -r 8feb89b19619 src/animate.c --- 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 #include diff -r c14cb6d12030 -r 8feb89b19619 src/mb.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_ */