xref: /reactos/win32ss/gdi/gdi32/objects/arc.c (revision c2c66aff)
1 #include <precomp.h>
2 
3 BOOL
4 WINAPI
5 Arc(
6     _In_ HDC hdc,
7     _In_ INT xLeft,
8     _In_ INT yTop,
9     _In_ INT xRight,
10     _In_ INT yBottom,
11     _In_ INT xStartArc,
12     _In_ INT yStartArc,
13     _In_ INT xEndArc,
14     _In_ INT yEndArc)
15 {
16     HANDLE_METADC(BOOL,
17                   Arc,
18                   FALSE,
19                   hdc,
20                   xLeft,
21                   yTop,
22                   xRight,
23                   yBottom,
24                   xStartArc,
25                   yStartArc,
26                   xEndArc,
27                   yEndArc);
28 
29     return NtGdiArcInternal(GdiTypeArc,
30                             hdc,
31                             xLeft,
32                             yTop,
33                             xRight,
34                             yBottom,
35                             xStartArc,
36                             yStartArc,
37                             xEndArc,
38                             yEndArc);
39 }
40 
41 
42 /*
43  * @implemented
44  */
45 BOOL
46 WINAPI
47 AngleArc(
48     _In_ HDC hdc,
49     _In_ INT x,
50     _In_ INT y,
51     _In_ DWORD dwRadius,
52     _In_ FLOAT eStartAngle,
53     _In_ FLOAT eSweepAngle)
54 {
55     HANDLE_METADC(BOOL,
56                   AngleArc,
57                   FALSE,
58                   hdc,
59                   x,
60                   y,
61                   dwRadius,
62                   RCAST(DWORD, eStartAngle),
63                   RCAST(DWORD, eSweepAngle));
64 
65     return NtGdiAngleArc(hdc,
66                          x,
67                          y,
68                          dwRadius,
69                          RCAST(DWORD, eStartAngle),
70                          RCAST(DWORD, eSweepAngle));
71 }
72 
73 BOOL
74 WINAPI
75 ArcTo(
76     _In_ HDC hdc,
77     _In_ INT xLeft,
78     _In_ INT yTop,
79     _In_ INT xRight,
80     _In_ INT yBottom,
81     _In_ INT xRadial1,
82     _In_ INT yRadial1,
83     _In_ INT xRadial2,
84     _In_ INT yRadial2)
85 {
86     HANDLE_METADC(BOOL,
87                   ArcTo,
88                   FALSE,
89                   hdc,
90                   xLeft,
91                   yTop,
92                   xRight,
93                   yBottom,
94                   xRadial1,
95                   yRadial1,
96                   xRadial2,
97                   yRadial2);
98 
99     return NtGdiArcInternal(GdiTypeArcTo,
100                             hdc,
101                             xLeft,
102                             yTop,
103                             xRight,
104                             yBottom,
105                             xRadial1,
106                             yRadial1,
107                             xRadial2,
108                             yRadial2);
109 }
110 
111 BOOL
112 WINAPI
113 Chord(
114     _In_ HDC hdc,
115     _In_ INT xLeft,
116     _In_ INT yTop,
117     _In_ INT xRight,
118     _In_ INT yBottom,
119     _In_ INT xRadial1,
120     _In_ INT yRadial1,
121     _In_ INT xRadial2,
122     _In_ INT yRadial2)
123 {
124     HANDLE_METADC(BOOL,
125                   Chord,
126                   FALSE,
127                   hdc,
128                   xLeft,
129                   yTop,
130                   xRight,
131                   yBottom,
132                   xRadial1,
133                   yRadial1,
134                   xRadial2,
135                   yRadial2);
136 
137     return NtGdiArcInternal(GdiTypeChord,
138                             hdc,
139                             xLeft,
140                             yTop,
141                             xRight,
142                             yBottom,
143                             xRadial1,
144                             yRadial1,
145                             xRadial2,
146                             yRadial2);
147 }
148 
149 
150 /*
151  * @unimplemented
152  */
153 BOOL
154 WINAPI
155 Pie(
156     _In_ HDC hdc,
157     _In_ INT xLeft,
158     _In_ INT yTop,
159     _In_ INT xRight,
160     _In_ INT yBottom,
161     _In_ INT xRadial1,
162     _In_ INT yRadial1,
163     _In_ INT xRadial2,
164     _In_ INT yRadial2)
165 {
166     HANDLE_METADC(BOOL,
167                   Pie,
168                   FALSE,
169                   hdc,
170                   xLeft,
171                   yTop,
172                   xRight,
173                   yBottom,
174                   xRadial1,
175                   yRadial1,
176                   xRadial2,
177                   yRadial2);
178 
179     return NtGdiArcInternal(GdiTypePie,
180                             hdc,
181                             xLeft,
182                             yTop,
183                             xRight,
184                             yBottom,
185                             xRadial1,
186                             yRadial1,
187                             xRadial2,
188                             yRadial2);
189 }
190 
191 
192