Mercurial > MadButterfly
diff src/redraw_man.c @ 1059:36aef79d68e4
Move macros privated used by redraw manager to redraw_man.c
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Sun, 28 Nov 2010 12:07:37 +0800 |
parents | 960e2395973d |
children | e415c55b4a0d |
line wrap: on
line diff
--- a/src/redraw_man.c Wed Nov 24 16:17:17 2010 +0800 +++ b/src/redraw_man.c Sun Nov 28 12:07:37 2010 +0800 @@ -304,6 +304,38 @@ #define ASSERT(x) #endif +/* + * Conitions for coords. + */ +#define coord_is_cached(co) ((co)->flags & COF_OWN_CANVAS) +#define coord_is_always_cached(co) ((co)->flags & COF_ALWAYS_CACHE) +#define coord_is_fast_cached(co) ((co)->flags & COF_FAST_MASK) +#define coord_is_precise_cached(co) ((co)->flags & COF_PRECISE_MASK) +#define coord_is_zeroing(co) ((co)->flags & COF_MUST_ZEROING) +#define coord_set_zeroing(co) \ + do { (co)->flags |= COF_MUST_ZEROING; } while(0) +#define coord_clear_zeroing(co) \ + do { (co)->flags &= ~COF_MUST_ZEROING; } while(0) +#define coord_set_flags(co, _flags) \ + do { (co)->flags |= (_flags); } while(0) +#define coord_get_parent(co) ((co)->parent) +#define coord_get_flags(co, _flags) ((co)->flags & (_flags)) +#define coord_clear_flags(co, _flags) \ + do { (co)->flags &= ~(_flags); } while(0) + +#define coord_get_pcache_area(coord) ((coord)->canvas_info->pcache_cur_area) +#define coord_get_pcache_last_area(coord) \ + ((coord)->canvas_info->pcache_last_area) +#define coord_get_cached(coord) ((coord)->canvas_info->owner) +#define _coord_get_dirty_areas(coord) (&(coord)->canvas_info->dirty_areas) +#define _coord_get_aggr_dirty_areas(coord) \ + ((coord)->canvas_info->aggr_dirty_areas) +#define coord_get_2pdev(coord) ((coord)->canvas_info->cache_2_pdev) +#define coord_get_2pdev_rev(coord) ((coord)->canvas_info->cache_2_pdev_rev) +#define coord_get_aggr2pdev(coord) ((coord)->canvas_info->aggr_2_pdev) +#define coord_get_aggr2pdev_rev(coord) ((coord)->canvas_info->aggr_2_pdev_rev) + + /* NOTE: bounding box should also consider width of stroke. */