source: trunk/Include/Classes/System/Drawing/Graphics.ab@ 497

Last change on this file since 497 was 497, checked in by イグトランス (egtra), 16 years ago

インクルードガードとその他不要な前処理定義などの削除

File size: 77.7 KB
Line 
1' Classes/System/Drawing/Graphics.ab
2
3Class Brush : End Class
4Class Pen : End Class
5Class StringFormat : End Class
6Class Image : End Class
7Class ImageAttributes : End Class
8Class Metafile : End Class
9Class Region : End Class
10Class GraphicsPath : End Class
11Class CachedBitmap : End Class
12
13Class Graphics
14Public
15 '=========================================================================
16 ' Properties
17 '=========================================================================
18 Const Function Clip() As Region
19 Dim r As Region
20 GetClip(r)
21 Return r
22 End Function
23
24 Sub Clip(region As /*Const*/ Region)
25 SetClip(region, CombineMode.Replace)
26 End Sub
27
28 Const Function ClipBounds() As RectangleF
29 Dim rc As RectangleF
30 GetClipBounds(rc)
31 Return rc
32 End Function
33
34 Sub ClipBounds(rc As RectangleF)
35 SetClipBounds(rc)
36 End Sub
37
38 Function CompositingMode() As CompositingMode
39 Return GetCompositingMode()
40 End Function
41
42 Sub CompositingMode(mode As CompositingMode)
43 SetCompositingMode(mode)
44 End Sub
45
46 Function CompositingQuality() As CompositingQuality
47 Return GetCompositingQuality()
48 End Function
49
50 Sub CompositingQuality(cq As CompositingQuality)
51 SetCompositingQuality(cq)
52 End Sub
53
54 Const Function DpiX() As Single
55 Dim dpi As Single
56 SetStatus(GdipGetDpiX(nativeGraphics, dpi))
57 Return dpi
58 End Function
59
60 Const Function DpiY() As Single
61 Dim dpi As Single
62 SetStatus(GdipGetDpiY(nativeGraphics, dpi))
63 Return dpi
64 End Function
65
66 Const Function InterpolationMode() As InterpolationMode
67 Return GetInterpolationMode()
68 End Function
69
70 Sub InterpolationMode(im As InterpolationMode)
71 SetInterpolationMode(im)
72 End Sub
73
74 Const Function IsClipEmpty() As BOOL
75 Dim b = FALSE As BOOL
76 SetStatus(GdipIsClipEmpty(nativeGraphics, b))
77 Return b
78 End Function
79
80 Const Function IsVisibleClipEmpty() As BOOL
81 Dim b = FALSE As BOOL
82 SetStatus(GdipIsVisibleClipEmpty(nativeGraphics, b))
83 Return b
84 End Function
85
86 Function PageScale(scale As Single) As Status
87 Return SetStatus(GdipSetPageScale(nativeGraphics, scale))
88 End Function
89
90 Const Function PageScale() As Single
91 Dim scale As Single
92 SetStatus(GdipGetPageScale(nativeGraphics, scale))
93 Return scale
94 End Function
95
96 Const Function PageUnit() As GraphicsUnit
97 Dim unit As GraphicsUnit
98 SetStatus(GdipGetPageUnit(nativeGraphics, unit))
99 Return unit
100 End Function
101
102 Function PageUnit(unit As GraphicsUnit) As Status
103 Return SetStatus(GdipSetPageUnit(nativeGraphics, unit))
104 End Function
105
106 Function PixelOffsetMode() As PixelOffsetMode
107 Return GetPixelOffsetMode()
108 End Function
109
110 Sub PixelOffsetMode(mode As PixelOffsetMode)
111 SetPixelOffsetMode(mode)
112 End Sub
113
114 Function RenderingOrigin() As Point
115 Dim pt As Point
116 GetRenderingOrigin(pt.X, pt.Y)
117 Return pt
118 End Function
119
120 Sub RenderingOrigin(pt As Point)
121 SetRenderingOrigin(pt.X, pt.Y)
122 End Sub
123
124 Function SmoothingMode() As SmoothingMode
125 Return GetSmoothingMode()
126 End Function
127
128 Sub SmoothingMode(mode As SmoothingMode)
129 SetSmoothingMode(mode)
130 End Sub
131
132 Function TextContrast() As DWord
133 Return GetTextContrast()
134 End Function
135
136 Sub TextContrast(contrast As DWord)
137 SetTextContrast(contrast)
138 End Sub
139
140 Function TextRenderingHint() As TextRenderingHint
141 Return GetTextRenderingHint()
142 End Function
143
144 Sub TextRenderingHint(mode As TextRenderingHint)
145 SetTextRenderingHint(mode)
146 End Sub
147
148 Function Transform() As Matrix
149 Dim matrix As Matrix
150 GetTransform(matrix)
151 Return matrix
152 End Function
153
154 Sub Transform(matrix As Matrix)
155 SetTransform(matirx)
156 End Sub
157
158 Function VisibleClipBounds() As RectangleF
159 Dim rc As RectangleF
160 GetVisibleClipBounds(rc)
161 Return rc
162 End Function
163
164 '=========================================================================
165 ' Methods
166 '=========================================================================
167 Static Function FromHDC(hdc As HDC) As Graphics
168 Return New Graphics(hdc)
169 End Function
170
171 Static Function FromHDC(hdc As HDC, hdevice As HANDLE) As Graphics
172 Return New Graphics(hdc, hdevice)
173 End Function
174
175 Static Function FromHWND(hwnd As HWND) As Graphics
176 Return New Graphics(hwnd, FALSE)
177 End Function
178
179 Static Function FromHWND(hwnd As DWord, icm As BOOL) As Graphics
180 Return New Graphics(hwnd, icm)
181 End Function
182
183 Static Function FromImage(image As Image) As Graphics
184 Return New Graphics(image)
185 End Function
186
187 Sub Graphics(hdc As HDC)
188 Dim graphics = 0 As GpGraphics
189 lastResult = GdipCreateFromHDC(hdc, graphics)
190 SetNativeGraphics(graphics)
191 End Sub
192
193 Sub Graphics(hdc As HDC, hdevice As HANDLE)
194 Dim graphics = 0 As *GpGraphics
195 lastResult = GdipCreateFromHDC2(hdc, hdevice, graphics)
196 SetNativeGraphics(graphics)
197 End Sub
198
199 Sub Graphics(hwnd As HWND)
200 Dim graphics = 0 As *GpGraphics
201 lastResult = GdipCreateFromHWND(hwnd, graphics)
202 SetNativeGraphics(graphics)
203 End Sub
204
205 Sub Graphics(hwnd As HWND, icm As BOOL)
206 Dim graphics = 0 As *GpGraphics
207 If icm <> FALSE Then
208 lastResult = GdipCreateFromHWNDICM(hwnd, graphics)
209 Else
210 lastResult = GdipCreateFromHWND(hwnd, graphics)
211 End If
212 SetNativeGraphics(graphics)
213 End Sub
214
215 Sub Graphics(image As Image)
216 Dim graphics = 0 As *GpGraphics
217 If (image != 0)
218 lastResult = GdipGetImageGraphicsContext(image->NativeImage, graphics)
219 End If
220 SetNativeGraphics(graphics)
221 End Sub
222
223 Sub ~Graphics()
224 GdipDeleteGraphics(nativeGraphics)
225 End Sub
226
227 Sub Flush()
228 GdipFlush(nativeGraphics, FlushIntention.Flush)
229 End Sub
230
231 Sub Flush(intention As FlushIntention)
232 GdipFlush(nativeGraphics, intention)
233 End Sub
234
235 '------------------------------------------------------------------------
236 ' GDI Interop methods
237 '------------------------------------------------------------------------
238
239 ' Locks the graphics until ReleaseDC is called
240
241 Function GetHDC() As HDC
242 Dim hdc = 0 As HDC
243 SetStatus(GdipGetDC(nativeGraphics, hdc))
244 Return hdc
245 End Function
246
247 Sub ReleaseHDC(hdc As HDC)
248 SetStatus(GdipReleaseDC(nativeGraphics, hdc))
249 End Sub
250
251 '------------------------------------------------------------------------
252 ' Rendering modes
253 '------------------------------------------------------------------------
254
255 Function SetRenderingOrigin(x As Long, y As Long) As Status
256 Return SetStatus(GdipSetRenderingOrigin(nativeGraphics, x, y))
257 End Function
258
259 Const Function GetRenderingOrigin(x As Long, y As Long) As Status
260 Return SetStatus(GdipGetRenderingOrigin(nativeGraphics, x, y))
261 End Function
262
263 Function SetCompositingMode(compositingMode As CompositingMode) As Status
264 Return SetStatus(GdipSetCompositingMode(nativeGraphics, compositingMode))
265 End Function
266
267 Const Function GetCompositingMode() As CompositingMode
268 Dim mode As CompositingMode
269 SetStatus(GdipGetCompositingMode(nativeGraphics, mode))
270 Return mode
271 End Function
272
273 Function SetCompositingQuality(compositingQuality As CompositingQuality)
274 Return SetStatus(GdipSetCompositingQuality(nativeGraphics, compositingQuality))
275 End Function
276
277 Const Function GetCompositingQuality() As CompositingQuality
278 Dim quality As CompositingQuality
279 SetStatus(GdipGetCompositingQuality(nativeGraphics, quality))
280 Return quality
281 End Function
282
283 Function SetTextRenderingHint(newMode As TextRenderingHint) As Status
284 Return SetStatus(GdipSetTextRenderingHint(nativeGraphics, newMode))
285 End Function
286
287 Const Function GetTextRenderingHint() As TextRenderingHint
288 Dim hint As TextRenderingHint
289 SetStatus(GdipGetTextRenderingHint(nativeGraphics, hint))
290 Return hint
291 End Function
292
293 Function SetTextContrast(contrast As DWord) As Status
294 Return SetStatus(GdipSetTextContrast(nativeGraphics, contrast))
295 End Function
296
297 Const Function GetTextContrast() As DWord
298 Dim contrast As DWord
299 SetStatus(GdipGetTextContrast(nativeGraphics, contrast))
300 Return contrast
301 End Function
302
303 Const Function GetInterpolationMode() As InterpolationMode
304 Dim mode = InterpolationMode.Invalid As InterpolationMode
305 SetStatus(GdipGetInterpolationMode(nativeGraphics, mode))
306 Return mode
307 End Function
308
309 Function SetInterpolationMode(interpolationMode As InterpolationMode) As Status
310 Return SetStatus(GdipSetInterpolationMode(nativeGraphics, interpolationMode))
311 End Function
312
313 Const Function GetSmoothingMode() As SmoothingMode
314 Dim smoothingMode = SmoothingMode.Invalid As SmoothingMode
315 SetStatus(GdipGetSmoothingMode(nativeGraphics, smoothingMode))
316 Return smoothingMode
317 End Function
318
319 Function SetSmoothingMode(smoothingMode As SmoothingMode) As Status
320 Return SetStatus(GdipSetSmoothingMode(nativeGraphics, smoothingMode))
321 End Function
322
323 Const Function GetPixelOffsetMode() As PixelOffsetMode
324 Dim pixelOffsetMode = PixelOffsetMode.Invalid As PixelOffsetMode
325 SetStatus(GdipGetPixelOffsetMode(nativeGraphics, pixelOffsetMode))
326 Return pixelOffsetMode
327 End Function
328
329 Function SetPixelOffsetMode(pixelOffsetMode As PixelOffsetMode) As Status
330 Return SetStatus(GdipSetPixelOffsetMode(nativeGraphics, pixelOffsetMode))
331 End Function
332
333 '------------------------------------------------------------------------
334 ' Manipulate current world transform
335 '------------------------------------------------------------------------
336
337 Function SetTransform(matrix As /*Const*/ *Matrix) As Status
338 Return SetStatus(GdipSetWorldTransform(nativeGraphics, matrix->nativeMatrix))
339 End Function
340
341 Function ResetTransform() As Status
342 Return SetStatus(GdipResetWorldTransform(nativeGraphics))
343 End Function
344
345 Function MultiplyTransform(matrix As /*Const*/ Matrix) As Status
346 Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, MatrixOrder.Prepend))
347 End Function
348
349 Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Status
350 Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, order))
351 End Function
352
353 Function TranslateTransform(dx As Single, dy As Single) As Status
354 Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, MatrixOrder.Prepend))
355 End Function
356
357 Function TranslateTransform(dx As Single, dy As Single, order As MatrixOrder) As Status
358 Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, order))
359 End Function
360
361 Function ScaleTransform(sx As Single, sy As Single) As Status
362 Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, MatrixOrder.Prepend))
363 End Function
364
365 Function ScaleTransform(sx As Single, sy As Single, order As MatrixOrder) As Status
366 Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, order))
367 End Function
368
369 Function RotateTransform(angle As Single) As Status
370 Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, MatrixOrder.Prepend))
371 End Function
372
373 Function RotateTransform(angle As Single, order As MatrixOrder) As Status
374 Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, order))
375 End Function
376
377 Const Function GetTransform(matrix As Matrix) As Status
378 Return SetStatus(GdipGetWorldTransform(nativeGraphics, matrix->nativeMatrix))
379 End Function
380
381 Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As PointF, count As Long) As Status
382 Return SetStatus(GdipTransformPoints(nativeGraphics, destSpace, srcSpace, pts, count))
383 End Function
384
385 Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As Point, count As Long) As Status
386 Return SetStatus(GdipTransformPointsI(nativeGraphics, destSpace, srcSpace, pts, count))
387 End Function
388
389 '------------------------------------------------------------------------
390 ' GetNearestColor (for <= 8bpp surfaces). Note: Alpha is ignored.
391 '------------------------------------------------------------------------
392
393 Const Function GetNearestColor(color As Color) As Status
394 Dim argb = color->Value
395 Dim status = SetStatus(GdipGetNearestColor(nativeGraphics, argb))
396 color->Value = argb
397 Return status
398 End Function
399
400 Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Status
401 Return SetStatus(GdipDrawLine(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
402 End Function
403
404 Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Status
405 Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
406 End Function
407
408 Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
409 Return SetStatus(GdipDrawLines(nativeGraphics, pen->nativePen, points, count))
410 End Function
411
412 Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Status
413 Return SetStatus(GdipDrawLineI(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
414 End Function
415
416 Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Status
417 Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
418 End Function
419
420 Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
421 Return SetStatus(GdipDrawLinesI(nativeGraphics, pen->nativePen, points, count))
422 End Function
423
424 Function DrawArc(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
425 Return SetStatus(GdipDrawArc(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
426 End Function
427
428 Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
429 Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
430 End Function
431
432 Function DrawArc(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
433 Return SetStatus(GdipDrawArcI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
434 End Function
435
436 Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
437 Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
438 End Function
439
440 Function DrawBezier(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single, x3 As Single, y3 As Single, x4 As Single, y4 As Single) As Status
441 Return SetStatus(GdipDrawBezier(nativeGraphics, pen->nativePen, x1, y1,x2, y2, x3, y3, x4, y4))
442 End Function
443
444 Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Status
445 Return DrawBezier(pen, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
446 End Function
447
448 Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
449 Return SetStatus(GdipDrawBeziers(nativeGraphics, pen->nativePen, points, count))
450 End Function
451
452 Function DrawBezier(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long, x3 As Long, y3 As Long, x4 As Long, y4 As Long) As Status
453 Return SetStatus(GdipDrawBezierI(nativeGraphics, pen->nativePen, x1, y1, x2, y2, x3, y3, x4, y4))
454 End Function
455
456 Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Status
457 Return DrawBezier(pen pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
458 End Function
459
460 Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
461 Return SetStatus(GdipDrawBeziersI(nativeGraphics, pen->nativePen, points, count))
462 End Function
463
464 Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
465 Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
466 End Function
467
468 Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
469 Return SetStatus(GdipDrawRectangle(nativeGraphics, pen->nativePen, x, y, width, height))
470 End Function
471
472 Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Status
473 Return SetStatus(GdipDrawRectangles(nativeGraphics, pen->nativePen, rects, count))
474 End Function
475
476 Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
477 Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
478 End Function
479
480 Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
481 Return SetStatus(GdipDrawRectangleI(nativeGraphics, pen->nativePen, x, y, width, height))
482 End Function
483
484 Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle, count As Long) As Status
485 Return SetStatus(GdipDrawRectanglesI(nativeGraphics, pen->nativePen, rects, count))
486 End Function
487
488 Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
489 Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
490 End Function
491
492 Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
493 Return SetStatus(GdipDrawEllipse(nativeGraphics, pen->nativePen, x, y, width, height))
494 End Function
495
496 Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
497 Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
498 End Function
499
500 Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
501 Return SetStatus(GdipDrawEllipseI(nativeGraphics, pen->nativePen, x, y, width, height))
502 End Function
503
504 Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
505 Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
506 End Function
507
508 Function DrawPie(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
509 Return SetStatus(GdipDrawPie(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
510 End Function
511
512 Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
513 Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
514 End Function
515
516 Function DrawPie(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
517 Return SetStatus(GdipDrawPieI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
518 End Function
519
520 Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
521 Return SetStatus(GdipDrawPolygon(nativeGraphics, pen->nativePen, points, count))
522 End Function
523
524 Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
525 Return SetStatus(GdipDrawPolygonI(nativeGraphics, pen->nativePen, points, count))
526 End Function
527
528 Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Status
529 Return SetStatus(GdipDrawPath(nativeGraphics, pen->nativePen, path->nativePath))
530' Return SetStatus(GdipDrawPath(nativeGraphics, pen ? pen->nativePen : NULL, path ? path->nativePath : NULL))
531 End Function
532
533 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
534 Return SetStatus(GdipDrawCurve(nativeGraphics, pen->nativePen, points, count))
535 End Function
536
537 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
538 Return SetStatus(GdipDrawCurve2(nativeGraphics, pen->nativePen, points,count, tension))
539 End Function
540
541 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Status
542 Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, 0.5))
543 End Function
544
545 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
546 Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, tension))
547 End Function
548
549 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
550 Return SetStatus(GdipDrawCurveI(nativeGraphics, pen->nativePen, points, count))
551 End Function
552
553 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
554 Return SetStatus(GdipDrawCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
555 End Function
556
557 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Status
558 Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, 0.5))
559 End Function
560
561 Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
562 Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, tension))
563 End Function
564
565 Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
566 Return SetStatus(GdipDrawClosedCurve(nativeGraphics, pen->nativePen, points, count))
567 End Function
568
569 Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
570 Return SetStatus(GdipDrawClosedCurve2(nativeGraphics, pen->nativePen, points, count, tension))
571 End Function
572
573 Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
574 Return SetStatus(GdipDrawClosedCurveI(nativeGraphics, pen->nativePen, points, count))
575 End Function
576
577 Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
578 Return SetStatus(GdipDrawClosedCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
579 End Function
580
581 Function Clear(color As /*Const*/ Color) As Status
582 Return SetStatus(GdipGraphicsClear(nativeGraphics, color.Value))
583 End Function
584
585 Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
586 Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
587 End Function
588
589 Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
590 Return SetStatus(GdipFillRectangle(nativeGraphics, brush->nativeBrush, x, y, width, height))
591 End Function
592
593 Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Status
594 Return SetStatus(GdipFillRectangles(nativeGraphics,brush->nativeBrush,rects, count))
595 End Function
596
597 Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
598 Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
599 End Function
600
601 Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
602 Return SetStatus(GdipFillRectangleI(nativeGraphics, brush->nativeBrush, x, y, width, height))
603 End Function
604
605 Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Status
606 Return SetStatus(GdipFillRectanglesI(nativeGraphics, brush->nativeBrush, rects, count))
607 End Function
608
609 Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
610 Return FillPolygon(brush, points, count, FillModeAlternate)
611 End Function
612
613 Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
614 Return SetStatus(GdipFillPolygon(nativeGraphics, brush->nativeBrush, points, count, fillMode))
615 End Function
616
617 Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
618 Return FillPolygon(brush, points, count, FillModeAlternate)
619 End Function
620
621 Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
622 Return SetStatus(GdipFillPolygonI(nativeGraphics, brush->nativeBrush, points, count, fillMode))
623 End Function
624
625 Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
626 Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
627 End Function
628
629 Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
630 Return SetStatus(GdipFillEllipse(nativeGraphics, brush->nativeBrush, x, y, width, height))
631 End Function
632
633 Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
634 Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
635 End Function
636
637 Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
638 Return SetStatus(GdipFillEllipseI(nativeGraphics, brush->nativeBrush, x, y, width, height))
639 End Function
640
641 Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
642 Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
643 End Function
644
645 Function FillPie(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single, startAngle As Single, sweepAngle As Single) As Status
646 Return SetStatus(GdipFillPie(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
647 End Function
648
649 Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
650 Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
651 End Function
652
653 Function FillPie(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long, startAngle As Single, sweepAngle As Single) As Status
654 Return SetStatus(GdipFillPieI(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
655 End Function
656
657 Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Status
658 Return SetStatus(GdipFillPath(nativeGraphics, brush->nativeBrush, path->nativePath))
659 End Function
660
661 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
662 Return SetStatus(GdipFillClosedCurve(nativeGraphics, brush->nativeBrush, points, count))
663 End Function
664
665 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
666 Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
667 End Function
668
669 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Status
670 Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
671 End Function
672
673 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
674 Return SetStatus(GdipFillClosedCurveI(nativeGraphics, brush->nativeBrush, points, count))
675 End Function
676
677 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
678 Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
679 End Function
680
681 Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Status
682 Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
683 End Function
684
685 Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Status
686 Return SetStatus(GdipFillRegion(nativeGraphics, brush->nativeBrush, region->nativeRegion))
687 End Function
688
689 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Status
690 Dim nativeFont As *GpFont
691 If VarPtr(font) <> 0 Then
692 nativeFont = font.nativeFormat
693 Else
694 nativeFont = 0
695 End If
696 Return SetStatus(GdipDrawString( nativeGraphics, str, length, nativeFont, layoutRect, 0, 0))
697 End Function
698
699 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ Rectangle,
700 stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
701
702 Dim nativeFont As *GpFont
703 If VarPtr(font) <> 0 Then
704 nativeFont = font.nativeFormat
705 Else
706 nativeFont = 0
707 End If
708 Dim nativeFormat As *GpStringFormat
709 If VarPtr(layoutRect) <> 0 Then
710 nativeFormat = layoutRect.nativeFormat
711 Else
712 nativeFormat = 0
713 End If
714 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, layoutRect, nativeFormat, 0))
715 End Function
716
717 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
718 stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
719
720 Dim nativeFont As *GpFont
721 If VarPtr(font) <> 0 Then
722 nativeFont = font.nativeFormat
723 Else
724 nativeFont = 0
725 End If
726 Dim nativeFormat As *GpStringFormat
727 If VarPtr(stringFormat) <> 0 Then
728 nativeFormat = stringFormat.nativeFormat
729 Else
730 nativeFormat = 0
731 End If
732 Dim nativeBrush As *GpBrush
733 If VarPtr(brush) <> 0 Then
734 nativeBrush = brush.nativeFormat
735 Else
736 nativeBrush = 0
737 End If
738 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, layoutRect, nativeFormat, nativeBrush))
739 End Function
740
741 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Status
742 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
743 Dim nativeFont As *GpFont
744 If VarPtr(font) <> 0 Then
745 nativeFont = font.nativeFormat
746 Else
747 nativeFont = 0
748 End If
749 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, rect, 0, 0))
750 End Function
751
752 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
753 brush As /*Const*/ Brush) As Status
754
755 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
756 Dim nativeFont As *GpFont
757 If VarPtr(font) <> 0 Then
758 nativeFont = font.nativeFormat
759 Else
760 nativeFont = 0
761 End If
762 Dim nativeBrush As *GpBrush
763 If VarPtr(brush) <> 0 Then
764 nativeBrush = brush.nativeFormat
765 Else
766 nativeBrush = 0
767 End If
768 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, rect, 0, nativeBrush))
769 End Function
770
771 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Status
772 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
773 Dim nativeFont As *GpFont
774 If VarPtr(font) <> 0 Then
775 nativeFont = font.nativeFormat
776 Else
777 nativeFont = 0
778 End If
779 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, rect, 0, 0))
780 End Function
781
782 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
783 stringFormat As /*Const*/ StringFormat) As Status
784
785 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
786 Dim nativeFont As *GpFont
787 If VarPtr(font) <> 0 Then
788 nativeFont = font.nativeFormat
789 Else
790 nativeFont = 0
791 End If
792 Dim nativeFormat As *GpStringFormat
793 If VarPtr(stringFormat) <> 0 Then
794 nativeFormat = stringFormat.nativeFormat
795 Else
796 nativeFormat = 0
797 End If
798 Return SetStatus(GdipDrawString(nativeGraphics, str, length, nativeFont, rect, nativeFormat, 0))
799 End Function
800
801 Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
802 stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
803
804 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
805 Dim nativeFont As *GpFont
806 If VarPtr(font) <> 0 Then
807 nativeFont = font.nativeFormat
808 Else
809 nativeFont = 0
810 End If
811 Dim nativeFormat As *GpStringFormat
812 If VarPtr(stringFormat) <> 0 Then
813 nativeFormat = stringFormat.nativeFormat
814 Else
815 nativeFormat = 0
816 End If
817 If VarPtr(brush) <> 0 Then
818 nativeBrush = brush.nativeFormat
819 Else
820 nativeBrush = 0
821 End If
822 Return SetStatus(GdipDrawString( nativeGraphics, str, length, nativeFont, rect, nativeFormat, nativeBrush))
823 End Function
824
825 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
826 stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Status
827
828 Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, ByVal 0, ByVal 0)
829 End Function
830
831 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
832 stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
833 codepointsFitted As Long) As Status
834
835 Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, codepointsFitted, ByVal 0)
836 End Function
837
838 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
839 stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
840 codepointsFitted As Long, linesFilled As Long) As Status
841
842 Dim nativeFont As *GpFont
843 If VarPtr(font) <> 0 Then
844 nativeFont = font.nativeFormat
845 Else
846 nativeFont = 0
847 End If
848 Dim nativeFormat As *GpStringFormat
849 If VarPtr(stringFormat) <> 0 Then
850 nativeFormat = stringFormat.nativeFormat
851 Else
852 nativeFormat = 0
853 End If
854 Return SetStatus(GdipMeasureString(nativeGraphics, str, length, nativeFont, layoutRect, nativeFormat,
855 boundingBox, codepointsFitted, linesFilled))
856 End Function
857
858 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
859 layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
860 size As SizeF) As Status
861
862 Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, ByVal 0, ByVal 0)
863 End Function
864
865 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
866 layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
867 size As SizeF, codepointsFitted As Long) As Status
868
869 Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, codepointsFitted, ByVal 0)
870 End Function
871
872 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
873 layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
874 size As SizeF, codepointsFitted As Long, linesFilled As Long) As Status
875
876 Dim layoutRect As RectangleF(0, 0, layoutRectSize.Width, layoutRectSize.Height)
877 Dim boundingBox As RectangleF, pBoundingBox As *RectangleF
878 If VarPtr(size) <> 0 Then
879 pBoundingBox = VarPtr(boundingBox)
880 Else
881 pBoundingBox = 0
882 End If
883
884 Dim nativeFont As *GpFont
885 If VarPtr(font) <> 0 Then
886 nativeFont = font.nativeFormat
887 Else
888 nativeFont = 0
889 End If
890 Dim nativeFormat As *GpStringFormat
891 If VarPtr(stringFormat) <> 0 Then
892 nativeFormat = stringFormat.nativeFormat
893 Else
894 nativeFormat = 0
895 End If
896 Dim status = SetStatus(GdipMeasureString(nativeGraphics, str, length,
897 nativeFont, layoutRect, nativeFormat, pBoundingBox, codepointsFitted, linesFilled))
898
899 If VarPtr(size) <> 0 And status = Status.Ok Then
900 size.Width = boundingBox.Width
901 size.Height = boundingBox.Height
902 End Function
903
904 Return status
905 End Function
906
907 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
908 origin As /*Const*/ PointF, stringFormat As /*Const*/ StringFormat,
909 boundingBox As RectangleF) As Status
910
911 Dim rect As RectangleF(origin.X, origin.Y, 0.0f, 0.0f)
912 Dim nativeFont As *GpFont
913 If VarPtr(font) <> 0 Then
914 nativeFont = font.nativeFormat
915 Else
916 nativeFont = 0
917 End If
918 Dim nativeFormat As *GpStringFormat
919 If VarPtr(stringFormat) <> 0 Then
920 nativeFormat = stringFormat.nativeFormat
921 Else
922 nativeFormat = 0
923 End If
924
925 Return SetStatus(GdipMeasureString(nativeGraphics, str, length, nativeFont, rect, nativeFormat, boundingBox, 0, 0))
926 End Function
927
928 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
929 layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Status
930
931 Dim nativeFont As *GpFont
932 If VarPtr(font) <> 0 Then
933 nativeFont = font.nativeFormat
934 Else
935 nativeFont = 0
936 End If
937
938 Return SetStatus(GdipMeasureString(nativeGraphics, str, length, nativeFont, layoutRect, 0, boundingBox, 0, 0))
939 End Function
940
941 Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
942 origin As /*Const*/ PointF, boundingBox As RectangleF) As Status
943 Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
944
945 Dim nativeFont As *GpFont
946 If VarPtr(font) <> 0 Then
947 nativeFont = font.nativeFormat
948 Else
949 nativeFont = 0
950 End If
951 Return SetStatus(GdipMeasureString(nativeGraphics, str, length, nativeFont, rect, 0, boundingBox, 0, 0))
952 End Function
953
954 Const Function MeasureCharacterRanges(str As PCWSTR, length As Long, font As /*Const*/ Font,
955 layoutRect As /*Const*/ RectangleF, stringFormat As /*Const*/ StringFormat,
956 regionCount As Long, regions As *Region) As Status
957 If regions = 0 Or regionCount <= 0 Then
958 Return InvalidParameter
959 End If
960
961 Dim nativeRegions = _System_malloc(regionCount * SizeOf (GpRegion*)) As **GpRegion
962
963 If nativeRegions = 0 Then
964 Return OutOfMemory
965 End If
966
967 Dim i As Long
968 For i = 0 To regionCount
969 nativeRegions[i] = regions[i].nativeRegion
970 Next
971
972 Dim nativeFont As *GpFont
973 If VarPtr(font) <> 0 Then
974 nativeFont = font.nativeFormat
975 Else
976 nativeFont = 0
977 End If
978 Dim nativeFormat As *GpStringFormat
979 If VarPtr(stringFormat) <> 0 Then
980 nativeFormat = stringFormat.nativeFormat
981 Else
982 nativeFormat = 0
983 End If
984
985 Dim status = SetStatus(GdipMeasureCharacterRanges(nativeGraphics,
986 str, length, nativeFont, layoutRect, nativeFormat,regionCount, nativeRegions))
987 _System_free(nativeRegions)
988 Return status
989 End Function
990
991 Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
992 brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Status
993
994 Return DrawDriverString(text, length, font, brush, positions, flags, ByVal 0)
995 End Function
996
997 Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
998 brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Status
999
1000 Dim nativeFont As *GpFont
1001 If VarPtr(font) <> 0 Then
1002 nativeFont = font.nativeFormat
1003 Else
1004 nativeFont = 0
1005 End If
1006 Dim nativeBrush As *GpBrush
1007 If VarPtr(brush) <> 0 Then
1008 nativeBrush = brush.nativeBrush
1009 Else
1010 nativeBrush = 0
1011 End If
1012 Dim nativeMatrix As *GpMatrix
1013 If VarPtr(matrix) <> 0 Then
1014 nativeMatrix = matrix.nativeMatrix
1015 Else
1016 nativeMatrix = 0
1017 End If
1018 Return SetStatus(GdipDrawDriverString(nativeGraphics, text, length, nativeFont, nativeBrush, positions, flags, nativeMatrix))
1019 End Function
1020
1021 Const Function MeasureDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
1022 positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Status
1023
1024 Dim nativeFont As *GpFont
1025 If VarPtr(font) <> 0 Then
1026 nativeFont = font.nativeFormat
1027 Else
1028 nativeFont = 0
1029 End If
1030 Dim nativeMatrix As *GpMatrix
1031 If VarPtr(matrix) <> 0 Then
1032 nativeMatrix = matrix.nativeMatrix
1033 Else
1034 nativeMatrix = 0
1035 End If
1036 Return SetStatus(GdipMeasureDriverString(nativeGraphics, text, length, nativeFont, positions, flags, nativeMatrix, boundingBox))
1037 End Function
1038
1039 ' Draw a cached bitmap on this graphics destination offset by
1040 ' x, y. Note this will fail with WrongState if the CachedBitmap
1041 ' native format differs from this Graphics.
1042
1043 Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Status
1044 Return SetStatus(GdipDrawCachedBitmap(nativeGraphics, cb->nativeCachedBitmap, x, y))
1045 End Function
1046
1047 Function DrawImage(image As Image, point As /*Const*/ PointF) As Status
1048 Return DrawImage(image, point.X, point.Y)
1049 End Function
1050
1051 Function DrawImage(image As Image, x As Single, y As Single) As Status
1052 Dim nativeImage As *GpImage
1053 If VarPtr(image) <> 0 Then
1054 nativeImage = image.NativeImage
1055 Else
1056 nativeImage = 0
1057 End If
1058 Return SetStatus(GdipDrawImage(nativeGraphics, nativeImage, x, y))
1059 End Function
1060
1061 Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Status
1062 Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
1063 End Function
1064
1065 Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Status
1066 Dim nativeImage As *GpImage
1067 If VarPtr(image) <> 0 Then
1068 nativeImage = image.NativeImage
1069 Else
1070 nativeImage = 0
1071 End If
1072 Return SetStatus(GdipDrawImageRect(nativeGraphics, nativeImage, x, y, width, height))
1073 End Function
1074
1075 Function DrawImage(image As Image, point As /*Const*/ Point) As Status
1076 Return DrawImage(image, point.X, point.Y) As Status
1077 End Function
1078
1079 Function DrawImage(image As Image, x As Long, y As Long) As Status
1080 Dim nativeImage As *GpImage
1081 If VarPtr(image) <> 0 Then
1082 nativeImage = image.NativeImage
1083 Else
1084 nativeImage = 0
1085 End If
1086 Return SetStatus(GdipDrawImageI(nativeGraphics, nativeImage, x, y))
1087 End Function
1088
1089 Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Status
1090 Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
1091 End Function
1092
1093 Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Status
1094 Dim nativeImage As *GpImage
1095 If VarPtr(image) <> 0 Then
1096 nativeImage = image.NativeImage
1097 Else
1098 nativeImage = 0
1099 End If
1100 Return SetStatus(GdipDrawImageRectI(nativeGraphics, nativeImage, x, y, width, height))
1101 End Function
1102
1103 ' Affine Draw Image
1104 ' destPoints.length = 3: rect => parallelogram
1105 ' destPoints[0] <=> top-left corner of the source rectangle
1106 ' destPoints[1] <=> top-right corner
1107 ' destPoints[2] <=> bottom-left corner
1108 ' destPoints.length = 4: rect => quad
1109 ' destPoints[3] <=> bottom-right corner
1110
1111 Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Status
1112 If count <> 3 And count <> 4 Then
1113 Return SetStatus(InvalidParameter)
1114 End If
1115
1116 Dim nativeImage As *GpImage
1117 If VarPtr(image) <> 0 Then
1118 nativeImage = image.NativeImage
1119 Else
1120 nativeImage = 0
1121 End If
1122 Return SetStatus(GdipDrawImagePoints(nativeGraphics, nativeImage, destPoints, count))
1123 End Function
1124
1125 Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Status
1126 If count <> 3 And count <> 4 Then
1127 Return SetStatus(InvalidParameter)
1128 End If
1129
1130 Dim nativeImage As *GpImage
1131 If VarPtr(image) <> 0 Then
1132 nativeImage = image.NativeImage
1133 Else
1134 nativeImage = 0
1135 End If
1136 Return SetStatus(GdipDrawImagePointsI(nativeGraphics, nativeImage, destPoints, count))
1137 End Function
1138
1139 Function DrawImage(image As Image, x As Single, y As Single,
1140 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
1141
1142 Dim nativeImage As *GpImage
1143 If VarPtr(image) <> 0 Then
1144 nativeImage = image.NativeImage
1145 Else
1146 nativeImage = 0
1147 End If
1148 Return SetStatus(GdipDrawImagePointRect(nativeGraphics, nativeImage, x, y, srcx, srcy, srcwidth, srcheight, srcUnit))
1149 End Function
1150
1151 Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
1152 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
1153
1154 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
1155 End Function
1156
1157 Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
1158 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1159 imageAttributes As /*Const*/ ImageAttributes) As Status
1160
1161 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
1162 End Function
1163
1164 Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
1165 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1166 imageAttributes As /*Const*/ ImageAttributes,
1167 callback As DrawImageAbort) As Status
1168
1169 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
1170 End Function
1171
1172 Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
1173 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1174 imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1175
1176 Dim nativeImage As *GpImage
1177 If VarPtr(image) <> 0 Then
1178 nativeImage = image.NativeImage
1179 Else
1180 nativeImage = 0
1181 End If
1182 Dim nativeImageAttr As *GpImageAttributes
1183 If VarPtr(imageAttributes) <> 0 Then
1184 nativeImageAttr = image.NativeImageAttr
1185 Else
1186 nativeImageAttr = 0
1187 End If
1188
1189 Return SetStatus(GdipDrawImageRectRect(nativeGraphics, nativeImageAttr,
1190 destRect.X, destRect.Y, destRect.Width, destRect.Height, srcx, srcy, srcwidth, srcheight,
1191 srcUnit, nativeImageAttr, callback, callbackData))
1192 End Function
1193
1194 Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
1195 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
1196
1197 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
1198 End Function
1199
1200 Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
1201 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1202 imageAttributes As /*Const*/ ImageAttributes) As Status
1203
1204 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
1205 End Function
1206
1207 Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
1208 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1209 imageAttributes As /*Const*/ ImageAttributes,
1210 callback As DrawImageAbort) As Status
1211
1212 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
1213 End Function
1214
1215 Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
1216 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1217 imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1218
1219 Dim nativeImage As *GpImage
1220 If VarPtr(image) <> 0 Then
1221 nativeImage = image.NativeImage
1222 Else
1223 nativeImage = 0
1224 End If
1225 Dim nativeImageAttr As *GpImageAttributes
1226 If VarPtr(imageAttributes) <> 0 Then
1227 nativeImageAttr = image.NativeImageAttr
1228 Else
1229 nativeImageAttr = 0
1230 End If
1231
1232 Return SetStatus(GdipDrawImagePointsRect(nativeGraphics, nativeImage, destPoints, count,
1233 srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
1234 End Function
1235
1236 Function DrawImage(image As Image, x As Long, y As Long,
1237 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
1238
1239 Dim nativeImage As *GpImage
1240 If VarPtr(image) <> 0 Then
1241 nativeImage = image.NativeImage
1242 Else
1243 nativeImage = 0
1244 End If
1245 Return SetStatus(GdipDrawImagePointRectI(nativeGraphics, nativeImage, x, y, srcx, srcy, srcwidth, srcheight, srcUnit))
1246 End Function
1247
1248 Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
1249 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
1250
1251 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
1252 End Function
1253
1254 Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
1255 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1256 imageAttributes As /*Const*/ ImageAttributes) As Status
1257
1258 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
1259 End Function
1260
1261 Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
1262 srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
1263 imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
1264
1265 Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
1266 End Function
1267
1268 Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
1269 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
1270 imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1271
1272 Dim nativeImage As *GpImage
1273 If VarPtr(image) <> 0 Then
1274 nativeImage = image.NativeImage
1275 Else
1276 nativeImage = 0
1277 End If
1278 Dim nativeImageAttr As *GpImageAttributes
1279 If VarPtr(imageAttributes) <> 0 Then
1280 nativeImageAttr = image.NativeImageAttr
1281 Else
1282 nativeImageAttr = 0
1283 End If
1284
1285 Return SetStatus(GdipDrawImageRectRectI(nativeGraphics, nativeImage,
1286 destRect.X, destRect.Y, destRect.Width, destRect.Height,
1287 srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
1288 End Function
1289
1290 Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
1291 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
1292
1293 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
1294 End Function
1295
1296 Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
1297 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
1298 imageAttributes As /*Const*/ ImageAttributes) As Status
1299
1300 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
1301 End Function
1302
1303 Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long, _
1304 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, _
1305 imageAttributes As /*Const*/ ImageAttributes,
1306 callback As DrawImageAbort) As Status
1307
1308 Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
1309 End Function
1310
1311 Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
1312 srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
1313 imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1314
1315 Dim nativeImage As *GpImage
1316 If VarPtr(image) <> 0 Then
1317 nativeImage = image.NativeImage
1318 Else
1319 nativeImage = 0
1320 End If
1321 Dim nativeImageAttr As *GpImageAttributes
1322 If VarPtr(imageAttributes) <> 0 Then
1323 nativeImageAttr = image.NativeImageAttr
1324 Else
1325 nativeImageAttr = 0
1326 End If
1327
1328 Return SetStatus(GdipDrawImagePointsRectI(nativeGraphics, nativeImage, destPoints, count,
1329 srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
1330 End Function
1331
1332 Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
1333 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
1334 End Function
1335
1336 Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
1337 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
1338 End Function
1339
1340 Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
1341 Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
1342 End Function
1343
1344 Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
1345 Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
1346 End Function
1347
1348 Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
1349 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
1350 End Function
1351
1352 Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
1353 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
1354 End Function
1355
1356 Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
1357 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
1358 End Function
1359
1360 Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
1361 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
1362 End Function
1363
1364 Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1365 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
1366 End Function
1367
1368 Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
1369 Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
1370 End Function
1371
1372 ' The following methods are for playing an EMF+ to a graphics
1373 ' via the enumeration interface. Each record of the EMF+ is
1374 ' sent to the callback (along with the callbackData). Then
1375 ' the callback can invoke the Metafile::PlayRecord method
1376 ' to play the particular record.
1377
1378 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
1379 callback As EnumerateMetafileProc) As Status
1380
1381 Return EnumerateMetafile(metafile, destPoint, callback, 0, 0)
1382 End Function
1383
1384 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
1385 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1386
1387 Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0)
1388 End Function
1389
1390 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
1391 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1392
1393 Dim nativeImage As /*Const*/ *GpMetafile
1394 If VarPtr(metafile) <> 0 Then
1395 nativeImage = metafile.NativeImage
1396 Else
1397 nativeImage = 0
1398 End If
1399 Dim nativeImageAttr As *GpImageAttributes
1400 If VarPtr(imageAttributes) <> 0 Then
1401 nativeImageAttr = image.NativeImageAttr
1402 Else
1403 nativeImageAttr = 0
1404 End If
1405
1406 Return SetStatus(GdipEnumerateMetafileDestPoint(nativeGraphics,
1407 nativeImage, destPoint, callback, callbackData,nativeImageAttr))
1408 End Function
1409
1410 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
1411 callback As EnumerateMetafileProc) As Status
1412
1413 Return EnumerateMetafile(metafile, destPoint, callback, 0, 0)
1414 End Function
1415
1416 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
1417 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1418
1419 Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0)
1420 End Function
1421
1422 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
1423 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1424
1425 Dim nativeImage As /*Const*/ *GpMetafile
1426 If VarPtr(metafile) <> 0 Then
1427 nativeImage = metafile.NativeImage
1428 Else
1429 nativeImage = 0
1430 End If
1431 Dim nativeImageAttr As *GpImageAttributes
1432 If VarPtr(imageAttributes) <> 0 Then
1433 nativeImageAttr = image.NativeImageAttr
1434 Else
1435 nativeImageAttr = 0
1436 End If
1437
1438 Return SetStatus(GdipEnumerateMetafileDestPointI(nativeGraphics,
1439 nativeImage, destPoint, callback, callbackData,nativeImageAttr))
1440 End Function
1441
1442 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
1443 callback As EnumerateMetafileProc) As Status
1444
1445 Return EnumerateMetafile(metafile, destRect, callback, 0, 0)
1446 End Function
1447
1448 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
1449 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1450
1451 Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0)
1452 End Function
1453
1454 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
1455 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1456
1457 Dim nativeImage As /*Const*/ *GpMetafile
1458 If VarPtr(metafile) <> 0 Then
1459 nativeImage = metafile.NativeImage
1460 Else
1461 nativeImage = 0
1462 End If
1463 Dim nativeImageAttr As *GpImageAttributes
1464 If VarPtr(imageAttributes) <> 0 Then
1465 nativeImageAttr = image.NativeImageAttr
1466 Else
1467 nativeImageAttr = 0
1468 End If
1469
1470 Return SetStatus(GdipEnumerateMetafileDestRect(nativeGraphics,
1471 nativeImage, destRect, callback, callbackData, nativeImageAttr))
1472 End Function
1473
1474 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
1475 callback As EnumerateMetafileProc) As Status
1476
1477 Return EnumerateMetafile(metafile, destRect, callback, 0, 0)
1478 End Function
1479
1480 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
1481 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1482
1483 Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0)
1484 End Function
1485
1486 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
1487 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1488
1489 Dim nativeImage As /*Const*/ *GpMetafile
1490 If VarPtr(metafile) <> 0 Then
1491 nativeImage = metafile.NativeImage
1492 Else
1493 nativeImage = 0
1494 End If
1495 Dim nativeImageAttr As *GpImageAttributes
1496 If VarPtr(imageAttributes) <> 0 Then
1497 nativeImageAttr = image.NativeImageAttr
1498 Else
1499 nativeImageAttr = 0
1500 End If
1501
1502 Return SetStatus(GdipEnumerateMetafileDestRectI(nativeGraphics,
1503 nativeImage, destRect, callback, callbackData, nativeImageAttr))
1504 End Function
1505
1506 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
1507 callback As EnumerateMetafileProc) As Status
1508
1509 Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0)
1510 End Function
1511
1512 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
1513 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1514
1515 Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0)
1516 End Function
1517
1518 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
1519 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1520
1521 Dim nativeImage As /*Const*/ *GpMetafile
1522 If VarPtr(metafile) <> 0 Then
1523 nativeImage = metafile.NativeImage
1524 Else
1525 nativeImage = 0
1526 End If
1527 Dim nativeImageAttr As *GpImageAttributes
1528 If VarPtr(imageAttributes) <> 0 Then
1529 nativeImageAttr = image.NativeImageAttr
1530 Else
1531 nativeImageAttr = 0
1532 End If
1533
1534 Return SetStatus(GdipEnumerateMetafileDestPoints(nativeGraphics,
1535 nativeImage,destPoints, count, callback, callbackData, nativeImageAttr))
1536 End Function
1537
1538 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
1539 callback As EnumerateMetafileProc) As Status
1540
1541 Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0)
1542 End Function
1543
1544 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
1545 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1546
1547 Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0)
1548 End Function
1549
1550 Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
1551 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1552
1553 Dim nativeImage As /*Const*/ *GpMetafile
1554 If VarPtr(metafile) <> 0 Then
1555 nativeImage = metafile.NativeImage
1556 Else
1557 nativeImage = 0
1558 End If
1559 Dim nativeImageAttr As *GpImageAttributes
1560 If VarPtr(imageAttributes) <> 0 Then
1561 nativeImageAttr = image.NativeImageAttr
1562 Else
1563 nativeImageAttr = 0
1564 End If
1565
1566 Return SetStatus(GdipEnumerateMetafileDestPointsI(nativeGraphics,
1567 nativeImage,destPoints, count, callback, callbackData, nativeImageAttr))
1568 End Function
1569
1570 Function EnumerateMetafile(metafile As /*Const*/ Metafile,
1571 destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
1572 callback As EnumerateMetafileProc) As Status
1573
1574 Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0)
1575 End Function
1576
1577 Function EnumerateMetafile(metafile As /*Const*/ Metafile,
1578 destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
1579 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1580
1581 Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0)
1582 End Function
1583
1584 Function EnumerateMetafile(metafile As /*Const*/ Metafile,
1585 destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
1586 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1587
1588 Dim nativeImage As /*Const*/ *GpMetafile
1589 If VarPtr(metafile) <> 0 Then
1590 nativeImage = metafile.NativeImage
1591 Else
1592 nativeImage = 0
1593 End If
1594 Dim nativeImageAttr As *GpImageAttributes
1595 If VarPtr(imageAttributes) <> 0 Then
1596 nativeImageAttr = image.NativeImageAttr
1597 Else
1598 nativeImageAttr = 0
1599 End If
1600
1601 Return SetStatus(GdipEnumerateMetafileSrcRectDestPoint(nativeGraphics, _
1602 nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1603 End Function
1604
1605 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1606 destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1607 callback As EnumerateMetafileProc) As Status
1608
1609 Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0)
1610 End Function
1611
1612 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1613 destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1614 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1615
1616 Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0)
1617 End Function
1618
1619 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1620 destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1621 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1622
1623 Dim nativeImage As /*Const*/ *GpMetafile
1624 If VarPtr(metafile) <> 0 Then
1625 nativeImage = metafile.NativeImage
1626 Else
1627 nativeImage = 0
1628 End If
1629 Dim nativeImageAttr As *GpImageAttributes
1630 If VarPtr(imageAttributes) <> 0 Then
1631 nativeImageAttr = image.NativeImageAttr
1632 Else
1633 nativeImageAttr = 0
1634 End If
1635
1636 Return SetStatus(GdipEnumerateMetafileSrcRectDestPointI(nativeGraphics, _
1637 nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1638 End Function
1639
1640 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1641 destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1642 callback As EnumerateMetafileProc) As Status
1643
1644 Return EnumerateMetafile(metafile, destRect, count, srcUnit, callback, 0, 0)
1645 End Function
1646
1647 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1648 destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1649 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1650
1651 Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0)
1652 End Function
1653
1654 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1655 destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1656 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1657
1658 Dim nativeImage As /*Const*/ *GpMetafile
1659 If VarPtr(metafile) <> 0 Then
1660 nativeImage = metafile.NativeImage
1661 Else
1662 nativeImage = 0
1663 End If
1664 Dim nativeImageAttr As *GpImageAttributes
1665 If VarPtr(imageAttributes) <> 0 Then
1666 nativeImageAttr = image.NativeImageAttr
1667 Else
1668 nativeImageAttr = 0
1669 End If
1670
1671 Return SetStatus(GdipEnumerateMetafileSrcRectDestRect(nativeGraphics, _
1672 nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1673 End Function
1674
1675 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1676 destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1677 callback As EnumerateMetafileProc) As Status
1678
1679 Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, 0, 0)
1680 End Function
1681
1682 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1683 destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1684 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1685
1686 Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0)
1687 End Function
1688
1689 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1690 destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1691 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1692
1693 Dim nativeImage As /*Const*/ *GpMetafile
1694 If VarPtr(metafile) <> 0 Then
1695 nativeImage = metafile.NativeImage
1696 Else
1697 nativeImage = 0
1698 End If
1699 Dim nativeImageAttr As *GpImageAttributes
1700 If VarPtr(imageAttributes) <> 0 Then
1701 nativeImageAttr = image.NativeImageAttr
1702 Else
1703 nativeImageAttr = 0
1704 End If
1705
1706 Return SetStatus(GdipEnumerateMetafileSrcRectDestRectI(nativeGraphics, _
1707 nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1708 End Function
1709
1710 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1711 destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1712 callback As EnumerateMetafileProc) As Status
1713
1714 Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0)
1715 End Function
1716
1717 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1718 destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1719 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1720
1721 Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0)
1722 End Function
1723
1724 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1725 destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
1726 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1727
1728 Dim nativeImage As /*Const*/ *GpMetafile
1729 If VarPtr(metafile) <> 0 Then
1730 nativeImage = metafile.NativeImage
1731 Else
1732 nativeImage = 0
1733 End If
1734 Dim nativeImageAttr As *GpImageAttributes
1735 If VarPtr(imageAttributes) <> 0 Then
1736 nativeImageAttr = image.NativeImageAttr
1737 Else
1738 nativeImageAttr = 0
1739 End If
1740
1741 Return SetStatus(GdipEnumerateMetafileSrcRectDestPoints(nativeGraphics, _
1742 nativeImage, destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1743 End Function
1744
1745 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1746 destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1747 callback As EnumerateMetafileProc) As Status
1748
1749 Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0)
1750 End Function
1751
1752 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1753 destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1754 callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
1755
1756 Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0)
1757 End Function
1758
1759 Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
1760 destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
1761 callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
1762
1763 Dim nativeImage As /*Const*/ *GpMetafile
1764 If VarPtr(metafile) <> 0 Then
1765 nativeImage = metafile.NativeImage
1766 Else
1767 nativeImage = 0
1768 End If
1769 Dim nativeImageAttr As *GpImageAttributes
1770 If VarPtr(imageAttributes) <> 0 Then
1771 nativeImageAttr = image.NativeImageAttr
1772 Else
1773 nativeImageAttr = 0
1774 End If
1775
1776 Return SetStatus(GdipEnumerateMetafileSrcRectDestPointsI(nativeGraphics, nativeImage, _
1777 destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
1778 End Function
1779
1780 Function SetClip(g As /*Const*/ Graphics) As Status
1781 Return SetClip(g, CombineMode.Replace)
1782 End Function
1783
1784 Function SetClip(rc As /*Const*/ RectangleF) As Status
1785 Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
1786 End Function
1787
1788 Function SetClip(rc As /*Const*/ Rectangle) As Status
1789 Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
1790 End Function
1791
1792 Function SetClip(path As /*Const*/ GraphicsPath) As Status
1793 Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, CombineMode.Replace))
1794 End Function
1795
1796 Function SetClip(region As /*Const*/ Region) As Status
1797 Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Replace))
1798 End Function
1799
1800 Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Status
1801 Return SetStatus(GdipSetClipGraphics(nativeGraphics, g->nativeGraphics, combineMode))
1802 End Function
1803
1804 Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Status
1805 Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
1806 End Function
1807
1808 Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Status
1809 Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
1810 End Function
1811
1812 Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Status
1813 Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, combineMode))
1814 End Function
1815
1816 Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Status
1817 Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, combineMode))
1818 End Function
1819
1820 ' This is different than the other SetClip methods because it assumes
1821 ' that the HRGN is already in device units, so it doesn't transform
1822 ' the coordinates in the HRGN.
1823
1824 Function SetClip(hrgn As HRGN, combineMode As CombineMode /* = CombineModeReplace*/) As Status
1825 Return SetStatus(GdipSetClipHrgn(nativeGraphics, hrgn, combineMode))
1826 End Function
1827
1828 Function IntersectClip(rc As /*Const*/ RectangleF) As Status
1829 Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
1830 End Function
1831
1832 Function IntersectClip(rc As /*Const*/ Rectangle) As Status
1833 Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
1834 End Function
1835
1836 Function IntersectClip(region As /*Const*/ Region) As Status
1837 Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Intersect))
1838 End Function
1839
1840 Function ExcludeClip(rc As /*Const*/ RectangleF) As Status
1841 Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
1842 End Function
1843
1844 Function ExcludeClip(rc As /*Const*/ Rectangle) As Status
1845 Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
1846 End Function
1847
1848 Function ExcludeClip(region As /*Const*/ Region) As Status
1849 Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Exclude))
1850 End Function
1851
1852 Function ResetClip() As Status
1853 Return SetStatus(GdipResetClip(nativeGraphics))
1854 End Function
1855
1856 Function TranslateClip(dx As Single, dy As Single) As Status
1857 Return SetStatus(GdipTranslateClip(nativeGraphics, dx, dy))
1858 End Function
1859
1860 Function TranslateClip(dx As Long, dy As Long) As Status
1861 Return SetStatus(GdipTranslateClipI(nativeGraphics, dx, dy))
1862 End Function
1863
1864 Const Function GetClip(region As Region) As Status
1865 Return SetStatus(GdipGetClip(nativeGraphics, region->nativeRegion))
1866 End Function
1867
1868 Const Function GetClipBounds(rc As RectangleF) As Status
1869 Return SetStatus(GdipGetClipBounds(nativeGraphics, rc))
1870 End Function
1871
1872 Const Function GetClipBounds(rc As Rectangle) As Status
1873 Return SetStatus(GdipGetClipBoundsI(nativeGraphics, rc))
1874 End Function
1875
1876 Const Function GetVisibleClipBounds(rc As RectangleF) As Status
1877 Return SetStatus(GdipGetVisibleClipBounds(nativeGraphics, rc))
1878 End Function
1879
1880 Const Function GetVisibleClipBounds(rc As Rectangle) As Status
1881 Return SetStatus(GdipGetVisibleClipBoundsI(nativeGraphics, rc))
1882 End Function
1883
1884 Const Function IsVisible(x As Long, y As Long) As BOOL
1885 Dim b = FALSE As BOOL
1886 SetStatus(GdipIsVisiblePointI(nativeGraphics, x, y, b))
1887 Return b
1888 End Function
1889
1890 Const Function IsVisible(pt As /*Const*/ Point) As BOOL
1891 Return IsVisible(pt.X, pt.Y)
1892 End Function
1893
1894 Const Function IsVisible(x As Long, y As Long, width As Long, height As Long) As BOOL
1895 Dim b = FALSE As BOOL
1896 SetStatus(GdipIsVisibleRectI(nativeGraphics, x, y, width, height, b))
1897 Return b
1898 End Function
1899
1900 Const Function IsVisible(rc As /*Const*/ Rectangle) As BOOL
1901 Return IsVisible(rc.X, rc.Y, rc.Width, rc.Height)
1902 End Function
1903
1904 Const Function IsVisible(x As Single, y As Single) As BOOL
1905 Dim b = FALSE As BOOL
1906 SetStatus(GdipIsVisiblePoint(nativeGraphics, x, y, b))
1907 Return b
1908 End Function
1909
1910 Const Function IsVisible(point As /*Const*/ PointF) As BOOL
1911 Return IsVisible(pt.X, pt.Y)
1912 End Function
1913
1914 Const Function IsVisible(x As Single, y As Single, width As Single, height As Single) As BOOL
1915 Dim b = FALSE As BOOL
1916 SetStatus(GdipIsVisibleRect(nativeGraphics, x, y, width, height, b))
1917 Return b
1918 End Function
1919
1920 Const Function IsVisible(rect As /*Const*/ RectangleF) As BOOL
1921 Return IsVisible(rc.X, rc.Y, rc.Width, rc.Height)
1922 End Function
1923
1924 Const Function Save() As GraphicsState
1925 Dim gstate As GraphicsState
1926 SetStatus(GdipSaveGraphics(nativeGraphics, state))
1927 Return gstate
1928 End Function
1929
1930 Function Restore(gstate As GraphicsState)
1931 Return SetStatus(GdipRestoreGraphics(nativeGraphics, gstate))
1932 End Function
1933
1934 Function BeginContainer(dstrect As /*Const*/ RectangleF, srcrect As /*Const*/ RectangleF, unit As GraphicsUnit) As GraphicsContainer
1935 Dim state As GraphicsContainer
1936 SetStatus(GdipBeginContainer(nativeGraphics, dstrect, srcrect, unit, state))
1937 Return state
1938 End Function
1939
1940 Function BeginContainer(dstrect As /*Const*/ Rectangle, srcrect As /*Const*/ Rectangle, unit As GraphicsUnit) As GraphicsContainer
1941 Dim state As GraphicsContainer
1942 SetStatus(GdipBeginContainerI(nativeGraphics, dstrect, srcrect, unit, state))
1943 Return state
1944 End Function
1945
1946 Function BeginContainer() As GraphicsContainer
1947 Dim state As GraphicsContainer
1948 SetStatus(GdipBeginContainer2(nativeGraphics, state))
1949 Return state
1950 End Function
1951
1952 Function EndContainer(state As GraphicsContainer) As Status
1953 Return SetStatus(GdipEndContainer(nativeGraphics, state))
1954 End Function
1955
1956 ' Only valid when recording metafiles.
1957
1958 Function AddMetafileComment(data As /*Const*/ *Byte, sizeData As DWord)
1959 Return SetStatus(GdipComment(nativeGraphics, sizeData, data))
1960 End Function
1961
1962 Static Function GetHalftonePalette() As HPALETTE
1963 Return GdipCreateHalftonePalette()
1964 End Function
1965
1966 Const Function GetLastStatus() As Status
1967 Dim lastStatus = lastResult
1968 lastResult = Status.Ok
1969 Return lastStatus
1970 End Function
1971
1972Private
1973' Sub Graphics(gr As Graphics)
1974' Debug
1975' End Sub
1976 Sub Operator =(gr As Graphics)
1977 Debug
1978 End Sub
1979
1980Protected
1981 Sub Graphics(graphics As *GpGraphics)
1982 lastResult = Status.Ok
1983 SetNativeGraphics(graphics)
1984 End Sub
1985
1986 Sub SetNativeGraphics(graphics As *GpGraphics)
1987 This.nativeGraphics = graphics
1988 End Sub
1989
1990 Const Function SetStatus(status As Status) As Status
1991 If status <> Status.Ok Then
1992 lastResult = status
1993 End If
1994 Return status
1995 End Function
1996
1997 Const Function GetNativeGraphics() As *GpGraphics
1998 Return This.nativeGraphics
1999 End Function
2000
2001 Function GetNativePen(pen As /*Const*/ *Pen) As *GpPen
2002 Return pen->nativePen
2003 End Function
2004
2005Protected
2006 nativeGraphics As *GpGraphics
2007 lastResult As /*Mutable*/ Status
2008End Class
2009
Note: See TracBrowser for help on using the repository browser.