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.