4 * PCB, interactive printed circuit board design
5 * Copyright (C) 1994,1995,1996, 2004 Thomas Nau
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 * Contact addresses for paper mail and Email:
22 * Thomas Nau, Schlehenweg 15, 88471 Baustetten, Germany
23 * Thomas.Nau@rz.uni-ulm.de
27 /* prototypes for drawing routines
37 void DrawVia (PinType
*);
38 void DrawRat (RatType
*);
39 void DrawViaName (PinType
*);
40 void DrawPin (PinType
*);
41 void DrawPinName (PinType
*);
42 void DrawPad (PadType
*);
43 void DrawPadName (PadType
*);
44 void DrawLine (LayerType
*, LineType
*);
45 void DrawArc (LayerType
*, ArcType
*);
46 void DrawText (LayerType
*, TextType
*);
47 void DrawPolygon (LayerType
*, PolygonType
*);
48 void DrawElement (ElementType
*);
49 void DrawElementName (ElementType
*);
50 void DrawElementPackage (ElementType
*);
51 void DrawElementPinsAndPads (ElementType
*);
52 void DrawObject (int, void *, void *);
53 void DrawLayer (LayerType
*, const BoxType
*);
54 void EraseVia (PinType
*);
55 void EraseRat (RatType
*);
56 void EraseViaName (PinType
*);
57 void ErasePad (PadType
*);
58 void ErasePadName (PadType
*);
59 void ErasePin (PinType
*);
60 void ErasePinName (PinType
*);
61 void EraseLine (LineType
*);
62 void EraseArc (ArcType
*);
63 void EraseText (LayerType
*, TextType
*);
64 void ErasePolygon (PolygonType
*);
65 void EraseElement (ElementType
*);
66 void EraseElementPinsAndPads (ElementType
*);
67 void EraseElementName (ElementType
*);
68 void EraseObject (int, void *, void *);
70 void DrawLayerGroup (int side
, const BoxType
*drawn_area
);
71 void DrawPaste (int side
, const BoxType
*drawn_area
);
72 void DrawSilk (int side
, const BoxType
*drawn_area
);
73 void DrawMask (int side
, const BoxType
*drawn_area
);
74 void DrawHoles (bool draw_plated
, bool draw_unplated
, const BoxType
*drawn_area
);
75 void PrintAssembly (int side
, const BoxType
*drawn_area
);