Index: operation.h =================================================================== --- operation.h (nonexistent) +++ operation.h (revision 4509) @@ -0,0 +1,46 @@ +/* + * COPYRIGHT + * + * PCB, interactive printed circuit board design + * Copyright (C) 1994,1995,1996, 2004 Thomas Nau + * 15 Oct 2008 Ineiev: add different crosshair shapes + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + * Contact addresses for paper mail and Email: + * Thomas Nau, Schlehenweg 15, 88471 Baustetten, Germany + * Thomas.Nau@rz.uni-ulm.de + * + */ + +#include "global_element.h" + +/* ---------------------------------------------------------------------- + * pointer to low-level copy, move and rotate functions + */ +typedef struct { + void *(*Line) (LayerTypePtr, LineTypePtr); + void *(*Text) (LayerTypePtr, TextTypePtr); + void *(*Polygon) (LayerTypePtr, PolygonTypePtr); + void *(*Via) (PinTypePtr); + void *(*Element) (ElementTypePtr); + void *(*ElementName) (ElementTypePtr); + void *(*Pin) (ElementTypePtr, PinTypePtr); + void *(*Pad) (ElementTypePtr, PadTypePtr); + void *(*LinePoint) (LayerTypePtr, LineTypePtr, PointTypePtr); + void *(*Point) (LayerTypePtr, PolygonTypePtr, PointTypePtr); + void *(*Arc) (LayerTypePtr, ArcTypePtr); + void *(*Rat) (RatTypePtr); +} ObjectFunctionType, *ObjectFunctionTypePtr;