comparison src/redraw_man.h @ 12:79e9edf4c00a

Add redraw manager
author Thinker K.F. Li <thinker@branda.to>
date Mon, 28 Jul 2008 17:45:36 +0800
parents
children ed55009d96d3
comparison
equal deleted inserted replaced
11:128af06c876c 12:79e9edf4c00a
1 #ifndef __REDRAW_MAN_H_
2 #define __REDRAW_MAN_H_
3
4 #include "tools.h"
5 #include "mb_types.h"
6
7 /*! \brief Manage redrawing of shapes (graphic elements). */
8 typedef struct _redraw_man {
9 int n_geos;
10 STAILQ(geo_t) all_geos;
11 coord_t *root_coord;
12 elmpool_t *geo_pool;
13 elmpool_t *coord_pool;
14 unsigned int seq;
15 } redraw_man_t;
16
17 extern int redraw_man_init(redraw_man_t *rdman);
18 extern void redraw_man_destroy(redraw_man_t *rdman);
19 extern int rdman_find_overlaid_shapes(redraw_man_t *rdman,
20 geo_t *geo,
21 geo_t ***overlays);
22 extern int rdman_add_shape(redraw_man_t *rdman,
23 shape_t *shape, coord_t *coord);
24 extern int rdman_remove_shape(redraw_man_t *rdman, shape_t *shape);
25 extern coord_t *rdman_coord_new(redraw_man_t *rdman, coord_t *parent);
26 extern int rdman_coord_free(redraw_man_t *rdman, coord_t *coord);
27
28
29 #endif /* __REDRAW_MAN_H_ */