Index: trunk/src/board.c =================================================================== --- trunk/src/board.c (revision 4995) +++ trunk/src/board.c (revision 4996) @@ -32,6 +32,7 @@ #include "hid_actions.h" #include "paths.h" #include "rtree.h" +#include "undo.h" pcb_board_t *PCB; @@ -244,3 +245,10 @@ if (gui != NULL) pcb_hid_action("PCBChanged"); } + +void pcb_board_remove(pcb_board_t *Ptr) +{ + ClearUndoList(pcb_true); + pcb_board_free(Ptr); + free(Ptr); +} Index: trunk/src/board.h =================================================================== --- trunk/src/board.h (revision 4995) +++ trunk/src/board.h (revision 4996) @@ -146,4 +146,7 @@ void pcb_board_resize(pcb_coord_t Width, pcb_coord_t Height); +/* free the board and remove its undo list */ +void pcb_board_remove(pcb_board_t *Ptr); + #endif Index: trunk/src/remove.c =================================================================== --- trunk/src/remove.c (revision 4995) +++ trunk/src/remove.c (revision 4996) @@ -69,16 +69,6 @@ DestroyRat }; -/* --------------------------------------------------------------------------- - * remove PCB - */ -void pcb_board_remove(pcb_board_t *Ptr) -{ - ClearUndoList(pcb_true); - pcb_board_free(Ptr); - free(Ptr); -} - /* ---------------------------------------------------------------------- * removes all selected and visible objects * returns pcb_true if any objects have been removed Index: trunk/src/remove.h =================================================================== --- trunk/src/remove.h (revision 4995) +++ trunk/src/remove.h (revision 4996) @@ -38,7 +38,6 @@ (PCB_TYPE_VIA | PCB_TYPE_LINE_POINT | PCB_TYPE_LINE | PCB_TYPE_TEXT | PCB_TYPE_ELEMENT | \ PCB_TYPE_POLYGON_POINT | PCB_TYPE_POLYGON | PCB_TYPE_RATLINE | PCB_TYPE_ARC) -void pcb_board_remove(pcb_board_t *); pcb_bool RemoveSelected(void); void *RemoveObject(int, void *, void *, void *); void *DestroyObject(pcb_data_t *, int, void *, void *, void *);