Mercurial > MadButterfly
comparison include/mb_redraw_man.h @ 235:65cabbdd5284
termporary revision
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Thu, 25 Dec 2008 18:40:27 +0800 |
parents | 527894c2ad39 |
children | ab8284c8dcee |
comparison
equal
deleted
inserted
replaced
234:889cdc5f23c5 | 235:65cabbdd5284 |
---|---|
107 extern int rdman_redraw_changed(redraw_man_t *rdman); | 107 extern int rdman_redraw_changed(redraw_man_t *rdman); |
108 extern int rdman_redraw_all(redraw_man_t *rdman); | 108 extern int rdman_redraw_all(redraw_man_t *rdman); |
109 extern int rdman_redraw_area(redraw_man_t *rdman, co_aix x, co_aix y, | 109 extern int rdman_redraw_area(redraw_man_t *rdman, co_aix x, co_aix y, |
110 co_aix w, co_aix h); | 110 co_aix w, co_aix h); |
111 extern geo_t *rdman_geos(redraw_man_t *rdman, geo_t *last); | 111 extern geo_t *rdman_geos(redraw_man_t *rdman, geo_t *last); |
112 #define rdman_shapes(rdman, last_shape) \ | |
113 geo_get_shape_safe(rdman_geos(rdman, sh_get_geo_safe(last_shape))) | |
112 extern int rdman_force_clean(redraw_man_t *rdman); | 114 extern int rdman_force_clean(redraw_man_t *rdman); |
113 extern shnode_t *shnode_new(redraw_man_t *rdman, shape_t *shape); | 115 extern shnode_t *shnode_new(redraw_man_t *rdman, shape_t *shape); |
114 #define shnode_free(rdman, node) elmpool_elm_free((rdman)->shnode_pool, node) | 116 #define shnode_free(rdman, node) elmpool_elm_free((rdman)->shnode_pool, node) |
115 #define shnode_list_free(rdman, q) \ | 117 #define shnode_list_free(rdman, q) \ |
116 do { \ | 118 do { \ |
170 extern int mb_objs_is_overlay(redraw_man_t *rdman, | 172 extern int mb_objs_is_overlay(redraw_man_t *rdman, |
171 mb_obj_t *obj1, mb_obj_t *obj2); | 173 mb_obj_t *obj1, mb_obj_t *obj2); |
172 #define rdman_get_ob_factory(rdman) (&(rdman)->ob_factory) | 174 #define rdman_get_ob_factory(rdman) (&(rdman)->ob_factory) |
173 #define rdman_get_redraw_subject(rdman) ((rdman)->redraw) | 175 #define rdman_get_redraw_subject(rdman) ((rdman)->redraw) |
174 #define rdman_get_root(rdman) ((rdman)->root_coord) | 176 #define rdman_get_root(rdman) ((rdman)->root_coord) |
177 #define rdman_get_cr(rdman) ((rdman)->cr) | |
178 #define rdman_get_gen_geos(rdman) (&(rdman)->gen_geos) | |
179 extern int rdman_add_gen_geos(redraw_man_t *rdman, geo_t *geo); | |
180 #define rdman_get_shape_gl(rdman, idx) \ | |
181 geo_get_shape(rdman_get_gen_geos(rdman)->ds[idx]) | |
182 #define rdman_add_shape_gl(rdman, shape) \ | |
183 rdman_add_gen_geos(rdman, sh_get_geo(shape)) | |
184 #define rdman_shape_gl_len(rdman) \ | |
185 rdman_get_gen_geos(rdman)->num | |
186 #define rdman_clear_shape_gl(rdman) \ | |
187 DARRAY_CLEAN(rdman_get_gen_geos(rdman)) | |
175 | 188 |
176 /*! \brief Load sprite dymanicly from the shared object module. | 189 /*! \brief Load sprite dymanicly from the shared object module. |
177 * | 190 * |
178 * The search path can be changed by sprite_set_search_path. The name can have a relative path in the front of it. | 191 * The search path can be changed by sprite_set_search_path. The name can have a relative path in the front of it. |
179 * This function will search the object in the current working directory and then search the system search path. | 192 * This function will search the object in the current working directory and then search the system search path. |