Index: select.h =================================================================== --- select.h (revision 33499) +++ select.h (revision 33500) @@ -43,8 +43,14 @@ long int *pcb_list_block(pcb_board_t *pcb, rnd_box_t *Box, int *len); /* List visible objects on screen within a box; return number of objects, call - a callback on each object found. Optionally limit the search to specific layer types plus globals */ + a callback on each object found. Always creates the return list (caller must + free it) and always redraws objects */ int pcb_list_block_cb(pcb_board_t *pcb, rnd_box_t *Box, void *(cb)(void *ctx, pcb_any_obj_t *obj), void *ctx); + +/* Same as above, except: + - limit the search to specific layer types plus globals + - if cb is not NULL, do not create the return list (and do not redraw) +*/ int pcb_list_lyt_block_cb(pcb_board_t *pcb, pcb_layer_type_t lyt, rnd_box_t *Box, void *(cb)(void *ctx, pcb_any_obj_t *obj), void *ctx);