Index: trunk/src/draw.c =================================================================== --- trunk/src/draw.c (revision 37881) +++ trunk/src/draw.c (revision 37882) @@ -352,12 +352,12 @@ static void pcb_draw_pstk_marks(pcb_draw_info_t *info) { - rnd_r_search(PCB->Data->padstack_tree, info->drawn_area, NULL, pcb_pstk_draw_mark_callback, info, NULL); + rnd_rtree_search_any(PCB->Data->padstack_tree, (rnd_rtree_box_t *)info->drawn_area, NULL, pcb_pstk_draw_mark_callback, info, NULL); } static void pcb_draw_pstk_labels(pcb_draw_info_t *info) { - rnd_r_search(PCB->Data->padstack_tree, info->drawn_area, NULL, pcb_pstk_draw_label_callback, info, NULL); + rnd_rtree_search_any(PCB->Data->padstack_tree, (rnd_rtree_box_t *)info->drawn_area, NULL, pcb_pstk_draw_label_callback, info, NULL); } static void pcb_draw_pstk_holes(pcb_draw_info_t *info, rnd_layergrp_id_t group, pcb_pstk_draw_hole_t holetype) Index: trunk/src/obj_pstk.c =================================================================== --- trunk/src/obj_pstk.c (revision 37881) +++ trunk/src/obj_pstk.c (revision 37882) @@ -589,9 +589,9 @@ return rnd_RTREE_DIR_FOUND_CONT; } -rnd_r_dir_t pcb_pstk_draw_mark_callback(const rnd_box_t *b, void *cl) +rnd_rtree_dir_t pcb_pstk_draw_mark_callback(void *cl, void *obj, const rnd_rtree_box_t *box) { - pcb_pstk_t *ps = (pcb_pstk_t *)b; + pcb_pstk_t *ps = (pcb_pstk_t *)obj; pcb_pstk_proto_t *proto; rnd_coord_t mark, mark2; @@ -605,7 +605,7 @@ mark2 = mark*2; if (mark2 < rnd_render->coord_per_pix) - return RND_R_DIR_FOUND_CONTINUE; + return rnd_RTREE_DIR_FOUND_CONT; /* draw the cross using xor */ set_ps_annot_color(pcb_draw_out.fgGC, ps); @@ -617,13 +617,13 @@ else rnd_render->draw_line(pcb_draw_out.fgGC, ps->x-rnd_render->coord_per_pix, ps->y, ps->x+rnd_render->coord_per_pix, ps->y); - return RND_R_DIR_FOUND_CONTINUE; + return rnd_RTREE_DIR_FOUND_CONT; } -rnd_r_dir_t pcb_pstk_draw_label_callback(const rnd_box_t *b, void *cl) +rnd_rtree_dir_t pcb_pstk_draw_label_callback(void *cl, void *obj, const rnd_rtree_box_t *box) { pcb_draw_info_t *info = cl; - pcb_pstk_t *ps = (pcb_pstk_t *)b; + pcb_pstk_t *ps = (pcb_pstk_t *)obj; int is_drawn = (ps->draw_stamp == info->draw_stamp); /* do not draw any label if the padstack is not visible, to avoid overlapping @@ -630,7 +630,7 @@ term labels of sides: two SMD pads on the two sides, turn off bottom to see top only */ if (!is_drawn) - return RND_R_DIR_FOUND_CONTINUE; + return rnd_RTREE_DIR_NOT_FOUND_CONT; /* draw the label if enabled, after everything else is drawn */ if (ps->term != NULL) { @@ -641,7 +641,7 @@ if (ps->noexport) pcb_obj_noexport_mark(ps, ps->x, ps->y); - return RND_R_DIR_FOUND_CONTINUE; + return rnd_RTREE_DIR_FOUND_CONT; } rnd_rtree_dir_t pcb_pstk_draw_hole_callback(void *cl, void *obj, const rnd_rtree_box_t *box) @@ -877,10 +877,10 @@ } if (mark) - pcb_pstk_draw_mark_callback((rnd_box_t *)ps, &info); + pcb_pstk_draw_mark_callback(&info, (void *)ps, (rnd_rtree_box_t *)ps); if (label) - pcb_pstk_draw_label_callback((rnd_box_t *)ps, &info); + pcb_pstk_draw_label_callback(&info, (void *)ps, (rnd_rtree_box_t *)ps); } Index: trunk/src/obj_pstk_draw.h =================================================================== --- trunk/src/obj_pstk_draw.h (revision 37881) +++ trunk/src/obj_pstk_draw.h (revision 37882) @@ -40,8 +40,8 @@ rnd_rtree_dir_t pcb_pstk_draw_slot_callback(void *cl, void *obj, const rnd_rtree_box_t *box); #endif -rnd_r_dir_t pcb_pstk_draw_mark_callback(const rnd_box_t *b, void *cl); -rnd_r_dir_t pcb_pstk_draw_label_callback(const rnd_box_t *b, void *cl); +rnd_rtree_dir_t pcb_pstk_draw_mark_callback(void *cl, void *obj, const rnd_rtree_box_t *box); +rnd_rtree_dir_t pcb_pstk_draw_label_callback(void *cl, void *obj, const rnd_rtree_box_t *box); void pcb_pstk_draw_label(pcb_draw_info_t *info, pcb_pstk_t *ps, rnd_bool vis_side); void pcb_pstk_invalidate_erase(pcb_pstk_t *ps); void pcb_pstk_invalidate_draw(pcb_pstk_t *ps); Index: trunk/src/obj_subc.c =================================================================== --- trunk/src/obj_subc.c (revision 37881) +++ trunk/src/obj_subc.c (revision 37882) @@ -2309,8 +2309,8 @@ if (sc->data->padstack_tree != NULL) for(o = rnd_rtree_first(&it, sc->data->padstack_tree, (rnd_rtree_box_t *)drawn_area); o != NULL; o = rnd_rtree_next(&it)) { if (pcb_obj_is_under(o, sc->data)) { - pcb_pstk_draw_mark_callback((rnd_box_t *)o, &info); - pcb_pstk_draw_label_callback((rnd_box_t *)o, &info); + pcb_pstk_draw_mark_callback(&info, (void *)o, (rnd_rtree_box_t *)o); + pcb_pstk_draw_label_callback(&info, (void *)o, (rnd_rtree_box_t *)o); } } }