Mercurial > MadButterfly
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_ */ |