New attempt to get the svn revision into the AboutAROS requester.
[cake.git] / compiler / include / graphics / gfxmacros.h
blobabbdfff6628797b22369bced44342b7e00d6ae38
1 #ifndef GRAPHICS_GFXMACROS_H
2 #define GRAPHICS_GFXMACROS_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: AmigaOS include file graphics/gfxmacros.h
9 Lang: english
12 #ifndef EXEC_TYPES_H
13 # include <exec/types.h>
14 #endif
16 #ifndef GRAPHICS_RASTPORT_H
17 # include <graphics/rastport.h>
18 #endif
20 /* NOTE: The following symbol must be defined in your source
21 code if one needs the old style macros. Otherwise
22 one will get the new veresions, which are more robust */
24 #ifdef OLD_GRAPHICS_GFXMACROS_H
26 /* Some macros which should be functions... */
27 #define SetDrPt(w,p) \
28 { \
29 (w)->LinePtrn = p; \
30 (w)->Flags |= FRST_DOT|0x10; \
31 (w)->linpatcnt = 15; \
34 #define SetAfPt(w,p,n) \
35 { \
36 (w)->AreaPtrn = p; \
37 (w)->AreaPtSz = n; \
40 #define SetOPen(w,c) \
41 { \
42 (w)->AOlPen = c; \
43 (w)->Flags |= AREAOUTLINE; \
46 #define SetAOlPen(w,p) SetOutlinePen(w,p)
47 #define SetWrMsk(w,m) SetWriteMask(w,m)
48 #define BNDRYOFF(w) {(w)->Flags &= ~AREAOUTLINE;}
50 /* Shortcuts */
51 #define DrawCircle(rp,cx,cy,r) DrawEllipse(rp,cx,cy,r,r);
52 #define AreaCircle(rp,cx,cy,r) AreaEllipse(rp,cx,cy,r,r);
54 #else /* OLD_GRAPHICS_GFXMACROS_H */
56 /* Some macros which should be functions... */
57 #define SetDrPt(w,p) \
58 do { \
59 (w)->LinePtrn = p; \
60 (w)->Flags |= FRST_DOT|0x10; \
61 (w)->linpatcnt = 15; \
62 } while (0)
64 #define SetAfPt(w,p,n) \
65 do { \
66 (w)->AreaPtrn = p; \
67 (w)->AreaPtSz = n; \
68 } while (0)
70 #define SetOPen(w,c) \
71 do { \
72 (w)->AOlPen = c; \
73 (w)->Flags |= AREAOUTLINE; \
74 } while (0)
76 #define SetAOlPen(w,p) SetOutlinePen(w,p)
77 #define SetWrMsk(w,m) SetWriteMask(w,m)
79 #define BNDRYOFF(w) \
80 do { \
81 (w)->Flags &= ~AREAOUTLINE; \
82 } while (0)
85 /* Shortcuts */
86 #define DrawCircle(rp,cx,cy,r) DrawEllipse(rp,cx,cy,r,r);
87 #define AreaCircle(rp,cx,cy,r) AreaEllipse(rp,cx,cy,r,r);
89 #endif /* OLD_GRAPHICS_GFXMACROS_H */
91 #endif /* GRAPHICS_GFXMACROS_H */