Changeset 241


Ignore:
Timestamp:
May 9, 2007, 10:26:36 PM (17 years ago)
Author:
イグトランス (egtra)
Message:

GDI+に対して名前空間で囲ったものの、現在コンパイルできないため分岐させておく

Location:
branch/egtra-gdiplus
Files:
6 added
20 edited
4 copied

Legend:

Unmodified
Added
Removed
  • branch/egtra-gdiplus/Classes/System/Drawing/CharacterRange.ab

    r166 r241  
    33#ifndef __SYSTEM_DRAWING_CHARACTERRANGE_AB__
    44#define __SYSTEM_DRAWING_CHARACTERRANGE_AB__
     5
     6Namespace System
     7Namespace Drawing
    58
    69Class CharacterRange
     
    912        first = f
    1013        length = l
    11     End Sub
    12 
    13     Sub CharacterRange(ByRef c As CharacterRange)
    14         first = c.first
    15         length = c.length
    1614    End Sub
    1715
     
    3735    End Sub
    3836
    39     Sub Operator = (ByRef c As CharacterRange)
    40         first  = c.first
    41         length = c.length
    42     End Sub
    43 
    4437    Function Operator ==(c As CharacterRange)
    4538        Return Equals(c)
     
    6356End Class
    6457
     58End Namespace 'Drawing
     59End Namespace 'System
     60
     61
    6562#endif '__SYSTEM_DRAWING_CHARACTERRANGE_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Color.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_COLOR_AB__
    55
     6#include <GdiplusTypes.ab>
    67#include <Classes/System/Math.ab>
    78#include <Classes/System/Drawing/Imaging/misc.ab>
     9
     10Namespace System
     11Namespace Drawing
    812
    913Class Color
    1014Public
    1115    Sub Color()
    12         argb = MakeARGB(255, 0, 0, 0) ' Black
    13     End Sub
    14 
    15     Sub Color(ByRef c As Color)
    16         argb = c.argb
     16        argb = MakeARGB(255, 0, 0, 0) 'Black
    1717    End Sub
    1818
     
    2525    End Sub
    2626
    27     Sub Color(newArgb As ARGB)
     27    Sub Color(newArgb As Gdiplus.ARGB)
    2828        argb = newArgb
    2929    End Sub
    30 /*
    31     Sub Operator =(c As Color)
    32         argb = c.argb
    33     End Sub
    34 */
     30
    3531    Function Operator ==(c As Color) As Boolean
    3632        Return Equals(c)
     
    5753    End Function
    5854
    59     Function Value() As ARGB
     55    Function Value() As Gdiplus.ARGB
    6056        Return argb
    6157    End Function
    6258
    63     Sub Value(value As ARGB)
     59    Sub Value(value As Gdiplus.ARGB)
    6460        argb = value
    6561    End Sub
     
    7773    End Function
    7874
    79     Function ToArgb() As ARGB
     75    Function ToArgb() As Gdiplus.ARGB
    8076        Return argb
    8177    End Function
    8278
    83     Static Function FromArgb(argb As ARGB) As Color
     79    Static Function FromArgb(argb As Gdiplus.ARGB) As Color
    8480        Dim c As Color(argb)
    8581        Rteurn c
     
    301297    End Enum
    302298*/
    303     Static Function MakeARGB(a As Byte, r As Byte, g As Byte, b As Byte) As ARGB
    304         MakeARGB = (((b As ARGB) <<  BLUE_SHIFT) Or _
    305                     ((g As ARGB) << GREEN_SHIFT) Or _
    306                     ((r As ARGB) <<   RED_SHIFT) Or _
    307                     ((a As ARGB) << ALPHA_SHIFT))
     299    Static Function MakeARGB(a As Byte, r As Byte, g As Byte, b As Byte) As Gdiplus.ARGB
     300        MakeARGB = (((b As Gdiplus.ARGB) <<  Gdiplus.BLUE_SHIFT) Or _
     301                    ((g As Gdiplus.ARGB) << Gdiplus.GREEN_SHIFT) Or _
     302                    ((r As Gdiplus.ARGB) <<   Gdiplus.RED_SHIFT) Or _
     303                    ((a As Gdiplus.ARGB) << Gdiplus.ALPHA_SHIFT))
    308304    End Function
    309305
    310306Protected
    311     argb As ARGB
     307    argb As Gdiplus.ARGB
    312308End Class
    313309
     310End Namespace 'Drawing
     311End Namespace 'System
     312
    314313#endif '__SYSTEM_DRAWING_COLOR_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Drawing2D/Matrix.ab

    r77 r241  
    44#define __SYSTEM_DRAWING_DRAWING2D_MATRIX_AB__
    55
     6#include <GdiPlusGpStubs.ab>
     7
    68Class Matrix
     9Public
     10    Function NativeMatrix() As *Gdiplus.GpMatrix
     11        Return 0 '仮
     12    End Function
    713End Class
    814
  • branch/egtra-gdiplus/Classes/System/Drawing/Drawing2D/misc.ab

    r77 r241  
    33#ifndef __SYSTEM_DRAWING_DRAWING2D_MISC_AB__
    44#define __SYSTEM_DRAWING_DRAWING2D_MISC_AB__
     5
     6#require <gdiplusenums.ab>
     7
     8Namespace System
     9Namespace Drawing
     10Namespace Drawing2D
    511
    612Enum CombineMode
     
    8591End Enum
    8692
     93Enum WarpMode
     94    Perspective     ' 0
     95    Bilinear        ' 1
     96End Enum
     97
     98Enum DashCap
     99    Flat             = 0
     100    Round            = 2
     101    Triangle         = 3
     102End Enum
     103
     104Enum LineCap
     105    Flat             = 0
     106    Square           = 1
     107    Round            = 2
     108    Triangle         = 3
     109
     110    NoAnchor         = &h10
     111    SquareAnchor     = &h11
     112    RoundAnchor      = &h12
     113    DiamondAnchor    = &h13
     114    ArrowAnchor      = &h14
     115
     116    Custom           = &hff
     117
     118    AnchorMask       = &hf0
     119End Enum
     120
     121Enum PenAlignment
     122    Center       = 0
     123    Inset        = 1
     124End Enum
     125
     126Enum LineJoin
     127    Miter        = 0
     128    Bevel        = 1
     129    Round        = 2
     130    MiterClipped = 3
     131End Enum
     132
     133Enum PenType
     134    SolidColor       = Gdiplus.BrushTypeSolidColor
     135    HatchFill        = Gdiplus.BrushTypeHatchFill
     136    TextureFill      = Gdiplus.BrushTypeTextureFill
     137    PathGradient     = Gdiplus.BrushTypePathGradient
     138    LinearGradient   = Gdiplus.BrushTypeLinearGradient
     139    Unknown          = -1
     140End Enum
     141
     142End Namespace 'Drawing2D
     143End Namespace 'Drawing
     144End Namespace 'System
     145
    87146#endif '__SYSTEM_DRAWING_DRAWING2D_MISC_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Font.ab

    r212 r241  
    22#define _GDIPLUSFONT_H
    33
    4 #require <GdiPlus.ab>
     4#require <GdiPlusTypes.ab>
     5#require <GdiPlusGpStubs.ab>
     6#require <GdiPlusFlat.ab>
    57#require <Classes/System/Drawing/misc.ab>
    68#require <Classes/System/Drawing/Graphics.ab>
    79
     10Namespace System
     11Namespace Drawing
     12
    813Class FontFamily : End Class
     14
     15Namespace Text
    916Class FontCollection : End Class
     17End Namespace
     18
     19'Todo: コンストラクタ内での別コンストラクタ呼出を修正せよ
    1020
    1121Class Font
     
    1424
    1525    Sub Font(/*IN*/ hdc As HDC)
    16         Dim font = 0 As *GpFont
    17         lastResult = GdipCreateFontFromDC(hdc, font)
     26        Dim font = 0 As *Gdiplus.GpFont
     27        lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font)
    1828        SetNativeFont(font)
    1929    End Sub
    2030
    2131    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ ByRef logfont As LOGFONTA)
    22         Dim font = 0 As *GpFont
    23         lastResult =GdipCreateFontFromLogfontA(hdc, logfont, font)
     32        Dim font = 0 As *Gdiplus.GpFont
     33        lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontA(hdc, logfont, font)
    2434        SetNativeFont(font)
    2535    End Sub
    2636
    2737    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ ByRef logfont As LOGFONTW)
    28         Dim font = 0 As *GpFont
    29         lastResult =GdipCreateFontFromLogfontW(hdc, logfont, font)
     38        Dim font = 0 As *Gdiplus.GpFont
     39        lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontW(hdc, logfont, font)
    3040        SetNativeFont(font)
    3141    End Sub
    3242
    3343    Sub Font(/*IN*/ hdc As HDC, /*IN const*/ hfont As HFONT)
    34         Dim font = 0 As *GpFont
     44        Dim font = 0 As *Gdiplus.GpFont
    3545        If hfont <> 0 Then
    3646            Dim lf As LOGFONTA
    37             If GetObjectA(hfont, sizeof (LOGFONTA), lf) <> 0 Then
    38                 lastResult = GdipCreateFontFromLogfontA(hdc, lf, font)
     47            If GetObjectA(hfont, SizeOf (LOGFONTA), lf) <> 0 Then
     48                lastResult = Gdiplus.DllExports.GdipCreateFontFromLogfontA(hdc, lf, font)
    3949            Else
    40                 lastResult = GdipCreateFontFromDC(hdc, font)
     50                lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font)
    4151            End If
    4252        Else
    43             lastResult = GdipCreateFontFromDC(hdc, font)
     53            lastResult = Gdiplus.DllExports.GdipCreateFontFromDC(hdc, font)
    4454        End If
    4555        SetNativeFont(font)
     
    5969        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit)
    6070
    61         Dim font = 0 As *GpFont
    62         lastResult = GdipCreateFont(
    63             family.NativeFamily, emSize, style, unit, font)
     71        Dim font = 0 As *Gdiplus.GpFont
     72        lastResult = Gdiplus.DllExports.GdipCreateFont(family.NativeFamily, emSize, style, unit, font)
    6473        SetNativeFont(font)
    6574    End Sub
     
    95104    Sub Font(/*IN const*/ familyName As PCWSTR, /*IN*/ emSize As Single,
    96105        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit,
    97         /*IN const*/ ByRef fontCollection As FontCollection)
     106        /*IN const*/ ByRef fontCollection As Text.FontCollection)
    98107
    99108        nativeFont = 0
     
    104113        lastResult = family.GetLastStatus()
    105114
    106         If lastResult <> Ok Then
    107             nativeFamily = FontFamily.GenericSansSerif()->NativeFamily
    108             lastResult = FontFamily.GenericSansSerif()->lastResult
    109             If lastResult <> Ok Then
     115        If lastResult <> Gdiplus.Status.Ok Then
     116            nativeFamily = FontFamily.GenericSansSerif().NativeFamily
     117            lastResult = FontFamily.GenericSansSerif().lastResult
     118            If lastResult <> Gdiplus.Status.Ok Then
    110119                Exit Sub
    111120            End If
    112121        End If
    113122
    114         lastResult = GdipCreateFont(
     123        lastResult = Gdiplus.DllExports.GdipCreateFont(
    115124            nativeFamily, emSize, style, unit, nativeFont)
    116125
    117         If lastResult <> Ok Then
    118             nativeFamily = FontFamily.GenericSansSerif()->NativeFamily
    119             lastResult = FontFamily.GenericSansSerif()->lastResult
    120             If lastResult <> Ok Then
     126        If lastResult <> Gdiplus.Status.Ok Then
     127            nativeFamily = FontFamily.GenericSansSerif().NativeFamily
     128            lastResult = FontFamily.GenericSansSerif().lastResult
     129            If lastResult <> Gdiplus.Status.Ok Then
    121130                Exit Sub
    122131            End If
    123132
    124             lastResult = GdipCreateFont(
    125                 nativeFamily, emSize, style, unit, nativeFont)
     133            lastResult = Gdiplus.DllExports.GdipCreateFont(nativeFamily, emSize, style, unit, nativeFont)
    126134        End If
    127135    End Sub
     
    129137    Sub Font(/*IN const*/ familyName As String, /*IN*/ emSize As Single,
    130138        /*IN*/ style As Long, /*IN*/ unit As GraphicsUnit,
    131         /*IN const*/ fontCollection As FontCollection)
    132 #ifdef __STRING_IS_NOT_UNICODE
    133         Dim oldAlloc = _System_AllocForConvertedString
    134         _System_AllocForConvertedString = AddressOf (_System_malloc)
    135         Dim name = ToWCStr(familyName)
    136         Font(name, emSize, style, unit, fontCollection)
    137         _System_free(name)
    138         _System_AllocForConvertedString = oldAlloc
    139 #else
    140         Font(familyName.Chars, emSize, style, unit, fontCollection)
    141 #endif
    142     End Sub
    143 
    144     Const Function GetLogFontA(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Status
     139        /*IN const*/ fontCollection As Text.FontCollection)
     140        Font(ToWCStr(familyName), emSize, style, unit, fontCollection)
     141    End Sub
     142
     143    Const Function GetLogFontA(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTA) As Gdiplus.Status
    145144        Dim nativeGraphics As *GpGraphics
    146145        If VarPtr(g) <> 0 Then
    147146            nativeGraphics = g.nativeGraphics
    148147        End If
    149         Return SetStatus(GdipGetLogFontA(nativeFont, nativeGraphics, lf))
    150     End Function
    151 
    152     Const Function GetLogFontW(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Status
     148        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontA(nativeFont, nativeGraphics, lf))
     149    End Function
     150
     151    Const Function GetLogFontW(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONTW) As Gdiplus.Status
    153152        Dim nativeGraphics As *GpGraphics
    154153        If VarPtr(g) <> 0 Then
    155154            nativeGraphics = g.nativeGraphics
    156155        End If
    157         Return SetStatus(GdipGetLogFontW(nativeFont, nativeGraphics, lf))
    158     End Function
    159 
    160     Const Function GetLogFont(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONT) As Status
     156        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontW(nativeFont, nativeGraphics, lf))
     157    End Function
     158
     159    Const Function GetLogFont(/*IN const*/ g As Graphics, /*OUT*/ ByRef lf As LOGFONT) As Gdiplus.Status
    161160        Dim nativeGraphics As *GpGraphics
    162161        If VarPtr(g) <> 0 Then
     
    164163        End If
    165164#ifdef UNICODE
    166         Return SetStatus(GdipGetLogFontW(nativeFont, nativeGraphics, lf))
     165        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontW(nativeFont, nativeGraphics, lf))
    167166#else
    168         Return SetStatus(GdipGetLogFontA(nativeFont, nativeGraphics, lf))
     167        Return SetStatus(Gdiplus.DllExports.GdipGetLogFontA(nativeFont, nativeGraphics, lf))
    169168#endif
    170169    End Function
    171170
    172171    Const Function Clone() As Font
    173         Dim cloneFont = 0 As *GpFont
    174         SetStatus(GdipCloneFont(nativeFont, cloneFont))
     172        Dim cloneFont = 0 As *Gdiplus.GpFont
     173        SetStatus(Gdiplus.DllExports.GdipCloneFont(nativeFont, cloneFont))
    175174        Return New Font(cloneFont, lastResult)
    176175    End Function
    177176
     177    Sub Dispose()
     178        Gdiplus.DllExports.GdipDeleteFont(nativeFont)
     179        nativeFont = 0
     180    End Sub
     181
    178182    Sub ~Font()
    179         GdipDeleteFont(nativeFont)
     183        If nativeFont <> 0 Then
     184            Dispose()
     185        End If
    180186    End Sub
    181187
     
    185191
    186192    Const Function Style() As Long
    187         SetStatus(GdipGetFontStyle(nativeFont, Style))
     193        SetStatus(Gdiplus.DllExports.GdipGetFontStyle(nativeFont, Style))
    188194    End Function
    189195
    190196    Const Function Size() As Single
    191         SetStatus(GdipGetFontSize(nativeFont, Size))
    192     End Function
    193 
    194     Const Function SizeInPoints() As Single
     197        SetStatus(Gdiplus.DllExports.GdipGetFontSize(nativeFont, Size))
     198    End Function
     199
     200'   Const Function SizeInPoints() As Single
    195201
    196202    Const Function Unit() As GraphicsUnit
    197         SetStatus(GdipGetFontUnit(nativeFont, Unit))
    198     End Function
    199 
    200     Const Function LastStatus() As Status
     203        SetStatus(Gdiplus.DllExports.GdipGetFontUnit(nativeFont, Unit))
     204    End Function
     205
     206    Const Function LastStatus() As Gdiplus.Status
    201207        Return lastResult
    202208    End Function
     
    207213
    208214    Const Function GetHeight() As Single
    209         SetStatus(GdipGetFontHeight(nativeFont, 0, GetHeight))
     215        SetStatus(Gdiplus.DllExports.GdipGetFontHeight(nativeFont, 0, GetHeight))
    210216    End Function
    211217
    212218    Const Function GetHeight(/*IN const*/ g As Graphics) As Single
    213         Dim nativeGraphics As *GpGraphics
     219        Dim nativeGraphics As *Gdiplus.GpGraphics
    214220        If VarPtr(g) <> 0 Then
    215221            nativeGraphics = g.NativeGraphics
    216222        End If
    217         SetStatus(GdipGetFontHeight(nativeFont, nativeGraphics, GetHeight))
     223        SetStatus(Gdiplus.DllExports.GdipGetFontHeight(nativeFont, nativeGraphics, GetHeight))
    218224    End Function
    219225
    220226    Const Function GetHeight(/*IN*/ dpi As Single) As Single
    221         SetStatus(GdipGetFontHeightGivenDPI(nativeFont, dpi, GetHeight))
     227        SetStatus(Gdiplus.DllExports.GdipGetFontHeightGivenDPI(nativeFont, dpi, GetHeight))
    222228    End Function
    223229
    224230'    Const Function FontFamily(/*OUT*/ ByRef family As FontFamily)
    225 '       If VarPtr(family) = 0 Then
    226 '           Return SetStatus(Status.InvalidParameter)
    227 '       End If
    228 '       Dim status = GdipGetFamily(nativeFont, family->nativeFamily)
    229 '       family->SetStatus(status)
     231'       family = New FontFamily
     232'       Dim status = GdipGetFamily(nativeFont, family.nativeFamily)
     233'       family.SetStatus(status)
    230234'       Return SetStatus(status)
    231235'   End Function
     
    245249    'Const Function GdiVerticalFont() As Boolean
    246250
    247     Const Function NativeFont() As *GpFont
     251    Const Function NativeFont() As *Gdiplus.GpFont
    248252        Return nativeFont
    249253    End Function
     
    270274    'Const Function SizeInPoint() As Boolean
    271275
    272     Const Function NativeFont() As *GpFont
     276    Const Function NativeFont() As *Gdiplus.GpFont
    273277        Return nativeFont
    274278    End Function
     
    315319    End Sub
    316320
    317 Private
    318 '   Sub Font(ByRef f As Font)
    319 
    320 Protected
    321     Sub Font(f As *GpFont, status As Status)
     321'Protected
     322    Sub Font(f As *Gdiplus.GpFont, status As Gdiplus.Status)
    322323        lastResult = status
    323324        SetNativeFont(f)
    324325    End Sub
    325 
    326     Sub SetNativeFont(f As *GpFont)
     326Protected
     327    Sub SetNativeFont(f As *Gdiplus.GpFont)
    327328        nativeFont = f
    328329    End Sub
    329330
    330     Const Function SetStatus(s As Status) As Status
    331         If s <> Status.Ok Then
     331    Const Function SetStatus(s As Gdiplus.Status) As Gdiplus.Status
     332        If s <> Gdiplus.Status.Ok Then
    332333            lastResult = s
    333334            Return s
     
    338339
    339340Protected
    340     nativeFont As *GpFont
    341     /*mutable*/ lastResult As Status
     341    nativeFont As *Gdiplus.GpFont
     342    /*mutable*/ lastResult As Gdiplus.Status
    342343End Class
    343344
     345End Namespace 'Drawing
     346End Namespace 'System
     347
    344348#endif
  • branch/egtra-gdiplus/Classes/System/Drawing/Graphics.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_GRAPHICS_AB__
    55
    6 Class Brush : End Class
     6#require <GdiplusGpStubs.ab>
     7#require <GdiPlusFlat.ab>
     8#require <Classes/System/Drawing/misc.ab>
     9#require <Classes/System/Drawing/Rectangle.ab>
     10#require <Classes/System/Drawing/RectangleF.ab>
     11#require <Classes/System/Drawing/Point.ab>
     12#require <Classes/System/Drawing/PointF.ab>
     13#require <Classes/System/Drawing/SizeF.ab>
     14#require <Classes/System/Drawing/Font.ab>
     15#require <Classes/System/Drawing/Brush.ab>
     16'#require <Classes/System/Drawing/Pen.ab>
     17'#require <Classes/System/Drawing/Region.ab>
     18'#require <Classes/System/Drawing/StringFormat.ab>
     19'#require <Classes/System/Drawing/Image.ab>
     20#require <Classes/System/Drawing/Drawing2D/misc.ab>
     21#require <Classes/System/Drawing/Drawing2D/Matrix.ab>
     22#require <Classes/System/Drawing/Imaging/ImageAttributes.ab>
     23
     24Namespace System
     25Namespace Drawing
     26
    727Class Pen : End Class
    828Class StringFormat : End Class
    929Class Image : End Class
    10 Class ImageAttributes : End Class
    1130Class Metafile : End Class
    1231Class Region : End Class
    1332Class GraphicsPath : End Class
    1433Class CachedBitmap : End Class
    15 
    16 #include <GdiplusGpStubs.ab>
    17 #include <GdiPlusFlat.ab>
    18 #include <Classes/System/Drawing/misc.ab>
    19 #include <Classes/System/Drawing/Rectangle.ab>
    20 #include <Classes/System/Drawing/RectangleF.ab>
    21 #include <Classes/System/Drawing/Point.ab>
    22 #include <Classes/System/Drawing/PointF.ab>
    23 #include <Classes/System/Drawing/SizeF.ab>
    24 #include <Classes/System/Drawing/Font.ab>
    25 '#include <Classes/System/Drawing/Brush.ab>
    26 '#include <Classes/System/Drawing/Pen.ab>
    27 '#include <Classes/System/Drawing/Region.ab>
    28 '#include <Classes/System/Drawing/StringFormat.ab>
    29 '#include <Classes/System/Drawing/Image.ab>
    30 #include <Classes/System/Drawing/Drawing2D/misc.ab>
    31 #include <Classes/System/Drawing/Drawing2D/Matrix.ab>
    3234
    3335Class Graphics
     
    104106    End Function
    105107
    106     Function PageScale(scale As Single) As Status
     108    Function PageScale(scale As Single) As Gdiplus.Status
    107109        Return SetStatus(GdipSetPageScale(nativeGraphics, scale))
    108110    End Function
     
    120122    End Function
    121123
    122     Function PageUnit(unit As GraphicsUnit) As Status
     124    Function PageUnit(unit As GraphicsUnit) As Gdiplus.Status
    123125        Return SetStatus(GdipSetPageUnit(nativeGraphics, unit))
    124126    End Function
     
    206208
    207209    Sub Graphics(hdc As HDC)
    208         Dim graphics = 0 As GpGraphics
     210        Dim graphics = 0 As Gdiplus.GpGraphics
    209211        lastResult = GdipCreateFromHDC(hdc, graphics)
    210212        SetNativeGraphics(graphics)
     
    212214
    213215    Sub Graphics(hdc As HDC, hdevice As HANDLE)
    214         Dim graphics = 0 As *GpGraphics
     216        Dim graphics = 0 As *Gdiplus.GpGraphics
    215217        lastResult = GdipCreateFromHDC2(hdc, hdevice, graphics)
    216218        SetNativeGraphics(graphics)
     
    218220
    219221    Sub Graphics(hwnd As HWND)
    220         Dim graphics = 0 As *GpGraphics
     222        Dim graphics = 0 As *Gdiplus.GpGraphics
    221223        lastResult = GdipCreateFromHWND(hwnd, graphics)
    222224        SetNativeGraphics(graphics)
     
    224226
    225227    Sub Graphics(hwnd As HWND, icm As BOOL)
    226         Dim graphics = 0 As *GpGraphics
     228        Dim graphics = 0 As *Gdiplus.GpGraphics
    227229        If icm <> FALSE Then
    228230            lastResult = GdipCreateFromHWNDICM(hwnd, graphics)
     
    234236
    235237    Sub Graphics(image As Image)
    236         Dim graphics = 0 As *GpGraphics
     238        Dim graphics = 0 As *Gdiplus.GpGraphics
    237239        If (image != 0)
    238240            lastResult = GdipGetImageGraphicsContext(image->NativeImage, graphics)
     
    273275    '------------------------------------------------------------------------
    274276
    275     Function SetRenderingOrigin(x As Long, y As Long) As Status
     277    Function SetRenderingOrigin(x As Long, y As Long) As Gdiplus.Status
    276278        Return SetStatus(GdipSetRenderingOrigin(nativeGraphics, x, y))
    277279    End Function
    278280
    279     Const Function GetRenderingOrigin(x As Long, y As Long) As Status
     281    Const Function GetRenderingOrigin(x As Long, y As Long) As Gdiplus.Status
    280282        Return SetStatus(GdipGetRenderingOrigin(nativeGraphics, x, y))
    281283    End Function
    282284
    283     Function SetCompositingMode(compositingMode As CompositingMode) As Status
     285    Function SetCompositingMode(compositingMode As CompositingMode) As Gdiplus.Status
    284286        Return SetStatus(GdipSetCompositingMode(nativeGraphics, compositingMode))
    285287    End Function
     
    301303    End Function
    302304
    303     Function SetTextRenderingHint(newMode As TextRenderingHint) As Status
     305    Function SetTextRenderingHint(newMode As TextRenderingHint) As Gdiplus.Status
    304306        Return SetStatus(GdipSetTextRenderingHint(nativeGraphics, newMode))
    305307    End Function
     
    311313    End Function
    312314
    313     Function SetTextContrast(contrast As DWord) As Status
     315    Function SetTextContrast(contrast As DWord) As Gdiplus.Status
    314316        Return SetStatus(GdipSetTextContrast(nativeGraphics, contrast))
    315317    End Function
     
    327329    End Function
    328330
    329     Function SetInterpolationMode(interpolationMode As InterpolationMode) As Status
     331    Function SetInterpolationMode(interpolationMode As InterpolationMode) As Gdiplus.Status
    330332        Return SetStatus(GdipSetInterpolationMode(nativeGraphics, interpolationMode))
    331333    End Function
     
    337339    End Function
    338340
    339     Function SetSmoothingMode(smoothingMode As SmoothingMode) As Status
     341    Function SetSmoothingMode(smoothingMode As SmoothingMode) As Gdiplus.Status
    340342        Return SetStatus(GdipSetSmoothingMode(nativeGraphics, smoothingMode))
    341343    End Function
     
    347349    End Function
    348350
    349     Function SetPixelOffsetMode(pixelOffsetMode As PixelOffsetMode) As Status
     351    Function SetPixelOffsetMode(pixelOffsetMode As PixelOffsetMode) As Gdiplus.Status
    350352        Return SetStatus(GdipSetPixelOffsetMode(nativeGraphics, pixelOffsetMode))
    351353    End Function
     
    355357    '------------------------------------------------------------------------
    356358
    357     Function SetTransform(matrix As /*Const*/ *Matrix) As Status
     359    Function SetTransform(matrix As /*Const*/ *Matrix) As Gdiplus.Status
    358360        Return SetStatus(GdipSetWorldTransform(nativeGraphics, matrix->nativeMatrix))
    359361    End Function
    360362
    361     Function ResetTransform() As Status
     363    Function ResetTransform() As Gdiplus.Status
    362364        Return SetStatus(GdipResetWorldTransform(nativeGraphics))
    363365    End Function
    364366
    365     Function MultiplyTransform(matrix As /*Const*/ Matrix) As Status
     367    Function MultiplyTransform(matrix As /*Const*/ Matrix) As Gdiplus.Status
    366368        Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, MatrixOrder.Prepend))
    367369    End Function
    368370
    369     Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Status
     371    Function MultiplyTransform(matrix As /*Const*/ Matrix, order As MatrixOrder) As Gdiplus.Status
    370372        Return SetStatus(GdipMultiplyWorldTransform(nativeGraphics, matrix->nativeMatrix, order))
    371373    End Function
    372374
    373     Function TranslateTransform(dx As Single, dy As Single) As Status
     375    Function TranslateTransform(dx As Single, dy As Single) As Gdiplus.Status
    374376        Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, MatrixOrder.Prepend))
    375377    End Function
    376378
    377     Function TranslateTransform(dx As Single, dy As Single, order As MatrixOrder) As Status
     379    Function TranslateTransform(dx As Single, dy As Single, order As MatrixOrder) As Gdiplus.Status
    378380        Return SetStatus(GdipTranslateWorldTransform(nativeGraphics, dx, dy, order))
    379381    End Function
    380382
    381     Function ScaleTransform(sx As Single, sy As Single) As Status
     383    Function ScaleTransform(sx As Single, sy As Single) As Gdiplus.Status
    382384        Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, MatrixOrder.Prepend))
    383385    End Function
    384386
    385     Function ScaleTransform(sx As Single, sy As Single, order As MatrixOrder) As Status
     387    Function ScaleTransform(sx As Single, sy As Single, order As MatrixOrder) As Gdiplus.Status
    386388        Return SetStatus(GdipScaleWorldTransform(nativeGraphics, sx, sy, order))
    387389    End Function
    388390
    389     Function RotateTransform(angle As Single) As Status
     391    Function RotateTransform(angle As Single) As Gdiplus.Status
    390392        Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, MatrixOrder.Prepend))
    391393    End Function
    392394
    393     Function RotateTransform(angle As Single, order As MatrixOrder) As Status
     395    Function RotateTransform(angle As Single, order As MatrixOrder) As Gdiplus.Status
    394396        Return SetStatus(GdipRotateWorldTransform(nativeGraphics, angle, order))
    395397    End Function
    396398
    397     Const Function GetTransform(matrix As Matrix) As Status
     399    Const Function GetTransform(matrix As Matrix) As Gdiplus.Status
    398400        Return SetStatus(GdipGetWorldTransform(nativeGraphics, matrix->nativeMatrix))
    399401    End Function
    400402
    401     Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As PointF, count As Long) As Status
     403    Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As PointF, count As Long) As Gdiplus.Status
    402404        Return SetStatus(GdipTransformPoints(nativeGraphics, destSpace, srcSpace, pts, count))
    403405    End Function
    404406
    405     Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As Point, count As Long) As Status
     407    Const Function TransformPoints(destSpace As CoordinateSpace, srcSpace As CoordinateSpace, pts As Point, count As Long) As Gdiplus.Status
    406408        Return SetStatus(GdipTransformPointsI(nativeGraphics, destSpace, srcSpace, pts, count))
    407409    End Function
     
    411413    '------------------------------------------------------------------------
    412414
    413     Const Function GetNearestColor(color As Color) As Status
     415    Const Function GetNearestColor(color As Color) As Gdiplus.Status
    414416        Dim argb = color->Value
    415417        Dim status = SetStatus(GdipGetNearestColor(nativeGraphics, argb))
     
    418420    End Function
    419421
    420     Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Status
     422    Function DrawLine(pen As /*Const*/ Pen, x1 As Single, y1 As Single, x2 As Single, y2 As Single) As Gdiplus.Status
    421423        Return SetStatus(GdipDrawLine(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
    422424    End Function
    423425
    424     Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Status
     426    Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF) As Gdiplus.Status
    425427        Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
    426428    End Function
    427429
    428     Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
     430    Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    429431        Return SetStatus(GdipDrawLines(nativeGraphics, pen->nativePen, points, count))
    430432    End Function
    431433
    432     Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Status
     434    Function DrawLine(pen As /*Const*/ Pen, x1 As Long, y1 As Long, x2 As Long, y2 As Long) As Gdiplus.Status
    433435        Return SetStatus(GdipDrawLineI(nativeGraphics, pen->nativePen, x1, y1, x2, y2))
    434436    End Function
    435437
    436     Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Status
     438    Function DrawLine(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point) As Gdiplus.Status
    437439        Return DrawLine(pen, pt1.X, pt1.Y, pt2.X, pt2.Y)
    438440    End Function
    439441
    440     Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
     442    Function DrawLines(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    441443        Return SetStatus(GdipDrawLinesI(nativeGraphics, pen->nativePen, points, count))
    442444    End Function
    443445
    444     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
     446    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 Gdiplus.Status
    445447        Return SetStatus(GdipDrawArc(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
    446448    End Function
    447449
    448     Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
     450    Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    449451        Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    450452    End Function
    451453
    452     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
     454    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 Gdiplus.Status
    453455        Return SetStatus(GdipDrawArcI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
    454456    End Function
    455457
    456     Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
     458    Function DrawArc(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    457459        Return DrawArc(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    458460    End Function
    459461
    460     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
     462    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 Gdiplus.Status
    461463        Return SetStatus(GdipDrawBezier(nativeGraphics, pen->nativePen, x1, y1,x2, y2, x3, y3, x4, y4))
    462464    End Function
    463465
    464     Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Status
     466    Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ PointF, pt2 As /*Const*/ PointF, pt3 As /*Const*/ PointF, pt4 As /*Const*/ PointF) As Gdiplus.Status
    465467        Return DrawBezier(pen, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
    466468    End Function
    467469
    468     Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
     470    Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    469471        Return SetStatus(GdipDrawBeziers(nativeGraphics, pen->nativePen, points, count))
    470472    End Function
    471473
    472     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
     474    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 Gdiplus.Status
    473475        Return SetStatus(GdipDrawBezierI(nativeGraphics, pen->nativePen, x1, y1, x2, y2, x3, y3, x4, y4))
    474476    End Function
    475477
    476     Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Status
     478    Function DrawBezier(pen As /*Const*/ Pen, pt1 As /*Const*/ Point, pt2 As /*Const*/ Point, pt3 As /*Const*/ Point, pt4 As /*Const*/ Point) As Gdiplus.Status
    477479        Return DrawBezier(pen pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y)
    478480    End Function
    479481
    480     Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
     482    Function DrawBeziers(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    481483        Return SetStatus(GdipDrawBeziersI(nativeGraphics, pen->nativePen, points, count))
    482484    End Function
    483485
    484     Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
     486    Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Gdiplus.Status
    485487        Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
    486488    End Function
    487489
    488     Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
     490    Function DrawRectangle(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status
    489491        Return SetStatus(GdipDrawRectangle(nativeGraphics, pen->nativePen, x, y, width, height))
    490492    End Function
    491493
    492     Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Status
     494    Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *RectangleF, count As Long) As Gdiplus.Status
    493495        Return SetStatus(GdipDrawRectangles(nativeGraphics, pen->nativePen, rects, count))
    494496    End Function
    495497
    496     Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
     498    Function DrawRectangle(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Gdiplus.Status
    497499        Return DrawRectangle(pen, rect.X, rect.Y, rect.Width, rect.Height)
    498500    End Function
    499501
    500     Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
     502    Function DrawRectangle(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status
    501503        Return SetStatus(GdipDrawRectangleI(nativeGraphics, pen->nativePen, x, y, width, height))
    502504    End Function
    503505
    504     Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Status
     506    Function DrawRectangles(pen As /*Const*/ Pen, rects As /*Const*/ *Rectangle,  count As Long) As Gdiplus.Status
    505507        Return SetStatus(GdipDrawRectanglesI(nativeGraphics, pen->nativePen, rects, count))
    506508    End Function
    507509
    508     Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Status
     510    Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF) As Gdiplus.Status
    509511        Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
    510512    End Function
    511513
    512     Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Status
     514    Function DrawEllipse(pen As /*Const*/ Pen, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status
    513515        Return SetStatus(GdipDrawEllipse(nativeGraphics, pen->nativePen, x, y, width, height))
    514516    End Function
    515517
    516     Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Status
     518    Function DrawEllipse(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle) As Gdiplus.Status
    517519        Return DrawEllipse(pen, rect.X, rect.Y, rect.Width, rect.Height)
    518520    End Function
    519521
    520     Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Status
     522    Function DrawEllipse(pen As /*Const*/ Pen, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status
    521523        Return SetStatus(GdipDrawEllipseI(nativeGraphics, pen->nativePen, x, y, width, height))
    522524    End Function
    523525
    524     Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
     526    Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    525527        Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    526528    End Function
    527529
    528     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
     530    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 Gdiplus.Status
    529531        Return SetStatus(GdipDrawPie(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
    530532    End Function
    531533
    532     Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
     534    Function DrawPie(pen As /*Const*/ Pen, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    533535        Return DrawPie(pen, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    534536    End Function
    535537
    536     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
     538    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 Gdiplus.Status
    537539        Return SetStatus(GdipDrawPieI(nativeGraphics, pen->nativePen, x, y, width, height, startAngle, sweepAngle))
    538540    End Function
    539541
    540     Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
     542    Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    541543        Return SetStatus(GdipDrawPolygon(nativeGraphics, pen->nativePen, points, count))
    542544    End Function
    543545
    544     Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
     546    Function DrawPolygon(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    545547        Return SetStatus(GdipDrawPolygonI(nativeGraphics, pen->nativePen, points, count))
    546548    End Function
    547549
    548     Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Status
     550    Function DrawPath(pen As /*Const*/ Pen, path As /*Const*/ GraphicsPath) As Gdiplus.Status
    549551        Return SetStatus(GdipDrawPath(nativeGraphics, pen->nativePen, path->nativePath))
    550552'       Return SetStatus(GdipDrawPath(nativeGraphics, pen ? pen->nativePen : NULL, path ? path->nativePath : NULL))
    551553    End Function
    552554
    553     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
     555    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    554556        Return SetStatus(GdipDrawCurve(nativeGraphics, pen->nativePen, points, count))
    555557    End Function
    556558
    557     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
     559    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Gdiplus.Status
    558560        Return SetStatus(GdipDrawCurve2(nativeGraphics, pen->nativePen, points,count, tension))
    559561    End Function
    560562
    561     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Status
     563    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long) As Gdiplus.Status
    562564        Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, 0.5))
    563565    End Function
    564566
    565     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
     567    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Gdiplus.Status
    566568        Return SetStatus(GdipDrawCurve3(nativeGraphics, pen->nativePen, points, count, offset,numberOfSegments, tension))
    567569    End Function
    568570
    569     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
     571    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    570572        Return SetStatus(GdipDrawCurveI(nativeGraphics, pen->nativePen, points, count))
    571573    End Function
    572574
    573     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
     575    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Gdiplus.Status
    574576        Return SetStatus(GdipDrawCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
    575577    End Function
    576578
    577     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Status
     579    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long) As Gdiplus.Status
    578580        Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, 0.5))
    579581    End Function
    580582
    581     Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Status
     583    Function DrawCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, offset As Long, numberOfSegments As Long, tension As Single) As Gdiplus.Status
    582584        Return SetStatus(GdipDrawCurve3I(nativeGraphics, pen->nativePen, points, count, offset, numberOfSegments, tension))
    583585    End Function
    584586
    585     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Status
     587    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    586588        Return SetStatus(GdipDrawClosedCurve(nativeGraphics, pen->nativePen, points, count))
    587589    End Function
    588590
    589     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Status
     591    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *PointF, count As Long, tension As Single) As Gdiplus.Status
    590592        Return SetStatus(GdipDrawClosedCurve2(nativeGraphics, pen->nativePen, points, count, tension))
    591593    End Function
    592594
    593     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Status
     595    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    594596        Return SetStatus(GdipDrawClosedCurveI(nativeGraphics, pen->nativePen, points, count))
    595597    End Function
    596598
    597     Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Status
     599    Function DrawClosedCurve(pen As /*Const*/ Pen, points As /*Const*/ *Point, count As Long, tension As Single) As Gdiplus.Status
    598600        Return SetStatus(GdipDrawClosedCurve2I(nativeGraphics, pen->nativePen, points, count, tension))
    599601    End Function
    600602
    601     Function Clear(color As /*Const*/ Color) As Status
     603    Function Clear(color As /*Const*/ Color) As Gdiplus.Status
    602604        Return SetStatus(GdipGraphicsClear(nativeGraphics, color.Value))
    603605    End Function
    604606
    605     Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
     607    Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Gdiplus.Status
    606608        Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
    607609    End Function
    608610
    609     Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
     611    Function FillRectangle(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status
    610612        Return SetStatus(GdipFillRectangle(nativeGraphics, brush->nativeBrush, x, y, width, height))
    611613    End Function
    612614
    613     Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Status
     615    Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *RectangleF, count As Long) As Gdiplus.Status
    614616        Return SetStatus(GdipFillRectangles(nativeGraphics,brush->nativeBrush,rects, count))
    615617    End Function
    616618
    617     Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
     619    Function FillRectangle(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Gdiplus.Status
    618620        Return FillRectangle(brush, rect.X, rect.Y, rect.Width, rect.Height)
    619621    End Function
    620622
    621     Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
     623    Function FillRectangle(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status
    622624        Return SetStatus(GdipFillRectangleI(nativeGraphics, brush->nativeBrush, x, y, width, height))
    623625    End Function
    624626
    625     Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Status
     627    Function FillRectangles(brush As /*Const*/ Brush, rects As /*Const*/ *Rectangle, count As Long) As Gdiplus.Status
    626628        Return SetStatus(GdipFillRectanglesI(nativeGraphics, brush->nativeBrush, rects, count))
    627629    End Function
    628630
    629     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
     631    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    630632        Return FillPolygon(brush, points, count, FillModeAlternate)
    631633    End Function
    632634
    633     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
     635    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Gdiplus.Status
    634636        Return SetStatus(GdipFillPolygon(nativeGraphics, brush->nativeBrush, points, count, fillMode))
    635637    End Function
    636638
    637     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
     639    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    638640        Return FillPolygon(brush, points, count, FillModeAlternate)
    639641    End Function
    640642
    641     Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
     643    Function FillPolygon(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Gdiplus.Status
    642644        Return SetStatus(GdipFillPolygonI(nativeGraphics, brush->nativeBrush, points, count, fillMode))
    643645    End Function
    644646
    645     Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Status
     647    Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF) As Gdiplus.Status
    646648        Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
    647649    End Function
    648650
    649     Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Status
     651    Function FillEllipse(brush As /*Const*/ Brush, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status
    650652        Return SetStatus(GdipFillEllipse(nativeGraphics, brush->nativeBrush, x, y, width, height))
    651653    End Function
    652654
    653     Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Status
     655    Function FillEllipse(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle) As Gdiplus.Status
    654656        Return FillEllipse(brush, rect.X, rect.Y, rect.Width, rect.Height)
    655657    End Function
    656658
    657     Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Status
     659    Function FillEllipse(brush As /*Const*/ Brush, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status
    658660        Return SetStatus(GdipFillEllipseI(nativeGraphics, brush->nativeBrush, x, y, width, height))
    659661    End Function
    660662
    661     Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Status
     663    Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ RectangleF, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    662664        Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    663665    End Function
    664666
    665     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
     667    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 Gdiplus.Status
    666668        Return SetStatus(GdipFillPie(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
    667669    End Function
    668670
    669     Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Status
     671    Function FillPie(brush As /*Const*/ Brush, rect As /*Const*/ Rectangle, startAngle As Single, sweepAngle As Single) As Gdiplus.Status
    670672        Return FillPie(brush, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle)
    671673    End Function
    672674
    673     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
     675    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 Gdiplus.Status
    674676        Return SetStatus(GdipFillPieI(nativeGraphics, brush->nativeBrush, x, y, width, height, startAngle, sweepAngle))
    675677    End Function
    676678
    677     Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Status
     679    Function FillPath(brush As /*Const*/ Brush, path As /*Const*/ GraphicsPath) As Gdiplus.Status
    678680        Return SetStatus(GdipFillPath(nativeGraphics, brush->nativeBrush, path->nativePath))
    679681    End Function
    680682
    681     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Status
     683    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long) As Gdiplus.Status
    682684        Return SetStatus(GdipFillClosedCurve(nativeGraphics, brush->nativeBrush, points, count))
    683685    End Function
    684686
    685     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Status
     687    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode) As Gdiplus.Status
    686688        Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
    687689    End Function
    688690
    689     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Status
     691    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *PointF, count As Long, fillMode As FillMode, tension As Single) As Gdiplus.Status
    690692        Return SetStatus(GdipFillClosedCurve2(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
    691693    End Function
    692694
    693     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Status
     695    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long) As Gdiplus.Status
    694696        Return SetStatus(GdipFillClosedCurveI(nativeGraphics, brush->nativeBrush, points, count))
    695697    End Function
    696698
    697     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Status
     699    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode) As Gdiplus.Status
    698700        Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, 0.5, fillMode))
    699701    End Function
    700702
    701     Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Status
     703    Function FillClosedCurve(brush As /*Const*/ Brush, points As /*Const*/ *Point, count As Long, fillMode As FillMode, tension As Single) As Gdiplus.Status
    702704        Return SetStatus(GdipFillClosedCurve2I(nativeGraphics, brush->nativeBrush, points, count, tension, fillMode))
    703705    End Function
    704706
    705     Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Status
     707    Function FillRegion(brush As /*Const*/ Brush, region As /*Const*/ Region) As Gdiplus.Status
    706708        Return SetStatus(GdipFillRegion(nativeGraphics, brush->nativeBrush, region->nativeRegion))
    707709    End Function
    708710
    709     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Status
     711    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF) As Gdiplus.Status
    710712        Dim nativeFont As *GpFont
    711713        If VarPtr(font) <> 0 Then
     
    718720
    719721    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ Rectangle,
    720         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
     722        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status
    721723
    722724        Dim nativeFont As *GpFont
     
    736738
    737739    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
    738         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
     740        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status
    739741
    740742        Dim nativeFont As *GpFont
     
    759761    End Function
    760762
    761     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Status
     763    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ Point) As Gdiplus.Status
    762764        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
    763765        Dim nativeFont As *GpFont
     
    771773
    772774    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
    773         brush As /*Const*/ Brush) As Status
     775        brush As /*Const*/ Brush) As Gdiplus.Status
    774776
    775777        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
     
    789791    End Function
    790792
    791     Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Status
     793    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF) As Gdiplus.Status
    792794        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
    793795        Dim nativeFont As *GpFont
     
    801803
    802804    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
    803         stringFormat As /*Const*/ StringFormat) As Status
     805        stringFormat As /*Const*/ StringFormat) As Gdiplus.Status
    804806
    805807        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
     
    820822
    821823    Function DrawString(str As PCWSTR, length As Long, font As /*Const*/ Font, origin As /*Const*/ PointF,
    822         stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Status
     824        stringFormat As /*Const*/ StringFormat, brush As /*Const*/ Brush) As Gdiplus.Status
    823825
    824826        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
     
    844846
    845847    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
    846         stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Status
     848        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF) As Gdiplus.Status
    847849
    848850        Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, ByVal 0, ByVal 0)
     
    851853    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
    852854        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
    853         codepointsFitted As Long) As Status
     855        codepointsFitted As Long) As Gdiplus.Status
    854856
    855857        Return MeasureString(str, length, font, layoutRect, stringFormat, boundingBox, codepointsFitted, ByVal 0)
     
    858860    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font, layoutRect As /*Const*/ RectangleF,
    859861        stringFormat As /*Const*/ StringFormat, boundingBox As RectangleF,
    860         codepointsFitted As Long, linesFilled As Long) As Status
     862        codepointsFitted As Long, linesFilled As Long) As Gdiplus.Status
    861863
    862864        Dim nativeFont As *GpFont
     
    878880    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    879881        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
    880         size As SizeF) As Status
     882        size As SizeF) As Gdiplus.Status
    881883
    882884            Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, ByVal 0, ByVal 0)
     
    885887    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    886888        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
    887         size As SizeF, codepointsFitted As Long) As Status
     889        size As SizeF, codepointsFitted As Long) As Gdiplus.Status
    888890
    889891            Return MeasureString(str, length, font, layoutRectSize, stringFormat, size, codepointsFitted, ByVal 0)
     
    892894    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    893895        layoutRectSize As /*Const*/ SizeF, stringFormat As /*Const*/ StringFormat,
    894         size As SizeF, codepointsFitted As Long, linesFilled As Long) As Status
     896        size As SizeF, codepointsFitted As Long, linesFilled As Long) As Gdiplus.Status
    895897
    896898        Dim layoutRect As RectangleF(0, 0, layoutRectSize.Width, layoutRectSize.Height)
     
    917919            nativeFont, layoutRect, nativeFormat, pBoundingBox, codepointsFitted, linesFilled))
    918920
    919         If VarPtr(size) <> 0 And status = Status.Ok Then
     921        If VarPtr(size) <> 0 And status = Gdiplus.Status.Ok Then
    920922            size.Width  = boundingBox.Width
    921923            size.Height = boundingBox.Height
     
    927929    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    928930        origin As /*Const*/ PointF, stringFormat As /*Const*/ StringFormat,
    929         boundingBox As RectangleF) As Status
     931        boundingBox As RectangleF) As Gdiplus.Status
    930932
    931933        Dim rect As RectangleF(origin.X, origin.Y, 0.0f, 0.0f)
     
    947949
    948950    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    949         layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Status
     951        layoutRect As /*Const*/ RectangleF, boundingBox As RectangleF) As Gdiplus.Status
    950952
    951953        Dim nativeFont As *GpFont
     
    960962
    961963    Const Function MeasureString(str As PCWSTR, length As Long, font As /*Const*/ Font,
    962         origin As /*Const*/ PointF, boundingBox As RectangleF) As Status
     964        origin As /*Const*/ PointF, boundingBox As RectangleF) As Gdiplus.Status
    963965        Dim rect As RectangleF(origin.X, origin.Y, 0.0, 0.0)
    964966
     
    974976    Const Function MeasureCharacterRanges(str As PCWSTR, length As Long, font As /*Const*/ Font,
    975977        layoutRect As /*Const*/ RectangleF, stringFormat As /*Const*/ StringFormat,
    976         regionCount As Long, regions As *Region) As Status
     978        regionCount As Long, regions As *Region) As Gdiplus.Status
    977979        If regions = 0 Or regionCount <= 0 Then
    978980            Return InvalidParameter
     
    10101012
    10111013    Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
    1012         brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Status
     1014        brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long) As Gdiplus.Status
    10131015
    10141016        Return DrawDriverString(text, length, font, brush, positions, flags, ByVal 0)
     
    10161018
    10171019    Function DrawDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
    1018         brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Status
     1020        brush As /*Const*/ Brush, positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix) As Gdiplus.Status
    10191021
    10201022        Dim nativeFont As *GpFont
     
    10401042
    10411043    Const Function MeasureDriverString(text As /*Const*/ Word, length As Long, font As /*Const*/ Font,
    1042         positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Status
     1044        positions As /*Const*/ *PointF, flags As Long, matrix As /*Const*/ Matrix, boundingBox As RectangleF) As Gdiplus.Status
    10431045
    10441046        Dim nativeFont As *GpFont
     
    10611063    ' native format differs from this Graphics.
    10621064
    1063     Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Status
     1065    Function DrawCachedBitmap(cb As CachedBitmap, x As Long, y As Long) As Gdiplus.Status
    10641066        Return SetStatus(GdipDrawCachedBitmap(nativeGraphics, cb->nativeCachedBitmap, x, y))
    10651067    End Function
    10661068
    1067     Function DrawImage(image As Image, point As /*Const*/ PointF) As Status
     1069    Function DrawImage(image As Image, point As /*Const*/ PointF) As Gdiplus.Status
    10681070        Return DrawImage(image, point.X, point.Y)
    10691071    End Function
    10701072
    1071     Function DrawImage(image As Image, x As Single, y As Single) As Status
     1073    Function DrawImage(image As Image, x As Single, y As Single) As Gdiplus.Status
    10721074        Dim nativeImage As *GpImage
    10731075        If VarPtr(image) <> 0 Then
     
    10791081    End Function
    10801082
    1081     Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Status
     1083    Function DrawImage(image As Image, rect As /*Const*/ RectangleF) As Gdiplus.Status
    10821084        Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
    10831085    End Function
    10841086
    1085     Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Status
     1087    Function DrawImage(image As Image, x As Single, y As Single, width As Single, height As Single) As Gdiplus.Status
    10861088        Dim nativeImage As *GpImage
    10871089        If VarPtr(image) <> 0 Then
     
    10931095    End Function
    10941096
    1095     Function DrawImage(image As Image, point As /*Const*/ Point) As Status
    1096         Return DrawImage(image, point.X, point.Y) As Status
    1097     End Function
    1098 
    1099     Function DrawImage(image As Image, x As Long, y As Long) As Status
     1097    Function DrawImage(image As Image, point As /*Const*/ Point) As Gdiplus.Status
     1098        Return DrawImage(image, point.X, point.Y) As Gdiplus.Status
     1099    End Function
     1100
     1101    Function DrawImage(image As Image, x As Long, y As Long) As Gdiplus.Status
    11001102        Dim nativeImage As *GpImage
    11011103        If VarPtr(image) <> 0 Then
     
    11071109    End Function
    11081110
    1109     Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Status
     1111    Function DrawImage(image As Image, rect As /*Const*/ Rectangle) As Gdiplus.Status
    11101112        Return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height)
    11111113    End Function
    11121114
    1113     Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Status
     1115    Function DrawImage(image As Image, x As Long, y As Long, width As Long, height As Long) As Gdiplus.Status
    11141116        Dim nativeImage As *GpImage
    11151117        If VarPtr(image) <> 0 Then
     
    11291131    '      destPoints[3] <=> bottom-right corner
    11301132
    1131     Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Status
     1133    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long) As Gdiplus.Status
    11321134        If count <> 3 And count <> 4 Then
    11331135            Return SetStatus(InvalidParameter)
     
    11431145    End Function
    11441146
    1145     Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Status
     1147    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long) As Gdiplus.Status
    11461148        If count <> 3 And count <> 4 Then
    11471149            Return SetStatus(InvalidParameter)
     
    11581160
    11591161    Function DrawImage(image As Image, x As Single, y As Single,
    1160         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
     1162        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status
    11611163
    11621164        Dim nativeImage As *GpImage
     
    11701172
    11711173    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
    1172         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
     1174        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status
    11731175
    11741176        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
     
    11771179    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
    11781180        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1179         imageAttributes As /*Const*/ ImageAttributes) As Status
     1181        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    11801182
    11811183        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
     
    11851187        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    11861188        imageAttributes As /*Const*/ ImageAttributes,
    1187         callback As DrawImageAbort) As Status
     1189        callback As DrawImageAbort) As Gdiplus.Status
    11881190
    11891191        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
     
    11921194    Function DrawImage(image As Image, destRect As /*Const*/ RectangleF,
    11931195        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1194         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
     1196        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status
    11951197
    11961198        Dim nativeImage As *GpImage
     
    12001202            nativeImage = 0
    12011203        End If
    1202         Dim nativeImageAttr As *GpImageAttributes
    1203         If VarPtr(imageAttributes) <> 0 Then
    1204             nativeImageAttr = image.NativeImageAttr
    1205         Else
    1206             nativeImageAttr = 0
    1207         End If
    12081204
    12091205        Return SetStatus(GdipDrawImageRectRect(nativeGraphics, nativeImageAttr,
    12101206            destRect.X, destRect.Y, destRect.Width, destRect.Height, srcx, srcy, srcwidth, srcheight,
    1211             srcUnit, nativeImageAttr, callback, callbackData))
     1207            srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData))
    12121208    End Function
    12131209
    12141210    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
    1215         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
     1211        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status
    12161212
    12171213        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
     
    12201216    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
    12211217        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1222         imageAttributes As /*Const*/ ImageAttributes) As Status
     1218        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    12231219
    12241220        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
     
    12281224        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    12291225        imageAttributes As /*Const*/ ImageAttributes,
    1230         callback As DrawImageAbort) As Status
     1226        callback As DrawImageAbort) As Gdiplus.Status
    12311227
    12321228        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
     
    12351231    Function DrawImage(image As Image, destPoints As /*Const*/ PointF, count As Long,
    12361232        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1237         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
     1233        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status
    12381234
    12391235        Dim nativeImage As *GpImage
     
    12431239            nativeImage = 0
    12441240        End If
    1245         Dim nativeImageAttr As *GpImageAttributes
    1246         If VarPtr(imageAttributes) <> 0 Then
    1247             nativeImageAttr = image.NativeImageAttr
    1248         Else
    1249             nativeImageAttr = 0
    1250         End If
    12511241
    12521242        Return SetStatus(GdipDrawImagePointsRect(nativeGraphics, nativeImage, destPoints, count,
    1253             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
     1243            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData))
    12541244    End Function
    12551245
    12561246    Function DrawImage(image As Image, x As Long, y As Long,
    1257         srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
     1247        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Gdiplus.Status
    12581248
    12591249        Dim nativeImage As *GpImage
     
    12671257
    12681258    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
    1269         srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Status
     1259        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit) As Gdiplus.Status
    12701260
    12711261        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
     
    12741264    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
    12751265        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1276         imageAttributes As /*Const*/ ImageAttributes) As Status
     1266        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    12771267
    12781268        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
     
    12811271    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
    12821272        srcx As Single, srcy As Single, srcwidth As Single, srcheight As Single, srcUnit As GraphicsUnit,
    1283         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Status
     1273        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort) As Gdiplus.Status
    12841274
    12851275        Return DrawImage(image, destRect, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
     
    12881278    Function DrawImage(image As Image, destRect As /*Const*/ Rectangle,
    12891279        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
    1290         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
     1280        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status
    12911281
    12921282        Dim nativeImage As *GpImage
     
    12961286            nativeImage = 0
    12971287        End If
    1298         Dim nativeImageAttr As *GpImageAttributes
    1299         If VarPtr(imageAttributes) <> 0 Then
    1300             nativeImageAttr = image.NativeImageAttr
    1301         Else
    1302             nativeImageAttr = 0
    1303         End If
    13041288
    13051289        Return SetStatus(GdipDrawImageRectRectI(nativeGraphics, nativeImage,
    13061290            destRect.X, destRect.Y, destRect.Width, destRect.Height,
    1307             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
     1291            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData))
    13081292    End Function
    13091293
    13101294    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
    1311         srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Status
     1295        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit) As Gdiplus.Status
    13121296
    13131297        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, 0, 0, 0)
     
    13161300    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
    13171301        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
    1318         imageAttributes As /*Const*/ ImageAttributes) As Status
     1302        imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    13191303
    13201304        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, 0, 0)
     
    13241308        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit, _
    13251309        imageAttributes As /*Const*/ ImageAttributes,
    1326         callback As DrawImageAbort) As Status
     1310        callback As DrawImageAbort) As Gdiplus.Status
    13271311
    13281312        Return DrawImage(image, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit, imageAttributes, callback, 0)
     
    13311315    Function DrawImage(image As Image, destPoints As /*Const*/ Point, count As Long,
    13321316        srcx As Long, srcy As Long, srcwidth As Long, srcheight As Long, srcUnit As GraphicsUnit,
    1333         imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Status
     1317        imageAttributes As /*Const*/ ImageAttributes, callback As DrawImageAbort, callbackData As VoidPtr) As Gdiplus.Status
    13341318
    13351319        Dim nativeImage As *GpImage
     
    13391323            nativeImage = 0
    13401324        End If
    1341         Dim nativeImageAttr As *GpImageAttributes
    1342         If VarPtr(imageAttributes) <> 0 Then
    1343             nativeImageAttr = image.NativeImageAttr
    1344         Else
    1345             nativeImageAttr = 0
    1346         End If
    13471325
    13481326        Return SetStatus(GdipDrawImagePointsRectI(nativeGraphics, nativeImage, destPoints, count,
    1349             srcx, srcy, srcwidth, srcheight, srcUnit, nativeImageAttr, callback, callbackData))
    1350     End Function
    1351 
    1352     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
     1327            srcx, srcy, srcwidth, srcheight, srcUnit, ImageAttributes.Native(imageAttributes), callback, callbackData))
     1328    End Function
     1329
     1330    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Gdiplus.Status
    13531331        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
    13541332    End Function
    13551333
    1356     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
     1334    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit) As Gdiplus.Status
    13571335        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
    13581336    End Function
    13591337
    1360     Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Status
     1338    Function DrawImage(image As Image, x As Long, y As Long, srcRect As Rectangle, srcUnit As GraphicsUnit) As Gdiplus.Status
    13611339        Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
    13621340    End Function
    13631341
    1364     Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Status
     1342    Function DrawImage(image As Image, x As Single, y As Single, srcRect As RectangleF, srcUnit As GraphicsUnit) As Gdiplus.Status
    13651343        Return DrawImage(image, x, y, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit)
    13661344    End Function
    13671345
    1368     Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
     1346    Function DrawImage(image As Image, destPoints As /*Const*/ *Point, count As Long, srcRect As Rectangle, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    13691347        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
    13701348    End Function
    13711349
    1372     Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Status
     1350    Function DrawImage(image As Image, destPoints As /*Const*/ *PointF, count As Long, srcRect As RectangleF, srcUnit As GraphicsUnit, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    13731351        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes)
    13741352    End Function
    13751353
    1376     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
     1354    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 Gdiplus.Status
    13771355        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
    13781356    End Function
    13791357
    1380     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
     1358    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 Gdiplus.Status
    13811359        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback)
    13821360    End Function
    13831361
    1384     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
     1362    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 Gdiplus.Status
    13851363        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
    13861364    End Function
    13871365
    1388     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
     1366    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 Gdiplus.Status
    13891367        Return DrawImage(image, destPoints, count, srcRect.X, srcRect.Y, srcRect.Width, srcRect.Height, srcUnit, imageAttributes, callback, callbackData)
    13901368    End Function
     
    13971375
    13981376    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
    1399         callback As EnumerateMetafileProc) As Status
     1377        callback As EnumerateMetafileProc) As Gdiplus.Status
    14001378
    14011379        Return EnumerateMetafile(metafile, destPoint, callback, 0, 0)
     
    14031381
    14041382    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
    1405         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1383        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    14061384
    14071385        Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0)
     
    14091387
    14101388    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ PointF,
    1411         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1389        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    14121390
    14131391        Dim nativeImage As /*Const*/ *GpMetafile
     
    14171395            nativeImage = 0
    14181396        End If
    1419         Dim nativeImageAttr As *GpImageAttributes
    1420         If VarPtr(imageAttributes) <> 0 Then
    1421             nativeImageAttr = image.NativeImageAttr
    1422         Else
    1423             nativeImageAttr = 0
    1424         End If
    14251397
    14261398        Return SetStatus(GdipEnumerateMetafileDestPoint(nativeGraphics,
    1427             nativeImage, destPoint, callback, callbackData,nativeImageAttr))
     1399            nativeImage, destPoint, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    14281400    End Function
    14291401
    14301402    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
    1431         callback As EnumerateMetafileProc) As Status
     1403        callback As EnumerateMetafileProc) As Gdiplus.Status
    14321404
    14331405        Return EnumerateMetafile(metafile, destPoint, callback, 0, 0)
     
    14351407
    14361408    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
    1437         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1409        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    14381410
    14391411        Return EnumerateMetafile(metafile, destPoint, callback, callbackData, 0)
     
    14411413
    14421414    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoint As /*Const*/ Point,
    1443         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1415        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    14441416
    14451417        Dim nativeImage As /*Const*/ *GpMetafile
     
    14491421            nativeImage = 0
    14501422        End If
    1451         Dim nativeImageAttr As *GpImageAttributes
    1452         If VarPtr(imageAttributes) <> 0 Then
    1453             nativeImageAttr = image.NativeImageAttr
    1454         Else
    1455             nativeImageAttr = 0
    1456         End If
    14571423
    14581424        Return SetStatus(GdipEnumerateMetafileDestPointI(nativeGraphics,
    1459             nativeImage, destPoint, callback, callbackData,nativeImageAttr))
     1425            nativeImage, destPoint, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    14601426    End Function
    14611427
    14621428    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
    1463         callback As EnumerateMetafileProc) As Status
     1429        callback As EnumerateMetafileProc) As Gdiplus.Status
    14641430
    14651431        Return EnumerateMetafile(metafile, destRect, callback, 0, 0)
     
    14671433
    14681434    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
    1469         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1435        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    14701436
    14711437        Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0)
     
    14731439
    14741440    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ RectangleF,
    1475         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1441        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    14761442
    14771443        Dim nativeImage As /*Const*/ *GpMetafile
     
    14811447            nativeImage = 0
    14821448        End If
    1483         Dim nativeImageAttr As *GpImageAttributes
    1484         If VarPtr(imageAttributes) <> 0 Then
    1485             nativeImageAttr = image.NativeImageAttr
    1486         Else
    1487             nativeImageAttr = 0
    1488         End If
    14891449
    14901450        Return SetStatus(GdipEnumerateMetafileDestRect(nativeGraphics,
    1491             nativeImage, destRect, callback, callbackData, nativeImageAttr))
     1451            nativeImage, destRect, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    14921452    End Function
    14931453
    14941454    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
    1495         callback As EnumerateMetafileProc) As Status
     1455        callback As EnumerateMetafileProc) As Gdiplus.Status
    14961456
    14971457        Return EnumerateMetafile(metafile, destRect, callback, 0, 0)
     
    14991459
    15001460    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
    1501         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1461        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    15021462
    15031463        Return EnumerateMetafile(metafile, destRect, callback, callbackData, 0)
     
    15051465
    15061466    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destRect As /*Const*/ Rectangle,
    1507         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1467        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    15081468
    15091469        Dim nativeImage As /*Const*/ *GpMetafile
     
    15131473            nativeImage = 0
    15141474        End If
    1515         Dim nativeImageAttr As *GpImageAttributes
    1516         If VarPtr(imageAttributes) <> 0 Then
    1517             nativeImageAttr = image.NativeImageAttr
    1518         Else
    1519             nativeImageAttr = 0
    1520         End If
    15211475
    15221476        Return SetStatus(GdipEnumerateMetafileDestRectI(nativeGraphics,
    1523             nativeImage, destRect, callback, callbackData, nativeImageAttr))
     1477            nativeImage, destRect, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    15241478    End Function
    15251479
    15261480    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
    1527         callback As EnumerateMetafileProc) As Status
     1481        callback As EnumerateMetafileProc) As Gdiplus.Status
    15281482
    15291483        Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0)
     
    15311485
    15321486    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
    1533         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1487        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    15341488
    15351489        Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0)
     
    15371491
    15381492    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *PointF, count As Long,
    1539         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1493        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    15401494
    15411495        Dim nativeImage As /*Const*/ *GpMetafile
     
    15451499            nativeImage = 0
    15461500        End If
    1547         Dim nativeImageAttr As *GpImageAttributes
    1548         If VarPtr(imageAttributes) <> 0 Then
    1549             nativeImageAttr = image.NativeImageAttr
    1550         Else
    1551             nativeImageAttr = 0
    1552         End If
    15531501
    15541502        Return SetStatus(GdipEnumerateMetafileDestPoints(nativeGraphics,
    1555             nativeImage,destPoints, count, callback, callbackData, nativeImageAttr))
     1503            nativeImage,destPoints, count, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    15561504    End Function
    15571505
    15581506    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
    1559         callback As EnumerateMetafileProc) As Status
     1507        callback As EnumerateMetafileProc) As Gdiplus.Status
    15601508
    15611509        Return EnumerateMetafile(metafile, destPoints, count, callback, 0, 0)
     
    15631511
    15641512    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
    1565         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1513        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    15661514
    15671515        Return EnumerateMetafile(metafile, destPoints, count, callback, callbackData, 0)
     
    15691517
    15701518    Function EnumerateMetafile(metafile As /*Const*/ Metafile, destPoints As /*Const*/ *Point, count As Long,
    1571         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1519        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    15721520
    15731521        Dim nativeImage As /*Const*/ *GpMetafile
     
    15771525            nativeImage = 0
    15781526        End If
    1579         Dim nativeImageAttr As *GpImageAttributes
    1580         If VarPtr(imageAttributes) <> 0 Then
    1581             nativeImageAttr = image.NativeImageAttr
    1582         Else
    1583             nativeImageAttr = 0
    1584         End If
    15851527
    15861528        Return SetStatus(GdipEnumerateMetafileDestPointsI(nativeGraphics,
    1587             nativeImage,destPoints, count, callback, callbackData, nativeImageAttr))
     1529            nativeImage,destPoints, count, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    15881530    End Function
    15891531
    15901532    Function EnumerateMetafile(metafile As /*Const*/ Metafile,
    15911533        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
    1592         callback As EnumerateMetafileProc) As Status
     1534        callback As EnumerateMetafileProc) As Gdiplus.Status
    15931535
    15941536        Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0)
     
    15971539    Function EnumerateMetafile(metafile As /*Const*/ Metafile,
    15981540        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
    1599         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1541        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    16001542
    16011543        Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0)
     
    16041546    Function EnumerateMetafile(metafile As /*Const*/ Metafile,
    16051547        destPoint As /*Const*/ PointF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit,
    1606         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1548        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    16071549
    16081550        Dim nativeImage As /*Const*/ *GpMetafile
     
    16121554            nativeImage = 0
    16131555        End If
    1614         Dim nativeImageAttr As *GpImageAttributes
    1615         If VarPtr(imageAttributes) <> 0 Then
    1616             nativeImageAttr = image.NativeImageAttr
    1617         Else
    1618             nativeImageAttr = 0
    1619         End If
    16201556
    16211557        Return SetStatus(GdipEnumerateMetafileSrcRectDestPoint(nativeGraphics, _
    1622             nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
     1558            nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    16231559    End Function
    16241560
    16251561    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16261562        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1627         callback As EnumerateMetafileProc) As Status
     1563        callback As EnumerateMetafileProc) As Gdiplus.Status
    16281564
    16291565        Return EnumerateMetafile(metafile, destPoint, count, srcUnit, callback, 0, 0)
     
    16321568    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16331569        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1634         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1570        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    16351571
    16361572        Return EnumerateMetafile(metafile, destPoint, srcRect, srcUnit, callback, callbackData, 0)
     
    16391575    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16401576        destPoint As /*Const*/ Point, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1641         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1577        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    16421578
    16431579        Dim nativeImage As /*Const*/ *GpMetafile
     
    16471583            nativeImage = 0
    16481584        End If
    1649         Dim nativeImageAttr As *GpImageAttributes
    1650         If VarPtr(imageAttributes) <> 0 Then
    1651             nativeImageAttr = image.NativeImageAttr
    1652         Else
    1653             nativeImageAttr = 0
    1654         End If
    16551585
    16561586        Return SetStatus(GdipEnumerateMetafileSrcRectDestPointI(nativeGraphics, _
    1657             nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
     1587            nativeImage, destPoint, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    16581588    End Function
    16591589
    16601590    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16611591        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1662         callback As EnumerateMetafileProc) As Status
     1592        callback As EnumerateMetafileProc) As Gdiplus.Status
    16631593
    16641594        Return EnumerateMetafile(metafile, destRect, count, srcUnit, callback, 0, 0)
     
    16671597    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16681598        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1669         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1599        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    16701600
    16711601        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0)
     
    16741604    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16751605        destRect As /*Const*/ RectangleF, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1676         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1606        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    16771607
    16781608        Dim nativeImage As /*Const*/ *GpMetafile
     
    16821612            nativeImage = 0
    16831613        End If
    1684         Dim nativeImageAttr As *GpImageAttributes
    1685         If VarPtr(imageAttributes) <> 0 Then
    1686             nativeImageAttr = image.NativeImageAttr
    1687         Else
    1688             nativeImageAttr = 0
    1689         End If
    16901614
    16911615        Return SetStatus(GdipEnumerateMetafileSrcRectDestRect(nativeGraphics, _
    1692             nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
     1616            nativeImage, destRect, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    16931617    End Function
    16941618
    16951619    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    16961620        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1697         callback As EnumerateMetafileProc) As Status
     1621        callback As EnumerateMetafileProc) As Gdiplus.Status
    16981622
    16991623        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, 0, 0)
     
    17021626    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17031627        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1704         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1628        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    17051629
    17061630        Return EnumerateMetafile(metafile, destRect, srcRect, srcUnit, callback, callbackData, 0)
     
    17091633    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17101634        destRect As /*Const*/ Rectangle, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1711         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1635        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    17121636
    17131637        Dim nativeImage As /*Const*/ *GpMetafile
     
    17171641            nativeImage = 0
    17181642        End If
    1719         Dim nativeImageAttr As *GpImageAttributes
    1720         If VarPtr(imageAttributes) <> 0 Then
    1721             nativeImageAttr = image.NativeImageAttr
    1722         Else
    1723             nativeImageAttr = 0
    1724         End If
    17251643
    17261644        Return SetStatus(GdipEnumerateMetafileSrcRectDestRectI(nativeGraphics, _
    1727             nativeImage, destRect, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
     1645            nativeImage, destRect, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    17281646    End Function
    17291647
    17301648    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17311649        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1732         callback As EnumerateMetafileProc) As Status
     1650        callback As EnumerateMetafileProc) As Gdiplus.Status
    17331651
    17341652        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0)
     
    17371655    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17381656        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1739         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1657        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    17401658
    17411659        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0)
     
    17441662    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17451663        destPoints As /*Const*/ *PointF, count As Long, srcRect As /*Const*/ RectangleF, srcUnit As GraphicsUnit, _
    1746         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1664        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    17471665
    17481666        Dim nativeImage As /*Const*/ *GpMetafile
     
    17521670            nativeImage = 0
    17531671        End If
    1754         Dim nativeImageAttr As *GpImageAttributes
    1755         If VarPtr(imageAttributes) <> 0 Then
    1756             nativeImageAttr = image.NativeImageAttr
    1757         Else
    1758             nativeImageAttr = 0
    1759         End If
    17601672
    17611673        Return SetStatus(GdipEnumerateMetafileSrcRectDestPoints(nativeGraphics, _
    1762             nativeImage, destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
     1674            nativeImage, destPoints, count, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
    17631675    End Function
    17641676
    17651677    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17661678        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1767         callback As EnumerateMetafileProc) As Status
     1679        callback As EnumerateMetafileProc) As Gdiplus.Status
    17681680
    17691681        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, 0, 0)
     
    17721684    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17731685        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1774         callback As EnumerateMetafileProc, callbackData As VoidPtr) As Status
     1686        callback As EnumerateMetafileProc, callbackData As VoidPtr) As Gdiplus.Status
    17751687
    17761688        Return EnumerateMetafile(metafile, destPoints, count, srcRect, srcUnit, callback, callbackData, 0)
     
    17791691    Function EnumerateMetafile(metafile As /*Const*/ Metafile, _
    17801692        destPoints As /*Const*/ *Point, count As Long, srcRect As /*Const*/ Rectangle, srcUnit As GraphicsUnit, _
    1781         callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Status
     1693        callback As EnumerateMetafileProc, callbackData As VoidPtr, imageAttributes As /*Const*/ ImageAttributes) As Gdiplus.Status
    17821694
    17831695        Dim nativeImage As /*Const*/ *GpMetafile
     
    17871699            nativeImage = 0
    17881700        End If
    1789         Dim nativeImageAttr As *GpImageAttributes
    1790         If VarPtr(imageAttributes) <> 0 Then
    1791             nativeImageAttr = image.NativeImageAttr
    1792         Else
    1793             nativeImageAttr = 0
    1794         End If
    17951701
    17961702        Return SetStatus(GdipEnumerateMetafileSrcRectDestPointsI(nativeGraphics, nativeImage, _
    1797             destPoints, count, srcRect, srcUnit, callback, callbackData, nativeImageAttr))
    1798     End Function
    1799 
    1800     Function SetClip(g As /*Const*/ Graphics) As Status
     1703            destPoints, count, srcRect, srcUnit, callback, callbackData, ImageAttributes.Native(imageAttributes)))
     1704    End Function
     1705
     1706    Function SetClip(g As /*Const*/ Graphics) As Gdiplus.Status
    18011707        Return SetClip(g, CombineMode.Replace)
    18021708    End Function
    18031709
    1804     Function SetClip(rc As /*Const*/ RectangleF) As Status
     1710    Function SetClip(rc As /*Const*/ RectangleF) As Gdiplus.Status
    18051711        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
    18061712    End Function
    18071713
    1808     Function SetClip(rc As /*Const*/ Rectangle) As Status
     1714    Function SetClip(rc As /*Const*/ Rectangle) As Gdiplus.Status
    18091715        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Replace))
    18101716    End Function
    18111717
    1812     Function SetClip(path As /*Const*/ GraphicsPath) As Status
     1718    Function SetClip(path As /*Const*/ GraphicsPath) As Gdiplus.Status
    18131719        Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, CombineMode.Replace))
    18141720    End Function
    18151721
    1816     Function SetClip(region As /*Const*/ Region) As Status
     1722    Function SetClip(region As /*Const*/ Region) As Gdiplus.Status
    18171723        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Replace))
    18181724    End Function
    18191725
    1820     Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Status
     1726    Function SetClip(g As /*Const*/ Graphics, combineMode As CombineMode) As Gdiplus.Status
    18211727        Return SetStatus(GdipSetClipGraphics(nativeGraphics, g->nativeGraphics, combineMode))
    18221728    End Function
    18231729
    1824     Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Status
     1730    Function SetClip(rc As /*Const*/ RectangleF, combineMode As CombineMode) As Gdiplus.Status
    18251731        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
    18261732    End Function
    18271733
    1828     Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Status
     1734    Function SetClip(rc As /*Const*/ Rectangle, combineMode As CombineMode) As Gdiplus.Status
    18291735        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, combineMode))
    18301736    End Function
    18311737
    1832     Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Status
     1738    Function SetClip(path As /*Const*/ GraphicsPath, combineMode As CombineMode) As Gdiplus.Status
    18331739        Return SetStatus(GdipSetClipPath(nativeGraphics, path->nativePath, combineMode))
    18341740    End Function
    18351741
    1836     Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Status
     1742    Function SetClip(region As /*Const*/ Region, combineMode As CombineMode) As Gdiplus.Status
    18371743        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, combineMode))
    18381744    End Function
     
    18421748    ' the coordinates in the HRGN.
    18431749
    1844     Function SetClip(hrgn As HRGN, combineMode As CombineMode /* = CombineModeReplace*/) As Status
     1750    Function SetClip(hrgn As HRGN, combineMode As CombineMode /* = CombineModeReplace*/) As Gdiplus.Status
    18451751        Return SetStatus(GdipSetClipHrgn(nativeGraphics, hrgn, combineMode))
    18461752    End Function
    18471753
    1848     Function IntersectClip(rc As /*Const*/ RectangleF) As Status
     1754    Function IntersectClip(rc As /*Const*/ RectangleF) As Gdiplus.Status
    18491755        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
    18501756    End Function
    18511757
    1852     Function IntersectClip(rc As /*Const*/ Rectangle) As Status
     1758    Function IntersectClip(rc As /*Const*/ Rectangle) As Gdiplus.Status
    18531759        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Intersect))
    18541760    End Function
    18551761
    1856     Function IntersectClip(region As /*Const*/ Region) As Status
     1762    Function IntersectClip(region As /*Const*/ Region) As Gdiplus.Status
    18571763        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Intersect))
    18581764    End Function
    18591765
    1860     Function ExcludeClip(rc As /*Const*/ RectangleF) As Status
     1766    Function ExcludeClip(rc As /*Const*/ RectangleF) As Gdiplus.Status
    18611767        Return SetStatus(GdipSetClipRect(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
    18621768    End Function
    18631769
    1864     Function ExcludeClip(rc As /*Const*/ Rectangle) As Status
     1770    Function ExcludeClip(rc As /*Const*/ Rectangle) As Gdiplus.Status
    18651771        Return SetStatus(GdipSetClipRectI(nativeGraphics, rc.X, rc.Y, rc.Width, rc.Height, CombineMode.Exclude))
    18661772    End Function
    18671773
    1868     Function ExcludeClip(region As /*Const*/ Region) As Status
     1774    Function ExcludeClip(region As /*Const*/ Region) As Gdiplus.Status
    18691775        Return SetStatus(GdipSetClipRegion(nativeGraphics, region->nativeRegion, CombineMode.Exclude))
    18701776    End Function
    18711777
    1872     Function ResetClip() As Status
     1778    Function ResetClip() As Gdiplus.Status
    18731779        Return SetStatus(GdipResetClip(nativeGraphics))
    18741780    End Function
    18751781
    1876     Function TranslateClip(dx As Single, dy As Single) As Status
     1782    Function TranslateClip(dx As Single, dy As Single) As Gdiplus.Status
    18771783        Return SetStatus(GdipTranslateClip(nativeGraphics, dx, dy))
    18781784    End Function
    18791785
    1880     Function TranslateClip(dx As Long, dy As Long) As Status
     1786    Function TranslateClip(dx As Long, dy As Long) As Gdiplus.Status
    18811787        Return SetStatus(GdipTranslateClipI(nativeGraphics, dx, dy))
    18821788    End Function
    18831789
    1884     Const Function GetClip(region As Region) As Status
     1790    Const Function GetClip(region As Region) As Gdiplus.Status
    18851791        Return SetStatus(GdipGetClip(nativeGraphics, region->nativeRegion))
    18861792    End Function
    18871793
    1888     Const Function GetClipBounds(rc As RectangleF) As Status
     1794    Const Function GetClipBounds(rc As RectangleF) As Gdiplus.Status
    18891795        Return SetStatus(GdipGetClipBounds(nativeGraphics, rc))
    18901796    End Function
    18911797
    1892     Const Function GetClipBounds(rc As Rectangle) As Status
     1798    Const Function GetClipBounds(rc As Rectangle) As Gdiplus.Status
    18931799        Return SetStatus(GdipGetClipBoundsI(nativeGraphics, rc))
    18941800    End Function
    18951801
    1896     Const Function GetVisibleClipBounds(rc As RectangleF) As Status
     1802    Const Function GetVisibleClipBounds(rc As RectangleF) As Gdiplus.Status
    18971803        Return SetStatus(GdipGetVisibleClipBounds(nativeGraphics, rc))
    18981804    End Function
    18991805
    1900     Const Function GetVisibleClipBounds(rc As Rectangle) As Status
     1806    Const Function GetVisibleClipBounds(rc As Rectangle) As Gdiplus.Status
    19011807        Return SetStatus(GdipGetVisibleClipBoundsI(nativeGraphics, rc))
    19021808    End Function
     
    19701876    End Function
    19711877
    1972     Function EndContainer(state As GraphicsContainer) As Status
     1878    Function EndContainer(state As GraphicsContainer) As Gdiplus.Status
    19731879        Return SetStatus(GdipEndContainer(nativeGraphics, state))
    19741880    End Function
     
    19841890    End Function
    19851891
    1986     Const Function GetLastStatus() As Status
     1892    Const Function GetLastStatus() As Gdiplus.Status
    19871893        Dim lastStatus = lastResult
    1988         lastResult = Status.Ok
     1894        lastResult = Gdiplus.Status.Ok
    19891895        Return lastStatus
    19901896    End Function
     
    19941900'       Debug
    19951901'   End Sub
    1996     Sub Operator =(gr As Graphics)
    1997         Debug
    1998     End Sub
    19991902
    20001903Protected
    2001     Sub Graphics(graphics As *GpGraphics)
    2002         lastResult = Status.Ok
     1904    Sub Graphics(graphics As *Gdiplus.GpGraphics)
     1905        lastResult = Gdiplus.Status.Ok
    20031906        SetNativeGraphics(graphics)
    20041907    End Sub
    20051908
    2006     Sub SetNativeGraphics(graphics As *GpGraphics)
     1909    Sub SetNativeGraphics(graphics As *Gdiplus.GpGraphics)
    20071910        This.nativeGraphics = graphics
    20081911    End Sub
    20091912
    2010     Const Function SetStatus(status As Status) As Status
    2011         If status <> Status.Ok Then
     1913    Const Function SetStatus(status As Gdiplus.Status) As Gdiplus.Status
     1914        If status <> Gdiplus.Status.Ok Then
    20121915            lastResult = status
    20131916        End If
     
    20151918    End Function
    20161919
    2017     Const Function GetNativeGraphics() As *GpGraphics
     1920    Const Function GetNativeGraphics() As *Gdiplus.GpGraphics
    20181921        Return This.nativeGraphics
    20191922    End Function
     
    20241927
    20251928Protected
    2026     nativeGraphics As *GpGraphics
    2027     lastResult As /*Mutable*/ Status
     1929    nativeGraphics As *Gdiplus.GpGraphics
     1930    lastResult As /*Mutable*/ Gdiplus.Status
    20281931End Class
    20291932
     1933End Namespace 'Drawing
     1934End Namespace 'System
     1935
    20301936#endif
  • branch/egtra-gdiplus/Classes/System/Drawing/Imaging/misc.ab

    r212 r241  
    1 ' Classes/System/Drawing/Imaging/misc.ab
     1'Classes/System/Drawing/Imaging/misc.ab
    22
    33#ifndef __SYSTEM_DRAWING_IMAGING_MISC_AB__
     
    66#include <Classes/System/Drawing/Color.ab>
    77
    8 TypeDef ARGB = DWord
    9 TypeDef ARGB64 = QWord
     8Namespace System
     9Namespace Drawing
     10Namespace Imaging
    1011
    1112Enum ColorMode
     
    1314    ARGB64 = 1
    1415End Enum
    15 
    16 Const ALPHA_SHIFT = 24 As DWord
    17 Const RED_SHIFT   = 16 As DWord
    18 Const GREEN_SHIFT = 8 As DWord
    19 Const BLUE_SHIFT  = 0 As DWord
    20 Const ALPHA_MASK  = ((&hff As ARGB) << ALPHA_SHIFT)
    2116
    2217' In-memory pixel data formats:
     
    5449End Enum
    5550
    56 Const GetPixelFormatSize(pixfmt) = ((((pixfmt As PixelFormat) >> 8) And &hff) As DWord)
    57 
    58 Const IsIndexedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Indexed) <> 0) As BOOL)
    59 
    60 Const IsAlphaPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Alpha) <> 0) As BOOL)
    61 
    62 Const IsExtendedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Extended) <> 0) As BOOL)
    63 
    64 Const IsCanonicalPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Canonical) <> 0) As BOOL)
    65 
    6651Enum PaletteFlags
    6752    PaletteFlagsHasAlpha    = &h0001
     
    6954    PaletteFlagsHalftone    = &h0004
    7055End Enum
    71 
    72 Type Align(8) ColorPalette
    73     Flags As DWord
    74     Count As DWord
    75     Entries[1] As ARGB
    76 End Type
    7756
    7857Enum ColorAdjustType
     
    8665End Enum
    8766
    88 Type ColorMatrix
    89     m[5][5] As Single
    90 End Type
    91 
    9267Type ColorMap
    9368    OldColor As Color
     
    129104End Type
    130105
    131 Type Align(8) EncoderParameter
    132     Guid As GUID
    133     NumberOfValues As DWord
    134     EncoderType As DWord '元はTypeという名前
    135     Value As VoidPtr
    136 End Type
    137 
    138 Type Align(8) EncoderParameters
    139     Count As DWord
    140     Parameter[1] As EncoderParameter
    141 End Type
    142 
    143106Type Align(8) PropertyItem
    144107    id As PROPID
     
    148111End Type
    149112
    150 Const PropertyTagTypeByte        = 1
    151 Const PropertyTagTypeASCII       = 2
    152 Const PropertyTagTypeShort       = 3
    153 Const PropertyTagTypeLong        = 4
    154 Const PropertyTagTypeRational    = 5
    155 Const PropertyTagTypeUndefined   = 7
    156 Const PropertyTagTypeSLONG       = 9
    157 Const PropertyTagTypeSRational  = 10
    158 
    159 Const PropertyTagExifIFD             = &h8769
    160 Const PropertyTagGpsIFD              = &h8825
    161 
    162 Const PropertyTagNewSubfileType      = &h00FE
    163 Const PropertyTagSubfileType         = &h00FF
    164 Const PropertyTagImageWidth          = &h0100
    165 Const PropertyTagImageHeight         = &h0101
    166 Const PropertyTagBitsPerSample       = &h0102
    167 Const PropertyTagCompression         = &h0103
    168 Const PropertyTagPhotometricInterp   = &h0106
    169 Const PropertyTagThreshHolding       = &h0107
    170 Const PropertyTagCellWidth           = &h0108
    171 Const PropertyTagCellHeight          = &h0109
    172 Const PropertyTagFillOrder           = &h010A
    173 Const PropertyTagDocumentName        = &h010D
    174 Const PropertyTagImageDescription    = &h010E
    175 Const PropertyTagEquipMake           = &h010F
    176 Const PropertyTagEquipModel          = &h0110
    177 Const PropertyTagStripOffsets        = &h0111
    178 Const PropertyTagOrientation         = &h0112
    179 Const PropertyTagSamplesPerPixel     = &h0115
    180 Const PropertyTagRowsPerStrip        = &h0116
    181 Const PropertyTagStripBytesCount     = &h0117
    182 Const PropertyTagMinSampleValue      = &h0118
    183 Const PropertyTagMaxSampleValue      = &h0119
    184 Const PropertyTagXResolution         = &h011A   ' Image resolution in width direction
    185 Const PropertyTagYResolution         = &h011B   ' Image resolution in height direction
    186 Const PropertyTagPlanarConfig        = &h011C   ' Image data arrangement
    187 Const PropertyTagPageName            = &h011D
    188 Const PropertyTagXPosition           = &h011E
    189 Const PropertyTagYPosition           = &h011F
    190 Const PropertyTagFreeOffset          = &h0120
    191 Const PropertyTagFreeByteCounts      = &h0121
    192 Const PropertyTagGrayResponseUnit    = &h0122
    193 Const PropertyTagGrayResponseCurve   = &h0123
    194 Const PropertyTagT4Option            = &h0124
    195 Const PropertyTagT6Option            = &h0125
    196 Const PropertyTagResolutionUnit      = &h0128   ' Unit of X and Y resolution
    197 Const PropertyTagPageNumber          = &h0129
    198 Const PropertyTagTransferFuncition   = &h012D
    199 Const PropertyTagSoftwareUsed        = &h0131
    200 Const PropertyTagDateTime            = &h0132
    201 Const PropertyTagArtist              = &h013B
    202 Const PropertyTagHostComputer        = &h013C
    203 Const PropertyTagPredictor           = &h013D
    204 Const PropertyTagWhitePoint          = &h013E
    205 Const PropertyTagPrimaryChromaticities = &h013F
    206 Const PropertyTagColorMap            = &h0140
    207 Const PropertyTagHalftoneHints       = &h0141
    208 Const PropertyTagTileWidth           = &h0142
    209 Const PropertyTagTileLength          = &h0143
    210 Const PropertyTagTileOffset          = &h0144
    211 Const PropertyTagTileByteCounts      = &h0145
    212 Const PropertyTagInkSet              = &h014C
    213 Const PropertyTagInkNames            = &h014D
    214 Const PropertyTagNumberOfInks        = &h014E
    215 Const PropertyTagDotRange            = &h0150
    216 Const PropertyTagTargetPrinter       = &h0151
    217 Const PropertyTagExtraSamples        = &h0152
    218 Const PropertyTagSampleFormat        = &h0153
    219 Const PropertyTagSMinSampleValue     = &h0154
    220 Const PropertyTagSMaxSampleValue     = &h0155
    221 Const PropertyTagTransferRange       = &h0156
    222 
    223 Const PropertyTagJPEGProc            = &h0200
    224 Const PropertyTagJPEGInterFormat     = &h0201
    225 Const PropertyTagJPEGInterLength     = &h0202
    226 Const PropertyTagJPEGRestartInterval = &h0203
    227 Const PropertyTagJPEGLosslessPredictors  = &h0205
    228 Const PropertyTagJPEGPointTransforms     = &h0206
    229 Const PropertyTagJPEGQTables         = &h0207
    230 Const PropertyTagJPEGDCTables        = &h0208
    231 Const PropertyTagJPEGACTables        = &h0209
    232 
    233 Const PropertyTagYCbCrCoefficients   = &h0211
    234 Const PropertyTagYCbCrSubsampling    = &h0212
    235 Const PropertyTagYCbCrPositioning    = &h0213
    236 Const PropertyTagREFBlackWhite       = &h0214
    237 
    238 Const PropertyTagICCProfile          = &h8773   ' This TAG is defined by ICC
    239                                                 ' for embedded ICC in TIFF
    240 Const PropertyTagGamma               = &h0301
    241 Const PropertyTagICCProfileDescriptor = &h0302
    242 Const PropertyTagSRGBRenderingIntent = &h0303
    243 
    244 Const PropertyTagImageTitle          = &h0320
    245 Const PropertyTagCopyright           = &h8298
    246 
    247 ' Extra TAGs (Like Adobe Image Information tags etc.)
    248 
    249 Const PropertyTagResolutionXUnit           = &h5001
    250 Const PropertyTagResolutionYUnit           = &h5002
    251 Const PropertyTagResolutionXLengthUnit     = &h5003
    252 Const PropertyTagResolutionYLengthUnit     = &h5004
    253 Const PropertyTagPrintFlags                = &h5005
    254 Const PropertyTagPrintFlagsVersion         = &h5006
    255 Const PropertyTagPrintFlagsCrop            = &h5007
    256 Const PropertyTagPrintFlagsBleedWidth      = &h5008
    257 Const PropertyTagPrintFlagsBleedWidthScale = &h5009
    258 Const PropertyTagHalftoneLPI               = &h500A
    259 Const PropertyTagHalftoneLPIUnit           = &h500B
    260 Const PropertyTagHalftoneDegree            = &h500C
    261 Const PropertyTagHalftoneShape             = &h500D
    262 Const PropertyTagHalftoneMisc              = &h500E
    263 Const PropertyTagHalftoneScreen            = &h500F
    264 Const PropertyTagJPEGQuality               = &h5010
    265 Const PropertyTagGridSize                  = &h5011
    266 Const PropertyTagThumbnailFormat           = &h5012  ' 1 = JPEG, 0 = RAW RGB
    267 Const PropertyTagThumbnailWidth            = &h5013
    268 Const PropertyTagThumbnailHeight           = &h5014
    269 Const PropertyTagThumbnailColorDepth       = &h5015
    270 Const PropertyTagThumbnailPlanes           = &h5016
    271 Const PropertyTagThumbnailRawBytes         = &h5017
    272 Const PropertyTagThumbnailSize             = &h5018
    273 Const PropertyTagThumbnailCompressedSize   = &h5019
    274 Const PropertyTagColorTransferFunction     = &h501A
    275 Const PropertyTagThumbnailData             = &h501B' RAW thumbnail bits in
    276                                                    ' JPEG format or RGB format
    277                                                    ' depends on
    278                                                    ' PropertyTagThumbnailFormat
    279 
    280 ' Thumbnail related TAGs
    281 
    282 Const PropertyTagThumbnailImageWidth       = &h5020  ' Thumbnail width
    283 Const PropertyTagThumbnailImageHeight      = &h5021  ' Thumbnail height
    284 Const PropertyTagThumbnailBitsPerSample    = &h5022  ' Number of bits per
    285                                                      ' component
    286 Const PropertyTagThumbnailCompression      = &h5023  ' Compression Scheme
    287 Const PropertyTagThumbnailPhotometricInterp = &h5024 ' Pixel composition
    288 Const PropertyTagThumbnailImageDescription = &h5025  ' Image Tile
    289 Const PropertyTagThumbnailEquipMake        = &h5026  ' Manufacturer of Image
    290                                                      ' Input equipment
    291 Const PropertyTagThumbnailEquipModel       = &h5027  ' Model of Image input
    292                                                      ' equipment
    293 Const PropertyTagThumbnailStripOffsets     = &h5028  ' Image data location
    294 Const PropertyTagThumbnailOrientation      = &h5029  ' Orientation of image
    295 Const PropertyTagThumbnailSamplesPerPixel  = &h502A  ' Number of components
    296 Const PropertyTagThumbnailRowsPerStrip     = &h502B  ' Number of rows per strip
    297 Const PropertyTagThumbnailStripBytesCount  = &h502C  ' Bytes per compressed
    298                                                      ' strip
    299 Const PropertyTagThumbnailResolutionX      = &h502D  ' Resolution in width
    300                                                      ' direction
    301 Const PropertyTagThumbnailResolutionY      = &h502E  ' Resolution in height
    302                                                      ' direction
    303 Const PropertyTagThumbnailPlanarConfig     = &h502F  ' Image data arrangement
    304 Const PropertyTagThumbnailResolutionUnit   = &h5030  ' Unit of X and Y
    305                                                      ' Resolution
    306 Const PropertyTagThumbnailTransferFunction = &h5031  ' Transfer function
    307 Const PropertyTagThumbnailSoftwareUsed     = &h5032  ' Software used
    308 Const PropertyTagThumbnailDateTime         = &h5033  ' File change date and
    309                                                      ' time
    310 Const PropertyTagThumbnailArtist           = &h5034  ' Person who created the
    311                                                      ' image
    312 Const PropertyTagThumbnailWhitePoint       = &h5035  ' White point chromaticity
    313 Const PropertyTagThumbnailPrimaryChromaticities = &h5036
    314                                                      ' Chromaticities of
    315                                                      ' primaries
    316 Const PropertyTagThumbnailYCbCrCoefficients = &h5037 ' Color space transforma-
    317                                                      ' tion coefficients
    318 Const PropertyTagThumbnailYCbCrSubsampling = &h5038  ' Subsampling ratio of Y
    319                                                      ' to C
    320 Const PropertyTagThumbnailYCbCrPositioning = &h5039  ' Y and C position
    321 Const PropertyTagThumbnailRefBlackWhite    = &h503A  ' Pair of black and white
    322                                                      ' reference values
    323 Const PropertyTagThumbnailCopyRight        = &h503B  ' CopyRight holder
    324 
    325 Const PropertyTagLuminanceTable            = &h5090
    326 Const PropertyTagChrominanceTable          = &h5091
    327 
    328 Const PropertyTagFrameDelay                = &h5100
    329 Const PropertyTagLoopCount                 = &h5101
    330 
    331 Const PropertyTagPixelUnit         = &h5110  ' Unit specifier for pixel/unit
    332 Const PropertyTagPixelPerUnitX     = &h5111  ' Pixels per unit in X
    333 Const PropertyTagPixelPerUnitY     = &h5112  ' Pixels per unit in Y
    334 Const PropertyTagPaletteHistogram  = &h5113  ' Palette histogram
    335 
    336 ' EXIF specific tag
    337 
    338 Const PropertyTagExifExposureTime  = &h829A
    339 Const PropertyTagExifFNumber       = &h829D
    340 
    341 Const PropertyTagExifExposureProg  = &h8822
    342 Const PropertyTagExifSpectralSense = &h8824
    343 Const PropertyTagExifISOSpeed      = &h8827
    344 Const PropertyTagExifOECF          = &h8828
    345 
    346 Const PropertyTagExifVer            = &h9000
    347 Const PropertyTagExifDTOrig         = &h9003 ' Date & time of original
    348 Const PropertyTagExifDTDigitized    = &h9004 ' Date & time of digital data generation
    349 
    350 Const PropertyTagExifCompConfig     = &h9101
    351 Const PropertyTagExifCompBPP        = &h9102
    352 
    353 Const PropertyTagExifShutterSpeed   = &h9201
    354 Const PropertyTagExifAperture       = &h9202
    355 Const PropertyTagExifBrightness     = &h9203
    356 Const PropertyTagExifExposureBias   = &h9204
    357 Const PropertyTagExifMaxAperture    = &h9205
    358 Const PropertyTagExifSubjectDist    = &h9206
    359 Const PropertyTagExifMeteringMode   = &h9207
    360 Const PropertyTagExifLightSource    = &h9208
    361 Const PropertyTagExifFlash          = &h9209
    362 Const PropertyTagExifFocalLength    = &h920A
    363 Const PropertyTagExifMakerNote      = &h927C
    364 Const PropertyTagExifUserComment    = &h9286
    365 Const PropertyTagExifDTSubsec       = &h9290  ' Date & Time subseconds
    366 Const PropertyTagExifDTOrigSS       = &h9291  ' Date & Time original subseconds
    367 Const PropertyTagExifDTDigSS        = &h9292  ' Date & TIme digitized subseconds
    368 
    369 Const PropertyTagExifFPXVer         = &hA000
    370 Const PropertyTagExifColorSpace     = &hA001
    371 Const PropertyTagExifPixXDim        = &hA002
    372 Const PropertyTagExifPixYDim        = &hA003
    373 Const PropertyTagExifRelatedWav     = &hA004  ' related sound file
    374 Const PropertyTagExifInterop        = &hA005
    375 Const PropertyTagExifFlashEnergy    = &hA20B
    376 Const PropertyTagExifSpatialFR      = &hA20C  ' Spatial Frequency Response
    377 Const PropertyTagExifFocalXRes      = &hA20E  ' Focal Plane X Resolution
    378 Const PropertyTagExifFocalYRes      = &hA20F  ' Focal Plane Y Resolution
    379 Const PropertyTagExifFocalResUnit   = &hA210  ' Focal Plane Resolution Unit
    380 Const PropertyTagExifSubjectLoc     = &hA214
    381 Const PropertyTagExifExposureIndex  = &hA215
    382 Const PropertyTagExifSensingMethod  = &hA217
    383 Const PropertyTagExifFileSource     = &hA300
    384 Const PropertyTagExifSceneType      = &hA301
    385 Const PropertyTagExifCfaPattern     = &hA302
    386 
    387 Const PropertyTagGpsVer             = &h0000
    388 Const PropertyTagGpsLatitudeRef     = &h0001
    389 Const PropertyTagGpsLatitude        = &h0002
    390 Const PropertyTagGpsLongitudeRef    = &h0003
    391 Const PropertyTagGpsLongitude       = &h0004
    392 Const PropertyTagGpsAltitudeRef     = &h0005
    393 Const PropertyTagGpsAltitude        = &h0006
    394 Const PropertyTagGpsGpsTime         = &h0007
    395 Const PropertyTagGpsGpsSatellites   = &h0008
    396 Const PropertyTagGpsGpsStatus       = &h0009
    397 Const PropertyTagGpsGpsMeasureMode  = &h00A
    398 Const PropertyTagGpsGpsDop          = &h000B  ' Measurement precision
    399 Const PropertyTagGpsSpeedRef        = &h000C
    400 Const PropertyTagGpsSpeed           = &h000D
    401 Const PropertyTagGpsTrackRef        = &h000E
    402 Const PropertyTagGpsTrack           = &h000F
    403 Const PropertyTagGpsImgDirRef       = &h0010
    404 Const PropertyTagGpsImgDir          = &h0011
    405 Const PropertyTagGpsMapDatum        = &h0012
    406 Const PropertyTagGpsDestLatRef      = &h0013
    407 Const PropertyTagGpsDestLat         = &h0014
    408 Const PropertyTagGpsDestLongRef     = &h0015
    409 Const PropertyTagGpsDestLong        = &h0016
    410 Const PropertyTagGpsDestBearRef     = &h0017
    411 Const PropertyTagGpsDestBear        = &h0018
    412 Const PropertyTagGpsDestDistRef     = &h0019
    413 Const PropertyTagGpsDestDist        = &h001A
    414 
    415 Type ImageCodecInfo
    416     Clsid As CLSID
    417     FormatID As GUID
    418     CodecName As PCWSTR
    419     DllName As PCWSTR
    420     FormatDescription As PCWSTR
    421     FilenameExtension As PCWSTR
    422     MimeType As PCWSTR
    423     Flags As DWord
    424     Version As DWord
    425     SigCount As DWord
    426     SigSize As DWord
    427     SigPattern As *Byte
    428     SigMask As DWord
    429 End Type
    430 
    431113Enum ColorChannelFlag
    432114    ColorChannelC = 0
     
    437119End Enum
    438120
     121Const GDIP_EMFPLUS_RECORD_BASE        = &h00004000
     122Const GDIP_WMF_RECORD_BASE            = &h00010000
     123Const GDIP_WMF_RECORD_TO_EMFPLUS(n)   = ((n) Or GDIP_WMF_RECORD_BASE) ' As EmfPlusRecordType
     124Const GDIP_EMFPLUS_RECORD_TO_WMF(n)   = ((n) And (Not GDIP_WMF_RECORD_BASE))
     125'Const GDIP_IS_WMF_RECORDTYPE(n)       (((n) And GDIP_WMF_RECORD_BASE) <> 0)
     126Function GDIP_IS_WMF_RECORDTYPE(n As DWord) As BOOL
     127    If (n And GDIP_WMF_RECORD_BASE) <> 0 Then
     128        GDIP_IS_WMF_RECORDTYPE = TRUE
     129    Else
     130        GDIP_IS_WMF_RECORDTYPE = FALSE
     131    End If
     132End Function
     133
     134Enum EmfPlusRecordType
     135/*
     136    WmfRecordTypeSetBkColor              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR)
     137    WmfRecordTypeSetBkMode               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE)
     138    WmfRecordTypeSetMapMode              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE)
     139    WmfRecordTypeSetROP2                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2)
     140    WmfRecordTypeSetRelAbs               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS)
     141    WmfRecordTypeSetPolyFillMode         = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE)
     142    WmfRecordTypeSetStretchBltMode       = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE)
     143    WmfRecordTypeSetTextCharExtra        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA)
     144    WmfRecordTypeSetTextColor            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR)
     145    WmfRecordTypeSetTextJustification    = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION)
     146    WmfRecordTypeSetWindowOrg            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG)
     147    WmfRecordTypeSetWindowExt            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT)
     148    WmfRecordTypeSetViewportOrg          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG)
     149    WmfRecordTypeSetViewportExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT)
     150    WmfRecordTypeOffsetWindowOrg         = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG)
     151    WmfRecordTypeScaleWindowExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT)
     152    WmfRecordTypeOffsetViewportOrg       = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG)
     153    WmfRecordTypeScaleViewportExt        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT)
     154    WmfRecordTypeLineTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO)
     155    WmfRecordTypeMoveTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO)
     156    WmfRecordTypeExcludeClipRect         = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT)
     157    WmfRecordTypeIntersectClipRect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT)
     158    WmfRecordTypeArc                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC)
     159    WmfRecordTypeEllipse                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE)
     160    WmfRecordTypeFloodFill               = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL)
     161    WmfRecordTypePie                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE)
     162    WmfRecordTypeRectangle               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE)
     163    WmfRecordTypeRoundRect               = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT)
     164    WmfRecordTypePatBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT)
     165    WmfRecordTypeSaveDC                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC)
     166    WmfRecordTypeSetPixel                = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL)
     167    WmfRecordTypeOffsetClipRgn           = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN)
     168    WmfRecordTypeTextOut                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT)
     169    WmfRecordTypeBitBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT)
     170    WmfRecordTypeStretchBlt              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT)
     171    WmfRecordTypePolygon                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON)
     172    WmfRecordTypePolyline                = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE)
     173    WmfRecordTypeEscape                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE)
     174    WmfRecordTypeRestoreDC               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC)
     175    WmfRecordTypeFillRegion              = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION)
     176    WmfRecordTypeFrameRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION)
     177    WmfRecordTypeInvertRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION)
     178    WmfRecordTypePaintRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION)
     179    WmfRecordTypeSelectClipRegion        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION)
     180    WmfRecordTypeSelectObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT)
     181    WmfRecordTypeSetTextAlign            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN)
     182    WmfRecordTypeDrawText                = GDIP_WMF_RECORD_TO_EMFPLUS(&h062F)   ' META_DRAWTEXT
     183    WmfRecordTypeChord                   = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD)
     184    WmfRecordTypeSetMapperFlags          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS)
     185    WmfRecordTypeExtTextOut              = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT)
     186    WmfRecordTypeSetDIBToDev             = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV)
     187    WmfRecordTypeSelectPalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE)
     188    WmfRecordTypeRealizePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE)
     189    WmfRecordTypeAnimatePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE)
     190    WmfRecordTypeSetPalEntries           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES)
     191    WmfRecordTypePolyPolygon             = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON)
     192    WmfRecordTypeResizePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE)
     193    WmfRecordTypeDIBBitBlt               = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT)
     194    WmfRecordTypeDIBStretchBlt           = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT)
     195    WmfRecordTypeDIBCreatePatternBrush   = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH)
     196    WmfRecordTypeStretchDIB              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB)
     197    WmfRecordTypeExtFloodFill            = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL)
     198    WmfRecordTypeSetLayout               = GDIP_WMF_RECORD_TO_EMFPLUS(&h0149)   ' META_SETLAYOUT
     199    WmfRecordTypeResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC
     200    WmfRecordTypeStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC
     201    WmfRecordTypeStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE
     202    WmfRecordTypeEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE
     203    WmfRecordTypeAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC
     204    WmfRecordTypeEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC
     205    WmfRecordTypeDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT)
     206    WmfRecordTypeCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE)
     207    WmfRecordTypeCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH
     208    WmfRecordTypeCreatePatternBrush      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH)
     209    WmfRecordTypeCreatePenIndirect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT)
     210    WmfRecordTypeCreateFontIndirect      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT)
     211    WmfRecordTypeCreateBrushIndirect     = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT)
     212    WmfRecordTypeCreateBitmapIndirect    = GDIP_WMF_RECORD_TO_EMFPLUS(&h02FD)   ' META_CREATEBITMAPINDIRECT
     213    WmfRecordTypeCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP
     214    WmfRecordTypeCreateRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION)
     215
     216    EmfRecordTypeHeader                  = EMR_HEADER
     217    EmfRecordTypePolyBezier              = EMR_POLYBEZIER
     218    EmfRecordTypePolygon                 = EMR_POLYGON
     219    EmfRecordTypePolyline                = EMR_POLYLINE
     220    EmfRecordTypePolyBezierTo            = EMR_POLYBEZIERTO
     221    EmfRecordTypePolyLineTo              = EMR_POLYLINETO
     222    EmfRecordTypePolyPolyline            = EMR_POLYPOLYLINE
     223    EmfRecordTypePolyPolygon             = EMR_POLYPOLYGON
     224    EmfRecordTypeSetWindowExtEx          = EMR_SETWINDOWEXTEX
     225    EmfRecordTypeSetWindowOrgEx          = EMR_SETWINDOWORGEX
     226    EmfRecordTypeSetViewportExtEx        = EMR_SETVIEWPORTEXTEX
     227    EmfRecordTypeSetViewportOrgEx        = EMR_SETVIEWPORTORGEX
     228    EmfRecordTypeSetBrushOrgEx           = EMR_SETBRUSHORGEX
     229    EmfRecordTypeEOF                     = EMR_EOF
     230    EmfRecordTypeSetPixelV               = EMR_SETPIXELV
     231    EmfRecordTypeSetMapperFlags          = EMR_SETMAPPERFLAGS
     232    EmfRecordTypeSetMapMode              = EMR_SETMAPMODE
     233    EmfRecordTypeSetBkMode               = EMR_SETBKMODE
     234    EmfRecordTypeSetPolyFillMode         = EMR_SETPOLYFILLMODE
     235    EmfRecordTypeSetROP2                 = EMR_SETROP2
     236    EmfRecordTypeSetStretchBltMode       = EMR_SETSTRETCHBLTMODE
     237    EmfRecordTypeSetTextAlign            = EMR_SETTEXTALIGN
     238    EmfRecordTypeSetColorAdjustment      = EMR_SETCOLORADJUSTMENT
     239    EmfRecordTypeSetTextColor            = EMR_SETTEXTCOLOR
     240    EmfRecordTypeSetBkColor              = EMR_SETBKCOLOR
     241    EmfRecordTypeOffsetClipRgn           = EMR_OFFSETCLIPRGN
     242    EmfRecordTypeMoveToEx                = EMR_MOVETOEX
     243    EmfRecordTypeSetMetaRgn              = EMR_SETMETARGN
     244    EmfRecordTypeExcludeClipRect         = EMR_EXCLUDECLIPRECT
     245    EmfRecordTypeIntersectClipRect       = EMR_INTERSECTCLIPRECT
     246    EmfRecordTypeScaleViewportExtEx      = EMR_SCALEVIEWPORTEXTEX
     247    EmfRecordTypeScaleWindowExtEx        = EMR_SCALEWINDOWEXTEX
     248    EmfRecordTypeSaveDC                  = EMR_SAVEDC
     249    EmfRecordTypeRestoreDC               = EMR_RESTOREDC
     250    EmfRecordTypeSetWorldTransform       = EMR_SETWORLDTRANSFORM
     251    EmfRecordTypeModifyWorldTransform    = EMR_MODIFYWORLDTRANSFORM
     252    EmfRecordTypeSelectObject            = EMR_SELECTOBJECT
     253    EmfRecordTypeCreatePen               = EMR_CREATEPEN
     254    EmfRecordTypeCreateBrushIndirect     = EMR_CREATEBRUSHINDIRECT
     255    EmfRecordTypeDeleteObject            = EMR_DELETEOBJECT
     256    EmfRecordTypeAngleArc                = EMR_ANGLEARC
     257    EmfRecordTypeEllipse                 = EMR_ELLIPSE
     258    EmfRecordTypeRectangle               = EMR_RECTANGLE
     259    EmfRecordTypeRoundRect               = EMR_ROUNDRECT
     260    EmfRecordTypeArc                     = EMR_ARC
     261    EmfRecordTypeChord                   = EMR_CHORD
     262    EmfRecordTypePie                     = EMR_PIE
     263    EmfRecordTypeSelectPalette           = EMR_SELECTPALETTE
     264    EmfRecordTypeCreatePalette           = EMR_CREATEPALETTE
     265    EmfRecordTypeSetPaletteEntries       = EMR_SETPALETTEENTRIES
     266    EmfRecordTypeResizePalette           = EMR_RESIZEPALETTE
     267    EmfRecordTypeRealizePalette          = EMR_REALIZEPALETTE
     268    EmfRecordTypeExtFloodFill            = EMR_EXTFLOODFILL
     269    EmfRecordTypeLineTo                  = EMR_LINETO
     270    EmfRecordTypeArcTo                   = EMR_ARCTO
     271    EmfRecordTypePolyDraw                = EMR_POLYDRAW
     272    EmfRecordTypeSetArcDirection         = EMR_SETARCDIRECTION
     273    EmfRecordTypeSetMiterLimit           = EMR_SETMITERLIMIT
     274    EmfRecordTypeBeginPath               = EMR_BEGINPATH
     275    EmfRecordTypeEndPath                 = EMR_ENDPATH
     276    EmfRecordTypeCloseFigure             = EMR_CLOSEFIGURE
     277    EmfRecordTypeFillPath                = EMR_FILLPATH
     278    EmfRecordTypeStrokeAndFillPath       = EMR_STROKEANDFILLPATH
     279    EmfRecordTypeStrokePath              = EMR_STROKEPATH
     280    EmfRecordTypeFlattenPath             = EMR_FLATTENPATH
     281    EmfRecordTypeWidenPath               = EMR_WIDENPATH
     282    EmfRecordTypeSelectClipPath          = EMR_SELECTCLIPPATH
     283    EmfRecordTypeAbortPath               = EMR_ABORTPATH
     284    EmfRecordTypeReserved_069            = 69   ' Not Used
     285    EmfRecordTypeGdiComment              = EMR_GDICOMMENT
     286    EmfRecordTypeFillRgn                 = EMR_FILLRGN
     287    EmfRecordTypeFrameRgn                = EMR_FRAMERGN
     288    EmfRecordTypeInvertRgn               = EMR_INVERTRGN
     289    EmfRecordTypePaintRgn                = EMR_PAINTRGN
     290    EmfRecordTypeExtSelectClipRgn        = EMR_EXTSELECTCLIPRGN
     291    EmfRecordTypeBitBlt                  = EMR_BITBLT
     292    EmfRecordTypeStretchBlt              = EMR_STRETCHBLT
     293    EmfRecordTypeMaskBlt                 = EMR_MASKBLT
     294    EmfRecordTypePlgBlt                  = EMR_PLGBLT
     295    EmfRecordTypeSetDIBitsToDevice       = EMR_SETDIBITSTODEVICE
     296    EmfRecordTypeStretchDIBits           = EMR_STRETCHDIBITS
     297    EmfRecordTypeExtCreateFontIndirect   = EMR_EXTCREATEFONTINDIRECTW
     298    EmfRecordTypeExtTextOutA             = EMR_EXTTEXTOUTA
     299    EmfRecordTypeExtTextOutW             = EMR_EXTTEXTOUTW
     300    EmfRecordTypePolyBezier16            = EMR_POLYBEZIER16
     301    EmfRecordTypePolygon16               = EMR_POLYGON16
     302    EmfRecordTypePolyline16              = EMR_POLYLINE16
     303    EmfRecordTypePolyBezierTo16          = EMR_POLYBEZIERTO16
     304    EmfRecordTypePolylineTo16            = EMR_POLYLINETO16
     305    EmfRecordTypePolyPolyline16          = EMR_POLYPOLYLINE16
     306    EmfRecordTypePolyPolygon16           = EMR_POLYPOLYGON16
     307    EmfRecordTypePolyDraw16              = EMR_POLYDRAW16
     308    EmfRecordTypeCreateMonoBrush         = EMR_CREATEMONOBRUSH
     309    EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT
     310    EmfRecordTypeExtCreatePen            = EMR_EXTCREATEPEN
     311    EmfRecordTypePolyTextOutA            = EMR_POLYTEXTOUTA
     312    EmfRecordTypePolyTextOutW            = EMR_POLYTEXTOUTW
     313    EmfRecordTypeSetICMMode              = 98   ' EMR_SETICMMODE
     314    EmfRecordTypeCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE
     315    EmfRecordTypeSetColorSpace           = 100  ' EMR_SETCOLORSPACE
     316    EmfRecordTypeDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE
     317    EmfRecordTypeGLSRecord               = 102  ' EMR_GLSRECORD
     318    EmfRecordTypeGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD
     319    EmfRecordTypePixelFormat             = 104  ' EMR_PIXELFORMAT
     320    EmfRecordTypeDrawEscape              = 105  ' EMR_RESERVED_105
     321    EmfRecordTypeExtEscape               = 106  ' EMR_RESERVED_106
     322    EmfRecordTypeStartDoc                = 107  ' EMR_RESERVED_107
     323    EmfRecordTypeSmallTextOut            = 108  ' EMR_RESERVED_108
     324    EmfRecordTypeForceUFIMapping         = 109  ' EMR_RESERVED_109
     325    EmfRecordTypeNamedEscape             = 110  ' EMR_RESERVED_110
     326    EmfRecordTypeColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE
     327    EmfRecordTypeSetICMProfileA          = 112  ' EMR_SETICMPROFILEA
     328    EmfRecordTypeSetICMProfileW          = 113  ' EMR_SETICMPROFILEW
     329    EmfRecordTypeAlphaBlend              = 114  ' EMR_ALPHABLEND
     330    EmfRecordTypeSetLayout               = 115  ' EMR_SETLAYOUT
     331    EmfRecordTypeTransparentBlt          = 116  ' EMR_TRANSPARENTBLT
     332    EmfRecordTypeReserved_117            = 117  ' Not Used
     333    EmfRecordTypeGradientFill            = 118  ' EMR_GRADIENTFILL
     334    EmfRecordTypeSetLinkedUFIs           = 119  ' EMR_RESERVED_119
     335    EmfRecordTypeSetTextJustification    = 120  ' EMR_RESERVED_120
     336    EmfRecordTypeColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW
     337    EmfRecordTypeCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW
     338    EmfRecordTypeMax                     = 122
     339    EmfRecordTypeMin                     = 1
     340
     341    EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE
     342    EmfPlusRecordTypeHeader
     343    EmfPlusRecordTypeEndOfFile
     344
     345    EmfPlusRecordTypeComment
     346
     347    EmfPlusRecordTypeGetDC
     348
     349    EmfPlusRecordTypeMultiFormatStart
     350    EmfPlusRecordTypeMultiFormatSection
     351    EmfPlusRecordTypeMultiFormatEnd
     352
     353    EmfPlusRecordTypeObject
     354
     355    EmfPlusRecordTypeClear
     356    EmfPlusRecordTypeFillRects
     357    EmfPlusRecordTypeDrawRects
     358    EmfPlusRecordTypeFillPolygon
     359    EmfPlusRecordTypeDrawLines
     360    EmfPlusRecordTypeFillEllipse
     361    EmfPlusRecordTypeDrawEllipse
     362    EmfPlusRecordTypeFillPie
     363    EmfPlusRecordTypeDrawPie
     364    EmfPlusRecordTypeDrawArc
     365    EmfPlusRecordTypeFillRegion
     366    EmfPlusRecordTypeFillPath
     367    EmfPlusRecordTypeDrawPath
     368    EmfPlusRecordTypeFillClosedCurve
     369    EmfPlusRecordTypeDrawClosedCurve
     370    EmfPlusRecordTypeDrawCurve
     371    EmfPlusRecordTypeDrawBeziers
     372    EmfPlusRecordTypeDrawImage
     373    EmfPlusRecordTypeDrawImagePoints
     374    EmfPlusRecordTypeDrawString
     375
     376    EmfPlusRecordTypeSetRenderingOrigin
     377    EmfPlusRecordTypeSetAntiAliasMode
     378    EmfPlusRecordTypeSetTextRenderingHint
     379    EmfPlusRecordTypeSetTextContrast
     380    EmfPlusRecordTypeSetInterpolationMode
     381    EmfPlusRecordTypeSetPixelOffsetMode
     382    EmfPlusRecordTypeSetCompositingMode
     383    EmfPlusRecordTypeSetCompositingQuality
     384    EmfPlusRecordTypeSave
     385    EmfPlusRecordTypeRestore
     386    EmfPlusRecordTypeBeginContainer
     387    EmfPlusRecordTypeBeginContainerNoParams
     388    EmfPlusRecordTypeEndContainer
     389    EmfPlusRecordTypeSetWorldTransform
     390    EmfPlusRecordTypeResetWorldTransform
     391    EmfPlusRecordTypeMultiplyWorldTransform
     392    EmfPlusRecordTypeTranslateWorldTransform
     393    EmfPlusRecordTypeScaleWorldTransform
     394    EmfPlusRecordTypeRotateWorldTransform
     395    EmfPlusRecordTypeSetPageTransform
     396    EmfPlusRecordTypeResetClip
     397    EmfPlusRecordTypeSetClipRect
     398    EmfPlusRecordTypeSetClipPath
     399    EmfPlusRecordTypeSetClipRegion
     400    EmfPlusRecordTypeOffsetClip
     401
     402    EmfPlusRecordTypeDrawDriverString
     403
     404    EmfPlusRecordTotal
     405
     406    EmfPlusRecordTypeMax = EmfPlusRecordTotal-1
     407    EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader */
     408End Enum
     409
     410End Namespace 'System
     411End Namespace 'Drawing
     412End Namespace 'Imaging
     413
     414
    439415#endif '__SYSTEM_DRAWING_IMAGING_MISC_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Point.ab

    r223 r241  
    77#require <Classes/System/Drawing/Size.ab>
    88#require <Classes/System/Drawing/SizeF.ab>
     9
     10Namespace System
     11Namespace Drawing
    912
    1013Class Point
     
    136139End Class
    137140
     141End Namespace 'Drawing
     142End Namespace 'System
     143
    138144#endif '__SYSTEM_DRAWING_POINT_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/PointF.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_POINTF_AB__
    55
    6 #include <Classes/System/Drawing/Size.ab>
    7 #include <Classes/System/Drawing/SizeF.ab>
     6#require <Classes/System/Drawing/Size.ab>
     7#require <Classes/System/Drawing/SizeF.ab>
     8
     9Namespace System
     10Namespace Drawing
    811
    912Class PointF
     
    4851        Return x = 0 And y = 0
    4952    End Function
    50 /*
    51     Sub Operator = (ByRef pt As PointF)
    52         x = pt.x
    53         y = pt.y
    54     End Sub
    55 */
     53
    5654    Function Operator + (pt As PointF) As PointF
    5755        Return Add(This, pt)
     
    129127End Class
    130128
     129End Namespace 'Drawing
     130End Namespace 'System
     131
    131132#endif '__SYSTEM_DRAWING_POINTF_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Rectangle.ab

    r223 r241  
    88#require <Classes/System/Drawing/Point.ab>
    99#require <Classes/System/Drawing/Size.ab>
     10
     11Namespace System
     12Namespace Drawing
    1013
    1114Class Rectangle
     
    243246End Class
    244247
     248End Namespace 'Drawing
     249End Namespace 'System
     250
    245251#endif '__SYSTEM_DRAWING_RECTFANGLE_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/RectangleF.ab

    r212 r241  
    44#define __SYSTEM_DRAWING_RECTANGLEF_AB__
    55
    6 #include <Classes/System/Math.ab>
    7 #include <Classes/System/Drawing/PointF.ab>
    8 #include <Classes/System/Drawing/SizeF.ab>
     6#require <Classes/System/Math.ab>
     7#require <Classes/System/Drawing/PointF.ab>
     8#require <Classes/System/Drawing/SizeF.ab>
     9
     10Namespace System
     11Namespace Drawing
    912
    1013Class RectangleF
     
    112115        End If
    113116    End Function
    114 /*
    115     Function Operator =(ByRef rc As RectangleF)
    116         With rc
    117             x = .x
    118             y = .y
    119             width = .width
    120             height = .height
    121         End With
    122     End Function
    123 */
     117
    124118    Function Operator ==(rc As RectangleF)
    125119        Return Equals(rc)
     
    185179        This = RectangleF.Intersect(This, rect)
    186180    End Sub
    187    
     181
    188182    Static Function Intersect(a As RectangleF, b As RectangleF) As RectangleF
    189183        Dim right As Single, bottom As Single, left As Single, top As Single
     
    231225End Class
    232226
     227End Namespace 'Drawing
     228End Namespace 'System
     229
    233230#endif '__SYSTEM_DRAWING_RECTFANGLE_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/Size.ab

    r223 r241  
    44#define __SYSTEM_DRAWING_SIZE_AB__
    55
    6 #include <Classes/System/Math.ab>
    7 #include <Classes/System/Drawing/SizeF.ab>
     6#require <Classes/System/Math.ab>
     7#require <Classes/System/Drawing/SizeF.ab>
     8
     9Namespace System
     10Namespace Drawing
    811
    912Class Size
     
    6265        Return Not Equals(sz)
    6366    End Function
    64 /*
    65     Sub Operator =(ByRef sz As Size)
    66         width = sz.width
    67         height = sz.height
    68     End Sub
    69 */
     67
    7068    Function Equals(sz As Size) As Boolean
    7169        If width = sz.width And height = sz.height Then
     
    112110End Class
    113111
     112End Namespace 'Drawing
     113End Namespace 'System
     114
    114115#endif '__SYSTEM_DRAWING_SIZE_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/SizeF.ab

    r223 r241  
    44#define __SYSTEM_DRAWING_SIZEF_AB__
    55
    6 #include <Classes/System/Drawing/Size.ab>
    7 #include <Classes/System/Drawing/PointF.ab>
     6#require <Classes/System/Drawing/Size.ab>
     7#require <Classes/System/Drawing/PointF.ab>
     8
     9Namespace System
     10Namespace Drawing
    811
    912Class SizeF
     
    5760        Return Not Equals(sz)
    5861    End Function
    59 /*
    60     Sub Operator =(ByRef sz As SizeF)
    61         width = sz.width
    62         height = sz.height
    63     End Sub
    64 */
     62
    6563    Function Equals(sz As SizeF) As Boolean
    6664        Return width = sz.width And height = sz.height
     
    9189        Return pt
    9290    End Function
     91
    9392Private
    9493    width As Single
     
    9695End Class
    9796
     97End Namespace 'Drawing
     98End Namespace 'System
     99
    98100#endif '__SYSTEM_DRAWING_SIZEF_AB__
  • branch/egtra-gdiplus/Classes/System/Drawing/misc.ab

    r137 r241  
    33#ifndef __SYSTEM_DRAWING_MISC_AB__
    44#define __SYSTEM_DRAWING_MISC_AB__
     5
     6Namespace System
     7Namespace Drawing
    58
    69Enum RotateFlipType
     
    4447End Enum
    4548
     49End Namespace 'Drawing
     50End Namespace 'System
    4651
    4752#endif '__SYSTEM_DRAWING_MISC_AB__
  • branch/egtra-gdiplus/GdiPlus.ab

    r119 r241  
    44#define GDIPLUS_AB
    55
     6Namespace Gdiplu
    67Declare Function GdipAlloc Lib "Gdiplus.dll" (size As SIZE_T) As VoidPtr
    78Declare Sub GdipFree Lib "Gdiplus.dll" (ptr As VoidPtr)
     
    1011'これにはC++の配置new (placement new)が使われているので、実装を保留する。
    1112End Class
     13
     14End Namespace
    1215
    1316#include <GdiplusEnums.ab>
  • branch/egtra-gdiplus/GdiPlusEnums.ab

    r33 r241  
    2626End Enum
    2727
    28 Const Enum HatchStyle
    29     HatchStyleHorizontal                    ' 0
    30     HatchStyleVertical                      ' 1
    31     HatchStyleForwardDiagonal               ' 2
    32     HatchStyleBackwardDiagonal              ' 3
    33     HatchStyleCross                         ' 4
    34     HatchStyleDiagonalCross                 ' 5
    35     HatchStyle05Percent                     ' 6
    36     HatchStyle10Percent                     ' 7
    37     HatchStyle20Percent                     ' 8
    38     HatchStyle25Percent                     ' 9
    39     HatchStyle30Percent                     ' 10
    40     HatchStyle40Percent                     ' 11
    41     HatchStyle50Percent                     ' 12
    42     HatchStyle60Percent                     ' 13
    43     HatchStyle70Percent                     ' 14
    44     HatchStyle75Percent                     ' 15
    45     HatchStyle80Percent                     ' 16
    46     HatchStyle90Percent                     ' 17
    47     HatchStyleLightDownwardDiagonal         ' 18
    48     HatchStyleLightUpwardDiagonal           ' 19
    49     HatchStyleDarkDownwardDiagonal          ' 20
    50     HatchStyleDarkUpwardDiagonal            ' 21
    51     HatchStyleWideDownwardDiagonal          ' 22
    52     HatchStyleWideUpwardDiagonal            ' 23
    53     HatchStyleLightVertical                 ' 24
    54     HatchStyleLightHorizontal               ' 25
    55     HatchStyleNarrowVertical                ' 26
    56     HatchStyleNarrowHorizontal              ' 27
    57     HatchStyleDarkVertical                  ' 28
    58     HatchStyleDarkHorizontal                ' 29
    59     HatchStyleDashedDownwardDiagonal        ' 30
    60     HatchStyleDashedUpwardDiagonal          ' 31
    61     HatchStyleDashedHorizontal              ' 32
    62     HatchStyleDashedVertical                ' 33
    63     HatchStyleSmallConfetti                 ' 34
    64     HatchStyleLargeConfetti                 ' 35
    65     HatchStyleZigZag                        ' 36
    66     HatchStyleWave                          ' 37
    67     HatchStyleDiagonalBrick                 ' 38
    68     HatchStyleHorizontalBrick               ' 39
    69     HatchStyleWeave                         ' 40
    70     HatchStylePlaid                         ' 41
    71     HatchStyleDivot                         ' 42
    72     HatchStyleDottedGrid                    ' 43
    73     HatchStyleDottedDiamond                 ' 44
    74     HatchStyleShingle                       ' 45
    75     HatchStyleTrellis                       ' 46
    76     HatchStyleSphere                        ' 47
    77     HatchStyleSmallGrid                     ' 48
    78     HatchStyleSmallCheckerBoard             ' 49
    79     HatchStyleLargeCheckerBoard             ' 50
    80     HatchStyleOutlinedDiamond               ' 51
    81     HatchStyleSolidDiamond                  ' 52
    82 
    83     HatchStyleTotal
    84 '   HatchStyleLargeGrid = HatchStyleCross   ' 4
    85 
    86 '   HatchStyleMin       = HatchStyleHorizontal
    87 '   HatchStyleMax       = HatchStyleTotal - 1
    88 End Enum
    89 
    9028Const Enum DashStyle
    9129    DashStyleSolid           ' 0
     
    9735End Enum
    9836
    99 Const Enum DashCap
    100     DashCapFlat             = 0
    101     DashCapRound            = 2
    102     DashCapTriangle         = 3
    103 End Enum
    104 
    105 Const Enum LineCap
    106     LineCapFlat             = 0
    107     LineCapSquare           = 1
    108     LineCapRound            = 2
    109     LineCapTriangle         = 3
    110 
    111     LineCapNoAnchor         = &h10
    112     LineCapSquareAnchor     = &h11
    113     LineCapRoundAnchor      = &h12
    114     LineCapDiamondAnchor    = &h13
    115     LineCapArrowAnchor      = &h14
    116 
    117     LineCapCustom           = &hff
    118 
    119     LineCapAnchorMask       = &hf0
    120 End Enum
    121 
    12237Const Enum CustomLineCapType
    12338    CustomLineCapTypeDefault         = 0
    12439    CustomLineCapTypeAdjustableArrow = 1
    125 End Enum
    126 
    127 Const Enum LineJoin
    128     LineJoinMiter        = 0
    129     LineJoinBevel        = 1
    130     LineJoinRound        = 2
    131     LineJoinMiterClipped = 3
    13240End Enum
    13341
     
    14351End Enum
    14452
    145 Const Enum WarpMode
    146     WarpModePerspective     ' 0
    147     WarpModeBilinear        ' 1
    148 End Enum
    149 
    150 Const Enum LinearGradientMode
    151     LinearGradientModeHorizontal          ' 0
    152     LinearGradientModeVertical            ' 1
    153     LinearGradientModeForwardDiagonal     ' 2
    154     LinearGradientModeBackwardDiagonal    ' 3
    155 End Enum
    156 
    15753Const Enum ImageType
    15854    ImageTypeUnknown    ' 0
    15955    ImageTypeBitmap     ' 1
    16056    ImageTypeMetafile   ' 2
    161 End Enum
    162 
    163 Const Enum PenAlignment
    164     PenAlignmentCenter       = 0
    165     PenAlignmentInset        = 1
    16657End Enum
    16758
     
    17263    BrushTypePathGradient     = 3
    17364    BrushTypeLinearGradient   = 4
    174 End Enum
    175 
    176 Const Enum PenType
    177     PenTypeSolidColor       = BrushTypeSolidColor
    178     PenTypeHatchFill        = BrushTypeHatchFill
    179     PenTypeTextureFill      = BrushTypeTextureFill
    180     PenTypePathGradient     = BrushTypePathGradient
    181     PenTypeLinearGradient   = BrushTypeLinearGradient
    182     PenTypeUnknown          = -1
    18365End Enum
    18466
     
    230112
    231113Const ObjectTypeIsValid(type_) = (type_ >= ObjectTypeMin) And (type_ <= ObjectTypeMax)
    232 
    233 Const GDIP_EMFPLUS_RECORD_BASE        = &h00004000
    234 Const GDIP_WMF_RECORD_BASE            = &h00010000
    235 Const GDIP_WMF_RECORD_TO_EMFPLUS(n)   = ((n) Or GDIP_WMF_RECORD_BASE) ' As EmfPlusRecordType
    236 Const GDIP_EMFPLUS_RECORD_TO_WMF(n)   = ((n) And (Not GDIP_WMF_RECORD_BASE))
    237 'Const GDIP_IS_WMF_RECORDTYPE(n)       (((n) And GDIP_WMF_RECORD_BASE) <> 0)
    238 Function GDIP_IS_WMF_RECORDTYPE(n As DWord) As BOOL
    239     If (n And GDIP_WMF_RECORD_BASE) <> 0 Then
    240         GDIP_IS_WMF_RECORDTYPE = TRUE
    241     Else
    242         GDIP_IS_WMF_RECORDTYPE = FALSE
    243     End If
    244 End Function
    245 
    246 Const Enum EmfPlusRecordType
    247 /*
    248     WmfRecordTypeSetBkColor              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR)
    249     WmfRecordTypeSetBkMode               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE)
    250     WmfRecordTypeSetMapMode              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE)
    251     WmfRecordTypeSetROP2                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2)
    252     WmfRecordTypeSetRelAbs               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS)
    253     WmfRecordTypeSetPolyFillMode         = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE)
    254     WmfRecordTypeSetStretchBltMode       = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE)
    255     WmfRecordTypeSetTextCharExtra        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA)
    256     WmfRecordTypeSetTextColor            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR)
    257     WmfRecordTypeSetTextJustification    = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION)
    258     WmfRecordTypeSetWindowOrg            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG)
    259     WmfRecordTypeSetWindowExt            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT)
    260     WmfRecordTypeSetViewportOrg          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG)
    261     WmfRecordTypeSetViewportExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT)
    262     WmfRecordTypeOffsetWindowOrg         = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG)
    263     WmfRecordTypeScaleWindowExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT)
    264     WmfRecordTypeOffsetViewportOrg       = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG)
    265     WmfRecordTypeScaleViewportExt        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT)
    266     WmfRecordTypeLineTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO)
    267     WmfRecordTypeMoveTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO)
    268     WmfRecordTypeExcludeClipRect         = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT)
    269     WmfRecordTypeIntersectClipRect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT)
    270     WmfRecordTypeArc                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC)
    271     WmfRecordTypeEllipse                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE)
    272     WmfRecordTypeFloodFill               = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL)
    273     WmfRecordTypePie                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE)
    274     WmfRecordTypeRectangle               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE)
    275     WmfRecordTypeRoundRect               = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT)
    276     WmfRecordTypePatBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT)
    277     WmfRecordTypeSaveDC                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC)
    278     WmfRecordTypeSetPixel                = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL)
    279     WmfRecordTypeOffsetClipRgn           = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN)
    280     WmfRecordTypeTextOut                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT)
    281     WmfRecordTypeBitBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT)
    282     WmfRecordTypeStretchBlt              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT)
    283     WmfRecordTypePolygon                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON)
    284     WmfRecordTypePolyline                = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE)
    285     WmfRecordTypeEscape                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE)
    286     WmfRecordTypeRestoreDC               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC)
    287     WmfRecordTypeFillRegion              = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION)
    288     WmfRecordTypeFrameRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION)
    289     WmfRecordTypeInvertRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION)
    290     WmfRecordTypePaintRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION)
    291     WmfRecordTypeSelectClipRegion        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION)
    292     WmfRecordTypeSelectObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT)
    293     WmfRecordTypeSetTextAlign            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN)
    294     WmfRecordTypeDrawText                = GDIP_WMF_RECORD_TO_EMFPLUS(&h062F)   ' META_DRAWTEXT
    295     WmfRecordTypeChord                   = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD)
    296     WmfRecordTypeSetMapperFlags          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS)
    297     WmfRecordTypeExtTextOut              = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT)
    298     WmfRecordTypeSetDIBToDev             = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV)
    299     WmfRecordTypeSelectPalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE)
    300     WmfRecordTypeRealizePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE)
    301     WmfRecordTypeAnimatePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE)
    302     WmfRecordTypeSetPalEntries           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES)
    303     WmfRecordTypePolyPolygon             = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON)
    304     WmfRecordTypeResizePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE)
    305     WmfRecordTypeDIBBitBlt               = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT)
    306     WmfRecordTypeDIBStretchBlt           = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT)
    307     WmfRecordTypeDIBCreatePatternBrush   = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH)
    308     WmfRecordTypeStretchDIB              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB)
    309     WmfRecordTypeExtFloodFill            = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL)
    310     WmfRecordTypeSetLayout               = GDIP_WMF_RECORD_TO_EMFPLUS(&h0149)   ' META_SETLAYOUT
    311     WmfRecordTypeResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC
    312     WmfRecordTypeStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC
    313     WmfRecordTypeStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE
    314     WmfRecordTypeEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE
    315     WmfRecordTypeAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC
    316     WmfRecordTypeEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC
    317     WmfRecordTypeDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT)
    318     WmfRecordTypeCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE)
    319     WmfRecordTypeCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH
    320     WmfRecordTypeCreatePatternBrush      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH)
    321     WmfRecordTypeCreatePenIndirect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT)
    322     WmfRecordTypeCreateFontIndirect      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT)
    323     WmfRecordTypeCreateBrushIndirect     = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT)
    324     WmfRecordTypeCreateBitmapIndirect    = GDIP_WMF_RECORD_TO_EMFPLUS(&h02FD)   ' META_CREATEBITMAPINDIRECT
    325     WmfRecordTypeCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP
    326     WmfRecordTypeCreateRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION)
    327 
    328     EmfRecordTypeHeader                  = EMR_HEADER
    329     EmfRecordTypePolyBezier              = EMR_POLYBEZIER
    330     EmfRecordTypePolygon                 = EMR_POLYGON
    331     EmfRecordTypePolyline                = EMR_POLYLINE
    332     EmfRecordTypePolyBezierTo            = EMR_POLYBEZIERTO
    333     EmfRecordTypePolyLineTo              = EMR_POLYLINETO
    334     EmfRecordTypePolyPolyline            = EMR_POLYPOLYLINE
    335     EmfRecordTypePolyPolygon             = EMR_POLYPOLYGON
    336     EmfRecordTypeSetWindowExtEx          = EMR_SETWINDOWEXTEX
    337     EmfRecordTypeSetWindowOrgEx          = EMR_SETWINDOWORGEX
    338     EmfRecordTypeSetViewportExtEx        = EMR_SETVIEWPORTEXTEX
    339     EmfRecordTypeSetViewportOrgEx        = EMR_SETVIEWPORTORGEX
    340     EmfRecordTypeSetBrushOrgEx           = EMR_SETBRUSHORGEX
    341     EmfRecordTypeEOF                     = EMR_EOF
    342     EmfRecordTypeSetPixelV               = EMR_SETPIXELV
    343     EmfRecordTypeSetMapperFlags          = EMR_SETMAPPERFLAGS
    344     EmfRecordTypeSetMapMode              = EMR_SETMAPMODE
    345     EmfRecordTypeSetBkMode               = EMR_SETBKMODE
    346     EmfRecordTypeSetPolyFillMode         = EMR_SETPOLYFILLMODE
    347     EmfRecordTypeSetROP2                 = EMR_SETROP2
    348     EmfRecordTypeSetStretchBltMode       = EMR_SETSTRETCHBLTMODE
    349     EmfRecordTypeSetTextAlign            = EMR_SETTEXTALIGN
    350     EmfRecordTypeSetColorAdjustment      = EMR_SETCOLORADJUSTMENT
    351     EmfRecordTypeSetTextColor            = EMR_SETTEXTCOLOR
    352     EmfRecordTypeSetBkColor              = EMR_SETBKCOLOR
    353     EmfRecordTypeOffsetClipRgn           = EMR_OFFSETCLIPRGN
    354     EmfRecordTypeMoveToEx                = EMR_MOVETOEX
    355     EmfRecordTypeSetMetaRgn              = EMR_SETMETARGN
    356     EmfRecordTypeExcludeClipRect         = EMR_EXCLUDECLIPRECT
    357     EmfRecordTypeIntersectClipRect       = EMR_INTERSECTCLIPRECT
    358     EmfRecordTypeScaleViewportExtEx      = EMR_SCALEVIEWPORTEXTEX
    359     EmfRecordTypeScaleWindowExtEx        = EMR_SCALEWINDOWEXTEX
    360     EmfRecordTypeSaveDC                  = EMR_SAVEDC
    361     EmfRecordTypeRestoreDC               = EMR_RESTOREDC
    362     EmfRecordTypeSetWorldTransform       = EMR_SETWORLDTRANSFORM
    363     EmfRecordTypeModifyWorldTransform    = EMR_MODIFYWORLDTRANSFORM
    364     EmfRecordTypeSelectObject            = EMR_SELECTOBJECT
    365     EmfRecordTypeCreatePen               = EMR_CREATEPEN
    366     EmfRecordTypeCreateBrushIndirect     = EMR_CREATEBRUSHINDIRECT
    367     EmfRecordTypeDeleteObject            = EMR_DELETEOBJECT
    368     EmfRecordTypeAngleArc                = EMR_ANGLEARC
    369     EmfRecordTypeEllipse                 = EMR_ELLIPSE
    370     EmfRecordTypeRectangle               = EMR_RECTANGLE
    371     EmfRecordTypeRoundRect               = EMR_ROUNDRECT
    372     EmfRecordTypeArc                     = EMR_ARC
    373     EmfRecordTypeChord                   = EMR_CHORD
    374     EmfRecordTypePie                     = EMR_PIE
    375     EmfRecordTypeSelectPalette           = EMR_SELECTPALETTE
    376     EmfRecordTypeCreatePalette           = EMR_CREATEPALETTE
    377     EmfRecordTypeSetPaletteEntries       = EMR_SETPALETTEENTRIES
    378     EmfRecordTypeResizePalette           = EMR_RESIZEPALETTE
    379     EmfRecordTypeRealizePalette          = EMR_REALIZEPALETTE
    380     EmfRecordTypeExtFloodFill            = EMR_EXTFLOODFILL
    381     EmfRecordTypeLineTo                  = EMR_LINETO
    382     EmfRecordTypeArcTo                   = EMR_ARCTO
    383     EmfRecordTypePolyDraw                = EMR_POLYDRAW
    384     EmfRecordTypeSetArcDirection         = EMR_SETARCDIRECTION
    385     EmfRecordTypeSetMiterLimit           = EMR_SETMITERLIMIT
    386     EmfRecordTypeBeginPath               = EMR_BEGINPATH
    387     EmfRecordTypeEndPath                 = EMR_ENDPATH
    388     EmfRecordTypeCloseFigure             = EMR_CLOSEFIGURE
    389     EmfRecordTypeFillPath                = EMR_FILLPATH
    390     EmfRecordTypeStrokeAndFillPath       = EMR_STROKEANDFILLPATH
    391     EmfRecordTypeStrokePath              = EMR_STROKEPATH
    392     EmfRecordTypeFlattenPath             = EMR_FLATTENPATH
    393     EmfRecordTypeWidenPath               = EMR_WIDENPATH
    394     EmfRecordTypeSelectClipPath          = EMR_SELECTCLIPPATH
    395     EmfRecordTypeAbortPath               = EMR_ABORTPATH
    396     EmfRecordTypeReserved_069            = 69   ' Not Used
    397     EmfRecordTypeGdiComment              = EMR_GDICOMMENT
    398     EmfRecordTypeFillRgn                 = EMR_FILLRGN
    399     EmfRecordTypeFrameRgn                = EMR_FRAMERGN
    400     EmfRecordTypeInvertRgn               = EMR_INVERTRGN
    401     EmfRecordTypePaintRgn                = EMR_PAINTRGN
    402     EmfRecordTypeExtSelectClipRgn        = EMR_EXTSELECTCLIPRGN
    403     EmfRecordTypeBitBlt                  = EMR_BITBLT
    404     EmfRecordTypeStretchBlt              = EMR_STRETCHBLT
    405     EmfRecordTypeMaskBlt                 = EMR_MASKBLT
    406     EmfRecordTypePlgBlt                  = EMR_PLGBLT
    407     EmfRecordTypeSetDIBitsToDevice       = EMR_SETDIBITSTODEVICE
    408     EmfRecordTypeStretchDIBits           = EMR_STRETCHDIBITS
    409     EmfRecordTypeExtCreateFontIndirect   = EMR_EXTCREATEFONTINDIRECTW
    410     EmfRecordTypeExtTextOutA             = EMR_EXTTEXTOUTA
    411     EmfRecordTypeExtTextOutW             = EMR_EXTTEXTOUTW
    412     EmfRecordTypePolyBezier16            = EMR_POLYBEZIER16
    413     EmfRecordTypePolygon16               = EMR_POLYGON16
    414     EmfRecordTypePolyline16              = EMR_POLYLINE16
    415     EmfRecordTypePolyBezierTo16          = EMR_POLYBEZIERTO16
    416     EmfRecordTypePolylineTo16            = EMR_POLYLINETO16
    417     EmfRecordTypePolyPolyline16          = EMR_POLYPOLYLINE16
    418     EmfRecordTypePolyPolygon16           = EMR_POLYPOLYGON16
    419     EmfRecordTypePolyDraw16              = EMR_POLYDRAW16
    420     EmfRecordTypeCreateMonoBrush         = EMR_CREATEMONOBRUSH
    421     EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT
    422     EmfRecordTypeExtCreatePen            = EMR_EXTCREATEPEN
    423     EmfRecordTypePolyTextOutA            = EMR_POLYTEXTOUTA
    424     EmfRecordTypePolyTextOutW            = EMR_POLYTEXTOUTW
    425     EmfRecordTypeSetICMMode              = 98   ' EMR_SETICMMODE
    426     EmfRecordTypeCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE
    427     EmfRecordTypeSetColorSpace           = 100  ' EMR_SETCOLORSPACE
    428     EmfRecordTypeDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE
    429     EmfRecordTypeGLSRecord               = 102  ' EMR_GLSRECORD
    430     EmfRecordTypeGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD
    431     EmfRecordTypePixelFormat             = 104  ' EMR_PIXELFORMAT
    432     EmfRecordTypeDrawEscape              = 105  ' EMR_RESERVED_105
    433     EmfRecordTypeExtEscape               = 106  ' EMR_RESERVED_106
    434     EmfRecordTypeStartDoc                = 107  ' EMR_RESERVED_107
    435     EmfRecordTypeSmallTextOut            = 108  ' EMR_RESERVED_108
    436     EmfRecordTypeForceUFIMapping         = 109  ' EMR_RESERVED_109
    437     EmfRecordTypeNamedEscape             = 110  ' EMR_RESERVED_110
    438     EmfRecordTypeColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE
    439     EmfRecordTypeSetICMProfileA          = 112  ' EMR_SETICMPROFILEA
    440     EmfRecordTypeSetICMProfileW          = 113  ' EMR_SETICMPROFILEW
    441     EmfRecordTypeAlphaBlend              = 114  ' EMR_ALPHABLEND
    442     EmfRecordTypeSetLayout               = 115  ' EMR_SETLAYOUT
    443     EmfRecordTypeTransparentBlt          = 116  ' EMR_TRANSPARENTBLT
    444     EmfRecordTypeReserved_117            = 117  ' Not Used
    445     EmfRecordTypeGradientFill            = 118  ' EMR_GRADIENTFILL
    446     EmfRecordTypeSetLinkedUFIs           = 119  ' EMR_RESERVED_119
    447     EmfRecordTypeSetTextJustification    = 120  ' EMR_RESERVED_120
    448     EmfRecordTypeColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW
    449     EmfRecordTypeCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW
    450     EmfRecordTypeMax                     = 122
    451     EmfRecordTypeMin                     = 1
    452 
    453     EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE
    454     EmfPlusRecordTypeHeader
    455     EmfPlusRecordTypeEndOfFile
    456 
    457     EmfPlusRecordTypeComment
    458 
    459     EmfPlusRecordTypeGetDC
    460 
    461     EmfPlusRecordTypeMultiFormatStart
    462     EmfPlusRecordTypeMultiFormatSection
    463     EmfPlusRecordTypeMultiFormatEnd
    464 
    465     EmfPlusRecordTypeObject
    466 
    467     EmfPlusRecordTypeClear
    468     EmfPlusRecordTypeFillRects
    469     EmfPlusRecordTypeDrawRects
    470     EmfPlusRecordTypeFillPolygon
    471     EmfPlusRecordTypeDrawLines
    472     EmfPlusRecordTypeFillEllipse
    473     EmfPlusRecordTypeDrawEllipse
    474     EmfPlusRecordTypeFillPie
    475     EmfPlusRecordTypeDrawPie
    476     EmfPlusRecordTypeDrawArc
    477     EmfPlusRecordTypeFillRegion
    478     EmfPlusRecordTypeFillPath
    479     EmfPlusRecordTypeDrawPath
    480     EmfPlusRecordTypeFillClosedCurve
    481     EmfPlusRecordTypeDrawClosedCurve
    482     EmfPlusRecordTypeDrawCurve
    483     EmfPlusRecordTypeDrawBeziers
    484     EmfPlusRecordTypeDrawImage
    485     EmfPlusRecordTypeDrawImagePoints
    486     EmfPlusRecordTypeDrawString
    487 
    488     EmfPlusRecordTypeSetRenderingOrigin
    489     EmfPlusRecordTypeSetAntiAliasMode
    490     EmfPlusRecordTypeSetTextRenderingHint
    491     EmfPlusRecordTypeSetTextContrast
    492     EmfPlusRecordTypeSetInterpolationMode
    493     EmfPlusRecordTypeSetPixelOffsetMode
    494     EmfPlusRecordTypeSetCompositingMode
    495     EmfPlusRecordTypeSetCompositingQuality
    496     EmfPlusRecordTypeSave
    497     EmfPlusRecordTypeRestore
    498     EmfPlusRecordTypeBeginContainer
    499     EmfPlusRecordTypeBeginContainerNoParams
    500     EmfPlusRecordTypeEndContainer
    501     EmfPlusRecordTypeSetWorldTransform
    502     EmfPlusRecordTypeResetWorldTransform
    503     EmfPlusRecordTypeMultiplyWorldTransform
    504     EmfPlusRecordTypeTranslateWorldTransform
    505     EmfPlusRecordTypeScaleWorldTransform
    506     EmfPlusRecordTypeRotateWorldTransform
    507     EmfPlusRecordTypeSetPageTransform
    508     EmfPlusRecordTypeResetClip
    509     EmfPlusRecordTypeSetClipRect
    510     EmfPlusRecordTypeSetClipPath
    511     EmfPlusRecordTypeSetClipRegion
    512     EmfPlusRecordTypeOffsetClip
    513 
    514     EmfPlusRecordTypeDrawDriverString
    515 
    516     EmfPlusRecordTotal
    517 
    518     EmfPlusRecordTypeMax = EmfPlusRecordTotal-1
    519     EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader */
    520 End Enum
    521114
    522115Const Enum StringFormatFlags
  • branch/egtra-gdiplus/GdiPlusFlat.ab

    r119 r241  
    1212
    1313TypeDef PDirectDrawSurface7 = VoidPtr '*IDirectDrawSurface7
     14
     15Namespace Gdiplus
     16Namespace DllExprots
    1417
    1518' GraphicsPath APIs
     
    666669Declare Sub GdiplusNotificationUnhook Lib "gdiplus.dll" (ByVal token As ULONG_PTR)
    667670
     671End Namespace 'DllExports
     672End Namespace 'Gdiplus
     673
    668674#endif '__GDIPLUS_FLATAPI_AB__
  • branch/egtra-gdiplus/GdiPlusGpStubs.ab

    r119 r241  
    99#require <Classes/System/Drawing/Drawing2D/Matrix.ab>
    1010
    11 Class GpGraphics
    12 End Class
     11Namespace Gdiplus
    1312
    14 Class GpBrush
    15 End Class
    16 Class GpTexture
    17     Inherits GpBrush
    18 End Class
    19 Class GpSolidFill
    20     Inherits GpBrush
    21 End Class
    22 Class GpLineGradient
    23     Inherits GpBrush
    24 End Class
    25 Class GpPathGradient
    26     Inherits GpBrush
    27 End Class
    28 Class GpHatch
    29     Inherits GpBrush
    30 End Class
     13Type GpGraphics
     14End Type
    3115
    32 Class GpPen
    33 End Class
    34 Class GpCustomLineCap
    35 End Class
    36 Class GpAdjustableArrowCap
    37     Inherits GpCustomLineCap
    38 End Class
     16Type GpBrush
     17End Type
     18Type GpTexture
     19'   Inherits GpBrush
     20End Type
     21Type GpSolidFill
     22'   Inherits GpBrush
     23End Type
     24Type GpLineGradient
     25'   Inherits GpBrush
     26End Type
     27Type GpPathGradient
     28'   Inherits GpBrush
     29End Type
     30Type GpHatch
     31'   Inherits GpBrush
     32End Type
    3933
    40 Class GpImage
    41 End Class
    42 Class GpBitmap
    43     Inherits GpImage
    44 End Class
    45 Class GpMetafile
    46     Inherits GpImage
    47 End Class
    48 Class GpImageAttributes
    49 End Class
     34Type GpPen
     35End Type
     36Type GpCustomLineCap
     37End Type
     38Type GpAdjustableArrowCap
     39'   Inherits GpCustomLineCap
     40End Type
    5041
    51 Class GpPath
    52 End Class
    53 Class GpRegion
    54 End Class
    55 Class GpPathIterator
    56 End Class
     42Type GpImage
     43End Type
     44Type GpBitmap
     45'   Inherits GpImage
     46End Type
     47Type GpMetafile
     48'   Inherits GpImage
     49End Type
     50Type GpImageAttributes
     51End Type
    5752
    58 Class GpFontFamily
    59 End Class
    60 Class GpFont
    61 End Class
    62 Class GpStringFormat
    63 End Class
    64 Class GpFontCollection
    65 End Class
    66 Class GpInstalledFontCollection
    67     Inherits GpFontCollection
    68 End Class
    69 Class GpPrivateFontCollection
    70     Inherits GpFontCollection
    71 End Class
     53Type GpPath
     54End Type
     55Type GpRegion
     56End Type
     57Type GpPathIterator
     58End Type
    7259
    73 'Class GpCachedBitmap;
    74 Class GpCachedBitmap
    75 End Class
     60Type GpFontFamily
     61End Type
     62Type GpFont
     63End Type
     64Type GpStringFormat
     65End Type
     66Type GpFontCollection
     67End Type
     68Type GpInstalledFontCollection
     69'   Inherits GpFontCollection
     70End Type
     71Type GpPrivateFontCollection
     72'   Inherits GpFontCollection
     73End Type
    7674
    77 TypeDef GpStatus = Status
    78 TypeDef GpFillMode = FillMode
    79 TypeDef GpWrapMode = WrapMode
    80 TypeDef GpUnit = GraphicsUnit
    81 TypeDef GpCoordinateSpace = CoordinateSpace
    82 TypeDef GpPointF = PointF
    83 TypeDef GpPoint = Point
    84 TypeDef GpRectF = RectangleF
    85 TypeDef GpRect = Rectangle
    86 TypeDef GpSizeF = SizeF
    87 TypeDef GpHatchStyle = HatchStyle
    88 TypeDef GpDashStyle = DashStyle
    89 TypeDef GpLineCap = LineCap
    90 TypeDef GpDashCap = DashCap
     75'Type GpCachedBitmap;
     76Type GpCachedBitmap
     77End Type
     78
     79TypeDef GpStatus = Gdiplus.Status
     80TypeDef GpFillMode = System.Drawing.Drawing2D.FillMode
     81TypeDef GpWrapMode = System.Drawing.Drawing2D.WrapMode
     82TypeDef GpUnit = System.Drawing.GraphicsUnit
     83TypeDef GpCoordinateSpace = System.Drawing.Drawing2D.CoordinateSpace
     84TypeDef GpPointF = System.Drawing.PointF
     85TypeDef GpPoint = System.Drawing.Point
     86TypeDef GpRectF = System.Drawing.RectangleF
     87TypeDef GpRect = System.Drawing.Rectangle
     88TypeDef GpSizeF = System.Drawing.SizeF
     89TypeDef GpHatchStyle = System.Drawing.Drawing2D.HatchStyle
     90TypeDef GpDashStyle = System.Drawing.Drawing2D.DashStyle
     91TypeDef GpLineCap = System.Drawing.Drawing2D.LineCap
     92TypeDef GpDashCap = System.Drawing.Drawing2D.DashCap
    9193
    9294
    93 TypeDef GpPenAlignment = PenAlignment
     95TypeDef GpPenAlignment = System.Drawing.Drawing2D.PenAlignment
    9496
    95 TypeDef GpLineJoin = LineJoin
    96 TypeDef GpPenType = PenType
     97TypeDef GpLineJoin = System.Drawing.Drawing2D.LineJoin
     98TypeDef GpPenType = System.Drawing.PenType
    9799
    98 TypeDef GpMatrix = Matrix
     100'TypeDef GpMatrix = Matrix
     101Type GpMatrix
     102End Type
     103
    99104TypeDef GpBrushType = BrushType
    100 TypeDef GpMatrixOrder = MatrixOrder
    101 TypeDef GpFlushIntention = FlushIntention
     105TypeDef GpMatrixOrder = System.Drawing.Drawing2D.MatrixOrder
     106TypeDef GpFlushIntention = System.Drawing.Drawing2D.FlushIntention
    102107TypeDef GpPathData = PathData
    103108
     109End Namespace
     110
    104111#endif '__GDIPLUSGPSTUBS_AB__
    105 
  • branch/egtra-gdiplus/GdiPlusInit.ab

    r77 r241  
    33#ifndef __GDIPLUSINIT_AB__
    44#define __GDIPLUSINIT_AB__
     5
     6Namespace Gdiplus
    57
    68Enum DebugEventLevel
     
    3436End Type
    3537
    36 Declare Function GdiplusStartup Lib "GdiPlus.dll" (
     38Declare Function GdiplusStartup Lib "Gdiplus.dll" (
    3739    /*OUT*/ ByRef token As ULONG_PTR,
    3840            ByRef input As GdiplusStartupInput,
    3941    /*OUT*/ ByVal output As *GdiplusStartupOutput) As Status
    4042
    41 Declare Sub GdiplusShutdown Lib "GdiPlus.dll" (ByVal token As ULONG_PTR)
     43Declare Sub GdiplusShutdown Lib "Gdiplus.dll" (ByVal token As ULONG_PTR)
     44
     45End Namespace
    4246
    4347#endif '__GDIPLUSINIT_AB__
  • branch/egtra-gdiplus/GdiPlusTypes.ab

    r13 r241  
    1 ' GdiPlusTypes.sbp
     1' GdiPlusTypes.ab
    22
    33#ifndef __GDIPLUSTYPES_AB__
    44#define __GDIPLUSTYPES_AB__
    55
    6 #include <Classes/System/Math.ab>
     6#require <Classes/System/Math.ab>
     7#require <Classes/System/Drawing/Imaging/misc.ab>
     8
     9#require <Classes/System/Drawing/SizeF.ab>
     10#require <Classes/System/Drawing/Size.ab>
     11#require <Classes/System/Drawing/PointF.ab>
     12#require <Classes/System/Drawing/Point.ab>
     13#require <Classes/System/Drawing/RectangleF.ab>
     14#require <Classes/System/Drawing/Rectangle.ab>
     15#require <Classes/System/Drawing/CharacterRange.ab>
     16
     17Namespace Gdiplus
    718
    819TypeDef ImageAbort = *Function(p As VoidPtr) As BOOL
     
    1021TypeDef GetThumbnailImageAbort = ImageAbort
    1122
    12 TypeDef EnumerateMetafileProc = *Function(recordType As EmfPlusRecordType, flags As DWord, dataSize As DWord, data As BytePtr, callbackData As VoidPtr) As BOOL
     23TypeDef EnumerateMetafileProc = *Function(recordType As System.Drawing.Imaging.EmfPlusRecordType, flags As DWord, dataSize As DWord, data As BytePtr, callbackData As VoidPtr) As BOOL
    1324
    1425'Const REAL_MAX           = FLT_MAX
     
    1728'Const REAL_EPSILON       = 1.192092896e-07 'FLT_EPSILON
    1829
    19 Const Enum Status
     30Enum Status
    2031    Ok = 0
    2132    GenericError = 1
     
    4152End Enum
    4253
    43 #include <Classes/System/Drawing/SizeF.ab>
    44 #include <Classes/System/Drawing/Size.ab>
    45 #include <Classes/System/Drawing/PointF.ab>
    46 #include <Classes/System/Drawing/Point.ab>
    47 #include <Classes/System/Drawing/RectangleF.ab>
    48 #include <Classes/System/Drawing/Rectangle.ab>
    49 #include <Classes/System/Drawing/CharacterRange.ab>
    50 
    5154Class PathData
    5255Public
     
    7780Public
    7881    Count As Long
    79     Points As *PointF
     82    Points As *System.Drawing.PointF
    8083    Types As *BYTE
    8184End Class
    8285
     86' --------
     87
     88TypeDef ARGB = DWord
     89TypeDef ARGB64 = QWord
     90
     91Const ALPHA_SHIFT = 24 As DWord
     92Const RED_SHIFT   = 16 As DWord
     93Const GREEN_SHIFT = 8 As DWord
     94Const BLUE_SHIFT  = 0 As DWord
     95Const ALPHA_MASK  = ((&hff As ARGB) << ALPHA_SHIFT)
     96
     97Const GetPixelFormatSize(pixfmt) = ((((pixfmt As PixelFormat) >> 8) And &hff) As DWord)
     98
     99Const IsIndexedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Indexed) <> 0) As BOOL)
     100
     101Const IsAlphaPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Alpha) <> 0) As BOOL)
     102
     103Const IsExtendedPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Extended) <> 0) As BOOL)
     104
     105Const IsCanonicalPixelFormat(pixfmt) = ((((pixfmt As PixelFormat) And PixelFormat.Canonical) <> 0) As BOOL)
     106
     107Type Align(8) ColorPalette
     108    Flags As DWord
     109    Count As DWord
     110    Entries[1] As ARGB
     111End Type
     112
     113Type ColorMatrix
     114    m[5][5] As Single
     115End Type
     116
     117Type Align(8) EncoderParameter
     118    Guid As GUID
     119    NumberOfValues As DWord
     120    EncoderType As DWord '元はTypeという名前
     121    Value As VoidPtr
     122End Type
     123
     124Type Align(8) EncoderParameters
     125    Count As DWord
     126    Parameter[1] As EncoderParameter
     127End Type
     128
     129Const PropertyTagTypeByte        = 1
     130Const PropertyTagTypeASCII       = 2
     131Const PropertyTagTypeShort       = 3
     132Const PropertyTagTypeLong        = 4
     133Const PropertyTagTypeRational    = 5
     134Const PropertyTagTypeUndefined   = 7
     135Const PropertyTagTypeSLONG       = 9
     136Const PropertyTagTypeSRational  = 10
     137
     138Const PropertyTagExifIFD             = &h8769
     139Const PropertyTagGpsIFD              = &h8825
     140
     141Const PropertyTagNewSubfileType      = &h00FE
     142Const PropertyTagSubfileType         = &h00FF
     143Const PropertyTagImageWidth          = &h0100
     144Const PropertyTagImageHeight         = &h0101
     145Const PropertyTagBitsPerSample       = &h0102
     146Const PropertyTagCompression         = &h0103
     147Const PropertyTagPhotometricInterp   = &h0106
     148Const PropertyTagThreshHolding       = &h0107
     149Const PropertyTagCellWidth           = &h0108
     150Const PropertyTagCellHeight          = &h0109
     151Const PropertyTagFillOrder           = &h010A
     152Const PropertyTagDocumentName        = &h010D
     153Const PropertyTagImageDescription    = &h010E
     154Const PropertyTagEquipMake           = &h010F
     155Const PropertyTagEquipModel          = &h0110
     156Const PropertyTagStripOffsets        = &h0111
     157Const PropertyTagOrientation         = &h0112
     158Const PropertyTagSamplesPerPixel     = &h0115
     159Const PropertyTagRowsPerStrip        = &h0116
     160Const PropertyTagStripBytesCount     = &h0117
     161Const PropertyTagMinSampleValue      = &h0118
     162Const PropertyTagMaxSampleValue      = &h0119
     163Const PropertyTagXResolution         = &h011A   ' Image resolution in width direction
     164Const PropertyTagYResolution         = &h011B   ' Image resolution in height direction
     165Const PropertyTagPlanarConfig        = &h011C   ' Image data arrangement
     166Const PropertyTagPageName            = &h011D
     167Const PropertyTagXPosition           = &h011E
     168Const PropertyTagYPosition           = &h011F
     169Const PropertyTagFreeOffset          = &h0120
     170Const PropertyTagFreeByteCounts      = &h0121
     171Const PropertyTagGrayResponseUnit    = &h0122
     172Const PropertyTagGrayResponseCurve   = &h0123
     173Const PropertyTagT4Option            = &h0124
     174Const PropertyTagT6Option            = &h0125
     175Const PropertyTagResolutionUnit      = &h0128   ' Unit of X and Y resolution
     176Const PropertyTagPageNumber          = &h0129
     177Const PropertyTagTransferFuncition   = &h012D
     178Const PropertyTagSoftwareUsed        = &h0131
     179Const PropertyTagDateTime            = &h0132
     180Const PropertyTagArtist              = &h013B
     181Const PropertyTagHostComputer        = &h013C
     182Const PropertyTagPredictor           = &h013D
     183Const PropertyTagWhitePoint          = &h013E
     184Const PropertyTagPrimaryChromaticities = &h013F
     185Const PropertyTagColorMap            = &h0140
     186Const PropertyTagHalftoneHints       = &h0141
     187Const PropertyTagTileWidth           = &h0142
     188Const PropertyTagTileLength          = &h0143
     189Const PropertyTagTileOffset          = &h0144
     190Const PropertyTagTileByteCounts      = &h0145
     191Const PropertyTagInkSet              = &h014C
     192Const PropertyTagInkNames            = &h014D
     193Const PropertyTagNumberOfInks        = &h014E
     194Const PropertyTagDotRange            = &h0150
     195Const PropertyTagTargetPrinter       = &h0151
     196Const PropertyTagExtraSamples        = &h0152
     197Const PropertyTagSampleFormat        = &h0153
     198Const PropertyTagSMinSampleValue     = &h0154
     199Const PropertyTagSMaxSampleValue     = &h0155
     200Const PropertyTagTransferRange       = &h0156
     201
     202Const PropertyTagJPEGProc            = &h0200
     203Const PropertyTagJPEGInterFormat     = &h0201
     204Const PropertyTagJPEGInterLength     = &h0202
     205Const PropertyTagJPEGRestartInterval = &h0203
     206Const PropertyTagJPEGLosslessPredictors  = &h0205
     207Const PropertyTagJPEGPointTransforms     = &h0206
     208Const PropertyTagJPEGQTables         = &h0207
     209Const PropertyTagJPEGDCTables        = &h0208
     210Const PropertyTagJPEGACTables        = &h0209
     211
     212Const PropertyTagYCbCrCoefficients   = &h0211
     213Const PropertyTagYCbCrSubsampling    = &h0212
     214Const PropertyTagYCbCrPositioning    = &h0213
     215Const PropertyTagREFBlackWhite       = &h0214
     216
     217Const PropertyTagICCProfile          = &h8773   ' This TAG is defined by ICC
     218                                                ' for embedded ICC in TIFF
     219Const PropertyTagGamma               = &h0301
     220Const PropertyTagICCProfileDescriptor = &h0302
     221Const PropertyTagSRGBRenderingIntent = &h0303
     222
     223Const PropertyTagImageTitle          = &h0320
     224Const PropertyTagCopyright           = &h8298
     225
     226' Extra TAGs (Like Adobe Image Information tags etc.)
     227
     228Const PropertyTagResolutionXUnit           = &h5001
     229Const PropertyTagResolutionYUnit           = &h5002
     230Const PropertyTagResolutionXLengthUnit     = &h5003
     231Const PropertyTagResolutionYLengthUnit     = &h5004
     232Const PropertyTagPrintFlags                = &h5005
     233Const PropertyTagPrintFlagsVersion         = &h5006
     234Const PropertyTagPrintFlagsCrop            = &h5007
     235Const PropertyTagPrintFlagsBleedWidth      = &h5008
     236Const PropertyTagPrintFlagsBleedWidthScale = &h5009
     237Const PropertyTagHalftoneLPI               = &h500A
     238Const PropertyTagHalftoneLPIUnit           = &h500B
     239Const PropertyTagHalftoneDegree            = &h500C
     240Const PropertyTagHalftoneShape             = &h500D
     241Const PropertyTagHalftoneMisc              = &h500E
     242Const PropertyTagHalftoneScreen            = &h500F
     243Const PropertyTagJPEGQuality               = &h5010
     244Const PropertyTagGridSize                  = &h5011
     245Const PropertyTagThumbnailFormat           = &h5012  ' 1 = JPEG, 0 = RAW RGB
     246Const PropertyTagThumbnailWidth            = &h5013
     247Const PropertyTagThumbnailHeight           = &h5014
     248Const PropertyTagThumbnailColorDepth       = &h5015
     249Const PropertyTagThumbnailPlanes           = &h5016
     250Const PropertyTagThumbnailRawBytes         = &h5017
     251Const PropertyTagThumbnailSize             = &h5018
     252Const PropertyTagThumbnailCompressedSize   = &h5019
     253Const PropertyTagColorTransferFunction     = &h501A
     254Const PropertyTagThumbnailData             = &h501B' RAW thumbnail bits in
     255                                                   ' JPEG format or RGB format
     256                                                   ' depends on
     257                                                   ' PropertyTagThumbnailFormat
     258
     259' Thumbnail related TAGs
     260
     261Const PropertyTagThumbnailImageWidth       = &h5020  ' Thumbnail width
     262Const PropertyTagThumbnailImageHeight      = &h5021  ' Thumbnail height
     263Const PropertyTagThumbnailBitsPerSample    = &h5022  ' Number of bits per
     264                                                     ' component
     265Const PropertyTagThumbnailCompression      = &h5023  ' Compression Scheme
     266Const PropertyTagThumbnailPhotometricInterp = &h5024 ' Pixel composition
     267Const PropertyTagThumbnailImageDescription = &h5025  ' Image Tile
     268Const PropertyTagThumbnailEquipMake        = &h5026  ' Manufacturer of Image
     269                                                     ' Input equipment
     270Const PropertyTagThumbnailEquipModel       = &h5027  ' Model of Image input
     271                                                     ' equipment
     272Const PropertyTagThumbnailStripOffsets     = &h5028  ' Image data location
     273Const PropertyTagThumbnailOrientation      = &h5029  ' Orientation of image
     274Const PropertyTagThumbnailSamplesPerPixel  = &h502A  ' Number of components
     275Const PropertyTagThumbnailRowsPerStrip     = &h502B  ' Number of rows per strip
     276Const PropertyTagThumbnailStripBytesCount  = &h502C  ' Bytes per compressed
     277                                                     ' strip
     278Const PropertyTagThumbnailResolutionX      = &h502D  ' Resolution in width
     279                                                     ' direction
     280Const PropertyTagThumbnailResolutionY      = &h502E  ' Resolution in height
     281                                                     ' direction
     282Const PropertyTagThumbnailPlanarConfig     = &h502F  ' Image data arrangement
     283Const PropertyTagThumbnailResolutionUnit   = &h5030  ' Unit of X and Y
     284                                                     ' Resolution
     285Const PropertyTagThumbnailTransferFunction = &h5031  ' Transfer function
     286Const PropertyTagThumbnailSoftwareUsed     = &h5032  ' Software used
     287Const PropertyTagThumbnailDateTime         = &h5033  ' File change date and
     288                                                     ' time
     289Const PropertyTagThumbnailArtist           = &h5034  ' Person who created the
     290                                                     ' image
     291Const PropertyTagThumbnailWhitePoint       = &h5035  ' White point chromaticity
     292Const PropertyTagThumbnailPrimaryChromaticities = &h5036
     293                                                     ' Chromaticities of
     294                                                     ' primaries
     295Const PropertyTagThumbnailYCbCrCoefficients = &h5037 ' Color space transforma-
     296                                                     ' tion coefficients
     297Const PropertyTagThumbnailYCbCrSubsampling = &h5038  ' Subsampling ratio of Y
     298                                                     ' to C
     299Const PropertyTagThumbnailYCbCrPositioning = &h5039  ' Y and C position
     300Const PropertyTagThumbnailRefBlackWhite    = &h503A  ' Pair of black and white
     301                                                     ' reference values
     302Const PropertyTagThumbnailCopyRight        = &h503B  ' CopyRight holder
     303
     304Const PropertyTagLuminanceTable            = &h5090
     305Const PropertyTagChrominanceTable          = &h5091
     306
     307Const PropertyTagFrameDelay                = &h5100
     308Const PropertyTagLoopCount                 = &h5101
     309
     310Const PropertyTagPixelUnit         = &h5110  ' Unit specifier for pixel/unit
     311Const PropertyTagPixelPerUnitX     = &h5111  ' Pixels per unit in X
     312Const PropertyTagPixelPerUnitY     = &h5112  ' Pixels per unit in Y
     313Const PropertyTagPaletteHistogram  = &h5113  ' Palette histogram
     314
     315' EXIF specific tag
     316
     317Const PropertyTagExifExposureTime  = &h829A
     318Const PropertyTagExifFNumber       = &h829D
     319
     320Const PropertyTagExifExposureProg  = &h8822
     321Const PropertyTagExifSpectralSense = &h8824
     322Const PropertyTagExifISOSpeed      = &h8827
     323Const PropertyTagExifOECF          = &h8828
     324
     325Const PropertyTagExifVer            = &h9000
     326Const PropertyTagExifDTOrig         = &h9003 ' Date & time of original
     327Const PropertyTagExifDTDigitized    = &h9004 ' Date & time of digital data generation
     328
     329Const PropertyTagExifCompConfig     = &h9101
     330Const PropertyTagExifCompBPP        = &h9102
     331
     332Const PropertyTagExifShutterSpeed   = &h9201
     333Const PropertyTagExifAperture       = &h9202
     334Const PropertyTagExifBrightness     = &h9203
     335Const PropertyTagExifExposureBias   = &h9204
     336Const PropertyTagExifMaxAperture    = &h9205
     337Const PropertyTagExifSubjectDist    = &h9206
     338Const PropertyTagExifMeteringMode   = &h9207
     339Const PropertyTagExifLightSource    = &h9208
     340Const PropertyTagExifFlash          = &h9209
     341Const PropertyTagExifFocalLength    = &h920A
     342Const PropertyTagExifMakerNote      = &h927C
     343Const PropertyTagExifUserComment    = &h9286
     344Const PropertyTagExifDTSubsec       = &h9290  ' Date & Time subseconds
     345Const PropertyTagExifDTOrigSS       = &h9291  ' Date & Time original subseconds
     346Const PropertyTagExifDTDigSS        = &h9292  ' Date & TIme digitized subseconds
     347
     348Const PropertyTagExifFPXVer         = &hA000
     349Const PropertyTagExifColorSpace     = &hA001
     350Const PropertyTagExifPixXDim        = &hA002
     351Const PropertyTagExifPixYDim        = &hA003
     352Const PropertyTagExifRelatedWav     = &hA004  ' related sound file
     353Const PropertyTagExifInterop        = &hA005
     354Const PropertyTagExifFlashEnergy    = &hA20B
     355Const PropertyTagExifSpatialFR      = &hA20C  ' Spatial Frequency Response
     356Const PropertyTagExifFocalXRes      = &hA20E  ' Focal Plane X Resolution
     357Const PropertyTagExifFocalYRes      = &hA20F  ' Focal Plane Y Resolution
     358Const PropertyTagExifFocalResUnit   = &hA210  ' Focal Plane Resolution Unit
     359Const PropertyTagExifSubjectLoc     = &hA214
     360Const PropertyTagExifExposureIndex  = &hA215
     361Const PropertyTagExifSensingMethod  = &hA217
     362Const PropertyTagExifFileSource     = &hA300
     363Const PropertyTagExifSceneType      = &hA301
     364Const PropertyTagExifCfaPattern     = &hA302
     365
     366Const PropertyTagGpsVer             = &h0000
     367Const PropertyTagGpsLatitudeRef     = &h0001
     368Const PropertyTagGpsLatitude        = &h0002
     369Const PropertyTagGpsLongitudeRef    = &h0003
     370Const PropertyTagGpsLongitude       = &h0004
     371Const PropertyTagGpsAltitudeRef     = &h0005
     372Const PropertyTagGpsAltitude        = &h0006
     373Const PropertyTagGpsGpsTime         = &h0007
     374Const PropertyTagGpsGpsSatellites   = &h0008
     375Const PropertyTagGpsGpsStatus       = &h0009
     376Const PropertyTagGpsGpsMeasureMode  = &h00A
     377Const PropertyTagGpsGpsDop          = &h000B  ' Measurement precision
     378Const PropertyTagGpsSpeedRef        = &h000C
     379Const PropertyTagGpsSpeed           = &h000D
     380Const PropertyTagGpsTrackRef        = &h000E
     381Const PropertyTagGpsTrack           = &h000F
     382Const PropertyTagGpsImgDirRef       = &h0010
     383Const PropertyTagGpsImgDir          = &h0011
     384Const PropertyTagGpsMapDatum        = &h0012
     385Const PropertyTagGpsDestLatRef      = &h0013
     386Const PropertyTagGpsDestLat         = &h0014
     387Const PropertyTagGpsDestLongRef     = &h0015
     388Const PropertyTagGpsDestLong        = &h0016
     389Const PropertyTagGpsDestBearRef     = &h0017
     390Const PropertyTagGpsDestBear        = &h0018
     391Const PropertyTagGpsDestDistRef     = &h0019
     392Const PropertyTagGpsDestDist        = &h001A
     393
     394Type ImageCodecInfo
     395    Clsid As CLSID
     396    FormatID As GUID
     397    CodecName As PCWSTR
     398    DllName As PCWSTR
     399    FormatDescription As PCWSTR
     400    FilenameExtension As PCWSTR
     401    MimeType As PCWSTR
     402    Flags As DWord
     403    Version As DWord
     404    SigCount As DWord
     405    SigSize As DWord
     406    SigPattern As *Byte
     407    SigMask As DWord
     408End Type
     409
     410End Namespace
     411
    83412#endif '__GDIPLUSTYPES_AB__
Note: See TracChangeset for help on using the changeset viewer.